2021-05-14 09:30:50 +02:00
test_name : Create an account through the cic_user_ussd_server entrypoint.
marks :
- usefixtures :
2021-05-15 12:57:54 +02:00
- gift_value
- server_url
- token_symbol
2021-05-14 09:30:50 +02:00
- generate_session_id
- first_account_phone_number
- second_account_phone_number
2021-05-17 15:00:19 +02:00
- first_account_family_name
- second_account_family_name
- first_account_given_name
- second_account_given_name
- first_transaction_session_id
- second_transaction_session_id
2021-05-14 09:30:50 +02:00
- first_metadata_entry_session_id
- second_metadata_entry_session_id
stages :
- name : Initiate account creation process [first account].
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{generate_session_id}"
phoneNumber : "{first_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '175'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "END Your account is being created. You will receive an SMS when your account is ready.\nAkaunti yako ya Sarafu inatayarishwa. Utapokea ujumbe wa SMS akaunti yako ikiwa tayari.\n"
- name : Initiate account creation process [second account].
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{generate_session_id}"
phoneNumber : "{second_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '175'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "END Your account is being created. You will receive an SMS when your account is ready.\nAkaunti yako ya Sarafu inatayarishwa. Utapokea ujumbe wa SMS akaunti yako ikiwa tayari.\n"
delay_after : 5
- name : Initaite account metadata entry [first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '53'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Welcome to Sarafu\n1. English\n2. Kiswahili\n3. Help"
- name : Initaite account metadata entry [second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '53'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Welcome to Sarafu\n1. English\n2. Kiswahili\n3. Help"
- name : Select preferred language [English]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '54'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Please enter a PIN to manage your account.\n0. Back"
- name : Select preferred language [Kiswahili]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '59'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Tafadhali weka PIN ili kudhibiti akaunti yako.\n0. Nyuma"
- name : Enter pin number [0000 - first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*0000"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '32'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter your PIN again\n0. Back"
- name : Enter pin number [1212 - second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2*1212"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '31'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka PIN yako tena\n0. Nyuma"
- name : Pin number confirmation [0000 - first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*0000*0000"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '28'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter first name\n0. Back"
- name : Pin number confirmation [1212 - second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2*1212*1212"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '37'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka jina lako la kwanza\n0. Nyuma"
2021-05-17 15:00:19 +02:00
- name : Enter first name [first_account_given_name - first account]
2021-05-14 09:30:50 +02:00
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
2021-05-17 15:00:19 +02:00
text : "1*0000*0000*{first_account_given_name}"
2021-05-14 09:30:50 +02:00
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '27'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter last name\n0. Back"
2021-05-17 15:00:19 +02:00
- name : Enter first name [second_account_given_name - second account]
2021-05-14 09:30:50 +02:00
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
2021-05-17 15:00:19 +02:00
text : "2*1212*1212*{second_account_given_name}"
2021-05-14 09:30:50 +02:00
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '37'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka jina lako la mwisho\n0. Nyuma"
2021-05-17 15:00:19 +02:00
- name : Enter last name [first_account_family_name - first account]
2021-05-14 09:30:50 +02:00
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
2021-05-17 15:00:19 +02:00
text : "1*0000*0000*{first_account_given_name}*{first_account_family_name}"
2021-05-14 09:30:50 +02:00
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '42'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter gender\n1. Male\n2. Female\n0. Back"
2021-05-17 15:00:19 +02:00
- name : Enter last name [second_account_family_name - second account]
2021-05-14 09:30:50 +02:00
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
2021-05-17 15:00:19 +02:00
text : "2*1212*1212*{second_account_given_name}*{second_account_family_name}"
2021-05-14 09:30:50 +02:00
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '53'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka jinsia yako\n1. Mwanaume\n2. Mwanamke\n0. Nyuma"
- name : Select gender [Male - first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*0000*0000*Kimani*Omollo*1"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '26'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter location\n0. Back"
- name : Select gender [Female - second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2*1212*1212*Chebet*Musau*2"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '27'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka eneo lako\n0. Nyuma"
- name : Enter location [Kangemi - first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*0000*0000*Kimani*Omollo*1*Kangemi"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '55'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Please enter a product or service you offer\n0. Back"
- name : Enter location [Gachororo - second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2*1212*1212*Chebet*Musau*2*Gachororo"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '52'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Tafadhali weka bidhaa ama huduma unauza\n0. Nyuma"
- name : Enter product [Potatoes - first account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{first_metadata_entry_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*0000*0000*Kimani*Omollo*1*Kangemi*Potatoes"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '51'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
2021-05-15 12:57:54 +02:00
expected_response : "CON Balance {gift_value} {token_symbol}\n1. Send\n2. My Account\n3. Help"
2021-05-17 15:00:19 +02:00
delay_before : 10
2021-05-14 09:30:50 +02:00
- name : Enter product [Mkalimani - second account]
request :
2021-05-15 12:57:54 +02:00
url : "{server_url}"
2021-05-14 09:30:50 +02:00
data :
serviceCode : "*483*46#"
sessionId : "{second_metadata_entry_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "2*1212*1212*Chebet*Musau*2*Gachororo*Mkalimani"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '56'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
2021-05-15 12:57:54 +02:00
expected_response : "CON Salio {gift_value} {token_symbol}\n1. Tuma\n2. Akaunti yangu\n3. Usaidizi"
2021-05-17 15:00:19 +02:00
delay_before : 10
- name : Start menu [first account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{first_transaction_session_id}"
phoneNumber : "{first_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '51'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Balance {gift_value} {token_symbol}\n1. Send\n2. My Account\n3. Help"
- name : Start menu [second account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{second_transaction_session_id}"
phoneNumber : "{second_account_phone_number}"
text : ""
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '56'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Salio {gift_value} {token_symbol}\n1. Tuma\n2. Akaunti yangu\n3. Usaidizi"
- name : Initate transcation attempt [first account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{first_transaction_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '30'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter phone number\n0. Back"
- name : Initate transcation attempt [second account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{second_transaction_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "1"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '33'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka nambari ya simu\n0. Nyuma"
- name : Enter phone number [first account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{first_transaction_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*{second_account_phone_number}"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '24'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Enter amount\n0. Back"
- name : Enter phone number [second account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{second_transaction_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "1*{first_account_phone_number}"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Length : '25'
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON Weka kiwango\n0. Nyuma"
- name : Enter transcation amount [first account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{first_transaction_session_id}"
phoneNumber : "{first_account_phone_number}"
text : "1*{second_account_phone_number}*17"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON {second_account_given_name} {second_account_family_name} {second_account_phone_number} will receive 17.00 {token_symbol} from {first_account_given_name} {first_account_family_name} {first_account_phone_number}.\nPlease enter your PIN to confirm.\n0. Back"
- name : Enter transcation amount [second account]
request :
url : "{server_url}"
data :
serviceCode : "*483*46#"
sessionId : "{second_transaction_session_id}"
phoneNumber : "{second_account_phone_number}"
text : "1*{first_account_phone_number}*25"
headers :
content-type : "application/x-www-form-urlencoded"
method : POST
response :
status_code :
- 200
headers :
Content-Type : "text/plain"
verify_response_with :
function : ext.validator:validate_response
extra_kwargs :
expected_response : "CON {first_account_given_name} {first_account_family_name} {first_account_phone_number} atapokea 25.00 {token_symbol} kutoka kwa {second_account_given_name} {second_account_family_name} {second_account_phone_number}.\nTafadhali weka nambari yako ya siri kudhibitisha.\n0. Nyuma"