From 992dd0bd54322c8cf00c9c994404d059894b9316 Mon Sep 17 00:00:00 2001 From: Carlosokumu Date: Mon, 7 Oct 2024 19:05:36 +0300 Subject: [PATCH] factor out setup test --- driver/testdata.go | 2 +- test_engine/test_data.json | 536 ------------------------------------ test_engine/test_setup.json | 219 +++++++++++++++ 3 files changed, 220 insertions(+), 537 deletions(-) delete mode 100644 test_engine/test_data.json create mode 100644 test_engine/test_setup.json diff --git a/driver/testdata.go b/driver/testdata.go index 9603c00..673d417 100644 --- a/driver/testdata.go +++ b/driver/testdata.go @@ -22,7 +22,7 @@ type Session struct { } func ReadData() []Session { - data, err := os.ReadFile("test_data.json") + data, err := os.ReadFile("test_setup.json") if err != nil { log.Fatalf("Failed to read file: %v", err) } diff --git a/test_engine/test_data.json b/test_engine/test_data.json deleted file mode 100644 index 4af08e9..0000000 --- a/test_engine/test_data.json +++ /dev/null @@ -1,536 +0,0 @@ -[ - { - "name": "session one", - "groups": [ - { - "name": "account_creation_successful", - "steps": [ - { - "input": "", - "expectedContent": "Welcome to Sarafu Network\nPlease select a language\n0:english\n1:kiswahili" - }, - { - "input": "0", - "expectedContent": "Do you agree to terms and conditions?\n0:yes\n1:no" - }, - { - "input": "0", - "expectedContent": "Please enter a new four number PIN for your account:\n0:Exit" - }, - { - "input": "1234", - "expectedContent": "Enter your four number PIN again:" - }, - { - "input": "1111", - "expectedContent": "The PIN is not a match. Try again\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Enter your four number PIN again:" - }, - { - "input": "1234", - "expectedContent": "Your account is being created...Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "account_creation_reject_terms", - "steps": [ - { - "input": "", - "expectedContent": "Welcome to Sarafu Network\nPlease select a language\n0:english\n1:kiswahili" - }, - { - "input": "0", - "expectedContent": "Do you agree to terms and conditions?\n0:yes\n1:no" - }, - { - "input": "1", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "send_with_invalid_inputs", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Enter recipient's phone number:\n0:Back" - }, - { - "input": "000", - "expectedContent": "000 is not registered or invalid, please try again:\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Enter recipient's phone number:\n0:Back" - }, - { - "input": "065656", - "expectedContent": "Maximum amount: 0.003 CELO\nEnter amount:\n0:Back" - }, - { - "input": "0.1", - "expectedContent": "Amount 0.1 is invalid, please try again:\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Maximum amount: 0.003 CELO\nEnter amount:\n0:Back" - }, - { - "input": "0.001", - "expectedContent": "065656 will receive 0.001 from {public_key}\nPlease enter your PIN to confirm:\n0:Back\n9:Quit" - }, - { - "input": "1222", - "expectedContent": "Incorrect pin\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "065656 will receive 0.001 from {public_key}\nPlease enter your PIN to confirm:\n0:Back\n9:Quit" - }, - { - "input": "1234", - "expectedContent": "Your request has been sent. 065656 will receive 0.001 from {public_key}." - } - ] - }, - { - "name": "main_menu_help", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "4", - "expectedContent": "For more help,please call: 0757628885" - } - ] - }, - { - "name": "main_menu_quit", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "my_account_change_pin", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "5", - "expectedContent": "PIN Management\n1:Change PIN\n2:Reset other's PIN\n3:Guard my PIN\n0:Back" - }, - { - "input": "1", - "expectedContent": "Enter your old PIN\n0:Back" - }, - { - "input": "1234", - "expectedContent": "Enter a new four number PIN:\n0:Back" - }, - { - "input": "1234", - "expectedContent": "Confirm your new PIN:\n0:Back" - }, - { - "input": "1234", - "expectedContent": "Your PIN change request has been successful\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_language_change", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "2", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1235", - "expectedContent": "Incorrect pin\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Select language:\n0:english\n1:kiswahili" - }, - { - "input": "0", - "expectedContent": "Your language change request was successful.\n0:Back\n9:Quit" - }, - { - "input": "0", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_firstname", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "1", - "expectedContent": "Enter your first names:\n0:Back" - }, - { - "input": "foo", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_familyname", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "2", - "expectedContent": "Enter family name:\n0:Back" - }, - { - "input": "bar", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_gender", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "3", - "expectedContent": "Select gender: \n1:Male\n2:Female\n3:Unspecified\n0:Back" - }, - { - "input": "1", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_yob", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "4", - "expectedContent": "Enter your year of birth\n0:Back" - }, - { - "input": "1945", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_location", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "5", - "expectedContent": "Enter your location:\n0:Back" - }, - { - "input": "Kilifi", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_edit_offerings", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "6", - "expectedContent": "Enter the services or goods you offer: \n0:Back" - }, - { - "input": "Bananas", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Profile updated successfully\n0:Back\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!{{.Variable}}" - } - ] - }, - { - "name": "menu_my_account_view_profile", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "1", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "7", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "My profile:\nName: foo bar\nGender: male\nAge: 79\nLocation: Kilifi\nYou provide: Bananas\n\n0:Back" - }, - { - "input": "0", - "expectedContent": "My profile\n1:Edit name\n2:Edit family name\n3:Edit gender\n4:Edit year of birth\n5:Edit location\n6:Edit offerings\n7:View profile\n0:Back" - }, - { - "input": "0", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "0", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - }, - { - "name": "menu_my_account_check_my_balance", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "3", - "expectedContent": "Balances:\n1:My balance\n2:Community balance\n0:Back" - }, - { - "input": "1", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1235", - "expectedContent": "Incorrect pin\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Your balance is: 0.00 SRFYour account balance is 0.003 CELO" - } - ] - }, - { - "name": "menu_my_account_check_community_balance", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "3", - "expectedContent": "Balances:\n1:My balance\n2:Community balance\n0:Back" - }, - { - "input": "2", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1235", - "expectedContent": "Incorrect pin\n1:retry\n9:Quit" - }, - { - "input": "1", - "expectedContent": "Please enter your PIN:" - }, - { - "input": "1234", - "expectedContent": "Your balance is: 0.00 SRFYour account balance is 0.003 CELO" - } - ] - }, - { - "name": "menu_my_account_my_address", - "steps": [ - { - "input": "", - "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" - }, - { - "input": "3", - "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" - }, - { - "input": "6", - "expectedContent": "Address: {public_key}\n9:Quit" - }, - { - "input": "9", - "expectedContent": "Thank you for using Sarafu. Goodbye!" - } - ] - } - ] - } -] \ No newline at end of file diff --git a/test_engine/test_setup.json b/test_engine/test_setup.json new file mode 100644 index 0000000..6793391 --- /dev/null +++ b/test_engine/test_setup.json @@ -0,0 +1,219 @@ +[ + { + "name": "session one", + "groups": [ + { + "name": "account_creation_successful", + "steps": [ + { + "input": "", + "expectedContent": "Welcome to Sarafu Network\nPlease select a language\n0:english\n1:kiswahili" + }, + { + "input": "0", + "expectedContent": "Do you agree to terms and conditions?\n0:yes\n1:no" + }, + { + "input": "0", + "expectedContent": "Please enter a new four number PIN for your account:\n0:Exit" + }, + { + "input": "1234", + "expectedContent": "Enter your four number PIN again:" + }, + { + "input": "1111", + "expectedContent": "The PIN is not a match. Try again\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Enter your four number PIN again:" + }, + { + "input": "1234", + "expectedContent": "Your account is being created...Thank you for using Sarafu. Goodbye!" + } + ] + }, + { + "name": "account_creation_reject_terms", + "steps": [ + { + "input": "", + "expectedContent": "Welcome to Sarafu Network\nPlease select a language\n0:english\n1:kiswahili" + }, + { + "input": "0", + "expectedContent": "Do you agree to terms and conditions?\n0:yes\n1:no" + }, + { + "input": "1", + "expectedContent": "Thank you for using Sarafu. Goodbye!" + } + ] + }, + { + "name": "send_with_invalid_inputs", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Enter recipient's phone number:\n0:Back" + }, + { + "input": "000", + "expectedContent": "000 is not registered or invalid, please try again:\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Enter recipient's phone number:\n0:Back" + }, + { + "input": "065656", + "expectedContent": "Maximum amount: 0.003 CELO\nEnter amount:\n0:Back" + }, + { + "input": "0.1", + "expectedContent": "Amount 0.1 is invalid, please try again:\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Maximum amount: 0.003 CELO\nEnter amount:\n0:Back" + }, + { + "input": "0.001", + "expectedContent": "065656 will receive 0.001 from {public_key}\nPlease enter your PIN to confirm:\n0:Back\n9:Quit" + }, + { + "input": "1222", + "expectedContent": "Incorrect pin\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "065656 will receive 0.001 from {public_key}\nPlease enter your PIN to confirm:\n0:Back\n9:Quit" + }, + { + "input": "1234", + "expectedContent": "Your request has been sent. 065656 will receive 0.001 from {public_key}." + } + ] + }, + { + "name": "main_menu_help", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "4", + "expectedContent": "For more help,please call: 0757628885" + } + ] + }, + { + "name": "main_menu_quit", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "9", + "expectedContent": "Thank you for using Sarafu. Goodbye!" + } + ] + }, + { + "name": "menu_my_account_check_my_balance", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "3", + "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" + }, + { + "input": "3", + "expectedContent": "Balances:\n1:My balance\n2:Community balance\n0:Back" + }, + { + "input": "1", + "expectedContent": "Please enter your PIN:" + }, + { + "input": "1235", + "expectedContent": "Incorrect pin\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Please enter your PIN:" + }, + { + "input": "1234", + "expectedContent": "Your balance is: 0.00 SRFYour account balance is 0.003 CELO" + } + ] + }, + { + "name": "menu_my_account_check_community_balance", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "3", + "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" + }, + { + "input": "3", + "expectedContent": "Balances:\n1:My balance\n2:Community balance\n0:Back" + }, + { + "input": "2", + "expectedContent": "Please enter your PIN:" + }, + { + "input": "1235", + "expectedContent": "Incorrect pin\n1:retry\n9:Quit" + }, + { + "input": "1", + "expectedContent": "Please enter your PIN:" + }, + { + "input": "1234", + "expectedContent": "Your balance is: 0.00 SRFYour account balance is 0.003 CELO" + } + ] + }, + { + "name": "menu_my_account_my_address", + "steps": [ + { + "input": "", + "expectedContent": "Balance: 0.003 CELO\n\n1:Send\n2:My Vouchers\n3:My Account\n4:Help\n9:Quit" + }, + { + "input": "3", + "expectedContent": "My Account\n1:Profile\n2:Change language\n3:Check balances\n4:Check statement\n5:PIN options\n6:My Address\n0:Back" + }, + { + "input": "6", + "expectedContent": "Address: {public_key}\n9:Quit" + }, + { + "input": "9", + "expectedContent": "Thank you for using Sarafu. Goodbye!" + } + ] + } + ] + } +] \ No newline at end of file