Skip to content

Latest commit

 

History

History
44 lines (34 loc) · 2.42 KB

SimpleSend_TestReqs.md

File metadata and controls

44 lines (34 loc) · 2.42 KB

Simple Send

Transaction Type 0: Simple Send

Each application under test (AUT) must adhere to The Master Protocol / Mastercoin Complete Specification and pass the applicable tests listed in Major Items & Scenarios To Be Tested.

The tests for Simple Send include:

  1. user is able to enter valid values for all appropriate fields:
    • Currency identifier
    • Amount to transfer
    • Recipient address
    • fields for the Bitcoin protocol
  2. valid input data is parsed and interpreted correctly, including all valid MSC Protocol transaction types in the blockchain that are supported by the AUT
  3. erroneous input data, including a corrupted blockchain, is detected as not valid and handled correctly
  4. correct Simple Send transactions are generated from valid test input data
  5. runtime error conditions are detected and handled correctly (e.g. insufficient funds, application/network/OS failure)
  6. all edge cases are handled correctly
  7. correct, meaningful messages reflecting transaction success/status or failure are presented to the user

For each test sequence, start in a known state and return to a known state after the test is complete. Run the tests separately and also simultaneously. The simultaneous tests should be run by the same users/addresses in the same roles where possible, and also by different users/addresses.

Where appropriate, tests should be run using the end-user UI and using the API directly.

Positive Tests - Valid

Create a Valid Simple Send

  1. U1: Create Simple Send message(s) with valid values for:
    • Currency identifier
    • Amount to transfer
    • U2 Recipient address
  2. U1: See that you no longer own the amount transferred
  3. U2: See that you now own the amount transferred

Negative Tests - Not valid

Attempt to Create an Incorrect Simple Send

  1. U1: Attempt to create Simple Send message(s):
    • Currency identifier = 0 or any non-existent id or any id not owned by the address
    • Amount to transfer = 0
    • U2 Recipient address
  2. U1: See that you still own the amount
  3. U2: See that you do not own the amount

The tester and developer should work together to write and run procedures that thoroughly test this functionality in the AUT.