Write some Software
$30-250 CAD
Płatność przy odbiorze
Details:
We have different types of JSON structure. So for our case we will use 2 Types.
Types:
- Person
- Place
Each type has two JSON files:
- Actual JSON
- Expected JSON
Fields:
Each JSON has different field types, here are the types of fields (same for each TYPE of JSON):
- GUID
- String
- Unique String
- Integer
- Time Stamp
- Decimal
- Boolean
Task:
You have to design a method to compare the two JSON (based on their type e.g. person or place) by taking in the following parameters
Compare (String Expected, String Actual, Object Exceptions, String Type) {
Return a list of failures;
}
Object exception is basically a chunk of JSON that the can be provided, in which case those fields (provided in the chunk) will be compared between Actual-Exceptions and not Actual-Expected. The rest of the fields will still be compared to Expected. The method should take in Exceptions = null by default.
The comparing method should be smart enough to run a comparison based on the field type, it should follow these rules:
- If the field is a string simply do a string comparison
- If the field is a GUID just verify if it’s a GUID, no equality check is needed
- If the field is a unique string just verify its length, no equality check is needed
- If the field is an integer simply do a comparison
- If the field is a timestamp, just check to see if it’s a timestamp and has the right format
- If the field is a decimal just do a simple comparison
- If the field is a Boolean just do a simple comparison
The comparing method should also be smart enough to accommodate easily to a change in the structure of a particular type e.g. person, place.
Adding new types of JSON files with new structures should be simple enough to code as well for later stages.
I will post the sample json files and field mappings later.
Numer ID Projektu: #6491566
O projekcie
Przyznany użytkownikowi:
Hi, I am a professional Java Developer and I know JSON well. I am sure that I can do this task perfectly. Would you like to give me this opportunity? Thanks