# #169031182 MMBC - Top Up Uang Elektronik
https://www.pivotaltracker.com/story/show/169031182
## Test Scenario
### Transaction
```gherkin
Scenario: Create Transaction and Get Detail Transaction
Given Inquiry succeed
When input mock number <mock_number>, product id <product_id>, and bill item id <bill_item_id>
Then transaction has been created
And Get HTTP response code <HTTP_RC_Inquiry> and response code <rc_inquiry>
When get transaction detail from transaction
Then Get HTTP response code <HTTP_RC_trx> and response code <rc_trx>
Examples:
|Transaction|mock_number|product_id|HTTP_RC_Inquiry|rc_inquiry|HTTP_RC_trx|rc_trx|
|...|...|...|...|...|...|...|
```
#### On SSH Log (Request Body)
```gherkin
On Inquiry
Scenario: Check "raw_data" on adapter.request
Given User already success made the transaction
When User grep SSH log on Terminal
Then SSH log appeared
And Get the parameter in "raw_data" is same with "Document for Inquiry Request"
On Payment
Scenario: Check "raw_data" on adapter.request
Given User already success made the transaction
When User grep SSH log on Terminal
Then SSH log appeared
And Get the parameter in "raw_data" is same with "Document for Payment Request"
Scenario: Check "paramrequest" on biller.purchase.request
Given User already success made the transaction
When User grep SSH log on Terminal
Then SSH log appeared
And Get the value in every parameter on "paramrequest" is same with the value in every parameter on "raw_data" on adapter.request
Scenario: Check "requestmessage" on callback
Given User already success made the transaction
When User grep SSH log on Terminal
Then SSH log appeared
And Get the parameter in "requestmessage" is same with "Document for Response Get Transaction Detail"
```
#### On SSH Log (Response Body)
```gherkin
Scenario: Inquiry Success
Given "Request inquiry body" already exist
When User do inquiry
Then Inquiry succeed
And "response" on Inquiry SSH Log appeared
And Get the value in every parameter on "Response body" has results that match with "Inquiry Response Parameter Mapping" on "Document" based on "response" on Inquiry SSH Log
Scenario: Payment Success
Given "Request payment body" already exist
When User do payment
Then Payment succeed
And "response" on Payment SSH Log appeared
And Get the value in every parameter on "Response body" has results that match with "Payment Response Parameter Mapping" on "Document" based on "response" on Payment SSH Log
```
#### Manual Update
```gherkin
Scenario: Force to Failed
Given User already success made the transaction
And User already on transaction page on Sentinel
When Search the transaction by transaction_id
And User do manual update (Force to Failed) for the transaction
Then "Force to Failed" succeed
And The "Success" transaction changed into "Failed"
Scenario: Force to Success
Given User already success made the transaction
And User already on transaction page on Sentinel
When Search the transaction by transaction_id
And User do manual update (Force to Success) for the transaction
And Input "Ref Number" in the "Manual Update Form"
Then "Force to Success" succeed
And The "Failed" transaction changed into "Success"
```