... | @@ -23,29 +23,30 @@ |
... | @@ -23,29 +23,30 @@ |
|
## TDD Examples
|
|
## TDD Examples
|
|
|
|
|
|
#### Scenario 1
|
|
#### Scenario 1
|
|
|
|
Users can use semicolons to denote separate objects.
|
|
#### Scenario 2
|
|
#### Scenario 2
|
|
|
|
The program automatically verifies that the number of header fields match the number of csv fields.
|
|
#### Scenario 3
|
|
#### Scenario 3
|
|
|
|
Users can restrict the date format to [1-2][0-9]{3}-[0-1][0-9]-[0-3][0-9] to catch some typos.
|
|
#### Scenario 4
|
|
#### Scenario 4
|
|
|
|
Instead of numbers from the csv file being converted into strings, numbers would be converted into integers.
|
|
#### Scenario 5
|
|
#### Scenario 5
|
|
|
|
If there are more csv fields to header fields, give the option to name the extra csv field.
|
|
#### Scenario 6
|
|
#### Scenario 6
|
|
|
|
The program can separate different objects into separate lines
|
|
|
|
#### Scenario 7
|
|
|
|
The program will find occurrences of the misspelt value, replace with the correct value provided by the user, and return the number of values replaced,
|
|
|
|
|
|
## Executable Test Cases
|
|
## Executable Test Cases
|
|
|
|
|
|
#### Scenario 1
|
|
#### Scenario 1
|
|
|
|
|
|
scenario1.csv:
|
|
scenario1.csv:
|
|
|
|
|
|
```
|
|
```
|
|
date;county;state;fips;cases;deaths
|
|
date;county;state;fips;cases;deaths
|
|
2020-01-21;Snohomish;Washington;53061;1;0
|
|
2020-01-21;Snohomish;Washington;53061;1;0
|
|
```
|
|
```
|
|
Command: `./idk scenario1.csv`
|
|
Command: `./csv2json scenario1.csv del “;”`
|
|
|
|
|
|
Output:
|
|
Output:
|
|
|
|
|
... | @@ -53,11 +54,80 @@ Output: |
... | @@ -53,11 +54,80 @@ Output: |
|
{"date":"2020-01-21";"county";"Snohomish";"state";"Washington";"fips";"53061";"cases";"1";"deaths";"0"}
|
|
{"date":"2020-01-21";"county";"Snohomish";"state";"Washington";"fips";"53061";"cases";"1";"deaths";"0"}
|
|
```
|
|
```
|
|
#### Scenario 2
|
|
#### Scenario 2
|
|
|
|
scenario2.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./idk scenario2.csv`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
#### Scenario 3
|
|
#### Scenario 3
|
|
|
|
scenario3.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./csv2json scenario3.csv -c [1-2][0-9]{3}-[0-1][0-9]-[0-3][0-9]`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
#### Scenario 4
|
|
#### Scenario 4
|
|
|
|
scenario4.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./csv2json scenario4.csv -f`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
#### Scenario 5
|
|
#### Scenario 5
|
|
|
|
scenario5.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./csv2json scenario5.csv -hf`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
#### Scenario 6
|
|
#### Scenario 6
|
|
|
|
scenario6.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./idk scenario6.csv`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
#### Scenario 7
|
|
|
|
scenario7.csv:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
```
|
|
|
|
Command: `./idk scenario7.csv`
|
|
|
|
|
|
|
|
Output:
|
|
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
``` |
|
|
|
\ No newline at end of file |