Test Case #:637
Test Case Name: Print Proof of Deliver (POD) | |
System: OpenLMIS | Subsystem: requisition |
Test case designed by: Lucyna Kwidzińska | Design Date:22.08.2016 |
Short description: As a warehouse manager performing local fill within OpenLMIS I want to be able to print a proof of delivery that shows the products, manufacturer and quantity of stock that I am issuing as part of my local fill process so that I have a record of what I issued and so I can receive a signature from the destination facility in order to comply with the SOP. |
|
Pre – conditions: |
Step | Action | Expected system response | Comment |
1 | Generate the token for authentication. | Token is generated.
| |
2 | Create FacilityType URL: http://localhost:8080/api/facilityTypes/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738
Example body: { "code": "typecode", "name": "typename", "displayOrder": "3" }
|
| ||
3 | Create geographicZone
URL: http://localhost:8080/api/geographicZones/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "geolcode", "name": "geoname", "level": "http://localhost:8080/api/geographicLevels/1f168007-f639-40ab-b221-fe82a8959199" } |
| ||
4 | Create geographicLevel
URL: http://localhost:8080/api/geographicLevels/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "levelcode", "name": "levelname", "levelNumber": "3" } |
| |
5 | Create Facility
URL: http://localhost:8080/api/facilities/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "facilitycode", "name": "facilityname", "geographicZone": "http://localhost:8080/api/geographicZones/ |
"active": "true", "enabled": "true" } |
| |
6 | Create User
URL: http://localhost:8080/api/users/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "username": "test |
", "firstName": "test1", "lastName": "test2", "verified": true, "active": true } | status 201 created is returned, |
| ||
7 | Create Program
URL: http://localhost:8080/api/programs?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "programcode", "name": "programname", "description": "abc", "periodsSkippable": true
} |
| ||
8 | Create Schedule
URL: http://localhost:8080/api/schedules/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "schedulemcode", "name": "schedulename"
} |
9 | Create Period
URL: http://localhost:8080/api/periods/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "processingSchedule": { "id": " |
"code": "schedulemcode", "name": "schedulename" }, "name": "periodname", "startDate": "2016-08-25", "endDate": "2016-09-25"
} | status 201 created is returned, |
4878678f- |
fdc0- |
4a75- |
a0b2- |
55f143241c0d"
|
|
10 | Create requisition URL: http://localhost:8080/api/requisitions/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "facility": "http://localhost:8080/api/facilities/ |
"program": "http://localhost:8080/api/programs/ |
"processingPeriod": "http://localhost:8080/api/periods/ |
"status": "SUBMITTED"
} | status 201 created is returned, id: |
|
|
11 | Create Order
URL: http://localhost:8080/api/orders/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "requisition": "http://localhost:8080/api/requisitions/ |
"createdBy": "http://localhost:8080/api/users/ |
"program": "http://localhost:8080/api/programs/ |
"requestingFacility": "http://localhost:8080/api/facilities/ |
"receivingFacility": "http://localhost:8080/api/facilities/ |
"supplyingFacility": "http://localhost:8080/api/facilities/ |
"orderCode": "code1234", "status": "ORDERED", "quotedCost": "123.123456" } |
12 | Create productCategory URL: http://localhost:8080/api/productCategories/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "categorycode", "name": "categoryname", "displayOrder": "44" } |
13 | Create Product URL: http://localhost:8080/api/products/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "code": "productcode", "primaryName": "productname1", "dispensingUnit": "unit34", "dosesPerDispensingUnit": "4", "packSize": "4", "packRoundingThreshold": "4", "roundToZero": true, "active": true, "fullSupply": true, "tracer": true, "productCategory": |
} |
14 | Create OrderLine URL: http://localhost:8080/api/orderLines/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "order": "http://localhost:8080/api/orders/16889820-febe-4699-bc92-b0d3f6504f2b", "product": "http://localhost:8080/api/products/e849ef39-dd23-4f73-b983-8c4b7577bb3f", "orderedQuantity": "12", "filledQuantity": "12" } | status 201 created is returned, id: |
15 | Create ProofOfDelivery URL: http://localhost:8080/api/proofOfDeliveries/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "order": |
"totalShippedPacks": 2, "totalReceivedPacks": 2, "totalReturnedPacks": 2, "deliveredBy": "testuser", "receivedBy": "testureceiver", "receivedData": "2016-08-26"
}
|
16 | Create printProofOfDeliveryLine URL: http://localhost:8080/api/proofOfDeliveryLines/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "orderLine": |
"proofOfDelivery": |
"packToShip": 2, "quantityShipped": 2, "quantityReceived": 2, "quantityReturned": 0, "notes": "somenotes"
} | status 201 created is returned, id: http://localhost:8080/api/proofOfDeliveryLines/ec6b8c5c-bdca-4b4c-bac0-7ad222c4b542" | |
17 | Create the another ProofOfDeliveryLine with another orderLine |
/?access_token=804fd76a-4056-4b65-9aed-8ddbbbabb738 Example body: { "orderLine": "http://localhost:8080/api/orderLines/9abe0c32-e5d5-477a-a6ef-6a52721f012c", "proofOfDelivery": "http://localhost:8080/api/proofOfDeliveries/b4386e94-df0e-4568-8320-06fa91a2a3b6", "packToShip": 2, "quantityShipped": 2, "quantityReceived": 2, "quantityReturned": 0, "notes": "somenotes"
} | the second orderLine must contain the other product and productCategory (the creation process is described in points 12-14). | ||
18 | Add report PDF template: URL: http://localhost:8080/api/templates?access_token=fb4ebbfc-2ef2-40e7-8ee9-ccdfa508487f Method: POST Body (form-data):
| status: 200 OK should be returned. |
19 | Print POD as PDF report.
Method: GET
| File should be saved in proper location. After opening, the PDF report with filled fields should be seen. |
Post – conditions: |