public void CreateSubAccount_InvalidSecretKey_ReturnsError() { // Arrange string bankCode = AppConstants.ACCESS_BANK_CODE; string accountNumber = AppConstants.VALID_ACCESSBANK_ACCOUNT_NUMBER; string businessName = AppConstants.SAMPLE_BUSINESS_NAME; string businessEmail = AppConstants.SAMPLE_EMAIL; double splitValue = 0.5; string businessContact = AppConstants.SAMPLE_CUSTOMER_NAME; string businessContactMobile = AppConstants.SAMPLE_PHONE_NUMBER; string businessMobile = AppConstants.SAMPLE_PHONE_NUMBER; var flutterwaveSecretKey = ""; _subAccounts = new SubAccounts(new FlutterwaveApi(flutterwaveSecretKey)); // Act var result = _subAccounts.CreateSubAccount(bankCode, accountNumber, businessName, businessEmail, Country.Nigeria, SplitType.Percentage, splitValue, businessContact, businessContactMobile, businessMobile); // Assert Assert.NotNull(result); Assert.IsType <CreateSubAccountResponse>(result); Assert.Equal(expected: AppConstants.ERROR_STATUS, actual: result.Status); Assert.Equal(expected: AppConstants.INVALID_AUTHORIZATION_KEY_ERROR_MESSAGE, actual: result.Message); Assert.Null(result.Data); }
public void CreateSubAccount_ExistingSubAccountWithAccountNumberAndBank_ReturnsError() { // Arrange string bankCode = AppConstants.ACCESS_BANK_CODE; string accountNumber = AppConstants.VALID_ACCESSBANK_ACCOUNT_NUMBER; string businessName = AppConstants.SAMPLE_BUSINESS_NAME; string businessEmail = AppConstants.SAMPLE_EMAIL; double splitValue = 0.5; string businessContact = AppConstants.SAMPLE_CUSTOMER_NAME; string businessContactMobile = AppConstants.SAMPLE_PHONE_NUMBER; string businessMobile = AppConstants.SAMPLE_PHONE_NUMBER; // Act var result1 = _subAccounts.CreateSubAccount(bankCode, accountNumber, businessName, businessEmail, Country.Nigeria, SplitType.Percentage, splitValue, businessContact, businessContactMobile, businessMobile); var result2 = _subAccounts.CreateSubAccount(bankCode, accountNumber, businessName, businessEmail, Country.Nigeria, SplitType.Percentage, splitValue, businessContact, businessContactMobile, businessMobile); // Delete newly created subAccount // for purposing of re-creating in future test runs _subAccounts.DeleteSubAccount(result1.Data.Id); // Assert Assert.NotNull(result2); Assert.IsType <CreateSubAccountResponse>(result2); Assert.Equal(expected: AppConstants.ERROR_STATUS, actual: result2.Status); Assert.Equal(expected: AppConstants.EXISTING_SUB_ACCOUNT_ERROR_MESSAGE, actual: result2.Message); Assert.Null(result2.Data); }