From 466acc372f95cdb9b010caf4b0ccc685aa47dd63 Mon Sep 17 00:00:00 2001 From: James Hancock Date: Wed, 8 Dec 2021 10:39:12 -0500 Subject: [PATCH 1/5] .netstandard 2.0 initial migration --- .vs/AuthorizeNET/DesignTimeBuild/.dtbcache.v2 | Bin 0 -> 55689 bytes .../config/applicationhost.config | 1016 + .vs/AuthorizeNET/project-colors.json | 21 + .vs/AuthorizeNET/v17/.futdcache.v1 | Bin 0 -> 279 bytes .vs/AuthorizeNET/v17/TestStore/0/017.testlog | Bin 0 -> 150994 bytes .../v17/TestStore/0/testlog.manifest | Bin 0 -> 24 bytes Authorize.NET/AuthorizeNET.csproj | 128 +- .../Api/ControllerTemplateTest.cst | 71 + .../ARBCancelSubscriptionControllerTest.cs | 69 + .../ARBCreateSubscriptionControllerTest.cs | 72 + .../ARBGetSubscriptionControllerTest.cs | 108 + .../ARBGetSubscriptionListControllerTest.cs | 87 + .../ARBGetSubscriptionStatusControllerTest.cs | 71 + .../ARBUpdateSubscriptionControllerTest.cs | 67 + .../authenticateTestControllerTest.cs | 70 + ...ateCustomerPaymentProfileControllerTest.cs | 72 + .../createCustomerProfileControllerTest.cs | 74 + ...merProfileFromTransactionControllerTest.cs | 74 + ...ustomerProfileTransactionControllerTest.cs | 79 + ...teCustomerShippingAddressControllerTest.cs | 71 + .../createFingerPrintControllerTest.cs | 86 + .../MockTest/createProfileControllerTest.cs | 74 + .../createTransactionControllerTest.cs | 75 + .../decryptPaymentDataControllerTest.cs | 71 + ...eteCustomerPaymentProfileControllerTest.cs | 68 + .../deleteCustomerProfileControllerTest.cs | 68 + ...teCustomerShippingAddressControllerTest.cs | 68 + .../MockTest/getAUJobDetailsControllerTest.cs | 71 + .../MockTest/getAUJobSummaryControllerTest.cs | 71 + .../getBatchStatisticsControllerTest.cs | 75 + ...getCustomerPaymentProfileControllerTest.cs | 75 + ...ustomerPaymentProfileListControllerTest.cs | 121 + .../getCustomerProfileControllerTest.cs | 75 + .../getCustomerProfileIdsControllerTest.cs | 71 + ...etCustomerShippingAddressControllerTest.cs | 75 + .../getHostedPaymentPageControllerTest.cs | 71 + .../getHostedProfilePageControllerTest.cs | 71 + .../getMerchantDetailsControllerTest.cs | 71 + .../getSettledBatchListControllerTest.cs | 78 + .../getTransactionDetailsControllerTest.cs | 75 + .../getTransactionListControllerTest.cs | 78 + ...ransactionListForCustomerControllerTest.cs | 71 + ...tUnsettledTransactionListControllerTest.cs | 78 + .../MockTest/isAliveControllerTest.cs | 70 + .../MockTest/logoutControllerTest.cs | 70 + .../mobileDeviceLoginControllerTest.cs | 76 + .../mobileDeviceRegistrationControllerTest.cs | 68 + .../securePaymentContainerControllerTest.cs | 67 + ...ustomerTransactionReceiptControllerTest.cs | 68 + .../MockTest/transactionControllerTest.cs | 74 + .../transactionResponseEmvControllerTest.cs | 71 + ...ateCustomerPaymentProfileControllerTest.cs | 71 + .../updateCustomerProfileControllerTest.cs | 68 + ...teCustomerShippingAddressControllerTest.cs | 68 + .../updateHeldTransactionControllerTest.cs | 77 + .../updateMerchantDetailsControllerTest.cs | 69 + .../updateSplitTenderGroupControllerTest.cs | 68 + ...ateCustomerPaymentProfileControllerTest.cs | 71 + .../SampleTest/ArbSubscriptionSampleTest.cs | 160 + ...ustomerProfileFromTransactionSampleTest.cs | 194 + .../SampleTest/CreateTransactionSampleTest.cs | 543 + .../SampleTest/CustomerProfileSampleTest.cs | 125 + .../SampleTest/ErrorMessagesSampleTest.cs | 109 + .../SampleTest/eCheckTransactionSampleTest.cs | 304 + .../Controllers/Test/APIInvalidCredentials.cs | 89 + .../Controllers/Test/AllGeneratedEnumTest.cs | 348 + .../Api/Controllers/Test/ApiCoreTestBase.cs | 662 + .../Controllers/Test/ArbSubscriptionTest.cs | 491 + .../Controllers/Test/CreateTransactionTest.cs | 471 + AuthorizeNETtest.backup/App.config | 11 + .../AuthorizeNETtest.csproj | 162 + AuthorizeNETtest.backup/BaseTest.cs | 68 + .../NMock3/NMock3 Cheat Sheet.pdf | Bin .../NMock3/NMockTest.cs | 0 .../Properties/AssemblyInfo.cs | 35 + AuthorizeNETtest.backup/UnitTestData.cs | 44 + AuthorizeNETtest.backup/WebRequestLocal.cs | 133 + .../packages.config | 0 AuthorizeNETtest.backup/upgrade.backup | 1 + .../Api/ControllerTemplateTest.cst | 4 +- .../ARBCancelSubscriptionControllerTest.cs | 4 +- .../ARBCreateSubscriptionControllerTest.cs | 4 +- .../ARBGetSubscriptionControllerTest.cs | 4 +- .../ARBGetSubscriptionListControllerTest.cs | 4 +- .../ARBGetSubscriptionStatusControllerTest.cs | 4 +- .../ARBUpdateSubscriptionControllerTest.cs | 4 +- .../authenticateTestControllerTest.cs | 6 +- ...ateCustomerPaymentProfileControllerTest.cs | 6 +- .../createCustomerProfileControllerTest.cs | 6 +- ...merProfileFromTransactionControllerTest.cs | 6 +- ...ustomerProfileTransactionControllerTest.cs | 6 +- ...teCustomerShippingAddressControllerTest.cs | 6 +- .../MockTest/createProfileControllerTest.cs | 6 +- .../createTransactionControllerTest.cs | 6 +- .../decryptPaymentDataControllerTest.cs | 6 +- ...eteCustomerPaymentProfileControllerTest.cs | 6 +- .../deleteCustomerProfileControllerTest.cs | 6 +- ...teCustomerShippingAddressControllerTest.cs | 6 +- .../getBatchStatisticsControllerTest.cs | 6 +- ...getCustomerPaymentProfileControllerTest.cs | 6 +- ...ustomerPaymentProfileListControllerTest.cs | 6 +- .../getCustomerProfileControllerTest.cs | 6 +- .../getCustomerProfileIdsControllerTest.cs | 6 +- ...etCustomerShippingAddressControllerTest.cs | 6 +- .../getHostedPaymentPageControllerTest.cs | 6 +- .../getHostedProfilePageControllerTest.cs | 6 +- .../getMerchantDetailsControllerTest.cs | 6 +- .../getSettledBatchListControllerTest.cs | 6 +- .../getTransactionDetailsControllerTest.cs | 6 +- .../getTransactionListControllerTest.cs | 6 +- ...tUnsettledTransactionListControllerTest.cs | 6 +- .../MockTest/isAliveControllerTest.cs | 6 +- .../MockTest/logoutControllerTest.cs | 6 +- .../mobileDeviceLoginControllerTest.cs | 6 +- .../mobileDeviceRegistrationControllerTest.cs | 6 +- .../securePaymentContainerControllerTest.cs | 6 +- ...ustomerTransactionReceiptControllerTest.cs | 6 +- .../MockTest/transactionControllerTest.cs | 6 +- ...ateCustomerPaymentProfileControllerTest.cs | 6 +- .../updateCustomerProfileControllerTest.cs | 6 +- ...teCustomerShippingAddressControllerTest.cs | 6 +- .../updateHeldTransactionControllerTest.cs | 6 +- .../updateMerchantDetailsControllerTest.cs | 6 +- .../updateSplitTenderGroupControllerTest.cs | 6 +- ...ateCustomerPaymentProfileControllerTest.cs | 6 +- .../SampleTest/ArbSubscriptionSampleTest.cs | 4 +- ...ustomerProfileFromTransactionSampleTest.cs | 4 +- .../SampleTest/CreateTransactionSampleTest.cs | 8 +- .../SampleTest/CustomerProfileSampleTest.cs | 4 +- .../SampleTest/ErrorMessagesSampleTest.cs | 4 +- .../SampleTest/eCheckTransactionSampleTest.cs | 4 +- .../Controllers/Test/APIInvalidCredentials.cs | 4 +- .../Controllers/Test/AllGeneratedEnumTest.cs | 4 +- .../Api/Controllers/Test/ApiCoreTestBase.cs | 4 +- .../Controllers/Test/ArbSubscriptionTest.cs | 23 +- .../Controllers/Test/CreateTransactionTest.cs | 4 +- AuthorizeNETtest/App.config | 9 +- AuthorizeNETtest/AuthorizeNETtest.csproj | 41 +- AuthorizeNETtest/appsettings.json | 5 + AuthorizeNETtest/upgrade-assistant.clef | 399 + .../AuthorizeNETtest/AuthorizeNETtest.csproj | 162 + .../AuthorizeNETtest/NuGetUpgradeLog.html | 162 + .../293b108f/AuthorizeNETtest/packages.config | 4 + packages/NMock3.3.5.44/NMock3.3.5.44.nupkg | Bin 1868797 -> 0 bytes .../NMock3.3.5.44/content/NMock3/NMockTest.cs | 111 - packages/NMock3.3.5.44/lib/net35/NMock3.dll | Bin 1362944 -> 0 bytes packages/NMock3.3.5.44/lib/net35/NMock3.xml | 17587 --------------- packages/NMock3.3.5.44/lib/net40/NMock3.dll | Bin 1369600 -> 0 bytes packages/NMock3.3.5.44/lib/net40/NMock3.xml | 17648 ---------------- packages/NMock3.3.5.44/lib/sl40/NMock3.dll | Bin 384000 -> 0 bytes packages/NMock3.3.5.44/lib/sl40/NMock3.xml | 8526 -------- upgrade-assistant.clef | 401 + 152 files changed, 10096 insertions(+), 44181 deletions(-) create mode 100644 .vs/AuthorizeNET/DesignTimeBuild/.dtbcache.v2 create mode 100644 .vs/AuthorizeNET/config/applicationhost.config create mode 100644 .vs/AuthorizeNET/project-colors.json create mode 100644 .vs/AuthorizeNET/v17/.futdcache.v1 create mode 100644 .vs/AuthorizeNET/v17/TestStore/0/017.testlog create mode 100644 .vs/AuthorizeNET/v17/TestStore/0/testlog.manifest create mode 100644 AuthorizeNETtest.backup/Api/ControllerTemplateTest.cst create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/authenticateTestControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createFingerPrintControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/createTransactionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobDetailsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobSummaryControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListForCustomerControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/isAliveControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/logoutControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionResponseEmvControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/Test/APIInvalidCredentials.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/Test/AllGeneratedEnumTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/Test/ApiCoreTestBase.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/Test/ArbSubscriptionTest.cs create mode 100644 AuthorizeNETtest.backup/Api/Controllers/Test/CreateTransactionTest.cs create mode 100644 AuthorizeNETtest.backup/App.config create mode 100644 AuthorizeNETtest.backup/AuthorizeNETtest.csproj create mode 100644 AuthorizeNETtest.backup/BaseTest.cs rename {packages/NMock3.3.5.44/content => AuthorizeNETtest.backup}/NMock3/NMock3 Cheat Sheet.pdf (100%) rename {AuthorizeNETtest => AuthorizeNETtest.backup}/NMock3/NMockTest.cs (100%) create mode 100644 AuthorizeNETtest.backup/Properties/AssemblyInfo.cs create mode 100644 AuthorizeNETtest.backup/UnitTestData.cs create mode 100644 AuthorizeNETtest.backup/WebRequestLocal.cs rename {AuthorizeNETtest => AuthorizeNETtest.backup}/packages.config (100%) create mode 100644 AuthorizeNETtest.backup/upgrade.backup create mode 100644 AuthorizeNETtest/appsettings.json create mode 100644 AuthorizeNETtest/upgrade-assistant.clef create mode 100644 MigrationBackup/293b108f/AuthorizeNETtest/AuthorizeNETtest.csproj create mode 100644 MigrationBackup/293b108f/AuthorizeNETtest/NuGetUpgradeLog.html create mode 100644 MigrationBackup/293b108f/AuthorizeNETtest/packages.config delete mode 100644 packages/NMock3.3.5.44/NMock3.3.5.44.nupkg delete mode 100644 packages/NMock3.3.5.44/content/NMock3/NMockTest.cs delete mode 100644 packages/NMock3.3.5.44/lib/net35/NMock3.dll delete mode 100644 packages/NMock3.3.5.44/lib/net35/NMock3.xml delete mode 100644 packages/NMock3.3.5.44/lib/net40/NMock3.dll delete mode 100644 packages/NMock3.3.5.44/lib/net40/NMock3.xml delete mode 100644 packages/NMock3.3.5.44/lib/sl40/NMock3.dll delete mode 100644 packages/NMock3.3.5.44/lib/sl40/NMock3.xml create mode 100644 upgrade-assistant.clef diff --git a/.vs/AuthorizeNET/DesignTimeBuild/.dtbcache.v2 b/.vs/AuthorizeNET/DesignTimeBuild/.dtbcache.v2 new file mode 100644 index 0000000000000000000000000000000000000000..bd66889433facb3a9451142d38df23eac9d36bcd GIT binary patch literal 55689 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 M9bY@UUU}vJ0iOMzzyJUM literal 0 HcmV?d00001 diff --git a/.vs/AuthorizeNET/config/applicationhost.config b/.vs/AuthorizeNET/config/applicationhost.config new file mode 100644 index 00000000..0d88f0db --- /dev/null +++ b/.vs/AuthorizeNET/config/applicationhost.config @@ -0,0 +1,1016 @@ + + + + + + + +
+
+
+
+
+
+
+
+ + + +
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ +
+
+ +
+
+
+
+
+
+ +
+
+
+
+
+ +
+
+
+ +
+
+ +
+
+ +
+
+
+ + +
+
+
+
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.vs/AuthorizeNET/project-colors.json b/.vs/AuthorizeNET/project-colors.json new file mode 100644 index 00000000..92b32b4d --- /dev/null +++ b/.vs/AuthorizeNET/project-colors.json @@ -0,0 +1,21 @@ +{ + "Version": 1, + "ProjectMap": { + "5d52eaec-42fb-4313-83b8-69e2f55ebf14": { + "ProjectGuid": "5d52eaec-42fb-4313-83b8-69e2f55ebf14", + "DisplayName": "AuthorizeNET", + "ColorIndex": 0 + }, + "cda0d4d8-e4aa-4bea-8839-04d69607d914": { + "ProjectGuid": "cda0d4d8-e4aa-4bea-8839-04d69607d914", + "DisplayName": "AuthorizeNETtest", + "ColorIndex": 1 + }, + "a2fe74e1-b743-11d0-ae1a-00a0c90fffc3": { + "ProjectGuid": "a2fe74e1-b743-11d0-ae1a-00a0c90fffc3", + "DisplayName": "Miscellaneous Files", + "ColorIndex": -1 + } + }, + "NextColorIndex": 2 +} \ No newline at end of file diff --git a/.vs/AuthorizeNET/v17/.futdcache.v1 b/.vs/AuthorizeNET/v17/.futdcache.v1 new file mode 100644 index 0000000000000000000000000000000000000000..e04e6335e7eb0004f9a5ecfed8a475f91a9a550f GIT binary patch literal 279 zcmZQ#U|#3rE=f#IPAtif2~I64%S=u!j>*YPib*Uj$;dCttV-3( zOD&0Ug!BAdLl8V5M=!a!peR3!31}*>bADc0W_oE+Vo7Fx9;-`gQfWFzKu%&wT7FS3 zn`2(3b3my5Q!C-fV;A%TcirTOAlnr{drMM_k(>n;Aki_ko{8!vFV7l8038DW6!>OZ literal 0 HcmV?d00001 diff --git a/.vs/AuthorizeNET/v17/TestStore/0/017.testlog b/.vs/AuthorizeNET/v17/TestStore/0/017.testlog new file mode 100644 index 0000000000000000000000000000000000000000..807dfad940acf2edd5ad83de1b1afccc1f7938dc GIT binary patch literal 150994 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 literal 0 HcmV?d00001 diff --git a/.vs/AuthorizeNET/v17/TestStore/0/testlog.manifest b/.vs/AuthorizeNET/v17/TestStore/0/testlog.manifest new file mode 100644 index 0000000000000000000000000000000000000000..9b77aab692da58c4424b9e104ae8fc3ffaeab699 GIT binary patch literal 24 bcmXR;&-W=QP7PsZU| - + - Debug - AnyCPU - 9.0.30729 - 2.0 - {5D52EAEC-42FB-4313-83B8-69E2F55EBF14} Library - Properties - AuthorizeNet - AuthorizeNet - v4.5 - 512 - - - - - - 3.5 - AnyCPU - true - full - false bin/Debug/ - DEBUG;TRACE - prompt - 4 bin/Debug/AuthorizeNet.XML 0219,1591,1635 - false - AnyCPU - pdbonly - true bin/Release - TRACE - prompt - 4 bin/Release/AuthorizeNet.XML - false + + + netstandard2.0 + false + disable + latest - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + - + + + - - - \ No newline at end of file diff --git a/AuthorizeNETtest.backup/Api/ControllerTemplateTest.cst b/AuthorizeNETtest.backup/Api/ControllerTemplateTest.cst new file mode 100644 index 00000000..fcc2194e --- /dev/null +++ b/AuthorizeNETtest.backup/Api/ControllerTemplateTest.cst @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class APICONTROLLERNAMETest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockAPICONTROLLERNAMETest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new APICONTROLLERNAMERequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new APICONTROLLERNAMEResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "APICONTROLLERNAME: Details:{0}", controllerResponse.Yyyyy); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs new file mode 100644 index 00000000..463d2648 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs @@ -0,0 +1,69 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBCancelSubscriptionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBCancelSubscriptionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBCancelSubscriptionRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new ARBCancelSubscriptionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + LogHelper.info(Logger, "ARBCancelSubscription: "); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs new file mode 100644 index 00000000..52662b93 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs @@ -0,0 +1,72 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBCreateSubscriptionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBCreateSubscriptionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBCreateSubscriptionRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + subscription = ArbSubscriptionOne, + }; + var mockResponse = new ARBCreateSubscriptionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + subscriptionId = "1234", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.subscriptionId); + LogHelper.info(Logger, "ARBCreateSubscription: Details:{0}", controllerResponse.subscriptionId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs new file mode 100644 index 00000000..a4e6352d --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs @@ -0,0 +1,108 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBGetSubscriptionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBGetSubscriptionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBGetSubscriptionRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + subscriptionId = "1234" + }; + + var customerPaymentProfileMaskedType = new customerPaymentProfileMaskedType + { + customerPaymentProfileId = "1234", + }; + + var rnd = new AnetRandom(DateTime.Now.Millisecond); + var SubscriptionMaskedType = new ARBSubscriptionMaskedType() + { + name = "Test", + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 1, + unit = ARBSubscriptionUnitEnum.months, + }, + startDate = DateTime.UtcNow, + totalOccurrences = 12 + }, + amount = 9.99M, + amountSpecified = true, + trialAmount = 100, + trialAmountSpecified = true, + status = ARBSubscriptionStatusEnum.active, + statusSpecified = true, + profile = new subscriptionCustomerProfileType() + { + paymentProfile = customerPaymentProfileMaskedType, + + }, + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) } + }; + + var mockResponse = new ARBGetSubscriptionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + subscription = SubscriptionMaskedType + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.subscription); + LogHelper.info(Logger, "ARBGetSubscription: Details:{0}", controllerResponse.subscription); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs new file mode 100644 index 00000000..c0c35635 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs @@ -0,0 +1,87 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBGetSubscriptionListTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBGetSubscriptionListTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBGetSubscriptionListRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + refId = RefId, + searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, + paging = new Paging { limit = 100, offset = 1 }, + sorting = new ARBGetSubscriptionListSorting + { + orderBy = ARBGetSubscriptionListOrderFieldEnum.id, + orderDescending = false + }, + }; + var subscriptionDetail = new SubscriptionDetail + { + id = 1234, + accountNumber = "1234", + amount = SetValidTransactionAmount(Counter) / 100, + }; + var subscriptionDetails = new List { subscriptionDetail }; + var mockResponse = new ARBGetSubscriptionListResponse + { + refId = "1234", + sessionToken = "sessiontoken", + subscriptionDetails = subscriptionDetails.ToArray(), + totalNumInResultSet = subscriptionDetails.Count, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.subscriptionDetails); + LogHelper.info(Logger, "ARBGetSubscriptionList: Count:{0}, Details:{1}", controllerResponse.totalNumInResultSet, controllerResponse.subscriptionDetails); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs new file mode 100644 index 00000000..ae4d1718 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBGetSubscriptionStatusTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBGetSubscriptionStatusTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBGetSubscriptionStatusRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new ARBGetSubscriptionStatusResponse + { + refId = "1234", + sessionToken = "sessiontoken", + status = ARBSubscriptionStatusEnum.active, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.status); + LogHelper.info(Logger, "ARBGetSubscriptionStatus: Details:{0}", controllerResponse.status); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs new file mode 100644 index 00000000..4755480e --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs @@ -0,0 +1,67 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ARBUpdateSubscriptionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockARBUpdateSubscriptionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ARBUpdateSubscriptionRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new ARBUpdateSubscriptionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/authenticateTestControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/authenticateTestControllerTest.cs new file mode 100644 index 00000000..7615c80f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/authenticateTestControllerTest.cs @@ -0,0 +1,70 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class authenticateTestTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockauthenticateTestTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new authenticateTestRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new authenticateTestResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + +// Assert.IsNotNull(controllerResponse.); + LogHelper.info(Logger, "authenticateTest: Details:{0}", controllerResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs new file mode 100644 index 00000000..c9be0f0e --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs @@ -0,0 +1,72 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createCustomerPaymentProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateCustomerPaymentProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createCustomerPaymentProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new createCustomerPaymentProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + customerPaymentProfileId = "1234", + validationDirectResponse = "mockValidation", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.customerPaymentProfileId); + LogHelper.info(Logger, "createCustomerPaymentProfile: Details:{0}", controllerResponse.customerPaymentProfileId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs new file mode 100644 index 00000000..78c6cbe7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs @@ -0,0 +1,74 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createCustomerProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateCustomerProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createCustomerProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new createCustomerProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + customerProfileId = "1234", + customerPaymentProfileIdList = new [] {"12345"}, + customerShippingAddressIdList = new[] { "12345" }, + validationDirectResponseList = new string[] {}, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.customerProfileId); + LogHelper.info(Logger, "createCustomerProfile: Details:{0}", controllerResponse.customerProfileId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs new file mode 100644 index 00000000..66eaca41 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs @@ -0,0 +1,74 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createCustomerProfileFromTransactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateCustomerProfileFromTransactionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createCustomerProfileFromTransactionRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + transId = CounterStr, + }; + var mockResponse = new createCustomerProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + customerProfileId = CounterStr, + customerPaymentProfileIdList = new [] {CounterStr}, + customerShippingAddressIdList = new [] {CounterStr}, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.customerProfileId); + LogHelper.info(Logger, "createCustomerProfileFromTransaction: Details:{0}", controllerResponse.customerProfileId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs new file mode 100644 index 00000000..7134923c --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs @@ -0,0 +1,79 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createCustomerProfileTransactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateCustomerProfileTransactionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createCustomerProfileTransactionRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + transaction = new profileTransactionType + { + Item = new profileTransAuthCaptureType(), + }, + }; + var transactionResponse = new transactionResponse() + { + accountNumber = "1234", + }; + var mockResponse = new createCustomerProfileTransactionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transactionResponse = transactionResponse, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transactionResponse); + LogHelper.info(Logger, "createCustomerProfileTransaction: Details:{0}", controllerResponse.transactionResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs new file mode 100644 index 00000000..69caadcd --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createCustomerShippingAddressTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateCustomerShippingAddressTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createCustomerShippingAddressRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new createCustomerShippingAddressResponse + { + refId = "1234", + sessionToken = "sessiontoken", + customerAddressId = "1234", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.customerAddressId); + LogHelper.info(Logger, "createCustomerShippingAddress: Details:{0}", controllerResponse.customerAddressId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createFingerPrintControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createFingerPrintControllerTest.cs new file mode 100644 index 00000000..9bed5ea7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createFingerPrintControllerTest.cs @@ -0,0 +1,86 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using System.Globalization; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createFingerPrintTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateFingerPrintTest() + { + var fingerPrintSupportInformation = new fingerPrintSupportInformationType + { + amount = SetValidTransactionAmount(Counter) / 100, + currencyCode = "INR", + sequence = CounterStr, + timestamp = DateTime.UtcNow.ToString(CultureInfo.InvariantCulture), + }; + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createFingerPrintRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + supportInformation = fingerPrintSupportInformation, + }; + var mockResponse = new createFingerPrintResponse + { + refId = "1234", + sessionToken = "sessiontoken", + supportInformation = fingerPrintSupportInformation, + fingerPrint = new fingerPrintType + { + sequence = fingerPrintSupportInformation.sequence, + timestamp = fingerPrintSupportInformation.timestamp, + hashValue = CounterStr, + }, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.fingerPrint); + LogHelper.info(Logger, "createFingerPrint: Details:{0}", controllerResponse.fingerPrint); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createProfileControllerTest.cs new file mode 100644 index 00000000..5ef5b361 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createProfileControllerTest.cs @@ -0,0 +1,74 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + //using System; + //using System.Collections.Generic; + //using AuthorizeNet.Api.Contracts.V1; + //using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + //using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateProfileTest() + { + //createProfileRequest does not exist + /* + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createProfileRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new createProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "createProfile: Details:{0}", controllerResponse.Yyyyy); + */ + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/createTransactionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createTransactionControllerTest.cs new file mode 100644 index 00000000..e1c5a552 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/createTransactionControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class createTransactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockcreateTransactionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new createTransactionRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var transactionResponse = new transactionResponse() + { + accountNumber = "1234", + }; + var mockResponse = new createTransactionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transactionResponse = transactionResponse, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transactionResponse); + LogHelper.info(Logger, "createTransaction: Details:{0}", controllerResponse.transactionResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs new file mode 100644 index 00000000..43cac345 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class decryptPaymentDataTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockdecryptPaymentDataTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new decryptPaymentDataRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new decryptPaymentDataResponse + { + refId = "1234", + sessionToken = "sessiontoken", + paymentDetails = new paymentDetails() { amount = "15.50" } + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.paymentDetails); + LogHelper.info(Logger, "decryptPaymentData: PaymentDetailsAmount:{0}", controllerResponse.paymentDetails.amount); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs new file mode 100644 index 00000000..916c786f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class deleteCustomerPaymentProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockdeleteCustomerPaymentProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new deleteCustomerPaymentProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new deleteCustomerPaymentProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs new file mode 100644 index 00000000..94e7f127 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class deleteCustomerProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockdeleteCustomerProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new deleteCustomerProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new deleteCustomerProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs new file mode 100644 index 00000000..e87755a4 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class deleteCustomerShippingAddressTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockdeleteCustomerShippingAddressTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new deleteCustomerShippingAddressRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new deleteCustomerShippingAddressResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobDetailsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobDetailsControllerTest.cs new file mode 100644 index 00000000..78d0fa6c --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobDetailsControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getAUJobDetailsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetAUJobDetailsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getAUJobDetailsRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getAUJobDetailsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "getAUJobDetails: Details:{0}", controllerResponse.Yyyyy); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobSummaryControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobSummaryControllerTest.cs new file mode 100644 index 00000000..7a58d64f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getAUJobSummaryControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getAUJobSummaryTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetAUJobSummaryTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getAUJobSummaryRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getAUJobSummaryResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "getAUJobSummary: Details:{0}", controllerResponse.Yyyyy); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs new file mode 100644 index 00000000..79303185 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getBatchStatisticsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetBatchStatisticsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getBatchStatisticsRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var batchDetaisType = new batchDetailsType + { + batchId = "1234", + }; + var mockResponse = new getBatchStatisticsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + batch = batchDetaisType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.batch); + LogHelper.info(Logger, "getBatchStatistics: Details:{0}", controllerResponse.batch); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs new file mode 100644 index 00000000..2aa5113b --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getCustomerPaymentProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetCustomerPaymentProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getCustomerPaymentProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var customerPaymentProfileMaskedType = new customerPaymentProfileMaskedType + { + customerPaymentProfileId = "1234", + }; + var mockResponse = new getCustomerPaymentProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + paymentProfile = customerPaymentProfileMaskedType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.paymentProfile); + LogHelper.info(Logger, "getCustomerPaymentProfile: Details:{0}", controllerResponse.paymentProfile); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs new file mode 100644 index 00000000..b99e00a7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs @@ -0,0 +1,121 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getCustomerPaymentProfileListTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + string GetRandomString(string title) + { + return String.Format("{0}{1}", title, Counter); + } + + [Test] + public void MockgetCustomerPaymentProfileListTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getCustomerPaymentProfileListRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + searchType = CustomerPaymentProfileSearchTypeEnum.cardsExpiringInMonth, + month = "2020-12" + }; + + var BankAccountMaskedType = new bankAccountMaskedType() + { + accountType = bankAccountTypeEnum.savings, + accountTypeSpecified = true, + routingNumber = "1234", + accountNumber = "1234", + nameOnAccount = "Test", + echeckType = echeckTypeEnum.ARC + }; + + var PaymentMaskedType = new paymentMaskedType() + { + Item = BankAccountMaskedType + }; + + var CustomerAddress = new customerAddressType + { + firstName = GetRandomString("FName"), + lastName = GetRandomString("LName"), + company = GetRandomString("Company"), + address = GetRandomString("StreetAdd"), + city = "Bellevue", + state = "WA", + zip = "98000", + country = "USA", + phoneNumber = FormatToPhone(Counter), + faxNumber = FormatToPhone(Counter + 1), + }; + + var paymentProfile = new customerPaymentProfileListItemType() + { + customerPaymentProfileId = 1234, + customerProfileId = 1234, + billTo = CustomerAddress, + payment = PaymentMaskedType + }; + + var PaymentProfiles = new List { paymentProfile }; + + var mockResponse = new getCustomerPaymentProfileListResponse + { + refId = "1234", + sessionToken = "sessiontoken", + totalNumInResultSet = PaymentProfiles.Count, + paymentProfiles = PaymentProfiles.ToArray() + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.totalNumInResultSet); + Assert.IsNotNull(controllerResponse.paymentProfiles); + + LogHelper.info(Logger, "getCustomerPaymentProfileList: Details:{0}", controllerResponse.paymentProfiles); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs new file mode 100644 index 00000000..7cf92386 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getCustomerProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetCustomerProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getCustomerProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var customerProfileMaskedType = new customerProfileMaskedType + { + customerProfileId = "1234", + }; + var mockResponse = new getCustomerProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + profile = customerProfileMaskedType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.profile); + LogHelper.info(Logger, "getCustomerProfile: Details:{0}", controllerResponse.profile); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs new file mode 100644 index 00000000..ee7f2d91 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getCustomerProfileIdsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetCustomerProfileIdsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getCustomerProfileIdsRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getCustomerProfileIdsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + ids = new [] {"1234"}, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.ids); + LogHelper.info(Logger, "getCustomerProfileIds: Details:{0}", controllerResponse.ids); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs new file mode 100644 index 00000000..9ddc4b7a --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getCustomerShippingAddressTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetCustomerShippingAddressTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getCustomerShippingAddressRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var customerAddressExType = new customerAddressExType + { + customerAddressId = "1234", + }; + var mockResponse = new getCustomerShippingAddressResponse + { + refId = "1234", + sessionToken = "sessiontoken", + address = customerAddressExType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.address); + LogHelper.info(Logger, "getCustomerShippingAddress: Details:{0}", controllerResponse.address); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs new file mode 100644 index 00000000..26560ba8 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getHostedPaymentPageTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetHostedPaymentPageTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getHostedPaymentPageRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getHostedPaymentPageResponse + { + refId = "1234", + sessionToken = "sessiontoken", + token = "123123" + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.token); + LogHelper.info(Logger, "getHostedPaymentPage: Details:{0}", controllerResponse.token); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs new file mode 100644 index 00000000..7fcbb1ce --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getHostedProfilePageTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetHostedProfilePageTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getHostedProfilePageRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getHostedProfilePageResponse + { + refId = "1234", + sessionToken = "sessiontoken", + token = "token1234", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.token); + LogHelper.info(Logger, "getHostedProfilePage: Details:{0}", controllerResponse.token); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs new file mode 100644 index 00000000..2069a8d8 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getMerchantDetailsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetMerchantDetailsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getMerchantDetailsRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getMerchantDetailsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + gatewayId = "41234" + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.gatewayId); + LogHelper.info(Logger, "getMerchantDetails: Details:{0}", controllerResponse.gatewayId); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs new file mode 100644 index 00000000..9dd5678b --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs @@ -0,0 +1,78 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getSettledBatchListTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetSettledBatchListTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getSettledBatchListRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var batchDetailsType = new batchDetailsType[] + { + new batchDetailsType + { + batchId = "1234", + } + }; + var mockResponse = new getSettledBatchListResponse + { + refId = "1234", + sessionToken = "sessiontoken", + batchList = batchDetailsType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.batchList); + LogHelper.info(Logger, "getSettledBatchList: Details:{0}", controllerResponse.batchList); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs new file mode 100644 index 00000000..41eef08f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs @@ -0,0 +1,75 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getTransactionDetailsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetTransactionDetailsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getTransactionDetailsRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var transactionDetailsType = new transactionDetailsType + { + AVSResponse = "avs", + }; + var mockResponse = new getTransactionDetailsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transaction = transactionDetailsType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transaction); + LogHelper.info(Logger, "getTransactionDetails: Details:{0}", controllerResponse.transaction); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListControllerTest.cs new file mode 100644 index 00000000..4b2b84ea --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListControllerTest.cs @@ -0,0 +1,78 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getTransactionListTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetTransactionListTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getTransactionListRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var transactionSummaryType = new transactionSummaryType[] + { + new transactionSummaryType + { + accountNumber = "1234", + } + }; + var mockResponse = new getTransactionListResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transactions = transactionSummaryType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transactions); + LogHelper.info(Logger, "getTransactionList: Details:{0}", controllerResponse.transactions); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListForCustomerControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListForCustomerControllerTest.cs new file mode 100644 index 00000000..97fe3378 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getTransactionListForCustomerControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getTransactionListForCustomerTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetTransactionListForCustomerTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getTransactionListForCustomerRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new getTransactionListForCustomerResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "getTransactionListForCustomer: Details:{0}", controllerResponse.Yyyyy); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs new file mode 100644 index 00000000..0981c264 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs @@ -0,0 +1,78 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class getUnsettledTransactionListTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockgetUnsettledTransactionListTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new getUnsettledTransactionListRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var transactionSummaryType = new transactionSummaryType[] + { + new transactionSummaryType + { + accountNumber = "1234", + } + }; + var mockResponse = new getUnsettledTransactionListResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transactions = transactionSummaryType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transactions); + LogHelper.info(Logger, "getUnsettledTransactionList: Details:{0}", controllerResponse.transactions); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/isAliveControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/isAliveControllerTest.cs new file mode 100644 index 00000000..faf96f67 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/isAliveControllerTest.cs @@ -0,0 +1,70 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class isAliveTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockisAliveTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new ANetApiRequest + { + merchantAuthentication = new merchantAuthenticationType() { name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey }, + }; + var mockResponse = new isAliveResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + //Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "isAlive: Details:{0}", controllerResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/logoutControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/logoutControllerTest.cs new file mode 100644 index 00000000..c51edab7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/logoutControllerTest.cs @@ -0,0 +1,70 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class logoutTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MocklogoutTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new logoutRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new logoutResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + //Assert.IsNotNull(controllerResponse.); + LogHelper.info(Logger, "logout: Details:{0}", controllerResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs new file mode 100644 index 00000000..10464fe5 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs @@ -0,0 +1,76 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class mobileDeviceLoginTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockmobileDeviceLoginTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new mobileDeviceLoginRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var transRetailInfoType = new transRetailInfoType + { + deviceType = "android", + marketType = "marketplace", + }; + var mockResponse = new mobileDeviceLoginResponse + { + refId = "1234", + sessionToken = "sessiontoken", + merchantAccount = transRetailInfoType, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.merchantAccount); + LogHelper.info(Logger, "mobileDeviceLogin: Details:{0}", controllerResponse.merchantAccount); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs new file mode 100644 index 00000000..175377c6 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class mobileDeviceRegistrationTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockmobileDeviceRegistrationTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new mobileDeviceRegistrationRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new mobileDeviceRegistrationResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs new file mode 100644 index 00000000..591c594a --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs @@ -0,0 +1,67 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class securePaymentContainerTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MocksecurePaymentContainerTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new securePaymentContainerRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new securePaymentContainerResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs new file mode 100644 index 00000000..59ac0c07 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class sendCustomerTransactionReceiptTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MocksendCustomerTransactionReceiptTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new sendCustomerTransactionReceiptRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new sendCustomerTransactionReceiptResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionControllerTest.cs new file mode 100644 index 00000000..1479e9b2 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionControllerTest.cs @@ -0,0 +1,74 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + //using System; + //using System.Collections.Generic; + //using AuthorizeNet.Api.Contracts.V1; + //using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + //using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class transactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MocktransactionTest() + { + //object transactionRequest does not exist + /* + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new transactionRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new transactionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "transaction: Details:{0}", controllerResponse.Yyyyy); + */ + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionResponseEmvControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionResponseEmvControllerTest.cs new file mode 100644 index 00000000..c9693641 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/transactionResponseEmvControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class transactionResponseEmvTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MocktransactionResponseEmvTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new transactionResponseEmvRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new transactionResponseEmvResponse + { + refId = "1234", + sessionToken = "sessiontoken", + Yyyyy = Yyyy, + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.Yyyyy); + LogHelper.info(Logger, "transactionResponseEmv: Details:{0}", controllerResponse.Yyyyy); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs new file mode 100644 index 00000000..b601f3ab --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateCustomerPaymentProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateCustomerPaymentProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateCustomerPaymentProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new updateCustomerPaymentProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + validationDirectResponse = "validatedResp", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.validationDirectResponse); + LogHelper.info(Logger, "updateCustomerPaymentProfile: Details:{0}", controllerResponse.validationDirectResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs new file mode 100644 index 00000000..b4442156 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateCustomerProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateCustomerProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateCustomerProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new updateCustomerProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs new file mode 100644 index 00000000..22301a75 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateCustomerShippingAddressTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateCustomerShippingAddressTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateCustomerShippingAddressRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new updateCustomerShippingAddressResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs new file mode 100644 index 00000000..4281be7f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs @@ -0,0 +1,77 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateHeldTransactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateHeldTransactionTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateHeldTransactionRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + + var transactionResponse = new transactionResponse() + { + accountNumber = "1234", + }; + + var mockResponse = new updateHeldTransactionResponse + { + refId = "1234", + sessionToken = "sessiontoken", + transactionResponse = transactionResponse + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.transactionResponse); + LogHelper.info(Logger, "updateHeldTransaction: Details:{0}", controllerResponse.transactionResponse.accountNumber); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs new file mode 100644 index 00000000..7a87ce67 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs @@ -0,0 +1,69 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateMerchantDetailsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateMerchantDetailsTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateMerchantDetailsRequest + { + merchantAuthentication = new merchantAuthenticationType() {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new updateMerchantDetailsResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs new file mode 100644 index 00000000..021a9b27 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs @@ -0,0 +1,68 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class updateSplitTenderGroupTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockupdateSplitTenderGroupTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new updateSplitTenderGroupRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new updateSplitTenderGroupResponse + { + refId = "1234", + sessionToken = "sessiontoken", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest.backup/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs new file mode 100644 index 00000000..fa66eacf --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs @@ -0,0 +1,71 @@ +namespace AuthorizeNet.Api.Controllers.MockTest +{ + using System; + using System.Collections.Generic; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class validateCustomerPaymentProfileTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void MockvalidateCustomerPaymentProfileTest() + { + //define all mocked objects as final + var mockController = GetMockController(); + var mockRequest = new validateCustomerPaymentProfileRequest + { + merchantAuthentication = new merchantAuthenticationType {name = "mocktest", Item = "mockKey", ItemElementName = ItemChoiceType.transactionKey}, + }; + var mockResponse = new validateCustomerPaymentProfileResponse + { + refId = "1234", + sessionToken = "sessiontoken", + directResponse = "direct", + }; + + var errorResponse = new ANetApiResponse(); + var results = new List(); + const messageTypeEnum messageTypeOk = messageTypeEnum.Ok; + + SetMockControllerExpectations( + mockController.MockObject, mockRequest, mockResponse, errorResponse, results, messageTypeOk); + mockController.MockObject.Execute(AuthorizeNet.Environment.CUSTOM); + //mockController.MockObject.Execute(); + // or var controllerResponse = mockController.MockObject.ExecuteWithApiResponse(AuthorizeNet.Environment.CUSTOM); + var controllerResponse = mockController.MockObject.GetApiResponse(); + Assert.IsNotNull(controllerResponse); + + Assert.IsNotNull(controllerResponse.directResponse); + LogHelper.info(Logger, "validateCustomerPaymentProfile: Details:{0}", controllerResponse.directResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs new file mode 100644 index 00000000..9673e9d7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs @@ -0,0 +1,160 @@ +namespace AuthorizeNet.Api.Controllers.SampleTest +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class ArbSubscriptionSampleTest : ApiCoreTestBase { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() { + base.SetUp(); + } + + [TearDown] + public new void TearDown() { + base.TearDown(); + } + + [Test] + public void SampleCodeGetSubscriptionList() + { + LogHelper.info(Logger, "Sample GetSubscriptionList"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a subscription + var createRequest = new ARBCreateSubscriptionRequest + { + refId = RefId, + subscription = ArbSubscriptionOne, + }; + + var createController = new ARBCreateSubscriptionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + Assert.IsNotNull(createResponse.subscriptionId); + LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); + var subscriptionId = createResponse.subscriptionId; + + //get subscription details + var getRequest = new ARBGetSubscriptionStatusRequest + { + refId = RefId, + subscriptionId = subscriptionId + }; + var getController = new ARBGetSubscriptionStatusController(getRequest); + var getResponse = getController.ExecuteWithApiResponse(); + Assert.IsNotNull(getResponse.status); + Logger.info(String.Format("Subscription Status: {0}", getResponse.status)); + + //get subscription list that contains only the subscription created above. + var listRequest = new ARBGetSubscriptionListRequest + { + refId = RefId, + searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, + sorting = new ARBGetSubscriptionListSorting + { + orderDescending = true, + orderBy = ARBGetSubscriptionListOrderFieldEnum.createTimeStampUTC, + }, + paging = new Paging + { + limit = 500, + offset = 1, + }, + }; + var listController = new ARBGetSubscriptionListController(listRequest); + var listResponse = listController.ExecuteWithApiResponse(); + LogHelper.info(Logger, "Subscription Count: {0}", listResponse.totalNumInResultSet); + Assert.IsTrue(0 < listResponse.totalNumInResultSet); + + //validation of list + var subscriptionsArray = listResponse.subscriptionDetails; + foreach (var aSubscription in subscriptionsArray) + { + Assert.IsTrue(0 < aSubscription.id); + LogHelper.info(Logger, "Subscription Id: {0}, Status:{1}, PaymentMethod: {2}, Amount: {3}, Account:{4}", + aSubscription.id, aSubscription.status, aSubscription.paymentMethod, aSubscription.amount, aSubscription.accountNumber); + } + + //cancel subscription + var cancelRequest = new ARBCancelSubscriptionRequest + { + merchantAuthentication = CustomMerchantAuthenticationType, + refId = RefId, + subscriptionId = subscriptionId + }; + var cancelController = new ARBCancelSubscriptionController(cancelRequest); + var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); + Assert.IsNotNull(cancelResponse.messages); + Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); + } + + [Test] + public void ARBGetSubscriptionSampleTest() + { + LogHelper.info(Logger, "Sample GetSubscriptionList"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a subscription + var createRequest = new ARBCreateSubscriptionRequest + { + refId = RefId, + subscription = ArbSubscriptionOne, + }; + + var createController = new ARBCreateSubscriptionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + Assert.IsNotNull(createResponse.subscriptionId); + LogHelper.info(Logger, "Created Subscription: {0}", createResponse.subscriptionId); + var subscriptionId = createResponse.subscriptionId; + + //get subscription details + var getRequest = new ARBGetSubscriptionRequest + { + refId = RefId, + subscriptionId = subscriptionId + }; + var getController = new ARBGetSubscriptionController(getRequest); + var getResponse = getController.ExecuteWithApiResponse(); + Assert.IsNotNull(getResponse.subscription); + Logger.info(String.Format("Subscription Name : {0}", getResponse.subscription.name)); + Assert.AreEqual(ArbSubscriptionOne.name, getResponse.subscription.name); + Assert.AreEqual(ArbSubscriptionOne.amountSpecified, getResponse.subscription.amountSpecified); + + //cancel subscription + var cancelRequest = new ARBCancelSubscriptionRequest + { + merchantAuthentication = CustomMerchantAuthenticationType, + refId = RefId, + subscriptionId = subscriptionId + }; + var cancelController = new ARBCancelSubscriptionController(cancelRequest); + var cancelResponse = cancelController.ExecuteWithApiResponse(TestEnvironment); + Assert.IsNotNull(cancelResponse.messages); + Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs new file mode 100644 index 00000000..e528e61f --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs @@ -0,0 +1,194 @@ +namespace AuthorizeNet.Api.Controllers.SampleTest +{ + using System; + using System.Globalization; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class CreateCustomerProfileFromTransactionSampleTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void SampleCodeCreateCustomerProfileFromTransaction() + { + LogHelper.info(Logger, "Sample createCustomerProfileFromTransaction"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //setup transaction to use + var transactionId = GetTransactionId(); + var createRequest = new createCustomerProfileFromTransactionRequest + { + refId = RefId, + transId = transactionId.ToString(CultureInfo.InvariantCulture), + }; + //execute and get response + var createController = new createCustomerProfileFromTransactionController(createRequest); + var createResponse = createController.ExecuteWithApiResponse(); + + //validate + Assert.NotNull(createResponse); + Assert.NotNull(createResponse.messages); + Assert.AreEqual(messageTypeEnum.Ok, createResponse.messages.resultCode); + Assert.NotNull(createResponse.customerProfileId); + Assert.NotNull(createResponse.customerPaymentProfileIdList); + Assert.AreNotEqual(0, createResponse.customerPaymentProfileIdList.Length); + + long customerProfileId; + long.TryParse(createResponse.customerProfileId, out customerProfileId); + Assert.AreNotEqual(0, customerProfileId); + + long customerPaymentProfileId; + long.TryParse(createResponse.customerPaymentProfileIdList[0], out customerPaymentProfileId); + Assert.AreNotEqual(0, customerPaymentProfileId); + //if shipping profile is added, shipping profile id will be retrieved too + } + + private long GetTransactionId() + { + //Creates a credit card transaction and returns the transactions ID. + + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" }; + var aCustomer = new customerDataType { email = string.Format( "{0}@b.bla", Counter)}; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = creditCard }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + customer = aCustomer, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.NotNull(response); + Assert.NotNull(response.messages); + Assert.NotNull(response.transactionResponse); + Assert.AreEqual(messageTypeEnum.Ok, response.messages.resultCode); + Assert.False(string.IsNullOrEmpty(response.transactionResponse.transId)); + long transactionId; + long.TryParse(response.transactionResponse.transId, out transactionId); + Assert.AreNotEqual(0, transactionId); + + return transactionId; + } + + [Test] + public void CreateTransactionFromProfile() + { + //Creates a customer profile and customer payment profile + //Then uses those profiles to create a transaction request + + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + Random rnd = new Random(DateTime.Now.Millisecond); + + string profileRandom = rnd.Next(9999).ToString(); + + //Create profile to use in transaction creation + var profileShipTo = new customerAddressType + { + address = profileRandom + " First St NE", + city = "Bellevue", + state = "WA", + zip = "98007", + company = "Sample Co " + profileRandom, + country = "USA", + firstName = "Sample" + profileRandom, + lastName = "Name" + profileRandom, + phoneNumber = "425 123 4567", + }; + + var paymentProfile = new customerPaymentProfileType + { + billTo = profileShipTo, + customerType = customerTypeEnum.individual, + payment = new paymentType { Item = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" } }, + }; + + var createProfileReq = new createCustomerProfileRequest + { + profile = new customerProfileType + { + description = "SampleProfile " + profileRandom, + email = "SampleEmail" + profileRandom + "@Visa.com", + shipToList = new customerAddressType[] { profileShipTo }, + paymentProfiles = new customerPaymentProfileType[] { paymentProfile } + } + }; + + var createProfileCont = new createCustomerProfileController(createProfileReq); + createProfileCont.Execute(); + var createProfileResp = createProfileCont.GetApiResponse(); + + //Get profile using getCustomerProfileRequest + var getCustReq = new getCustomerProfileRequest { customerProfileId = createProfileResp.customerProfileId }; + var getCustCont = new getCustomerProfileController(getCustReq); + getCustCont.Execute(); + var getCustResp = getCustCont.GetApiResponse(); + + + //Create Transaction + //Create instance of customer payment profile using the profile IDs from the profile we loaded above. + var custPaymentProfile = new AuthorizeNet.Api.Contracts.V1.customerProfilePaymentType { customerProfileId = getCustResp.profile.customerProfileId, paymentProfile = new paymentProfile { paymentProfileId = getCustResp.profile.paymentProfiles[0].customerPaymentProfileId } }; + + var testTxn = new transactionRequestType + { + profile = custPaymentProfile, + amount = (decimal)rnd.Next(9999) / 100, + transactionType = transactionTypeEnum.authCaptureTransaction.ToString() + }; + + var txnControler = new createTransactionController(new createTransactionRequest { transactionRequest = testTxn }); + txnControler.Execute(); + var txnControlerResp = txnControler.GetApiResponse(); + + //verify transaction succeeded. + Assert.AreEqual("1", txnControlerResp.transactionResponse.messages[0].code); + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs new file mode 100644 index 00000000..675495c9 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs @@ -0,0 +1,543 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.SampleTest +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class CreateTransactionSampleTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void SampleCodeCreateTransaction() + { + LogHelper.info(Logger, "Sample createTransaction"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var transactionRequestType = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + order = OrderType, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + + //create controller, execute request and get response + var createController = new createTransactionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + + //Test response + Assert.IsNotNull(createResponse.transactionResponse); + LogHelper.info(Logger, "Response: {0}", createResponse); + DisplayResponse(createResponse, "Create Transaction Response"); + LogHelper.info(Logger, "Created Transaction: {0}", createResponse.transactionResponse); + Assert.IsNotNull(createResponse.transactionResponse.transId); + long transId; + Assert.IsTrue( long.TryParse(createResponse.transactionResponse.transId, out transId)); + if (0 == transId) + { + ValidateFailure(createController, createResponse); + Assert.IsNotNull(createResponse.transactionResponse.errors); + foreach (var error in createResponse.transactionResponse.errors) + { + LogHelper.info(Logger, "Error-> Code:{0}, Text:{1}", error.errorCode, error.errorText); + } + } + else + { + Assert.AreNotEqual(0, transId); + ValidateSuccess(createController, createResponse); + } + } + + /// + /// This sample demonstrates charging a profile using the CreateTransaction API method + /// See API example here http://developer.authorize.net/api/reference/#payment-transactions-charge-a-customer-profile + /// + [Test] + public void SampleCodeCreateTransactionUsingProfile() + { + LogHelper.info(Logger, "Sample createTransaction using Profile"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + // Use CIM to create the profile we're going to charge + var customerProfileId = "0"; + var paymentProfileId = "0"; + Assert.IsTrue(createProfile(out customerProfileId, out paymentProfileId)); + + //create a customer payment profile + customerProfilePaymentType profileToCharge = new customerProfilePaymentType(); + profileToCharge.customerProfileId = customerProfileId; + profileToCharge.paymentProfile = new paymentProfile { paymentProfileId = paymentProfileId}; + + var transactionRequestType = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + profile = profileToCharge + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + //create controller, execute and get response + var createController = new createTransactionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + + //test response + Assert.IsNotNull(createResponse.transactionResponse); + LogHelper.info(Logger, "Response: {0}", createResponse); + DisplayResponse(createResponse, "Create Transaction Response"); + LogHelper.info(Logger, "Created Transaction: {0}", createResponse.transactionResponse); + Assert.IsNotNull(createResponse.transactionResponse.transId); + long transId; + Assert.IsTrue(long.TryParse(createResponse.transactionResponse.transId, out transId)); + if (0 == transId) + { + ValidateFailure(createController, createResponse); + Assert.IsNotNull(createResponse.transactionResponse.errors); + foreach (var error in createResponse.transactionResponse.errors) + { + LogHelper.info(Logger, "Error-> Code:{0}, Text:{1}", error.errorCode, error.errorText); + } + } + else + { + Assert.AreNotEqual(0, transId); + ValidateSuccess(createController, createResponse); + } + } + + //Create Customer Profile and Customer Payment Profile, returning their IDs. + private Boolean createProfile(out String customerProfileId, out String paymentProfileId) + { + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + var rnd = new AnetRandom(DateTime.Now.Millisecond); + string custIndx = rnd.Next(99999).ToString(); + + var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" }; + var paymentType = new paymentType {Item = creditCard}; + + var paymentProfile = new customerPaymentProfileType{ payment = paymentType }; + + var createRequest = new createCustomerProfileRequest + { + profile = new customerProfileType{ + merchantCustomerId = "TSTCSTER"+custIndx, + paymentProfiles = new customerPaymentProfileType[]{ paymentProfile } + } + }; + + //create profiles and get response + var createController = new createCustomerProfileController(createRequest); + var createResponse = createController.ExecuteWithApiResponse(); + + //validate response + if (messageTypeEnum.Ok != createResponse.messages.resultCode) + { + customerProfileId = "0"; + paymentProfileId = "0"; + return false; + } + else + { + Assert.NotNull(createResponse.customerProfileId); + Assert.NotNull(createResponse.customerPaymentProfileIdList); + Assert.AreNotEqual(0, createResponse.customerPaymentProfileIdList.Length); + + customerProfileId = createResponse.customerProfileId; + paymentProfileId = createResponse.customerPaymentProfileIdList[0]; + + return true; + } + } + + [Test] + public void SampleCodeCreateTransactionWithCreditCard() + { + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data for transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" }; + + //standard api call to retrieve response + var paymentType = new paymentType {Item = creditCard}; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest {transactionRequest = transactionRequest}; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + [Test] + [Ignore("To run this test, use your ApplePay ApiLoginIdKey and TransactionKey to configure this test below.")] + public void SampleCodeCreateTransactionWithApplePay() + { + // The test setup. + ApiOperationBase.MerchantAuthentication = new merchantAuthenticationType + { + name = "????", // your ApplyPay ApiLoginIdKey + ItemElementName = ItemChoiceType.transactionKey, + Item = "????" // your ApplyPay TransactionKey + }; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var opaqueData = new opaqueDataType + { + dataDescriptor = "COMMON.APPLE.INAPP.PAYMENT", + dataValue = + "eyJkYXRhIjoiQkRQTldTdE1tR2V3UVVXR2c0bzdFXC9qKzFjcTFUNzhxeVU4NGI2N2l0amNZSTh3UFlBT2hzaGpoWlBycWRVcjRYd1BNYmo0emNHTWR5KysxSDJWa1BPWStCT01GMjV1YjE5Y1g0bkN2a1hVVU9UakRsbEIxVGdTcjhKSFp4Z3A5ckNnc1NVZ2JCZ0tmNjBYS3V0WGY2YWpcL284WkliS25yS1E4U2gwb3VMQUtsb1VNbit2UHU0K0E3V0tycXJhdXo5SnZPUXA2dmhJcStIS2pVY1VOQ0lUUHlGaG1PRXRxK0grdzB2UmExQ0U2V2hGQk5uQ0hxenpXS2NrQlwvMG5xTFpSVFliRjBwK3Z5QmlWYVdIZWdoRVJmSHhSdGJ6cGVjelJQUHVGc2ZwSFZzNDhvUExDXC9rXC8xTU5kNDdrelwvcEhEY1JcL0R5NmFVTStsTmZvaWx5XC9RSk4rdFMzbTBIZk90SVNBUHFPbVhlbXZyNnhKQ2pDWmxDdXcwQzltWHpcL29iSHBvZnVJRVM4cjljcUdHc1VBUERwdzdnNjQybTRQendLRitIQnVZVW5lV0RCTlNEMnU2amJBRzMiLCJ2ZXJzaW9uIjoiRUNfdjEiLCJoZWFkZXIiOnsiYXBwbGljYXRpb25EYXRhIjoiOTRlZTA1OTMzNWU1ODdlNTAxY2M0YmY5MDYxM2UwODE0ZjAwYTdiMDhiYzdjNjQ4ZmQ4NjVhMmFmNmEyMmNjMiIsInRyYW5zYWN0aW9uSWQiOiJjMWNhZjVhZTcyZjAwMzlhODJiYWQ5MmI4MjgzNjM3MzRmODViZjJmOWNhZGYxOTNkMWJhZDlkZGNiNjBhNzk1IiwiZXBoZW1lcmFsUHVibGljS2V5IjoiTUlJQlN6Q0NBUU1HQnlxR1NNNDlBZ0V3Z2ZjQ0FRRXdMQVlIS29aSXpqMEJBUUloQVBcL1wvXC9cLzhBQUFBQkFBQUFBQUFBQUFBQUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL01Gc0VJUFwvXC9cL1wvOEFBQUFCQUFBQUFBQUFBQUFBQUFBQVwvXC9cL1wvXC9cL1wvXC9cL1wvXC9cL1wvXC9cLzhCQ0JheGpYWXFqcVQ1N1BydlZWMm1JYThaUjBHc014VHNQWTd6ancrSjlKZ1N3TVZBTVNkTmdpRzV3U1RhbVo0NFJPZEpyZUJuMzZRQkVFRWF4ZlI4dUVzUWtmNHZPYmxZNlJBOG5jRGZZRXQ2ek9nOUtFNVJkaVl3cFpQNDBMaVwvaHBcL200N242MHA4RDU0V0s4NHpWMnN4WHM3THRrQm9ONzlSOVFJaEFQXC9cL1wvXC84QUFBQUFcL1wvXC9cL1wvXC9cL1wvXC9cLys4NXZxdHB4ZWVoUE81eXNMOFl5VlJBZ0VCQTBJQUJHbStnc2wwUFpGVFwva0RkVVNreHd5Zm84SnB3VFFRekJtOWxKSm5tVGw0REdVdkFENEdzZUdqXC9wc2hCWjBLM1RldXFEdFwvdERMYkUrOFwvbTB5Q21veHc9IiwicHVibGljS2V5SGFzaCI6IlwvYmI5Q05DMzZ1QmhlSEZQYm1vaEI3T28xT3NYMkora0pxdjQ4ek9WVmlRPSJ9LCJzaWduYXR1cmUiOiJNSUlEUWdZSktvWklodmNOQVFjQ29JSURNekNDQXk4Q0FRRXhDekFKQmdVckRnTUNHZ1VBTUFzR0NTcUdTSWIzRFFFSEFhQ0NBaXN3Z2dJbk1JSUJsS0FEQWdFQ0FoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQXdKekVsTUNNR0ExVUVBeDRjQUdNQWFBQnRBR0VBYVFCQUFIWUFhUUJ6QUdFQUxnQmpBRzhBYlRBZUZ3MHhOREF4TURFd05qQXdNREJhRncweU5EQXhNREV3TmpBd01EQmFNQ2N4SlRBakJnTlZCQU1lSEFCakFHZ0FiUUJoQUdrQVFBQjJBR2tBY3dCaEFDNEFZd0J2QUcwd2daOHdEUVlKS29aSWh2Y05BUUVCQlFBRGdZMEFNSUdKQW9HQkFOQzgra2d0Z212V0YxT3pqZ0ROcmpURUJSdW9cLzVNS3ZsTTE0NnBBZjdHeDQxYmxFOXc0ZklYSkFEN0ZmTzdRS2pJWFlOdDM5ckx5eTd4RHdiXC81SWtaTTYwVFoyaUkxcGo1NVVjOGZkNGZ6T3BrM2Z0WmFRR1hOTFlwdEcxZDlWN0lTODJPdXA5TU1vMUJQVnJYVFBITmNzTTk5RVBVblBxZGJlR2M4N20wckFnTUJBQUdqWERCYU1GZ0dBMVVkQVFSUk1FK0FFSFpXUHJXdEpkN1laNDMxaENnN1lGU2hLVEFuTVNVd0l3WURWUVFESGh3QVl3Qm9BRzBBWVFCcEFFQUFkZ0JwQUhNQVlRQXVBR01BYndCdGdoQmNsK1BmMytVNHBrMTNuVkQ5bndRUU1Ba0dCU3NPQXdJZEJRQURnWUVBYlVLWUNrdUlLUzlRUTJtRmNNWVJFSW0ybCtYZzhcL0pYditHQlZRSmtPS29zY1k0aU5ERkFcL2JRbG9nZjlMTFU4NFRId05SbnN2VjNQcnY3UlRZODFncTBkdEM4elljQWFBa0NISUkzeXFNbko0QU91NkVPVzlrSmsyMzJnU0U3V2xDdEhiZkxTS2Z1U2dRWDhLWFFZdVpMazJScjYzTjhBcFhzWHdCTDNjSjB4Z2VBd2dkMENBUUV3T3pBbk1TVXdJd1lEVlFRREhod0FZd0JvQUcwQVlRQnBBRUFBZGdCcEFITUFZUUF1QUdNQWJ3QnRBaEJjbCtQZjMrVTRwazEzblZEOW53UVFNQWtHQlNzT0F3SWFCUUF3RFFZSktvWklodmNOQVFFQkJRQUVnWUJhSzNFbE9zdGJIOFdvb3NlREFCZitKZ1wvMTI5SmNJYXdtN2M2VnhuN1phc05iQXEzdEF0OFB0eSt1UUNnc3NYcVprTEE3a3oyR3pNb2xOdHY5d1ltdTlVandhcjFQSFlTK0JcL29Hbm96NTkxd2phZ1hXUnowbk1vNXkzTzFLelgwZDhDUkhBVmE4OFNyVjFhNUpJaVJldjNvU3RJcXd2NXh1WmxkYWc2VHI4dz09In0=" + }; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = opaqueData }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + [Test] + [Ignore("To run this test, use dataKey, dataValue, callId details and Merchant ApiLoginIdKey and TransactionKey to configure this test below.")] + public void SampleCodeCreateTransactionWithVisaCheckOut() + { + // The test setup. + ApiOperationBase.MerchantAuthentication = new merchantAuthenticationType() + { + name = "5KP3u95bQpv", + ItemElementName = ItemChoiceType.transactionKey, + Item = "346HZ32z3fP4hTG2", + }; + + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var opaqueDataType = new opaqueDataType + { + dataDescriptor = "COMMON.VCO.ONLINE.PAYMENT", + dataKey = "NQzcMISSxLX789w+CGX+tXi3lKntO1dpZbZaREOUprVRByJkg1xnpc2Wx9aT5/BLOxQmHqmIsjjy+tF6HqKKGwovvXjIS3fE3y3tBRNbz8D7y6vYMup+AWbEvZqDEBSi", + dataValue = "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" + }; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = opaqueDataType }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + callId = "1482912778237697701" + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + [Test] + public void SampleCodeCreateTransactionWithPayPal() + { + /* + * Please enable the PayPal feature of your ANet merchant account. + */ + + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = AuthorizeNet.Environment.SANDBOX; //TestEnvironment; + + //set up data for transaction + var transactionAmount = SetValidTransactionAmount(Counter) / 100; + var payPalData = new payPalType + { + paypalLc = "IT", + paypalPayflowcolor = "FFFF00", + successUrl = PayPalOne.successUrl, + cancelUrl = PayPalOne.cancelUrl, + }; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = payPalData }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate. The code 2000 is: Need the payer's consent. + Assert.AreEqual("2000", response.transactionResponse.messages[0].code); + } + + [Test] + [Ignore("Requires user to specify settled transaction")] + public void SampleCodeCreateCreditRequestForSettledTransaction() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + + // Find a settled credit card transaction and set txnToCredit to its transaction ID + string txnToCredit = "Not Set"; + + + if (txnToCredit == "Not Set") + { + Assert.Fail("This test requires that you set txnToCredit to the transaction ID of a settled credit card transaction"); + } + + + //get details of the specified transaction + decimal txnAmount = 0m; + string txnCardNo = string.Empty; + + var gtdReq = new getTransactionDetailsRequest { transId = txnToCredit }; + var gtdCont = new getTransactionDetailsController(gtdReq); + gtdCont.Execute(); + var gtdResp = gtdCont.GetApiResponse(); + + //Test the transaction before continuing + Assert.AreEqual(messageTypeEnum.Ok, gtdResp.messages.resultCode); + + txnAmount = gtdResp.transaction.settleAmount; + txnCardNo = ((AuthorizeNet.Api.Contracts.V1.creditCardMaskedType)(gtdResp.transaction.payment.Item)).cardNumber; + + //Create payment type that matches transaction to credit + var creditCard = new creditCardType { cardNumber = txnCardNo.TrimStart(new char[] { 'X' }), expirationDate = "XXXX" }; + var paymentType = new paymentType { Item = creditCard }; + + //Create credit request + transactionRequestType txnType = new transactionRequestType + { + amount = txnAmount, + refTransId = txnToCredit, + transactionType = transactionTypeEnum.refundTransaction.ToString(), + payment = paymentType, + }; + + createTransactionRequest creditReq = new createTransactionRequest { transactionRequest = txnType }; + createTransactionController creditCont = new createTransactionController(creditReq); + creditCont.Execute(); + createTransactionResponse creditResp = creditCont.GetApiResponse(); + + //validate + Assert.AreEqual("1", creditResp.transactionResponse.messages[0].code); + } + + //Tests execution of credit without a linked transaction. + [Test] + public void SampleCodeCreateUnlinkedCredit() + { + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + decimal txnAmount = SetValidTransactionAmount(Counter) / 100; + + //Set payment info for credit + var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" }; + var paymentType = new paymentType { Item = creditCard }; + + //Create credit request + transactionRequestType txnType = new transactionRequestType + { + amount = txnAmount, + transactionType = transactionTypeEnum.refundTransaction.ToString(), + payment = paymentType, + }; + + + createTransactionRequest creditReq = new createTransactionRequest { transactionRequest = txnType }; + createTransactionController creditCont = new createTransactionController(creditReq); + creditCont.Execute(); + createTransactionResponse creditResp = creditCont.GetApiResponse(); + + //validate + Assert.AreEqual("1", creditResp.transactionResponse.messages[0].code); + } + + [Test] + public void SampleCodeCreateTransactionPriorAuthCapture() + { + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var creditCard = new creditCardType { cardNumber = "4111111111111111", expirationDate = "0622" }; + + //Build auth only transaction request. + var paymentType = new paymentType { Item = creditCard }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + + //Get transaction details + var getDetailsReq = new getTransactionDetailsRequest + { + transId = response.transactionResponse.transId + }; + var getDetailsCont = new getTransactionDetailsController(getDetailsReq); + getDetailsCont.Execute(); + var getDetailsResp = getDetailsCont.GetApiResponse(); + + + //Build and execute the capture request. + var capCC = new creditCardType + { + cardNumber = ((creditCardMaskedType)(getDetailsResp.transaction.payment.Item)).cardNumber.TrimStart(new char[] { 'X' }), + expirationDate = "XXXX", + }; + + var capPayment = new paymentType { Item = capCC }; + + var capTransactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.priorAuthCaptureTransaction.ToString(), + refTransId = getDetailsResp.transaction.transId, + authCode = getDetailsResp.transaction.authCode, + }; + + request = new createTransactionRequest { transactionRequest = capTransactionRequest }; + controller = new createTransactionController(request); + controller.Execute(); + var capResponse = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", capResponse.transactionResponse.messages[0].code); + } + + [Test] + public void TransactionRequest_HandleError() + { + LogHelper.info(Logger, "CreateProfileWithCreateTransactionRequestTest"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var transactionRequestType = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = new paymentType { Item = new creditCardType { cardNumber = "0111111111111111", expirationDate = "122035" } }, + order = OrderType, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + shipTo = CustomerAddressOne, + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + //create controller, execute and get response + var createController = new createTransactionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + + //Validate error code where request is submitted properly, but request fails. + Assert.AreEqual("6", createResponse.transactionResponse.errors[0].errorCode); + + //Validate error code where submission of request fails. + ((creditCardType)transactionRequestType.payment.Item).cardNumber = "01"; + createController = new createTransactionController(createRequest); + createController.Execute(); + + if (createController.GetApiResponse() == null) + { + var errorResponse = createController.GetErrorResponse(); + Assert.AreEqual("E00003", errorResponse.messages.message[0].code); + } + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs new file mode 100644 index 00000000..9f4fca5c --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs @@ -0,0 +1,125 @@ +namespace AuthorizeNETtest.Api.Controllers.SampleTest +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + class CustomerProfileSampleTest: ApiCoreTestBase { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + private customerPaymentProfileType getCustomerPaymentProfileObject() + { + var CreditCardOne = new creditCardType + { + cardNumber = "4111111111111111", + expirationDate = "2032-10" + }; + + var PaymentOne = new paymentType + { + Item = CreditCardOne + }; + + var CustomerPaymentProfile = new customerPaymentProfileType + { + customerType = customerTypeEnum.individual, + payment = PaymentOne + }; + + return CustomerPaymentProfile; + } + + [Test] + public void GetCustomerPaymentProfileListSampleTest() + { + LogHelper.info(Logger, "Sample getCustomerPaymentProfileList"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + CustomerProfileType.paymentProfiles = new customerPaymentProfileType[] { getCustomerPaymentProfileObject() }; + var createRequest = new createCustomerProfileRequest + { + refId = RefId, + profile = CustomerProfileType + }; + + //create a customer profile + var createController = new createCustomerProfileController(createRequest); + var createResponse = createController.ExecuteWithApiResponse(); + Assert.NotNull(createResponse); + LogHelper.info(Logger, "Created Customer profile : {0}", createResponse.customerProfileId); + + var getProfileListRequest = new getCustomerPaymentProfileListRequest + { + refId = RefId, + searchType = CustomerPaymentProfileSearchTypeEnum.cardsExpiringInMonth, + month = "2032-10" + }; + + bool found = false; + //setup retry loop to allow for delays in replication + for (int counter = 0; counter < 5; counter++) + { + //get customer profile list + var getProfileController = new getCustomerPaymentProfileListController(getProfileListRequest); + var getProfileListResponse = getProfileController.ExecuteWithApiResponse(); + + for (int profile = 0; profile < getProfileListResponse.paymentProfiles.Length; profile++) + { + var profileId = Convert.ToString(getProfileListResponse.paymentProfiles[profile].customerPaymentProfileId); + if (profileId.Equals(createResponse.customerPaymentProfileIdList[0])) + { + found = true; + break; + } + } + + if (found) + break; + + System.Threading.Thread.Sleep(10000); + } + + Assert.IsTrue(found); + + //delete the created customer profile + var deleteRequest = new deleteCustomerProfileRequest + { + refId = RefId, + customerProfileId = createResponse.customerProfileId + }; + var deleteController = new deleteCustomerProfileController(deleteRequest); + var deleteResponse = deleteController.ExecuteWithApiResponse(); + Assert.IsNotNull(deleteResponse); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs new file mode 100644 index 00000000..71288486 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs @@ -0,0 +1,109 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.SampleTest +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + using System.Collections.Generic; + + [TestFixture] + public class ErrorMessagesSampleTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void TestErrorMessages_ARB_ExpiredCard() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + + //create a subscription with an invalid (expired) credit card in payment. + var subscriptionDef = new ARBSubscriptionType + { + + + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 7, + unit = ARBSubscriptionUnitEnum.days + }, + startDate = DateTime.UtcNow, + totalOccurrences = 2, + }, + + + amount = SetValidSubscriptionAmount(Counter), + billTo = new nameAndAddressType + { + address = "1234 Elm St NE", + city = "Bellevue", + state = "WA", + zip = "98007", + firstName = "First", + lastName = "Last" + }, + + payment = new paymentType + { + Item = new creditCardType + { + cardCode = "655", + cardNumber = "4111111111111111", + expirationDate = "122013", //deliberatly set payment to use expired CC + } + }, + + customer = new customerType { email = "somecustomer@test.org", id = "5", }, + + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) }, + }; + + var arbRequest = new ARBCreateSubscriptionRequest { subscription = subscriptionDef }; + var arbController = new ARBCreateSubscriptionController(arbRequest); + arbController.Execute(); + + var arbCreateResponse = arbController.GetApiResponse(); + + //If request responds with an error, walk the messages and get code and text for each message. + if (arbController.GetResultCode() == messageTypeEnum.Error) + { + foreach (var msg in arbCreateResponse.messages.message) + { + Console.WriteLine("Error Num = {0}, Message = {1}", msg.code, msg.text); + } + } + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs new file mode 100644 index 00000000..07f53003 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs @@ -0,0 +1,304 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.SampleTest +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + + [TestFixture] + public class CreateECheckTransactionSampleTest : ApiCoreTestBase + { + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + + [Test] + public void CreateTransactionWithECheck_AuthCapture() + { + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var echeck = new bankAccountType { accountNumber = "123456", accountType = bankAccountTypeEnum.checking, checkNumber = "1234", bankName = "Bank of Seattle", routingNumber = "125000024", echeckType = echeckTypeEnum.WEB, nameOnAccount = "Joe Customer" }; + + //standard api call to retrieve api response + var paymentType = new paymentType { Item = echeck }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + payment = paymentType, + amount = (decimal)transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + [Test] + public void CreateTransactionWithECheckAuth_Only() + { + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + decimal transactionAmount = SetValidTransactionAmount(Counter); + var echeck = new bankAccountType { accountNumber = "123456", accountType = bankAccountTypeEnum.checking, checkNumber = "1234", bankName = "Bank of Seattle", routingNumber = "125000024", echeckType = echeckTypeEnum.WEB, nameOnAccount = "Joe Customer" }; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = echeck }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + + + + [Test] + public void CreateCustomerProfileFromECheckTransaction() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + string customerIndx = rnd.Next(99999).ToString(); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var echeck = new bankAccountType { accountNumber = "123456", accountType = bankAccountTypeEnum.checking, checkNumber = "1234", bankName = "Bank of Seattle", routingNumber = "125000024", echeckType = echeckTypeEnum.WEB, nameOnAccount = "Joe Customer" }; + + //Create and submit transaction with customer info to create profile from. + var paymentType = new paymentType { Item = echeck }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = (decimal)transactionAmount, + customer = new customerDataType + { + email = string.Format("Customer{0}@visa.com", customerIndx), + taxId = string.Format("{0}{1}{2}", rnd.Next(999).ToString("000"), rnd.Next(99).ToString("00"), rnd.Next(9999).ToString("0000")) + }, + billTo = new customerAddressType + { + firstName = "New", + lastName = string.Format("Customer{0}", customerIndx), + company = "New Company", + address = "1234 Sample St NE", + city = "Bellevue", + state = "WA", + zip = "98001" + + }, + + shipTo = new customerAddressType + { + firstName = "New", + lastName = string.Format("Customer{0}", customerIndx), + company = "New Company", + address = "1234 Sample St NE", + city = "Bellevue", + state = "WA", + zip = "98001" + + } + + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //Verify that transaction was accepted and save the transaction ID + Assert.AreEqual(messageTypeEnum.Ok, response.messages.resultCode); + string txnID = response.transactionResponse.transId; + + + //Build and submit request to create Customer Profile based on the accepted transaction + createCustomerProfileFromTransactionRequest profileFromTransReq = new createCustomerProfileFromTransactionRequest(); + profileFromTransReq.transId = txnID; + + createCustomerProfileFromTransactionController profileFromTrxnController = new createCustomerProfileFromTransactionController(profileFromTransReq); + profileFromTrxnController.Execute(); + createCustomerProfileResponse createProfResp = profileFromTrxnController.GetApiResponse(); + Assert.AreEqual(messageTypeEnum.Ok, createProfResp.messages.resultCode); + + //Get customer profile and verify that profile data matches the data submitted with the transaction + getCustomerProfileRequest profileReq = new getCustomerProfileRequest + { + customerProfileId = createProfResp.customerProfileId + }; + + getCustomerProfileController getCustContr = new getCustomerProfileController(profileReq); + getCustContr.Execute(); + var getCustResp = getCustContr.GetApiResponse(); + + //validate + Assert.AreEqual("1", response.transactionResponse.messages[0].code); + } + + [Test] + [Ignore("Requires user to specify settled transaction")] + public void CreateCreditRequestForSettledECheckTransaction() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + + // Find a settled credit card transaction and set txnToCredit to its transaction ID + string txnToCredit = "Not Set"; + + if (txnToCredit == "Not Set") + { + Assert.Fail("This test requires that you set txnToCredit to the transaction ID of a settled eCheck card transaction"); + } + + + //get details of the specified transaction + decimal txnAmount = 0m; + string txnCardNo = string.Empty; + + var gtdReq = new getTransactionDetailsRequest { transId = txnToCredit }; + var gtdCont = new getTransactionDetailsController(gtdReq); + gtdCont.Execute(); + var gtdResp = gtdCont.GetApiResponse(); + + txnAmount = gtdResp.transaction.settleAmount; + txnCardNo = ((AuthorizeNet.Api.Contracts.V1.creditCardMaskedType)(gtdResp.transaction.payment.Item)).cardNumber; + + //Create payment type that matches transaction to credit + var creditCard = new creditCardType { cardNumber = txnCardNo.TrimStart(new char[] { 'X' }), expirationDate = "XXXX" }; + var paymentType = new paymentType { Item = creditCard }; + + + //Create credit request + transactionRequestType txnType = new transactionRequestType + { + amount = txnAmount, + refTransId = txnToCredit, + transactionType = transactionTypeEnum.refundTransaction.ToString(), + payment = paymentType, + }; + + createTransactionRequest creditReq = new createTransactionRequest { transactionRequest = txnType }; + createTransactionController creditCont = new createTransactionController(creditReq); + creditCont.Execute(); + createTransactionResponse creditResp = creditCont.GetApiResponse(); + + //validate + Assert.AreEqual("1", creditResp.transactionResponse.messages[0].code); + } + + [Test] + public void CreateTransactionWithECheckCapturePriorAuth() + { + //Common code to set for all requests + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + var rnd = new AnetRandom(DateTime.Now.Millisecond); + + //Build and submit an Auth only transaction that can later be captured. + //set up data based on transaction + var transactionAmount = SetValidTransactionAmount(Counter); + var echeck = new bankAccountType { accountNumber = "123456", accountType = bankAccountTypeEnum.checking, checkNumber = "1234", bankName = "Bank of Seattle", routingNumber = "125000024", echeckType = echeckTypeEnum.WEB, nameOnAccount = "Joe Customer" }; + + //standard api call to retrieve response + var paymentType = new paymentType { Item = echeck }; + var transactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authOnlyTransaction.ToString(), + payment = paymentType, + amount = transactionAmount, + }; + var request = new createTransactionRequest { transactionRequest = transactionRequest }; + var controller = new createTransactionController(request); + controller.Execute(); + var response = controller.GetApiResponse(); + + //Get transaction details + var getDetailsReq = new getTransactionDetailsRequest + { + transId = response.transactionResponse.transId + }; + var getDetailsCont = new getTransactionDetailsController(getDetailsReq); + getDetailsCont.Execute(); + var getDetailsResp = getDetailsCont.GetApiResponse(); + + + //Build and execute the capture request. + var capECheck = new bankAccountType + { + accountNumber = ((AuthorizeNet.Api.Contracts.V1.bankAccountMaskedType)(getDetailsResp.transaction.payment.Item)).accountNumber.TrimStart(new char[] { 'X' }), + routingNumber = "XXXX", + nameOnAccount = ((AuthorizeNet.Api.Contracts.V1.bankAccountMaskedType)(getDetailsResp.transaction.payment.Item)).nameOnAccount, + bankName = ((AuthorizeNet.Api.Contracts.V1.bankAccountMaskedType)(getDetailsResp.transaction.payment.Item)).bankName, + echeckType = ((AuthorizeNet.Api.Contracts.V1.bankAccountMaskedType)(getDetailsResp.transaction.payment.Item)).echeckType, + }; + + var capPayment = new paymentType { Item = capECheck }; + + + + var capTransactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.priorAuthCaptureTransaction.ToString(), + refTransId = getDetailsResp.transaction.transId, + }; + + request = new createTransactionRequest { transactionRequest = capTransactionRequest }; + controller = new createTransactionController(request); + controller.Execute(); + var capResponse = controller.GetApiResponse(); + + //validate + Assert.AreEqual("1", capResponse.transactionResponse.messages[0].code); + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/Test/APIInvalidCredentials.cs b/AuthorizeNETtest.backup/Api/Controllers/Test/APIInvalidCredentials.cs new file mode 100644 index 00000000..0718bef1 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/Test/APIInvalidCredentials.cs @@ -0,0 +1,89 @@ +namespace AuthorizeNet.Api.Controllers.Test +{ + using System; + using System.Collections.Generic; + using NUnit.Framework; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Util; + + [TestFixture] + public class CredentialsTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + [Test] + public void InvalidCredentialsTest() + { + LogHelper.info(Logger, "CreateProfileWithCreateTransactionRequestTest"); + + var badCredentials = new merchantAuthenticationType { name = "mbld_api_-NPA5n9k", Item = "123123", ItemElementName = ItemChoiceType.transactionKey }; + ApiOperationBase.MerchantAuthentication = badCredentials; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create request + var getCpReq = new getCustomerProfileRequest + { + customerProfileId = "1234" + }; + + var getCpCont = new getCustomerProfileController(getCpReq); + getCpCont.Execute(); + getCustomerProfileResponse getCpResp = getCpCont.GetApiResponse(); + + Assert.AreEqual("E00007", ((AuthorizeNet.Api.Contracts.V1.ANetApiResponse)(getCpResp)).messages.message[0].code); + ValidateErrorCode(((AuthorizeNet.Api.Contracts.V1.ANetApiResponse)(getCpResp)).messages, "E00007"); + } + + [Test] + public void IllFormedCredentialsTest() + { + LogHelper.info(Logger, "CreateProfileWithCreateTransactionRequestTest"); + + var badCredentials = new merchantAuthenticationType { name = "mbld_api_-NPA5n9k", Item = "123123" }; //, ItemElementName = ItemChoiceType.transactionKey }; + ApiOperationBase.MerchantAuthentication = badCredentials; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create request + var getCpReq = new getCustomerProfileRequest + { + customerProfileId = "1234" + }; + + try + { + var getCpCont = new getCustomerProfileController(getCpReq); + getCpCont.Execute(); + Assert.Fail("You should not reach here"); + } + catch (Exception e) + { + Console.WriteLine("An exception expected: " + e.Message); + } + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/Test/AllGeneratedEnumTest.cs b/AuthorizeNETtest.backup/Api/Controllers/Test/AllGeneratedEnumTest.cs new file mode 100644 index 00000000..e16565d7 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/Test/AllGeneratedEnumTest.cs @@ -0,0 +1,348 @@ +namespace AuthorizeNet.Api.Controllers.Test +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using NUnit.Framework; + + [TestFixture] + public class AllGeneratedEnumTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + //Generated by cs-enum-test on Tue 11/04/2014-11:49:24.42 + [Test] + public void AllEnumTest() + { + + foreach (var anEnum in Enum.GetValues(typeof(messageTypeEnum))) + { + var aValue = anEnum.ToString(); + messageTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(bankAccountTypeEnum))) + { + var aValue = anEnum.ToString(); + bankAccountTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(echeckTypeEnum))) + { + var aValue = anEnum.ToString(); + echeckTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(ARBSubscriptionStatusEnum))) + { + var aValue = anEnum.ToString(); + ARBSubscriptionStatusEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(paymentMethodEnum))) + { + var aValue = anEnum.ToString(); + paymentMethodEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(ARBGetSubscriptionListOrderFieldEnum))) + { + var aValue = anEnum.ToString(); + ARBGetSubscriptionListOrderFieldEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(TransactionListOrderFieldEnum))) + { + var aValue = anEnum.ToString(); + TransactionListOrderFieldEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(deviceActivationEnum))) + { + var aValue = anEnum.ToString(); + deviceActivationEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(afdsTransactionEnum))) + { + var aValue = anEnum.ToString(); + afdsTransactionEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(messageTypeEnum))) + { + var aValue = anEnum.ToString(); + messageTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(customerTypeEnum))) + { + var aValue = anEnum.ToString(); + customerTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(merchantInitTransReasonEnum))) + { + var aValue = anEnum.ToString(); + merchantInitTransReasonEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(authIndicatorEnum))) + { + var aValue = anEnum.ToString(); + authIndicatorEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(EncodingType))) + { + var aValue = anEnum.ToString(); + EncodingType enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(EncryptionAlgorithmType))) + { + var aValue = anEnum.ToString(); + EncryptionAlgorithmType enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(OperationType))) + { + var aValue = anEnum.ToString(); + OperationType enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(ItemChoiceType1))) + { + var aValue = anEnum.ToString(); + ItemChoiceType1 enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(customerProfileTypeEnum))) + { + var aValue = anEnum.ToString(); + customerProfileTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(ARBSubscriptionUnitEnum))) + { + var aValue = anEnum.ToString(); + ARBSubscriptionUnitEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(webCheckOutTypeEnum))) + { + var aValue = anEnum.ToString(); + webCheckOutTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + foreach (var anEnum in Enum.GetValues(typeof(ItemChoiceType))) + { + var aValue = anEnum.ToString(); + ItemChoiceType enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(validationModeEnum))) + { + var aValue = anEnum.ToString(); + validationModeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(splitTenderStatusEnum))) + { + var aValue = anEnum.ToString(); + splitTenderStatusEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(TransactionGroupStatusEnum))) + { + var aValue = anEnum.ToString(); + TransactionGroupStatusEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(ARBGetSubscriptionListSearchTypeEnum))) + { + var aValue = anEnum.ToString(); + ARBGetSubscriptionListSearchTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(accountTypeEnum))) + { + var aValue = anEnum.ToString(); + accountTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(cardTypeEnum))) + { + var aValue = anEnum.ToString(); + cardTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(FDSFilterActionEnum))) + { + var aValue = anEnum.ToString(); + FDSFilterActionEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(permissionsEnum))) + { + var aValue = anEnum.ToString(); + permissionsEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(settingNameEnum))) + { + var aValue = anEnum.ToString(); + settingNameEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(settlementStateEnum))) + { + var aValue = anEnum.ToString(); + settlementStateEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(transactionStatusEnum))) + { + var aValue = anEnum.ToString(); + transactionStatusEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(transactionTypeEnum))) + { + var aValue = anEnum.ToString(); + transactionTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(CustomerPaymentProfileSearchTypeEnum))) + { + var aValue = anEnum.ToString(); + CustomerPaymentProfileSearchTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(CustomerPaymentProfileOrderFieldEnum))) + { + var aValue = anEnum.ToString(); + CustomerPaymentProfileOrderFieldEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(AUJobTypeEnum))) + { + var aValue = anEnum.ToString(); + AUJobTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + + foreach (var anEnum in Enum.GetValues(typeof(paymentMethodsTypeEnum))) + { + var aValue = anEnum.ToString(); + paymentMethodsTypeEnum enumFromValue; + Assert.IsTrue(Enum.TryParse(aValue, out enumFromValue)); + Assert.AreEqual(anEnum, enumFromValue); + } + } + + /* + private void XX() + { + for ( T anEnum : T.values()) + { + String unitValue = anEnum.value(); + T unitEnum = T.fromValue(unitValue); + Assert.assertEquals(anEnum, unitEnum); + } + } + */ + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/Test/ApiCoreTestBase.cs b/AuthorizeNETtest.backup/Api/Controllers/Test/ApiCoreTestBase.cs new file mode 100644 index 00000000..4e720f09 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/Test/ApiCoreTestBase.cs @@ -0,0 +1,662 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.Test +{ + using System; + using System.Collections; + using System.Collections.Generic; + using System.ComponentModel; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + using NMock; + + // ReSharper disable FieldCanBeMadeReadOnly.Local + // ReSharper disable NotAccessedField.Local +#pragma warning disable 169 +#pragma warning disable 649 + [TestFixture] + public abstract class ApiCoreTestBase { + + protected static readonly Log Logger = LogFactory.getLog(typeof(ApiCoreTestBase)); + + protected static readonly IDictionary ErrorMessages ; + + protected static AuthorizeNet.Environment TestEnvironment = AuthorizeNet.Environment.SANDBOX; + //protected static AuthorizeNet.Environment TestEnvironment = AuthorizeNet.Environment.HOSTED_VM; + + static readonly String ApiLoginIdKey ; + static readonly String TransactionKey ; + static String _md5HashKey ; + + DateTime _pastDate; + DateTime _nowDate; + DateTime _futureDate; + String _nowString ; + DateTime _now = DateTime.UtcNow; + + protected string RefId ; + protected int Counter; + protected String CounterStr; + + protected merchantAuthenticationType CustomMerchantAuthenticationType; + + protected ARBSubscriptionType ArbSubscriptionOne; + + //protected ARBSubscriptionType ArbSubscriptionTwo; + protected bankAccountType BankAccountOne; + protected creditCardTrackType TrackDataOne; + protected creditCardType CreditCardOne; + protected customerAddressType CustomerAddressOne; + protected customerDataType CustomerDataOne; + protected customerPaymentProfileType CustomerPaymentProfileOne; + protected customerProfileType CustomerProfileType; + protected customerType CustomerOne; + protected customerType CustomerTwo; + protected driversLicenseType DriversLicenseOne; + protected encryptedTrackDataType EncryptedTrackDataOne; + protected nameAndAddressType NameAndAddressTypeOne; + protected nameAndAddressType NameAndAddressTypeTwo; + protected orderType OrderType; + protected paymentScheduleType PaymentScheduleTypeOne; + protected paymentType PaymentOne; + protected payPalType PayPalOne; + + protected MockFactory MockContext = null; + private readonly AnetRandom _random = new AnetRandom(); + static ApiCoreTestBase() { + + //now we support Tls only, and .net defaults to TLS + //System.Net.ServicePointManager.SecurityProtocol = System.Net.SecurityProtocolType.Tls | System.Net.SecurityProtocolType.Tls11 | System.Net.SecurityProtocolType.Tls12; + + var config = System.Configuration.ConfigurationManager.OpenExeConfiguration(System.Configuration.ConfigurationUserLevel.None); + Logger.error(String.Format("Configuration file used: {0}, Exists:{1}", config.FilePath, config.HasFile)); + + //getPropertyFromNames get the value from properties file or environment + ApiLoginIdKey = UnitTestData.GetPropertyFromNames(AuthorizeNet.Util.Constants.EnvApiLoginid, AuthorizeNet.Util.Constants.PropApiLoginid); + TransactionKey = UnitTestData.GetPropertyFromNames(AuthorizeNet.Util.Constants.EnvTransactionKey, AuthorizeNet.Util.Constants.PropTransactionKey); + _md5HashKey = UnitTestData.GetPropertyFromNames(AuthorizeNet.Util.Constants.EnvMd5Hashkey, AuthorizeNet.Util.Constants.PropMd5Hashkey); + + //require only one cnp or cp merchant keys + if (null != ApiLoginIdKey && null != TransactionKey) + { + Logger.debug("Merchant Login and transaction keys are present."); + } + else + { + throw new ArgumentException( + "LoginId and/or TransactionKey have not been set. Merchant keys are required."); + } + + ErrorMessages = new Dictionary(); + } + + [TestFixtureSetUp] + public static void SetUpBeforeClass()//TestContext context) + { + ErrorMessages.Clear(); + ErrorMessages.Add("E00003", ""); //The message is dynamic based on the xsd violation. + ErrorMessages.Add("E00007", "User authentication failed due to invalid authentication values."); + ErrorMessages.Add("E00027", ""); + ErrorMessages.Add("E00040", ""); + ErrorMessages.Add("E00090", "PaymentProfile cannot be sent with payment data." ); + ErrorMessages.Add("E00091", "PaymentProfileId cannot be sent with payment data."); + ErrorMessages.Add("E00092", "ShippingProfileId cannot be sent with ShipTo data."); + ErrorMessages.Add("E00093", "PaymentProfile cannot be sent with billing data."); + ErrorMessages.Add("E00095", "ShippingProfileId is not provided within Customer Profile."); + } + + [TestFixtureTearDown] + public static void TearDownAfterClass() + { + } + + public static String DateFormat = "yyyy-MM-dd'T'HH:mm:ss"; + + [SetUp] + public void SetUp() + { + MockContext = new MockFactory(); + + //initialize counter + Counter = _random.Next(1, (int) (Math.Pow(2, 24))); + CounterStr = GetRandomString(""); + + _now = DateTime.UtcNow; + _nowString = _now.ToString(DateFormat); + + _pastDate = _now.AddMonths(-1); + _nowDate = _now; + _futureDate = _now.AddMonths(1); + + CustomMerchantAuthenticationType = new merchantAuthenticationType + { + name = ApiLoginIdKey, + ItemElementName = ItemChoiceType.transactionKey, + Item = TransactionKey, + }; + + // merchantAuthenticationType.setSessionToken(GetRandomString("SessionToken")); + // merchantAuthenticationType.setPass_word(GetRandomString("Pass_word")); + // merchantAuthenticationType.setMobileDeviceId(GetRandomString("MobileDevice")); + + // ImpersonationAuthenticationType impersonationAuthenticationType = new ImpersonationAuthenticationType(); + // impersonationAuthenticationType.setPartnerLoginId(CnpApiLoginIdKey); + // impersonationAuthenticationType.setPartnerTransactionKey(CnpTransactionKey); + // merchantAuthenticationType.setImpersonationAuthentication(impersonationAuthenticationType); + + CustomerProfileType = new customerProfileType + { + merchantCustomerId = GetRandomString("Customer"), + description = GetRandomString("CustomerDescription"), + email = CounterStr + ".customerProfileType@test.anet.net", + }; + + //make sure these elements are initialized by calling get as it uses lazy initialization + var paymentProfiles = CustomerProfileType.paymentProfiles; + var addresses = CustomerProfileType.shipToList; + + CreditCardOne = new creditCardType + { + cardNumber = "4111111111111111", + expirationDate = "2038-12", + }; + // creditCardOne.setCardCode(""); + + BankAccountOne = new bankAccountType + { + accountType = bankAccountTypeEnum.savings, + routingNumber = "125000000", + accountNumber = GetRandomString("A/C#"), + nameOnAccount = GetRandomString("A/CName"), + echeckType = echeckTypeEnum.WEB, + bankName = GetRandomString("Bank"), + checkNumber = CounterStr, + }; + + TrackDataOne = new creditCardTrackType + { + ItemElementName = ItemChoiceType1.track1, + Item = GetRandomString("Track1"), + //trackDataOne.setTrack2(GetRandomString("Track2")); + }; + + EncryptedTrackDataOne = new encryptedTrackDataType + { + FormOfPayment = new KeyBlock(), + }; + //keyBlock.setValue(value); + + PayPalOne = new payPalType + { + successUrl = GetRandomString("https://success.anet.net"), + cancelUrl = GetRandomString("https://cancel.anet.net"), + paypalLc = GetRandomString("Lc"), + paypalHdrImg = GetRandomString("Hdr"), + paypalPayflowcolor = GetRandomString("flowClr"), + payerID = GetRandomString("PayerId"), + }; + + PaymentOne = new paymentType + { + Item = CreditCardOne + }; + //paymentOne.setBankAccount(bankAccountOne); + //paymentOne.setTrackData(trackDataOne); + //paymentOne.setEncryptedTrackData(encryptedTrackDataOne); + //paymentOne.setPayPal( payPalOne); + + // driversLicenseOne = new DriversLicenseType(); + // driversLicenseOne.setNumber(GetRandomString("DLNumber")); + // driversLicenseOne.setState(GetRandomString("WA")); + // driversLicenseOne.setDateOfBirth(nowString); + + CustomerAddressOne = new customerAddressType + { + firstName = GetRandomString("FName"), + lastName = GetRandomString("LName"), + company = GetRandomString("Company"), + address = GetRandomString("StreetAdd"), + city = "Bellevue", + state = "WA", + zip = "98000", + country = "USA", + phoneNumber = FormatToPhone(Counter), + faxNumber = FormatToPhone(Counter + 1), + }; + + CustomerPaymentProfileOne = new customerPaymentProfileType + { + customerType = customerTypeEnum.individual, + payment = PaymentOne, + }; + // customerPaymentProfileOne.setBillTo(customerAddressOne); + // customerPaymentProfileOne.setDriversLicense(driversLicenseOne); + // customerPaymentProfileOne.setTaxId(GetRandomString("XX")); + + + CustomerOne = new customerType + { + type = customerTypeEnum.individual, + id = GetRandomString("Id"), + email = CounterStr + ".customerOne@test.anet.net", + phoneNumber = FormatToPhone(Counter), + faxNumber = FormatToPhone(Counter + 1), + driversLicense = DriversLicenseOne, + taxId = "911011011", + }; + + CustomerTwo = new customerType(); + + var interval = new paymentScheduleTypeInterval + { + length = 1, + unit = ARBSubscriptionUnitEnum.months, + }; + + OrderType = new orderType() + { + //TODO ADD VALIDATION ON INVOICE LENGTH + invoiceNumber = GetRandomString("Inv:"), + description = GetRandomString("Description"), + }; + + NameAndAddressTypeOne = new nameAndAddressType + { + firstName = GetRandomString("FName"), + lastName = GetRandomString("LName"), + company = GetRandomString("Company"), + address = GetRandomString("Address"), + city = GetRandomString("City"), + state = GetRandomString("State"), + zip = "98004", + country = "USA", + }; + + NameAndAddressTypeTwo = new nameAndAddressType + { + firstName = GetRandomString("FName"), + lastName = GetRandomString("LName"), + company = GetRandomString("Company"), + address = GetRandomString("Address"), + city = GetRandomString("City"), + state = GetRandomString("State"), + zip = "98004", + country = "USA", + }; + + PaymentScheduleTypeOne = new paymentScheduleType + { + interval = interval, + startDate = _nowDate, + totalOccurrences = 5, + trialOccurrences = 0, + }; + + ArbSubscriptionOne = new ARBSubscriptionType + { + amount = SetValidSubscriptionAmount(Counter), + billTo = NameAndAddressTypeOne, + customer = CustomerOne, + name = GetRandomString("Name"), + order = OrderType, + payment = PaymentOne, + paymentSchedule = PaymentScheduleTypeOne, + shipTo = NameAndAddressTypeOne, + trialAmount= SetValidSubscriptionAmount(0), + }; + + CustomerDataOne = new customerDataType + { + driversLicense = CustomerOne.driversLicense, + email = CustomerOne.email, + id = CustomerOne.id, + taxId = CustomerOne.taxId, + type = CustomerOne.type, + }; + + RefId = CounterStr; + } + + [TearDown] + public void TearDown() { + MockContext.VerifyAllExpectationsHaveBeenMet(); + } + + string GetRandomString(string title) { + return String.Format("{0}{1}", title, Counter); + } + + public String FormatToPhone(int number) { + var formattedNumber = string.Format( "{0:0000000000}", number); + return formattedNumber.Substring(0, 3)+"-"+ + formattedNumber.Substring(3, 3)+"-"+ + formattedNumber.Substring(6, 4); + } + + public decimal SetValidTaxAmount(decimal amount) + { + return (amount * TaxRate); + } + + public decimal SetValidTransactionAmount(int number) + { + //updated to return a value with dollars and cents and not just whole dollars. + return (Decimal)setValidAmount(number, MaxTransactionAmount/100); + } + + public decimal SetValidSubscriptionAmount(int number) + { + return setValidAmount(number, MaxSubscriptionAmount); + } + + private decimal setValidAmount(int number, int maxAmount) + { + //Test that result is not larger than the specified max value + number = (number > maxAmount) ? (number % maxAmount) : number; + + Decimal dollarsAndCents = (decimal)number / 100; + + //Test that result is not less than the global Min Value + return dollarsAndCents = (dollarsAndCents < MinAmount) ? (MinAmount + dollarsAndCents) : dollarsAndCents; + } + + static ANetApiResponse _errorResponse; + + protected ANetApiResponse GetErrorResponse() { + return _errorResponse; + } + + private const int MaxSubscriptionAmount = 1000; //214747; + private const int MaxTransactionAmount = 10000; //214747; + private const int MinAmount = 1; + private const decimal TaxRate = 0.10m; + + protected static TS ExecuteTestRequestWithSuccess(TQ request, AuthorizeNet.Environment execEnvironment = null) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + TS response = ExecuteTestRequest( true, request, execEnvironment); + + return response; + } + + protected static TS ExecuteTestRequestWithFailure(TQ request, AuthorizeNet.Environment execEnvironment = null) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + TS response = ExecuteTestRequest(false, request, execEnvironment); + + return response; + } + + private static TS ExecuteTestRequest(bool successExpected, TQ request, AuthorizeNet.Environment execEnvironment = null) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + + LogHelper.debug( Logger, "Created {0} Request: '{1}'", request.GetType(), request); + + TS response = null; + TT controller = null; + _errorResponse = null; + var controllerClass = typeof (TT); + try { + var parameters = new object[] {request} ; + var controllerObject = Activator.CreateInstance(controllerClass, parameters); + if ( controllerObject is TT) + { + controller = (TT) controllerObject; + } + if (null != controller) + { + ANetApiResponse baseResponse = controller.ExecuteWithApiResponse(execEnvironment); + LogHelper.info(Logger, "{0} ResultCode: {1}", controllerClass, controller.GetResultCode()); + LogHelper.info(Logger, "{0} Results: {1}", controllerClass, controller.GetResults()); + response = (TS) baseResponse; + } + else + { + LogHelper.error(Logger, "Unable to instantiate Controller: '{0}'", controllerClass); + } + } catch (Exception e) { + LogHelper.error(Logger, "Exception : '{0}' during {1}", e.Message, controllerClass); + } + if ( successExpected) + { + ProcessFailureResult( true, controller, response); + ValidateSuccess( controller, response); + } else { + ValidateFailure( controller, response); + } + if (null == response && null != controller && null != controller.GetErrorResponse()) + { + _errorResponse = controller.GetErrorResponse(); + } + + return response; + } + + protected static void ProcessFailureResult(bool fail, TT controller, TS response) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + //in case there are errors, log the error messages + if ( messageTypeEnum.Ok != controller.GetResultCode()) + { + foreach ( var aMessage in controller.GetResults()) { + LogHelper.info(Logger, "Controller Messages: '{0}' ", aMessage); + } + DisplayResponse(response, "Failure Messsages"); + var errorResponse = controller.GetErrorResponse(); + DisplayResponse(errorResponse, "Error Response Messages"); + if ( fail) + { + Assert.Fail("Request failed."); + } + } + } + + protected static void ValidateSuccess( TT controller, TS response) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + Assert.AreEqual( messageTypeEnum.Ok, controller.GetResultCode()); + Assert.IsNull(controller.GetErrorResponse()); + Assert.IsNotNull(response); + DisplayResponse( response, "Success Messages"); + } + + protected static void ValidateFailure( TT controller, TS response) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : ApiOperationBase + { + Assert.AreEqual( messageTypeEnum.Error, controller.GetResultCode()); + //TODO Until error response is fixed + //Assert.assertNotNull(controller.getErrorResponse()); + //Assert.assertNull(response); + ProcessFailureResult(false, controller, response); + } + + protected static void DisplayResponse(ANetApiResponse response, String source) { + LogHelper.info(Logger, "Source '{0}' ", source); + if (null != response) { + var messageType = response.messages; + if ( null != messageType) { + LogHelper.info(Logger, "MessageCode: '{0}' ", messageType.resultCode.ToString()); + foreach ( var aMessage in messageType.message) { + LogHelper.info(Logger, "Message: '{0}':'{1}' ", aMessage.code, aMessage.text); + } + } + } + } + + protected void ValidateErrorCode(messagesType messagesType, string errorCode) + { + var firstError = GetFirstErrorMessage( messagesType); + if (null != firstError) + { + Assert.AreEqual( errorCode, firstError.code); + if ( ErrorMessages.ContainsKey(errorCode)) + { + string message = ErrorMessages[errorCode]; + if ( !(string.IsNullOrEmpty(message))) + { + Assert.AreEqual( message, firstError.text); + } + } + } + } + + protected static string GetFirstErrorCode(messagesType messagesType) + { + var errorMessage = GetFirstErrorMessage( messagesType); + return ( (null != errorMessage) ? errorMessage.code : null); + } + + protected static string GetFirstErrorText(messagesType messagesType) + { + var errorMessage = GetFirstErrorMessage( messagesType); + return ( (null != errorMessage) ? errorMessage.text : null); + } + + protected static messagesTypeMessage GetFirstErrorMessage(messagesType messagesType) + { + messagesTypeMessage errorMessage = null; + if ( null != messagesType.message) + { + foreach( var aMessage in messagesType.message) + { + errorMessage = aMessage; + break; + } + } + + return errorMessage; + + } + + protected void SetMockControllerExpectations ( + IApiOperation mockController, + TQ mockRequest, + TS mockResponse, + ANetApiResponse errorResponse, + List results, + messageTypeEnum messageType) + where TQ : ANetApiRequest + where TS : ANetApiResponse + where TT : IApiOperation + { + var mockEnvironment = AuthorizeNet.Environment.CUSTOM; + + //using (MockContext.Unordered()) + { + //Expect.On(mockController).Any.Method(i => i.Execute(mockEnvironment)); + Expect.On(mockController).Any.Method(i => i.Execute(mockEnvironment)).With(mockEnvironment); + Expect.On(mockController).Any.Method(i => i.GetApiResponse()).WillReturn(mockResponse); + //Expect.On(mockController).Between(0, 10).Method(i => i.ExecuteWithApiResponse(mockEnvironment)).WillReturn(mockResponse); + Expect.On(mockController).Any.Method(i => i.ExecuteWithApiResponse(mockEnvironment)).With(mockEnvironment).WillReturn(mockResponse); + Expect.On(mockController).Any.Method(i => i.GetResults()).WillReturn(results); + Expect.On(mockController).Any.Method(i => i.GetResultCode()).WillReturn(messageType); + Expect.On(mockController).Any.Method(i => i.GetErrorResponse()).WillReturn(errorResponse); + } + + if (null != mockRequest && null != mockResponse) + { + mockResponse.refId = mockRequest.refId; + } + var realController = Activator.CreateInstance(typeof(TT), mockRequest); + Assert.IsNotNull(realController); + + LogHelper.info(Logger, "Request: {0}", mockRequest); + ShowProperties(mockRequest); + LogHelper.info(Logger, "Response: {0}", mockResponse); + ShowProperties(mockResponse); + } + + protected Mock> GetMockController() where TQ : ANetApiRequest where TS : ANetApiResponse + { + return MockContext.CreateMock>(); + } + + public static void ShowProperties(Object bean) { + if ( null == bean) { return; } + + try + { + var fieldInfos = bean.GetType().GetFields();//BindingFlags.GetProperty); + foreach (var pd in fieldInfos) + { + var name = pd.Name; + var type = pd.FieldType; + + if (!("class".Equals(name)) && + !(bean.ToString().Equals(name))) + { + try + { + var value = pd.GetValue(bean); + //var value = bean.GetType().GetField(name).GetValue(bean); + LogHelper.info(Logger, "Field Type: '{0}', Name:'{1}', Value:'{2}'", type, name, value); + ProcessCollections(type, name, value); + //process compositions of custom classes + //if (null != value && 0 <= type.ToString().IndexOf("AuthorizeNet.", System.StringComparison.Ordinal)) + + var whiteListAssembly = (type.Assembly.FullName.IndexOf("AuthorizeNET", StringComparison.Ordinal) >= 0 ); + + if (null != value && + whiteListAssembly && + !(value is Enum) && + !value.GetType().IsPrimitive && + !(value is string)) + { + ShowProperties(value); + } + + var propertyChanged = bean as INotifyPropertyChanged; + if (propertyChanged != null) + { + var changed = false; + propertyChanged.PropertyChanged += (s, e) => { if (e.PropertyName == name) changed = true; }; + } + } catch (Exception e) { + LogHelper.info(Logger, "Exception during getting Field value: Type: '{0}', Name:'{1}', Message: {2}, StackTrace: {3}", type, name, e.Message, e.StackTrace); + } + } + } + } + catch (Exception e) + { + LogHelper.info(Logger, "Exception during navigating properties: Message: {0}, StackTrace: {1}", e.Message, e.StackTrace); + } + } + + public static void ProcessCollections( Type type, String name, Object value) + { + if (null == type) return; + var values = value as IEnumerable; + if (values != null && + !(value is string)) + { + LogHelper.info(Logger, "Iterating on Collection: '{0}'", name); + foreach (var aValue in values) + { + ShowProperties(aValue); + } + } + } + + } +#pragma warning restore 649 +#pragma warning restore 169 +// ReSharper restore NotAccessedField.Local +// ReSharper restore FieldCanBeMadeReadOnly.Local +} \ No newline at end of file diff --git a/AuthorizeNETtest.backup/Api/Controllers/Test/ArbSubscriptionTest.cs b/AuthorizeNETtest.backup/Api/Controllers/Test/ArbSubscriptionTest.cs new file mode 100644 index 00000000..8f37aabc --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/Test/ArbSubscriptionTest.cs @@ -0,0 +1,491 @@ +using AuthorizeNet.Utility; + +namespace AuthorizeNet.Api.Controllers.Test +{ + using System; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Api.Controllers.Test; + using AuthorizeNet.Util; + using NUnit.Framework; + using System.Linq; + + [TestFixture] + public class ArbSubscriptionTest : ApiCoreTestBase { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() { + base.SetUp(); + } + + [TearDown] + public new void TearDown() { + base.TearDown(); + } + + [Test] + public void TestGetSubscriptionList() + { + //create a transaction + var transactionRequestType = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + order = OrderType, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + merchantAuthentication = CustomMerchantAuthenticationType, + }; + + var createResponse = ExecuteTestRequestWithSuccess(createRequest, TestEnvironment); + + var referenceTxnId = createResponse.transactionResponse.transId; + + var subscriptionId = CreateSubscription( CustomMerchantAuthenticationType, referenceTxnId); + var newStatus = GetSubscription( CustomMerchantAuthenticationType, subscriptionId); + Assert.AreEqual(ARBSubscriptionStatusEnum.active, newStatus); + + LogHelper.info(Logger, "Getting Subscription List for SubscriptionId: {0}", subscriptionId); + + int subsId; + var found = false; + Int32.TryParse(subscriptionId, out subsId); + + //setup retry loop to allow for delays in replication + for (int counter = 0; counter < 5; counter++) + { + var listRequest = SetupSubscriptionListRequest(CustomMerchantAuthenticationType); + var listResponse = ExecuteTestRequestWithSuccess(listRequest, TestEnvironment); + + if (listResponse.subscriptionDetails.Any(a => a.id == subsId)) + { + found = true; + break; + } + else + { + System.Threading.Thread.Sleep(10000); + } + } + + Assert.IsTrue(found); + CancelSubscription(CustomMerchantAuthenticationType, subscriptionId); + + //validate the status of subscription to make sure it is canceled + var cancelStatus = GetSubscription(CustomMerchantAuthenticationType, subscriptionId); + Assert.AreEqual(ARBSubscriptionStatusEnum.canceled, cancelStatus); + } + + [Test] + public void TestSubscription() { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a subscription + var subscriptionDef = new ARBSubscriptionType + { + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 1, + unit = ARBSubscriptionUnitEnum.months, + }, + startDate = DateTime.UtcNow, + totalOccurrences = 12, + }, + + + amount = 9.99M, + billTo = new nameAndAddressType{ firstName = "first", lastName = "last", address="123 elm st ne", city = "Bellevue", state = "Wa", zip = "98007"}, + + payment = PaymentOne, + + customer = CustomerOne, + + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) }, + }; + + var arbRequest = new ARBCreateSubscriptionRequest { subscription = subscriptionDef }; + var arbController = new ARBCreateSubscriptionController(arbRequest); + arbController.Execute(); + + var arbCreateResponse = arbController.GetApiResponse(); + + Assert.AreEqual(messageTypeEnum.Ok,arbController.GetResultCode()); + + } + + [Test] + public void TestSubscription_ExpiredCC() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + //create a subscription + var subscriptionDef = new ARBSubscriptionType + { + + + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 7, + unit = ARBSubscriptionUnitEnum.days + }, + startDate = DateTime.UtcNow, + totalOccurrences = 2, + }, + + + amount = 9.99M, + + billTo = new nameAndAddressType + { + address = "1234 Elm St NE", + city = "Bellevue", + state = "WA", + zip = "98007", + firstName = "First", + lastName = "Last" + }, + + payment = new paymentType + { + Item = new creditCardType + { + cardCode = "655", + //cardNumber = "4007000", + cardNumber = "4111111111111111", + expirationDate = "122013", + } + }, + + customer = new customerType { email = "somecustomer@test.org", id = "5", }, + + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) }, + }; + + var arbRequest = new ARBCreateSubscriptionRequest { subscription = subscriptionDef }; + var arbController = new ARBCreateSubscriptionController(arbRequest); + arbController.Execute(); + + var arbCreateResponse = arbController.GetApiResponse(); + + //If request responds with an error, walk the messages and get code and text for each message. + if (arbController.GetResultCode() == messageTypeEnum.Error) + { + foreach(var msg in arbCreateResponse.messages.message) + { + Console.WriteLine("Error Num = {0}, Message = {1}", msg.code, msg.text); + } + } + + } + + /// + /// Repro issue ARBSubscriptionList SearchType of "cardExpiringThisMonth" doesn't work + /// commenting the test attribute because issue is fixed. + /// @Zalak + /// + // [Test] + [ExpectedException(typeof(ArgumentException), ExpectedMessage = "SearchType cannot be null")] + public void GetSubscriptionSearchCardExpiringThisMonthIssueTest() + { + var getSubscriptionList = new ARBGetSubscriptionListRequest() + { + searchType = ARBGetSubscriptionListSearchTypeEnum.cardExpiringThisMonth, + + }; + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + var nullController = new ARBGetSubscriptionListController(getSubscriptionList); + Assert.IsNull( nullController, "Controller should not be instantiated."); + } + + /// + /// Fix the issue ARBSubscriptionList SearchType of "cardExpiringThisMonth" doesn't work + /// @Zalak + /// + [Test] + public void GetSubscriptionSearchCardExpiringThisMonthFixTest() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + var createSubscription = new ARBSubscriptionType() + { + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 8, + unit = ARBSubscriptionUnitEnum.months + }, + startDate = DateTime.UtcNow, + totalOccurrences = 3, + }, + amount = 19.29M, + + billTo = new nameAndAddressType + { + address = "1234 Elm St NE", + city = "Bellevue", + state = "WA", + zip = "98007", + firstName = "First", + lastName = "Last" + }, + + payment = new paymentType + { + Item = new creditCardType + { + cardCode = "123", + cardNumber = "5105105105105100", + // cardNumber = "4111111111111111", + expirationDate = "102015", + } + }, + + customer = new customerType { email = "somecustomer@test.org", id = "5", }, + + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) }, + }; + var arbCreateSubscriptionController = CreateSubscriptionRequestTest(createSubscription); + var arbCreateSubscriptionResponse = arbCreateSubscriptionController.ExecuteWithApiResponse(); + + if (null == arbCreateSubscriptionResponse) + { + throw new ArgumentNullException("arbCreateSubscriptionResponse"); + } + + var getSubscriptionList = new ARBGetSubscriptionListRequest() + { + searchType = ARBGetSubscriptionListSearchTypeEnum.cardExpiringThisMonth, + + }; + + var arbGetSubscriptionListController = new ARBGetSubscriptionListController(getSubscriptionList); + var arbGetSubscriptionListResponse = arbGetSubscriptionListController.ExecuteWithApiResponse(); + + Assert.IsNotNull(arbGetSubscriptionListResponse); + } + + private ARBGetSubscriptionListResponse GetSubscriptionListResponse(int limitNo, int offSetNo) + { + var getSubscriptionList = new ARBGetSubscriptionListRequest() + { + searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, + paging = new Paging() + { + limit = limitNo, + offset = offSetNo + }, + + }; + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + var arbGetSubscriptionListController = new ARBGetSubscriptionListController(getSubscriptionList); + var arbGetSubscriptionListResponse = arbGetSubscriptionListController.ExecuteWithApiResponse(); + return arbGetSubscriptionListResponse; + + } + /// + /// @Zalak + /// Test case for Pagination issue reported in Jira: + /// C# - ARBSubscriptionList SearchType of "cardExpiringThisMonth" doesn't work + /// + [Test] + public void ARBGetSubscriptionListCheckPagination() + { + + var arbGetSubscriptionListResponse = GetSubscriptionListResponse(1, 1); + ARBGetSubscriptionListResponse response = null; + int limitNo = 3; + int offSetNo = 2; + + if (arbGetSubscriptionListResponse != null) + { + int subcriptionNumber = arbGetSubscriptionListResponse.totalNumInResultSet; + int expectedSubscriptionNo = 0; + int nPages = subcriptionNumber/limitNo; + int subscriptionDetailsOnLastPage = subcriptionNumber%limitNo; + if (offSetNo <= nPages) + expectedSubscriptionNo = limitNo; + else if (offSetNo > (nPages + 1)) + expectedSubscriptionNo = 0; + else + { + expectedSubscriptionNo = subscriptionDetailsOnLastPage; + } + response = GetSubscriptionListResponse(limitNo, offSetNo); + Assert.AreEqual(expectedSubscriptionNo, response.subscriptionDetails.Count()); + } + else + { + Assert.Null(arbGetSubscriptionListResponse); + } + + } + + + private ARBCreateSubscriptionController CreateSubscriptionRequestTest(ARBSubscriptionType subscriptionRequestParameter) + { + if (subscriptionRequestParameter == null) + { + throw new ArgumentNullException("subscriptionRequestParameter"); + } + LogHelper.info(Logger, "CreateSubscriptionRequestTest"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + var arbRequest = new ARBCreateSubscriptionRequest { subscription = subscriptionRequestParameter }; + var arbController = new ARBCreateSubscriptionController(arbRequest); + + return arbController; + } + + + + private ARBGetSubscriptionListRequest SetupSubscriptionListRequest(merchantAuthenticationType merchantAuthentication) { + + var sorting = new ARBGetSubscriptionListSorting + { + orderDescending = true, + orderBy = ARBGetSubscriptionListOrderFieldEnum.createTimeStampUTC, + }; + var paging = new Paging + { + limit = 500, + offset = 1, + }; + + var listRequest = new ARBGetSubscriptionListRequest + { + merchantAuthentication = merchantAuthentication, + refId = RefId, + searchType = ARBGetSubscriptionListSearchTypeEnum.subscriptionActive, + sorting = sorting, + paging = paging, + }; + + return listRequest; + } + + private void CancelSubscription(merchantAuthenticationType merchantAuthentication, String subscriptionId) { + //cancel the subscription + var cancelRequest = new ARBCancelSubscriptionRequest + { + merchantAuthentication = merchantAuthentication, + refId = RefId, + subscriptionId = subscriptionId + }; + var cancelResponse = ExecuteTestRequestWithSuccess(cancelRequest, TestEnvironment); + Assert.IsNotNull(cancelResponse.messages); + Logger.info(String.Format("Subscription Cancelled: {0}", subscriptionId)); + } + + private ARBSubscriptionStatusEnum GetSubscription(merchantAuthenticationType merchantAuthentication, String subscriptionId) { + //get a subscription + var getRequest = new ARBGetSubscriptionStatusRequest + { + merchantAuthentication = merchantAuthentication, + refId = RefId, + subscriptionId = subscriptionId + }; + var getResponse = ExecuteTestRequestWithSuccess(getRequest, TestEnvironment); + Assert.IsNotNull(getResponse.status); + Logger.info(String.Format("Subscription Status: {0}", getResponse.status)); + return getResponse.status; + } + + private string CreateSubscription( merchantAuthenticationType merchantAuthentication, string RefId) + { + //create a new subscription + //RequestFactoryWithSpecified.paymentType(ArbSubscriptionOne.payment); + //RequestFactoryWithSpecified.paymentScheduleType(ArbSubscriptionOne.paymentSchedule); + //RequestFactoryWithSpecified.ARBSubscriptionType(ArbSubscriptionOne); + var createRequest = new ARBCreateSubscriptionRequest + { + merchantAuthentication = merchantAuthentication, + refId = RefId, + subscription = ArbSubscriptionOne, + + }; + + var createResponse = ExecuteTestRequestWithSuccess(createRequest, TestEnvironment); + Assert.IsNotNull(createResponse.subscriptionId); + LogHelper.info( Logger, "Created Subscription: {0}", createResponse.subscriptionId); + + return createResponse.subscriptionId; + } + + [Test] + public void TestSubscription_serialization_error() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a subscription + var subscriptionDef = new ARBSubscriptionType + { + paymentSchedule = new paymentScheduleType + { + interval = new paymentScheduleTypeInterval + { + length = 1, + unit = ARBSubscriptionUnitEnum.months, + }, + startDate = DateTime.UtcNow, + totalOccurrences = 12, + }, + + + amount = 9.99M, + billTo = new customerAddressType { firstName = "first", lastName = "last" }, + + payment = PaymentOne, + + customer = CustomerOne, + + order = new orderType { description = string.Format("member monthly {0}", rnd.Next(99999)) }, + }; + + var arbRequest = new ARBCreateSubscriptionRequest { subscription = subscriptionDef }; + var arbController = new ARBCreateSubscriptionController(arbRequest); + arbController.Execute(); + + if (arbController.GetResultCode() == messageTypeEnum.Error) + { + var errorResp = arbController.GetErrorResponse(); + Console.WriteLine("{0}: {1}", errorResp.messages.message[0].code, errorResp.messages.message[0].text); + } + + } + } +} diff --git a/AuthorizeNETtest.backup/Api/Controllers/Test/CreateTransactionTest.cs b/AuthorizeNETtest.backup/Api/Controllers/Test/CreateTransactionTest.cs new file mode 100644 index 00000000..33c80507 --- /dev/null +++ b/AuthorizeNETtest.backup/Api/Controllers/Test/CreateTransactionTest.cs @@ -0,0 +1,471 @@ +using System.Diagnostics; + +namespace AuthorizeNet.Api.Controllers.Test +{ + using System; + using NUnit.Framework; + using AuthorizeNet.Api.Contracts.V1; + using AuthorizeNet.Api.Controllers; + using AuthorizeNet.Api.Controllers.Bases; + using AuthorizeNet.Util; + + [TestFixture] + public class CreateTransactionTest : ApiCoreTestBase + { + + [TestFixtureSetUp] + public new static void SetUpBeforeClass() + { + ApiCoreTestBase.SetUpBeforeClass(); + } + + [TestFixtureTearDown] + public new static void TearDownAfterClass() + { + ApiCoreTestBase.TearDownAfterClass(); + } + + [SetUp] + public new void SetUp() + { + base.SetUp(); + } + + [TearDown] + public new void TearDown() + { + base.TearDown(); + } + + + + [Test] + public void CreateProfileWithCreateTransactionRequestTest() + { + LogHelper.info(Logger, "CreateProfileWithCreateTransactionRequestTest"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var transactionRequestType = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + order = OrderType, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + shipTo = CustomerAddressOne, + profile = new customerProfilePaymentType + { + createProfile = true, + createProfileSpecified = true, + }, + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + //create controller, execute and get response + var createController = new createTransactionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + + //validate response + Assert.IsNotNull(createResponse.transactionResponse); + LogHelper.info(Logger, "Response: {0}", createResponse); + DisplayResponse(createResponse, "Create Transaction Response"); + LogHelper.info(Logger, "Created Transaction: {0}", createResponse.transactionResponse); + Assert.IsNotNull(createResponse.transactionResponse.transId); + long transId; + Assert.IsTrue(long.TryParse(createResponse.transactionResponse.transId, out transId)); + if (0 == transId) + { + ValidateFailure(createController, createResponse); + Assert.IsNotNull(createResponse.transactionResponse.errors); + foreach (var error in createResponse.transactionResponse.errors) + { + LogHelper.info(Logger, "Error-> Code:{0}, Text:{1}", error.errorCode, error.errorText); + } + } + else + { + Assert.AreNotEqual(0, transId); + ValidateSuccess(createController, createResponse); + } + var profileResponse = createResponse.profileResponse; + Assert.IsNotNull(profileResponse); + Assert.IsNotNull(profileResponse.customerProfileId); + Assert.IsNotNull(profileResponse.customerPaymentProfileIdList); + Assert.IsNotNull(profileResponse.customerShippingAddressIdList); + Assert.AreNotEqual("0", profileResponse.customerProfileId); + + Assert.AreEqual(1, profileResponse.customerPaymentProfileIdList.Length); + Assert.AreNotEqual("0", profileResponse.customerPaymentProfileIdList[0]); + + Assert.AreEqual(1, profileResponse.customerShippingAddressIdList.Length); + Assert.AreNotEqual("0", profileResponse.customerShippingAddressIdList[0]); + } + + /// + /// @Zalak + /// For issue #62 Github Dot.net SDK + /// + /// + /// + private createTransactionController CreateTransactionRequestTest(transactionRequestType transactionRequestParameter) + { + if (transactionRequestParameter == null) + { + throw new ArgumentNullException("transactionRequestParameter"); + } + LogHelper.info(Logger, "CreateTransactionRequestTest"); + + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var transactionRequestType = transactionRequestParameter; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + //create controller + var createController = new createTransactionController(createRequest); + + return createController; + } + + + + //@Zalak + /// + /// Issue number #62 github dot-net sdk + /// + [Test] + public void CreateRefundWithCustomerProfileRequestTest() + { + LogHelper.info(Logger, "CreateRefundWithCustomerProfileRequestTest"); + + //created a new transaction + var chargedTransactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + profile = new customerProfilePaymentType + { + createProfile = true, + //createProfileSpecified = true, //TODO : Update RequestFactory for Specified + }, + }; + + var createController = CreateTransactionRequestTest(chargedTransactionRequest); + if(createController == null) + throw new ArgumentNullException("createController"); + + var createResponse = createController.ExecuteWithApiResponse(); + if (createResponse == null) + { + throw new ArgumentNullException("createResponse"); + } + + if (createResponse.transactionResponse.transId == null) + { + throw new ArgumentNullException("TransId is null"); + } + chargedTransactionRequest.refTransId = createResponse.transactionResponse.transId; + + if (createResponse.profileResponse == null) + { + throw new ArgumentNullException("profileResponse"); + } + var profileResponse = createResponse.profileResponse; + + // creating a refund transaction request for above transaction using customer profile id and customer payment profile id + chargedTransactionRequest.transactionType = transactionTypeEnum.refundTransaction.ToString(); + chargedTransactionRequest.profile = new customerProfilePaymentType(); + chargedTransactionRequest.profile.customerProfileId = profileResponse.customerProfileId; + chargedTransactionRequest.profile.paymentProfile = new paymentProfile() + { + paymentProfileId = profileResponse.customerPaymentProfileIdList[0], + }; + + chargedTransactionRequest.customer = null; + chargedTransactionRequest.billTo = null; + chargedTransactionRequest.payment = null; + + createController = CreateTransactionRequestTest(chargedTransactionRequest); + createResponse = createController.ExecuteWithApiResponse(); + Assert.IsNotNull(createResponse); + //currently the transaction is failing because the bug fix is on server end + var errorResponse = createResponse.messages; + Assert.AreEqual(1, errorResponse.message.Length); + Assert.AreEqual("E00051", errorResponse.message[0].code); + Assert.AreEqual(errorResponse.message[0].text, "The original transaction was not issued for this payment profile."); + } + + /// + /// @Zalak + /// Issue #62: If shipping address is not included in request then it will be empty it will not be same as billing address + /// + [Test] + public void CreateTransactionShippingAddressTest() + { + LogHelper.info(Logger, "CreateRefundWithCustomerProfileRequestTest"); + + //created a new transaction + var chargedTransactionRequest = new transactionRequestType + { + transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + profile = new customerProfilePaymentType + { + createProfile = true, + createProfileSpecified = true, + }, + }; + + var createController = CreateTransactionRequestTest(chargedTransactionRequest); + var createResponse = createController.ExecuteWithApiResponse(); + if (createResponse == null) + throw new ArgumentNullException("createResponse"); + + Assert.IsNotNull(createResponse.transactionResponse); + LogHelper.info(Logger, "Response: {0}", createResponse); + DisplayResponse(createResponse, "Create Transaction Response"); + LogHelper.info(Logger, "Created Transaction: {0}", createResponse.transactionResponse); + Assert.IsNotNull(createResponse.transactionResponse.transId); + long transId; + Assert.IsTrue(long.TryParse(createResponse.transactionResponse.transId, out transId)); + + if (0 == transId) + { + ValidateFailure(createController, createResponse); + Assert.IsNotNull(createResponse.transactionResponse.errors); + foreach (var error in createResponse.transactionResponse.errors) + { + LogHelper.info(Logger, "Error-> Code:{0}, Text:{1}", error.errorCode, error.errorText); + } + } + else + { + ValidateSuccess(createController, createResponse); + Assert.AreNotEqual(0, transId); + } + + var profileResponse = createResponse.profileResponse; + Assert.IsNotNull(profileResponse); + Assert.IsNotNull(profileResponse.customerProfileId); + Assert.IsNotNull(profileResponse.customerPaymentProfileIdList); + Assert.AreEqual("",profileResponse.customerShippingAddressIdList); + Assert.AreNotEqual("0", profileResponse.customerProfileId); + + Assert.AreEqual(1, profileResponse.customerPaymentProfileIdList.Length); + Assert.AreNotEqual("0", profileResponse.customerPaymentProfileIdList[0]); + + Assert.AreEqual(0, profileResponse.customerShippingAddressIdList.Length); + + } + + [Test] + public void CreateTransactionInvalidRequestSchemaValidationTest() + { + ApiOperationBase.MerchantAuthentication = CustomMerchantAuthenticationType; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var transactionRequestType = new transactionRequestType + { + //removing the transaction type here is important to expect the schema validation error + //transactionType = transactionTypeEnum.authCaptureTransaction.ToString(), + amount = SetValidTransactionAmount(Counter), + payment = PaymentOne, + order = OrderType, + customer = CustomerDataOne, + billTo = CustomerAddressOne, + + }; + var createRequest = new createTransactionRequest + { + refId = RefId, + transactionRequest = transactionRequestType, + }; + + //create controller, execute and get response + var createController = new createTransactionController(createRequest); + createController.Execute(); + var createResponse = createController.GetApiResponse(); + + //validate response + Assert.IsNull(createResponse); + var errorResponse = createController.GetErrorResponse(); + Assert.IsNotNull(errorResponse); + Assert.IsNotNull(errorResponse.messages); + Assert.IsNotNull(errorResponse.messages.message); + Assert.AreEqual(messageTypeEnum.Error, errorResponse.messages.resultCode); + Assert.AreEqual(1, errorResponse.messages.message.Length); + Assert.AreEqual("E00003", errorResponse.messages.message[0].code); + ValidateErrorCode(errorResponse.messages, "E00003"); + } + + [Test] + public void DecryptPaymentDataRequestTest() + { + LogHelper.info(Logger, "decryptPaymentDataRequestTest"); + + ApiOperationBase.MerchantAuthentication = new merchantAuthenticationType() + { + name = "5KP3u95bQpv", + ItemElementName = ItemChoiceType.transactionKey, + Item = "346HZ32z3fP4hTG2", + }; + ApiOperationBase.RunEnvironment = TestEnvironment; + + //create a transaction + var opaqueDataType = new opaqueDataType + { + dataDescriptor = "COMMON.VCO.ONLINE.PAYMENT", + dataKey = "foFBEbhXljevQQasx5Q87hzj57xvUl4iBmXDdB1vs/Lm/M1uKJiF9V5QxI0A6NvAtIckMvutSl0Chz2SNoSeBuTRzK0y4IlfnfWKnJF7a1LV/bjZokTtFKINdZ+Ks9RB", + dataValue = "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" + }; + + var decryptPaymentDataRequest = new decryptPaymentDataRequest() + { + opaqueData = opaqueDataType, + callId = "1166739390571781401" + }; + //create controller, execute and get response + var decryptPaymentDataController = new decryptPaymentDataController(decryptPaymentDataRequest); + decryptPaymentDataController.Execute(); + var decryptPaymentDataResponse = decryptPaymentDataController.GetApiResponse(); + + //validate response + Assert.IsNotNull(decryptPaymentDataResponse); + LogHelper.info(Logger, "Response: {0}", decryptPaymentDataResponse); + Assert.IsNotNull(decryptPaymentDataResponse.messages); + Assert.IsNotNull(decryptPaymentDataResponse.messages.message); + Assert.AreEqual(decryptPaymentDataResponse.messages.resultCode, messageTypeEnum.Ok); + Assert.AreEqual(decryptPaymentDataResponse.billingInfo.firstName, "Authorize"); + Assert.AreEqual(decryptPaymentDataResponse.billingInfo.lastName, "Tester"); + Assert.AreEqual(decryptPaymentDataResponse.cardInfo.cardNumber, "XXXX4242"); + } + } +} +/* + +The current plan for the bug bash is postponed until arkadiy’s investigation of the echeck bug fix. +(If the at’s fix go in, we might need to wait for the brand new build in PLUM for the bug bash). + +I used the api docs to get this to work for JSON, I just needed to remove the namespace line. + +I’m hoping to have a new version of API Docs with static request/responses (so the paypals really help) by the 3pm bug bash. + +This is what I have so far, some sample JSON and XML requests for PayPal. +I’m working on the others. + +Auth Only PayPal-------------------------------------------------------- + +XML request + + + + authOnlyTransaction + 5 + + + http://blah.com + http://blah.com + + + + + +JSON request-------------- +{ + "createTransactionRequest": + { + "merchantAuthentication": + { + ,"transactionRequest": + { + "transactionType":"authOnlyTransaction","amount":"5","payment": + { + "payPal": + { + "successUrl":"http://blah.com","cancelUrl":"http://blah.com"} + } + }} +} + +JSON response +{ + "transactionResponse":{ + "responseCode":"5","rawResponseCode":"0","transId":"2149186510","refTransID":"","transHash":"4B59979D6C305BF85D82D803FD2A776A","testRequest":"0","accountType":"PayPal","messages":[{ + "code":"2000","description":"Need payer consent."} + ],"secureAcceptance":{ + "SecureAcceptanceUrl":"https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-WHUJYBCWWQFFSPUTN"} + } + ,"messages":{ + "resultCode":"Ok","message":[{ + "code":"I00001","text":"Successful."} + ]} +} + + +Auth Only Continue---------------------------------------------- + + + + + authOnlyContinueTransaction + 5.00 + + + SNTNC44D4GXGC + + + 2149186511 + + + +JSON request------------------------------ +{ + "createTransactionRequest": + { + "merchantAuthentication": + { + ,"transactionRequest": + { + "transactionType":"authOnlyContinueTransaction","amount":"5.00","payment": + { + "payPal": + { + "payerID":"SNTNC44D4GXGC"} + } + ,"refTransId":"2149186511"} +} + + +JSON response------------------------------- +{ + "transactionResponse":{ + "responseCode":"1","rawResponseCode":"0","transId":"2149186511","refTransID":"2149186511","transHash":"578362630D36EDEB7F00672739422907","testRequest":"0","accountType":"PayPal","messages":[{ + "code":"1","description":"This transaction has been approved."} + ],"secureAcceptance":{ + "PayerID":"SNTNC44D4GXGC"} + } + ,"messages":{ + "resultCode":"Ok","message":[{ + "code":"I00001","text":"Successful."} + ]} +} +*/ \ No newline at end of file diff --git a/AuthorizeNETtest.backup/App.config b/AuthorizeNETtest.backup/App.config new file mode 100644 index 00000000..304d17bf --- /dev/null +++ b/AuthorizeNETtest.backup/App.config @@ -0,0 +1,11 @@ + + + + + + + + + + + diff --git a/AuthorizeNETtest.backup/AuthorizeNETtest.csproj b/AuthorizeNETtest.backup/AuthorizeNETtest.csproj new file mode 100644 index 00000000..6e1373ba --- /dev/null +++ b/AuthorizeNETtest.backup/AuthorizeNETtest.csproj @@ -0,0 +1,162 @@ + + + + Debug + AnyCPU + 9.0.30729 + 2.0 + {CDA0D4D8-E4AA-4BEA-8839-04D69607D914} + Library + Properties + AuthorizeNETtest + AuthorizeNETtest + v4.8 + 512 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + + + 3.5 + + + + + AnyCPU + true + full + false + bin/Debug + DEBUG;TRACE + prompt + 4 + 0219,1591,1635 + false + + + AnyCPU + pdbonly + true + bin/Release + TRACE + prompt + 4 + false + + + + ..\packages\NMock3.3.5.44\lib\net40\NMock3.dll + + + ..\NUnit-2.6.3\bin\lib\nunit-console-runner.dll + + + ..\NUnit-2.6.3\bin\lib\nunit.core.dll + + + ..\NUnit-2.6.3\bin\lib\nunit.core.interfaces.dll + + + ..\NUnit-2.6.3\bin\nunit.framework.dll + + + ..\NUnit-2.6.3\bin\lib\nunit.util.dll + + + + + 3.5 + + + + 3.5 + + + + + 3.5 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + {5D52EAEC-42FB-4313-83B8-69E2F55EBF14} + AuthorizeNET + + + + + + Designer + + + + + + + + + + + \ No newline at end of file diff --git a/AuthorizeNETtest.backup/BaseTest.cs b/AuthorizeNETtest.backup/BaseTest.cs new file mode 100644 index 00000000..bac36547 --- /dev/null +++ b/AuthorizeNETtest.backup/BaseTest.cs @@ -0,0 +1,68 @@ +using NUnit.Framework; +using System; +using System.Configuration; +using AuthorizeNet.Utility; + +namespace AuthorizeNETtest +{ + /// + /// Summary description for UnitTest1 + /// + [TestFixture] + public class BaseTest + { + protected static readonly WebRequestCreateLocal LocalRequestObject = new WebRequestCreateLocal(); + protected string ApiLogin; + protected string TransactionKey; + + public BaseTest() + { +#if USELOCAL + WebRequest.RegisterPrefix("https://", LocalRequestObject); +#endif + } + + /// + /// CheckApiLoginTransactionKey - make sure that we are not using the default invalid ApiLogin and TransactionKey. + /// + protected string CheckApiLoginTransactionKey() + { + ApiLogin = AuthorizeNet.Test.UnitTestData.GetPropertyFromNames(AuthorizeNet.Util.Constants.EnvApiLoginid, AuthorizeNet.Util.Constants.PropApiLoginid); + TransactionKey = AuthorizeNet.Test.UnitTestData.GetPropertyFromNames(AuthorizeNet.Util.Constants.EnvTransactionKey, AuthorizeNet.Util.Constants.PropTransactionKey); + + string sRet = ""; + if ((string.IsNullOrEmpty(ApiLogin)) || (ApiLogin.Trim().Length == 0) + || (string.IsNullOrEmpty(TransactionKey)) || (TransactionKey.Trim().Length == 0)) + { + LoadLoginTranskey(); + } + + if ((string.IsNullOrEmpty(ApiLogin)) || (ApiLogin.Trim().Length == 0) + || (string.IsNullOrEmpty(TransactionKey)) || (TransactionKey.Trim().Length == 0)) + { + sRet = "Invalid Login / Password: blank \n"; + } + +#if !USELOCAL + if ((ApiLogin == "ApiLogin") || (TransactionKey == "TransactionKey")) + { + sRet += "Invalid Login / Password \n"; + } +#endif + return sRet; + } + + private void LoadLoginTranskey() + { + ApiLogin = ConfigurationManager.AppSettings["ApiLogin"]; + TransactionKey = ConfigurationManager.AppSettings["TransactionKey"]; + } + + protected decimal getValidAmount() + { + var rnd = new AnetRandom(DateTime.Now.Millisecond); + + return (decimal)rnd.Next(9999) / 100; + } + } +} diff --git a/packages/NMock3.3.5.44/content/NMock3/NMock3 Cheat Sheet.pdf b/AuthorizeNETtest.backup/NMock3/NMock3 Cheat Sheet.pdf similarity index 100% rename from packages/NMock3.3.5.44/content/NMock3/NMock3 Cheat Sheet.pdf rename to AuthorizeNETtest.backup/NMock3/NMock3 Cheat Sheet.pdf diff --git a/AuthorizeNETtest/NMock3/NMockTest.cs b/AuthorizeNETtest.backup/NMock3/NMockTest.cs similarity index 100% rename from AuthorizeNETtest/NMock3/NMockTest.cs rename to AuthorizeNETtest.backup/NMock3/NMockTest.cs diff --git a/AuthorizeNETtest.backup/Properties/AssemblyInfo.cs b/AuthorizeNETtest.backup/Properties/AssemblyInfo.cs new file mode 100644 index 00000000..9381d3e2 --- /dev/null +++ b/AuthorizeNETtest.backup/Properties/AssemblyInfo.cs @@ -0,0 +1,35 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("AuthorizeNETtest")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Visa Inc")] +[assembly: AssemblyProduct("AuthorizeNETtest")] +[assembly: AssemblyCopyright("Copyright © Visa Inc 2014")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM componenets. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("4f3c1454-321b-4ef5-9455-e0934ed5d118")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Revision and Build Numbers +// by using the '*' as shown below: +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/AuthorizeNETtest.backup/UnitTestData.cs b/AuthorizeNETtest.backup/UnitTestData.cs new file mode 100644 index 00000000..47817e43 --- /dev/null +++ b/AuthorizeNETtest.backup/UnitTestData.cs @@ -0,0 +1,44 @@ +namespace AuthorizeNet.Test +{ + using System; + using System.Configuration; + using System.Linq; + using AuthorizeNet.Util; + + public abstract class UnitTestData + { + protected static string ApiLoginId; + protected static string TransactionKey; + protected static string MerchantMd5Key; + + private static readonly Log Logger = LogFactory.getLog(typeof(UnitTestData)); + + /** + * Default static constructor + */ + static UnitTestData() + { + //getPropertyFromNames get the value from properties file or environment + ApiLoginId = GetPropertyFromNames(Constants.EnvApiLoginid, Constants.PropApiLoginid); + TransactionKey = GetPropertyFromNames(Constants.EnvTransactionKey, Constants.PropTransactionKey); + MerchantMd5Key = GetPropertyFromNames(Constants.EnvMd5Hashkey, Constants.PropMd5Hashkey); + + if (null == ApiLoginId || null == TransactionKey) + { + throw new ArgumentException("LoginId and/or TransactionKey have not been set."); + } + else + { + LogHelper.info(Logger, "PropertyValues: ApiLoginId:'{0}', TransactionKey:'{1}', MD5Key:'{2}' ", ApiLoginId, TransactionKey, MerchantMd5Key); + } + } + + public static string GetPropertyFromNames(string pFirstName, string pSecondName) + { + var value = AuthorizeNet.Environment.GetProperty(pFirstName) ?? + AuthorizeNet.Environment.GetProperty(pSecondName); + + return value; + } + } +} \ No newline at end of file diff --git a/AuthorizeNETtest.backup/WebRequestLocal.cs b/AuthorizeNETtest.backup/WebRequestLocal.cs new file mode 100644 index 00000000..ee3e4967 --- /dev/null +++ b/AuthorizeNETtest.backup/WebRequestLocal.cs @@ -0,0 +1,133 @@ +using System; +using System.IO; +using System.Net; +using System.Collections.Generic; +using System.Linq; +using System.Runtime.Serialization; +using System.Text; +using System.Threading; + +namespace AuthorizeNETtest +{ + public class WebRequestCreateLocal : IWebRequestCreate + { + public WebRequestCreateLocal() + { + } + + public WebRequestCreateLocal(string response) + { + ResponseString = response; + } + + public string ResponseString + { + get { return ResponseStrings[ResponseStringCount - 1]; } + set + { + ResponseStringCount = 0; + if (ResponseStrings == null) + { + ResponseStrings = new string[] {value}; + } + else + { + ResponseStrings[0] = value; + } + } + } + public string[] ResponseStrings { get; set; } + public int ResponseStringCount { get; set; } + + public WebRequest Create(Uri uri) + { + SerializationInfo si = new SerializationInfo(typeof(HttpWebRequest), new System.Runtime.Serialization.FormatterConverter()); + StreamingContext sc = new StreamingContext(); + WebHeaderCollection headers = new WebHeaderCollection(); + WebProxy proxy = new WebProxy(); + si.AddValue("_HttpRequestHeaders", new WebHeaderCollection(), typeof(WebHeaderCollection)); + si.AddValue("_Proxy", null, typeof(IWebProxy)); + si.AddValue("_KeepAlive", true); + si.AddValue("_Pipelined", true); + si.AddValue("_AllowAutoRedirect", true); + si.AddValue("_AllowWriteStreamBuffering", true); + si.AddValue("_HttpWriteMode", 0); + si.AddValue("_MaximumAllowedRedirections", 0); + si.AddValue("_AutoRedirects", 0); + si.AddValue("_Timeout", 500); //need to check below + si.AddValue("_ReadWriteTimeout", 500); + si.AddValue("_MaximumResponseHeadersLength", 128); + si.AddValue("_ContentLength", 0); + si.AddValue("_MediaType", 0); + si.AddValue("_OriginVerb", 0); + si.AddValue("_ConnectionGroupName", null); + si.AddValue("_Version", HttpVersion.Version11, typeof(Version)); + si.AddValue("_OriginUri", new Uri("http://localhost"), typeof(Uri)); + + WebRequestLocal request = new WebRequestLocal(si, sc); + ResponseStringCount++; + request.ResponseString = ResponseString; + + return request; + } + } + + public class WebRequestLocal : HttpWebRequest + { + public WebRequestLocal(SerializationInfo serializationInfo, StreamingContext streamingContext) + : base(serializationInfo, streamingContext) + { + } + + public string ResponseString { get; set; } + + public override long ContentLength { get; set; } + + public override Stream GetRequestStream() + { + MemoryStream ms = new MemoryStream(); + ms.Capacity = (int) ContentLength; + return ms; + } + + public override WebResponse GetResponse() + { + SerializationInfo si = new SerializationInfo(typeof(HttpWebResponse), new System.Runtime.Serialization.FormatterConverter()); + StreamingContext sc = new StreamingContext(); + WebHeaderCollection headers = new WebHeaderCollection(); + si.AddValue("m_HttpResponseHeaders", headers); + si.AddValue("m_Uri", new Uri("http://localhost")); + si.AddValue("m_Certificate", null); + si.AddValue("m_Version", HttpVersion.Version11); + si.AddValue("m_StatusCode", HttpStatusCode.OK); + si.AddValue("m_ContentLength", 0); + si.AddValue("m_Verb", "GET"); + si.AddValue("m_StatusDescription", "Local Response"); + si.AddValue("m_MediaType", null); + + WebResponseLocal response = new WebResponseLocal(si, sc); + response.ResponseString = ResponseString; + return response; + } + } + + public class WebResponseLocal : HttpWebResponse + { + public WebResponseLocal(SerializationInfo serializationInfo, StreamingContext streamingContext) + : base(serializationInfo, streamingContext) + { + } + + public string ResponseString { get; set; } + + public override Stream GetResponseStream() + { + Encoding ascii = Encoding.ASCII; + byte[] bytes = ascii.GetBytes(ResponseString); + MemoryStream ms = new MemoryStream(); + ms.Write(bytes, 0, bytes.Length); + ms.Seek(0, SeekOrigin.Begin); + return ms; + } + } +} diff --git a/AuthorizeNETtest/packages.config b/AuthorizeNETtest.backup/packages.config similarity index 100% rename from AuthorizeNETtest/packages.config rename to AuthorizeNETtest.backup/packages.config diff --git a/AuthorizeNETtest.backup/upgrade.backup b/AuthorizeNETtest.backup/upgrade.backup new file mode 100644 index 00000000..441b4f2c --- /dev/null +++ b/AuthorizeNETtest.backup/upgrade.backup @@ -0,0 +1 @@ +Backup created at 1638971368 (12/8/2021 1:49:28 PM +00:00) \ No newline at end of file diff --git a/AuthorizeNETtest/Api/ControllerTemplateTest.cst b/AuthorizeNETtest/Api/ControllerTemplateTest.cst index fcc2194e..a3bf598f 100644 --- a/AuthorizeNETtest/Api/ControllerTemplateTest.cst +++ b/AuthorizeNETtest/Api/ControllerTemplateTest.cst @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class APICONTROLLERNAMETest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs index 463d2648..e1e28115 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBCancelSubscriptionControllerTest.cs @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBCancelSubscriptionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs index 52662b93..4a62e732 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBCreateSubscriptionControllerTest.cs @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBCreateSubscriptionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs index a4e6352d..183e45e2 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionControllerTest.cs @@ -14,13 +14,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBGetSubscriptionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs index c0c35635..e4d711d6 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionListControllerTest.cs @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBGetSubscriptionListTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs index ae4d1718..984defa3 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBGetSubscriptionStatusControllerTest.cs @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBGetSubscriptionStatusTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs index 4755480e..3f41ba09 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/ARBUpdateSubscriptionControllerTest.cs @@ -12,13 +12,13 @@ namespace AuthorizeNet.Api.Controllers.MockTest public class ARBUpdateSubscriptionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/authenticateTestControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/authenticateTestControllerTest.cs index 7615c80f..1f7e8d5e 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/authenticateTestControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/authenticateTestControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class authenticateTestTest : ApiCoreTestBase + public class AuthenticateTestTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs index c9be0f0e..96344068 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerPaymentProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createCustomerPaymentProfileTest : ApiCoreTestBase + public class CreateCustomerPaymentProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs index 78c6cbe7..2354ca6d 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createCustomerProfileTest : ApiCoreTestBase + public class CreateCustomerProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs index 66eaca41..e53a184a 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileFromTransactionControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createCustomerProfileFromTransactionTest : ApiCoreTestBase + public class CreateCustomerProfileFromTransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs index 7134923c..9374ae9a 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerProfileTransactionControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createCustomerProfileTransactionTest : ApiCoreTestBase + public class CreateCustomerProfileTransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs index 69caadcd..0517a57c 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createCustomerShippingAddressControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createCustomerShippingAddressTest : ApiCoreTestBase + public class CreateCustomerShippingAddressTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createProfileControllerTest.cs index 5ef5b361..084bc953 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createProfileTest : ApiCoreTestBase + public class CreateProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/createTransactionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/createTransactionControllerTest.cs index e1c5a552..79ba2e0b 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/createTransactionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/createTransactionControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class createTransactionTest : ApiCoreTestBase + public class CreateTransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs index 43cac345..2faec023 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/decryptPaymentDataControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class decryptPaymentDataTest : ApiCoreTestBase + public class DecryptPaymentDataTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs index 916c786f..8683a088 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerPaymentProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class deleteCustomerPaymentProfileTest : ApiCoreTestBase + public class DeleteCustomerPaymentProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs index 94e7f127..c6e8e49c 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class deleteCustomerProfileTest : ApiCoreTestBase + public class DeleteCustomerProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs index e87755a4..ec2d7402 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/deleteCustomerShippingAddressControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class deleteCustomerShippingAddressTest : ApiCoreTestBase + public class DeleteCustomerShippingAddressTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs index 79303185..68336de9 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getBatchStatisticsControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getBatchStatisticsTest : ApiCoreTestBase + public class GetBatchStatisticsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs index 2aa5113b..3ab090be 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getCustomerPaymentProfileTest : ApiCoreTestBase + public class GetCustomerPaymentProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs index b99e00a7..b79fd9a2 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerPaymentProfileListControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getCustomerPaymentProfileListTest : ApiCoreTestBase + public class GetCustomerPaymentProfileListTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs index 7cf92386..3789a9b7 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getCustomerProfileTest : ApiCoreTestBase + public class GetCustomerProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs index ee7f2d91..4835cf33 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerProfileIdsControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getCustomerProfileIdsTest : ApiCoreTestBase + public class GetCustomerProfileIdsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs index 9ddc4b7a..5b9aa231 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getCustomerShippingAddressControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getCustomerShippingAddressTest : ApiCoreTestBase + public class GetCustomerShippingAddressTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs index 26560ba8..ae73cfa0 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getHostedPaymentPageControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getHostedPaymentPageTest : ApiCoreTestBase + public class GetHostedPaymentPageTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs index 7fcbb1ce..42c0acc1 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getHostedProfilePageControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getHostedProfilePageTest : ApiCoreTestBase + public class GetHostedProfilePageTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs index 2069a8d8..74993af6 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getMerchantDetailsControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getMerchantDetailsTest : ApiCoreTestBase + public class GetMerchantDetailsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs index 9dd5678b..a2c31803 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getSettledBatchListControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getSettledBatchListTest : ApiCoreTestBase + public class GetSettledBatchListTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs index 41eef08f..92532b57 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionDetailsControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getTransactionDetailsTest : ApiCoreTestBase + public class GetTransactionDetailsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionListControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionListControllerTest.cs index 4b2b84ea..522cf33a 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionListControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getTransactionListControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getTransactionListTest : ApiCoreTestBase + public class GetTransactionListTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs index 0981c264..766c277d 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/getUnsettledTransactionListControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class getUnsettledTransactionListTest : ApiCoreTestBase + public class GetUnsettledTransactionListTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/isAliveControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/isAliveControllerTest.cs index faf96f67..f976682e 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/isAliveControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/isAliveControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class isAliveTest : ApiCoreTestBase + public class IsAliveTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/logoutControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/logoutControllerTest.cs index c51edab7..07f3b341 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/logoutControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/logoutControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class logoutTest : ApiCoreTestBase + public class LogoutTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs index 10464fe5..f6c7aa84 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceLoginControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class mobileDeviceLoginTest : ApiCoreTestBase + public class MobileDeviceLoginTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs index 175377c6..c8586e9c 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/mobileDeviceRegistrationControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class mobileDeviceRegistrationTest : ApiCoreTestBase + public class MobileDeviceRegistrationTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs index 591c594a..b5a533ac 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/securePaymentContainerControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class securePaymentContainerTest : ApiCoreTestBase + public class SecurePaymentContainerTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs index 59ac0c07..f3abe2c7 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/sendCustomerTransactionReceiptControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class sendCustomerTransactionReceiptTest : ApiCoreTestBase + public class SendCustomerTransactionReceiptTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/transactionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/transactionControllerTest.cs index 1479e9b2..c5d6f0b8 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/transactionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/transactionControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class transactionTest : ApiCoreTestBase + public class TransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs index b601f3ab..36432a6f 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerPaymentProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateCustomerPaymentProfileTest : ApiCoreTestBase + public class UpdateCustomerPaymentProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs index b4442156..3bd847e3 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateCustomerProfileTest : ApiCoreTestBase + public class UpdateCustomerProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs index 22301a75..4ea3f074 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateCustomerShippingAddressControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateCustomerShippingAddressTest : ApiCoreTestBase + public class UpdateCustomerShippingAddressTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs index 4281be7f..033078a3 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateHeldTransactionControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateHeldTransactionTest : ApiCoreTestBase + public class UpdateHeldTransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs index 7a87ce67..52334ab8 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateMerchantDetailsControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateMerchantDetailsTest : ApiCoreTestBase + public class UpdateMerchantDetailsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs index 021a9b27..91b0a7bd 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/updateSplitTenderGroupControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class updateSplitTenderGroupTest : ApiCoreTestBase + public class UpdateSplitTenderGroupTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs b/AuthorizeNETtest/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs index fa66eacf..1f7ec877 100644 --- a/AuthorizeNETtest/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs +++ b/AuthorizeNETtest/Api/Controllers/MockTest/validateCustomerPaymentProfileControllerTest.cs @@ -9,16 +9,16 @@ namespace AuthorizeNet.Api.Controllers.MockTest using NUnit.Framework; [TestFixture] - public class validateCustomerPaymentProfileTest : ApiCoreTestBase + public class ValidateCustomerPaymentProfileTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs index 9673e9d7..5edbec89 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/ArbSubscriptionSampleTest.cs @@ -11,13 +11,13 @@ namespace AuthorizeNet.Api.Controllers.SampleTest [TestFixture] public class ArbSubscriptionSampleTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs index e528e61f..95b43327 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/CreateCustomerProfileFromTransactionSampleTest.cs @@ -13,13 +13,13 @@ public class CreateCustomerProfileFromTransactionSampleTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs index 675495c9..b1e70bb3 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/CreateTransactionSampleTest.cs @@ -1,4 +1,4 @@ -using AuthorizeNet.Utility; +using AuthorizeNet.Utility; namespace AuthorizeNet.Api.Controllers.SampleTest { @@ -14,13 +14,13 @@ namespace AuthorizeNet.Api.Controllers.SampleTest public class CreateTransactionSampleTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); @@ -344,7 +344,7 @@ public void SampleCodeCreateTransactionWithPayPal() var response = controller.GetApiResponse(); //validate. The code 2000 is: Need the payer's consent. - Assert.AreEqual("2000", response.transactionResponse.messages[0].code); + Assert.AreEqual("2000", response.transactionResponse.responseCode); } [Test] diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs index 9f4fca5c..3f8fb402 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/CustomerProfileSampleTest.cs @@ -11,13 +11,13 @@ [TestFixture] class CustomerProfileSampleTest: ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs index 71288486..4c172952 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/ErrorMessagesSampleTest.cs @@ -15,13 +15,13 @@ namespace AuthorizeNet.Api.Controllers.SampleTest public class ErrorMessagesSampleTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs b/AuthorizeNETtest/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs index 07f53003..65230ba3 100644 --- a/AuthorizeNETtest/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs +++ b/AuthorizeNETtest/Api/Controllers/SampleTest/eCheckTransactionSampleTest.cs @@ -13,13 +13,13 @@ namespace AuthorizeNet.Api.Controllers.SampleTest [TestFixture] public class CreateECheckTransactionSampleTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/Test/APIInvalidCredentials.cs b/AuthorizeNETtest/Api/Controllers/Test/APIInvalidCredentials.cs index 39b41cef..dd30f7e7 100644 --- a/AuthorizeNETtest/Api/Controllers/Test/APIInvalidCredentials.cs +++ b/AuthorizeNETtest/Api/Controllers/Test/APIInvalidCredentials.cs @@ -12,13 +12,13 @@ public class CredentialsTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/Test/AllGeneratedEnumTest.cs b/AuthorizeNETtest/Api/Controllers/Test/AllGeneratedEnumTest.cs index e16565d7..19abd6a4 100644 --- a/AuthorizeNETtest/Api/Controllers/Test/AllGeneratedEnumTest.cs +++ b/AuthorizeNETtest/Api/Controllers/Test/AllGeneratedEnumTest.cs @@ -8,13 +8,13 @@ namespace AuthorizeNet.Api.Controllers.Test public class AllGeneratedEnumTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/Api/Controllers/Test/ApiCoreTestBase.cs b/AuthorizeNETtest/Api/Controllers/Test/ApiCoreTestBase.cs index 4e720f09..fc1d15b6 100644 --- a/AuthorizeNETtest/Api/Controllers/Test/ApiCoreTestBase.cs +++ b/AuthorizeNETtest/Api/Controllers/Test/ApiCoreTestBase.cs @@ -93,7 +93,7 @@ static ApiCoreTestBase() { ErrorMessages = new Dictionary(); } - [TestFixtureSetUp] + [SetUp] public static void SetUpBeforeClass()//TestContext context) { ErrorMessages.Clear(); @@ -108,7 +108,7 @@ public static void SetUpBeforeClass()//TestContext context) ErrorMessages.Add("E00095", "ShippingProfileId is not provided within Customer Profile."); } - [TestFixtureTearDown] + [TearDown] public static void TearDownAfterClass() { } diff --git a/AuthorizeNETtest/Api/Controllers/Test/ArbSubscriptionTest.cs b/AuthorizeNETtest/Api/Controllers/Test/ArbSubscriptionTest.cs index 8f37aabc..19c62904 100644 --- a/AuthorizeNETtest/Api/Controllers/Test/ArbSubscriptionTest.cs +++ b/AuthorizeNETtest/Api/Controllers/Test/ArbSubscriptionTest.cs @@ -1,26 +1,23 @@ using AuthorizeNet.Utility; +using System; +using AuthorizeNet.Api.Contracts.V1; +using AuthorizeNet.Api.Controllers.Bases; +using AuthorizeNet.Util; +using NUnit.Framework; +using System.Linq; namespace AuthorizeNet.Api.Controllers.Test { - using System; - using AuthorizeNet.Api.Contracts.V1; - using AuthorizeNet.Api.Controllers; - using AuthorizeNet.Api.Controllers.Bases; - using AuthorizeNet.Api.Controllers.Test; - using AuthorizeNet.Util; - using NUnit.Framework; - using System.Linq; - - [TestFixture] + [TestFixture] public class ArbSubscriptionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); @@ -211,7 +208,7 @@ public void TestSubscription_ExpiredCC() /// @Zalak /// // [Test] - [ExpectedException(typeof(ArgumentException), ExpectedMessage = "SearchType cannot be null")] + [Microsoft.VisualStudio.TestTools.UnitTesting.ExpectedException(typeof(ArgumentException), "SearchType cannot be null")] public void GetSubscriptionSearchCardExpiringThisMonthIssueTest() { var getSubscriptionList = new ARBGetSubscriptionListRequest() diff --git a/AuthorizeNETtest/Api/Controllers/Test/CreateTransactionTest.cs b/AuthorizeNETtest/Api/Controllers/Test/CreateTransactionTest.cs index 33c80507..3330d060 100644 --- a/AuthorizeNETtest/Api/Controllers/Test/CreateTransactionTest.cs +++ b/AuthorizeNETtest/Api/Controllers/Test/CreateTransactionTest.cs @@ -13,13 +13,13 @@ namespace AuthorizeNet.Api.Controllers.Test public class CreateTransactionTest : ApiCoreTestBase { - [TestFixtureSetUp] + [SetUp] public new static void SetUpBeforeClass() { ApiCoreTestBase.SetUpBeforeClass(); } - [TestFixtureTearDown] + [TearDown] public new static void TearDownAfterClass() { ApiCoreTestBase.TearDownAfterClass(); diff --git a/AuthorizeNETtest/App.config b/AuthorizeNETtest/App.config index 27eeb418..a6546231 100644 --- a/AuthorizeNETtest/App.config +++ b/AuthorizeNETtest/App.config @@ -1,12 +1,11 @@ - - - + + + - + - diff --git a/AuthorizeNETtest/AuthorizeNETtest.csproj b/AuthorizeNETtest/AuthorizeNETtest.csproj index c2ee635b..a9cd4128 100644 --- a/AuthorizeNETtest/AuthorizeNETtest.csproj +++ b/AuthorizeNETtest/AuthorizeNETtest.csproj @@ -1,5 +1,5 @@  - + Debug AnyCPU @@ -10,7 +10,7 @@ Properties AuthorizeNETtest AuthorizeNETtest - v4.5 + v4.8 512 {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} @@ -42,24 +42,6 @@ false - - ..\packages\NMock3.3.5.44\lib\net40\NMock3.dll - - - ..\NUnit-2.6.3\bin\lib\nunit-console-runner.dll - - - ..\NUnit-2.6.3\bin\lib\nunit.core.dll - - - ..\NUnit-2.6.3\bin\lib\nunit.core.interfaces.dll - - - ..\NUnit-2.6.3\bin\nunit.framework.dll - - - ..\NUnit-2.6.3\bin\lib\nunit.util.dll - @@ -145,12 +127,27 @@ Designer - - + + + 2.2.8 + + + 3.5.44 + + + 3.13.2 + + + 3.13.0 + + + 4.1.0 + + + \ No newline at end of file diff --git a/MigrationBackup/293b108f/AuthorizeNETtest/NuGetUpgradeLog.html b/MigrationBackup/293b108f/AuthorizeNETtest/NuGetUpgradeLog.html new file mode 100644 index 00000000..4cb26a9b --- /dev/null +++ b/MigrationBackup/293b108f/AuthorizeNETtest/NuGetUpgradeLog.html @@ -0,0 +1,162 @@ + + + + + NuGetMigrationLog +

+ NuGet Migration Report - AuthorizeNETtest

Overview

Migration to PackageReference was completed successfully. Please build and run your solution to verify that all packages are available.
+ If you run into any problems, have feedback, questions, or concerns, please + file an issue on the NuGet GitHub repository.
+ Changed files and this report have been backed up here: + D:\Repos\4D\Staccato\Services\lib\authorize.net\MigrationBackup\293b108f\AuthorizeNETtest

Packages processed

Top-level dependencies:

Package IdVersion
NMock3 + v3.5.44

Transitive dependencies:

Package IdVersion
+ No transitive dependencies found. +

Package compatibility issues

Description
+ No issues were found. +
\ No newline at end of file diff --git a/MigrationBackup/293b108f/AuthorizeNETtest/packages.config b/MigrationBackup/293b108f/AuthorizeNETtest/packages.config new file mode 100644 index 00000000..a6e17e46 --- /dev/null +++ b/MigrationBackup/293b108f/AuthorizeNETtest/packages.config @@ -0,0 +1,4 @@ + + + + \ No newline at end of file diff --git a/packages/NMock3.3.5.44/NMock3.3.5.44.nupkg b/packages/NMock3.3.5.44/NMock3.3.5.44.nupkg deleted file mode 100644 index 680b713cec83958f431e2e58f4b5850942d1162d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1868797 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

2GI=;380)EwDX&7rk@Z=eIn4kq!{k~*qp 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

Z)-fjQafIaB(LYX5+)AZq>=g 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%0A5A&7)$EwjBP+W={ea7_iB` zaQvg|=n(J5$&U$;Z^_aD@Xc{Uh{JPG;7Pxt8z{6GJc&>?q1%^(l|+pN_2tlha`m}e z&AE&#B7Dh(&6)rIf2VQ3jQ=l$=3qRg51V+=#$&#UdTi$`?*#0MTITap13B2Y$T3To z-)Kp^(I4TnCBxXZ{oN;YMf@s0{u1LdkMAQZCigL0zsh}s@1U>C)_I>i*$FsMEvor{ z1q(xRZuPDMonexvs+r?g16zI5lF8B^8LDv3Q!c>5)oDU@-d-86UIos&>7wUkR4wNd z+Aq$JRVOI4)KT*>$_QOf`et_+edhQk`FqBBkS= z>OUW?VS}{+=o9AnvZ>`_H62{DY1n}Tvv&&u(1k_P5GoUyYRukOg`u^OJ#CoS9l$~`laGwTNYAY zi(0h$4*Ul5S8RY6=E0yg32Qhz_7Zu!u-t{FUaJRN7_Bj2{GGbEF;_(4nCIg8D{oJ6 zf15e+_C6x>(HKXWz9yc$4eVOslEKI>6xb;V!w`=%hnfILX+qxM0-~X_O6R4g$XT+I zS}P#z0pLKqhHRda)4S3Eu^}a1rIc9odu(~7`oG*8$No9a;>ls1NZOztZc@^~#e5Ku zw(=>Hfo3uUe6FvoUn|y}n)4Pm$NwuV7brp|ZU(7-j&{|^CeTN^?3=7KgDrbj1E)be z=+!8q0ps>)ExmMH2nx0zd-SBlvwZ#rB^OGhHPRA{-OBW8=uZqNJ4Wq3I7+O#r#15r zU86mQV3vm*Y8ejgceZ}?m41$n{GbP|_6}_CO3QDnMx}HI-y76Xc=mab_vnhnSXUk< zUfIQB?B4@Uq(pYj{N3paJ2X2YxCj1o0ZqPp;AOSDX5G?8Hf_+?UD*V}4GO3ObtAmP zrYDO^7--sTFkOoxN5F+v11CWnrDRS?L17{p;*TzR#i#)YMQh3x-9|7fK=9moQL=!y zAHV5Mtpp*H$XZ;qaQ1##Xnn~`G@kr-Zc86e-7Sog$;o@WSe}+y1ZQNYrjdw|#oGJo z4nC9l0z@8(lt$59_Lf}-M}HU3v(rQ3s-1}d_6;s4eI)hH4KtSc84u|HCW1C`EUXO$L@Y!T_YIgMU%=3-bYKo0!ngFqZd3UIF1yh*t_`=cVapg6D z(Zswcg)=^L1N|5B*T=!oc-PbRG<=S_^sLe*pH_I?7^bO9y_FrT$$>6mmwkuC$d#ivPv-T4NK=tOn|e5G zLm->aUYa%C!5cQp(^*y7XzPkST&Ngt`TcF1(J zxRS%_;s`$T>NmHm&nk-|(%TFA+gtMm#6`S43TCEbYCTZ}la&eF;njV;V4#+2E+BWB z+Wtop3tg6%n4MmElZ6;uHC^&&tyZK8#FH0)>i?wZUSbd+!3;zK&jm+u5&AXfrKqW# zc0(~_0+YbuC>L32w~7?>3Q&ce0$kgGjx7!FjldtaVg>&$ zF7(v&upu?>hrSSg^`%<)Q(XkujBa%9Y6jSE184UZ(2Ax_tch&0tj(huX7?A9XtRlc^4C)68(id8BF{yg}S?_V9GP`hcjQ5I_1(OFVM7ZtF!W z_Y(dQ;7%K( zRMPO}(o!ZKa_uIS8qCnWM8!uBBV@t87ekMfPQ#`L)Pfsw02qur%&8No^V@V~U9|1x zbWPE?O24O7I#y~{_{fJWN3mrVM{fu|ipW6V-=D-#epO^BJrTnyiRt~ zhsE>ql)R<$XD1G!M%xhrocVgd90cc4X-HN7FF6>U5Vw15E*(RYW-i4yhuDs?u=P=n zlsq^w>4EmxVgUHCgL>sB$k7EVtMwvbXqios#`*M2!M8GeQ2=;~lppGRyBY@RRbaU& z9~T28MaEDSddQRtxn+bl<#S|*v@(xeaZDUwKaQnZlDc9(6Nshk(Tj7G`N(zmpAh;O zmvJS~_^;FP1Lx+^$y7vxW-kQ_zM}u-Vi}DH(DCRgVz(+jngl+$uD?mJrs&!D28z#&ALbAT6d}l@q(ME@&A|t>dNk_9zW?q> z;8yJFi3x#y52w{&+6i%ihP;k6aHLyy63;1XLD&KHb=1|u%z3n2<2KrpKLE>4s2iDH z5MavH1MVN{ob_emw{cH_^=s3>aJnrUIBUNoC&ncFJInQWs8yc0DYPxX%KmyNqcij| z&3biLXlc_Rb1m6Kzew`6Vv*bA8*1kq0e$vH%f#qos*scm3Oic8TJMFtk7H4+VDzBx=p>qY8^%)5h*DgwO9$FaAC zutDzyK-32_8ap-_r+cSRk-*4JLd>pwrYz^szK}TJoUs(azi(t>)EFe;DvIERq}9bI zX=vOkFw2a)0LnTM!;s;3-$dEL4z+$CDdb*R*pPP9ee0DN^q)^h5>@HsOuuKzuvcpv88ZjR+54IH6#Ry_sE#$P2ljjNw5u3W zn^Py-1!#d>O&{LY-+j_NpiisckQxIuLet%T>}^6N^RhANCWys8f`@1r8E^*WLHc<& z#a-}*Y}-34QWc=hCR-X2!f;-*x^+bl+?PLT=3*9Z+2y|CP!;o9Zd(3J$i1GIFJ)bs zT>==ydVb>ei}#1w!4)!#Y>pYz|`rREiQt;s=_Gy#j&%zD#IrsAP zq~jyDTg}k8{1894@2`-^2r-R)PYi zJ2Y=0?D};w3IK_MEUNGe(r3V(^sB`}^U0{td_AN{hy!0S=J$WJ5l)MaBvXIiwy37BEMWf} z-qni1lB zbYe``5WJRDpm#F*_!BYWJX=Oh)i?s= za|TP5{L{BvUU>tmCWzLE-&TN5AF)3Dq=(b`Y@NZU>MCQPpJNeDM~@EhvaL-P1w0)} z_1rM8k(&3me}{Pv6?YhhnzuWxOQ4j}hMFML8g0MQpUx<_8*^ z)>;}>(5Pn}8@~uqhv(f)sitzg$au?1!9+nUZbBS*=R?Gh@POwwQhN)gHs(cL?vbGhT=wmtX&7V#t zfq$&n`w{g5$NK;l*$SF)6P1d!sjcp6))?dK9qaKWVyz|~`3FwI>O`eb0!N^)O%eg^ z0(Kb6DjfGYs%#g87Ga@<82BzP!~_>nK?I7)Vd|HfxFmO-lLIc8?i*0}m}PnNlpBnx z*Wzb6q5XnQEBk5BZiBs`c=I#-3Bfeinaq~ht^^X8(1=IvI7I=Up z{lVLrz4xuYRgsA#8VM4_f|q`Ff+6Cu>{IdU>x=jVVtZK>RB>O};?y)+oc+E(d+XEe zy=9$gZvW7q{i^m5Qu*-f&a41L=cmv5#2HP($}x`US<4EiNToSu^l3Qs{GL3C$>}EZib zJAi(EDm4+!Pys&d!7yn^WP0BKvqQ1(R5IB{%RgS%`Qs^L-l7~{`c&=IQa$vSI@+Pv zco?kJ=OJY*cmlKWOQ$ee3t`$BWV1?PlVW*P9$#P%Fr>u6Hau2=vj#MA+su5_sEF7) z`;@FD@noTgRAqVXP0avr!h@$)n|?DDe8#3-M|V&pfZgY!!W+~uFm7*!%G0>m5KnO< zzUOD(f6UvyX*PUiS6p|kd1>ma7snr_}q*A#VY}i#bXn}0xUs5O&>Vfpi zFecKI(Vq{Cma3J4Og8%ym$Hr|XCa2s)BuZ0dTfP0f~rZ&8T)r%>< zCZzJj$FqIep6E1Z_mGJfk)qdV`Xl1dgp%YRzJ}j=+p+#gHuI+;lAv&N#TTha8Tkw9 zm*YCGfKpj7ZOra?`G4I3x_wLIl&qYHC*j>ZwUgU39*}UTLn1a&{GY*S4UM9itsI|M zoQPXjUd}$1ovozW)yxMM%n8N{ub?v5b(A8bl%rAtZwkpD^~Knkyk&#`Y1C zk)33+WRN-~m5@|w&~n?fO?78#rrGYj=Xv-2JWv@zpX zw+F8*r~ir;d)I(9K_5o9ghcf}aArh|WZ5$!eQGC%Q1&%;C> zVvnE+VERMLQFJefR>nK?tb=9WEkJMRmSj0noj~{&Q zRezY|Hm};@2D!#suEQL*|F_&y-U9w=JWG9b_^rS_iGC+G7^vb^>?zbKDVX&>i8?mn zd&c+nOi95;`=I7GZn+_4?eXe)x(N|Cu2!raJ!!>TFb17FunE{lBmV=5haJx$0|jZ; zO71C;ogeLefjNcJ-`b&#S3O&%(RvS|5b@73{Q6~^Oa6^zx4T^#wva?A`72;jS#zjY z!Sx3x=Km&pB2-6`^kFUIpw*zNkZek#g{89WLp6!FdRxt(37RlOT+$z(BM6U?>U`hj zhv+oCc(9y=<_du$c7@IVtI@T_@If@kb>K8Q*pH_y+vm1$|0%+mP9SbPDWS7Z{1kY4 zUldO(H>A8_w=7lgyG_ysD@bB-1BHHKo4w)*lg4>1+WCp!ZjyXnAsHrIhR5rl|Bh^! zlTD&?pW@KgoL2TgUzW(5B?J;>UQc0i#>>gVd27z{^w|f%y2ne{T~wPJYD-a@nN!c7 zqVx5lNy|oYAa}e>U5xtYg)_BSA$jo>-{wcP-|$CjNrLWM5?*d$84tDw)`VrIJ}lwN z6+RX6n~m_!oQqDf7$lMGY}sCPhX%W5CZkpxEt**iv&gwv+=#bLY@)_T;29qsIG6gc1+5!ct1`Da zCV;T*o_pD0mmJ;igY4-}B+H{l&Mw3vaFb)q<#Cb-& zo1S4FTntH-TE_^TdHY+|%T6ZfxE}UPFFHm_G{GEp^7(e&QXr4wc8FHg`eJNLB7o)Qlpq=p-8?C44rWM{Y_ zolpvTNPAPGmmA-|JmMF)affYbgb+mIJFx}52-lZ^j(&%HH#2R@XWrPF0x^5^s>>2# z6p#PNKN9Oveg*ob3U3$vy4~}eB=?5B^954dj2GWm2Zmn`Z7r6*L3$-Cs0)taSiB~bmOVZZ4f2bhlBPZB zW!Qavu`r1|yW$S#{KdH+3cmKcVHk2#qW9@u5;yW_(5Pc;Pu~}JsZ*OQ-j4@dSa_?S z8y#Qx;+v{}n%;BRa4x&vAK$Q5Qtes|ZI7-E89(79l2;4z&mV+M0d`V$XlBw^ny4tG zl(kG}0@5{MZd#`g1+0yJ1x~tt4OiAHnu#CFimCRrBz)GuZX5C6$6rI6%JhHRhh=Gp z*jk}B-oKlFirMlQl~Mw{T6X7$peEwT!QS&& zvu2*{a@{!}R?U}N2A&11>m9w{6eIL?z-T7PE_hD!;w`67%wW8p>@?VzN`va7_>Yn4 zIp#vQ`{HA%Z)f?;NIVp;1rFDVF%!?K#mjo*UlMA3zwGz=*wLP*>u<&DQ%S&?MNYL_X zqVxH4$rt6JEfc)Ia(fxvwr<(ycl)12*6E6^bF@@KW4^1 zqek^c)e`LgY7DJMU%6Xn=+t=+U%X)QtvJ&fo(19Gr`OSSRB{9)(sBrhtOM7G@MK<_ z%`50JBFB6iaW{WtF_bVXh^%O0fIf*B_NybrWW2YI;_t@7F9d#%uj>paFuSak^wCn} zA2y;NO>n(P@~>szr(_Y2*B8?>>5hHchD*9vtSxpNeRXza*Fr6QA|lFPjYMBl$qpaI zqKP?oABu#r@q9e3^FLv1w3w+^b;u01FbIZ_-?|7W)Bn|o$Cy|ZQ2S{)(dn`;DoD(% zd6=oBI#S0V>Fda4x`3Au)6SC4!Y$@gc26yP805iTH=23AT_ZTyZM!z$urR7XIFg~w zddKiHEQChqJQRAE`RExTc!-TZhDH9bL}~eh!p8NT(rwZ_&)jOku2gNn1)@eG0;MNwVtRzZN8jmMv)W=5iCs63x->*rN7Cw@#>fR9`t(T` zGZQ78S43<+K~_mY867HB(lVU@R37P^O9G-r%A^ssKpgL6ZJMw0WOL-1>iv*L>>*|L5ARR@D1nleYv z_1M^FRv&Qre6k(&w=TMF87g+e6C!_0z~s!Q?73dPwv>qR$^ZYeL>uv1P3WB&>qMdt zv4`RX@eKmJ4mwQ0*`kuYXLmILZ6MGBW=u0jJj z3?$-ciu#OMZ)m<@wg;;TsV02k^)JDzA&6U;snC*SJZ4VPRIXMd)!WO-V*zixbjmj8 zy^h}iA^5C!G;uTVtbGKVdj4t1;7iu$Ru?TQ;a|M`$+xD>Vt?gbC*1S_P4|Eb6r#VU3mT7-)joyN5^CwvyjiYiB~2y3nb(F9kMuyN zmqcDIhcNO?GL+6 zp`hRpHUnaoB4jFo-9*2ubzQ!naS2~+P-gcSFpA437^nb169oku-b(_4y}u$`I_*vi z6d)E{qy_=>Ou^cN??IKPl-skUwR+MS-3`EvNov9zw35#g&kcA`cY)9WB!mBt#kW$ zWf;8;TP~}TY!02mII$L^T2NKJLfW@pp_I5^dD&U7@KM88@vIL9({IE7)K8B_SH4wK zou;Av@xt|^gaj%*X4u zG)&NCtfI3i8q_jsdr^<7H<@y|Q>LwYA_fu4xs zhesc>FspLb-tZ9`t+pC5OY~Ra9Q5plx%ms>UWM%R(CUZJ7P5{@3ndfw3NtCpQhN2);RT>VvO z5))pRNM1|Vo2e4{N|&|SDu3Mn)CnA%Aw$C?XK1err+B50s`>Y))2nu9v#C+j>1jgu zZ9XsglrZcKpBNjV3cTI)e(zbv>)x=6^%Y$vA_ik6|8NBEWYY1}Rs%OSU3_*U_MM-` zM)yf#uP&G1Uc8P+H@9z}LAVNLTydXiFdyrhb`}fgp4@> z5x+lk4P6j^3ZxGKl*qDHpVGhZ9?i;ah5r&hL_vWfY3)mX&j3a~e1szyif>w7=6O?w zX--wa;!v-*y-Rqtx1z|-(bIl$S%J?C;MEdfdI<$T{M1G+_{ourp9R7yH_1-UXUi1j zY#X{gY;-%&P~+s}n&q#Owmvr(KKh=U&)fYlD5gmllRXipN3G?{Xthn|L}oTB73t1C zr+05ES4OBOoY@VR7$heLy<=~X`CC*n_U0YEizl7@#G43ZG7`JHMoc}oJXyG{^nRG>EquZhMpt=T_s zss&-%hTmM@%?Baz8I6ZqAJ@>ovARDy9v+eIE^P3Tz#(h2@N-dH10fA(a}V>d;cv%7 zgN`>sOh^px8mC>Lq6)C1Zo|6b2v+p9;mggo4&pe-N)Tz$yEcMOi}ZM={!k(z4@sG* z_hVElevV>;zwL<=OwZ%h&R3D=r#4llI z-+s!N^&ffLB*d67yfp59c|17PCkr7;Njd+S-LJo^&tJTS*d^y>T9xj3hSOKO5yxyN zY`J@WE^D)A13Ex#Af8_c9s`dS@A465{D{q4u8=0Scwlp@O#dPYcZMX#v+o}krx70& zMWfe=?_WQX=h(r$Gw!m-admYP*&1^BdP&N=x)~(EW0fu!iV61~DRy}Fz$;%tI#O-J z^!T7QtrKhvs^|CiZa1}Z+Z17{8`x+)XYfCG7Me8wKgSzS0bKe20w0T<_fDrqJY@ev zN#S<&J=wN|4;g&x`kvYXamK}5WvMdB=G)cSQ@dgI7CbYI`wL=p@3APPMa zPI`8%3+-lJ=e}+SopO_iUfcSA65yd&u$RJSFEqFp#qgu&$Mf5r6$Zix`OIXTdN}|n znsK^6VU1!c!wPNftXB-a2cva`zi5%->>u_aGF#~jndQUZKOS?_1`uXP;GPW5fCIY1 z*Es9cZ~p1V9C}Jxv?lgsl=3x%jA~Z(DCH@>qdpPq?0^2FQ`-$l`Cks|{@hKo2`8kJ z(v#cb>tx3nPode`Wa1n-p?916%s8}cf43cIjk;Ks2Rhwx-4thq0r=egYP%k763wKo zR|(ghnFq@Zu|)8_RKN}^MJulmak9nh^=>;o-5p>{#WhZ3z2|?>S9I%`96_5Bj9v`h zoiYEhEQHnDD=j%?+`;ci%g?YU5EqLecAxd}8?9H9fn99XN@_fZ0Yw?3&sJ=&J^eNo z48Ngw2hc;8Z@8&sPK1{lEL!67H{kr)KC0j37B_>xYMQ=9;3Q^}^uv_D$$D)+v<4eL znIJAuBvilp|I{_NyD?=I25n02BLX&;sLw`ynT|p6q{A)NJ8BSa4^EzJkY=nvTI!;? zBAz|lNl16%5P8svEb{N(42kP-MM7q^z(KC}QbdM-n@PKB|N17>QnUeoMfrfxEINm? zB+SKOtsxDfV%&;ZxMLFYxA&DVYR{D}jlyM4icMfREhm^14y*N8i&{B9B0GsAKjscH zqNJ&|AIRsX6dry|Q%3f$6p$x1M86D!?H&^Hm~@2b^50v4So`rKJX;~JH63$2DzR%cY@|{t993zM z)G_c-J1K7T1WJx8>dYd)+%rvYJFYW|m_N?0Numt?=T>?-O=4Nt=X{@D3av>N4Uo@P zzEQQ=Z7@&IwaM)84|tZgJtxP?nzlxz9@bTIyVtllYI`+3I}W}E%tW($H8}t3*Wi3Q zL-(KK%%<%#cN%{u8Z(cK+AEASua)Sa54QKu;Wnn@2@#daq4f4Rr8a+5C@pfFi5ft9 zKFIhxuQ5}%YFCYbZ14@=HP~7x6V-_XH+p?}MBj)iDWQy#?~q12o{}XqT|xsQ=5(W^ z)W?pSGeeO(pK~B^^&7hnWP)iy@W707MbFIzMyOZDO|SPST<1rI(Q^J7zElycwz8>xY z?HFv<>kI3s@5e3fGpwS|98r8c;~vp6^6wF9==rTIuYn zgT_Qg_kY{vuH~DHHorxxCW+7Z4?$N`!g@CY?*?DE-s-n`alL?n8rDiCVE&vzUqQ%S z|KRg@dVRiN>DTZ6cyf?0kO5@K!vHy9h||6*CtZ)6hu4?bi~ibTm%qdTR&yM@4i0^K z2Kq=Ax0*SRme)I9C5g0V@f{w_ofHU1PR!=t`6QWSeCc|pbEfH?^FnP%vBX?@q?_rf zJv=5wD&*c3s5SKSUi}HZe6@IsYl=Q=?wk`V^g1IqIcBl;BauQ12xs`&==c1%-(iM)PiQ)JJr0ze~Mu7 z(rX_)7x8{{Ds4PDvrjcN)`CP5%Q`<=@j=(~XMcG&^sc|V;m5u)08fh;^H3z7$3e~- zrPq&Kq$&$sVHmOS9=TkvbuY{nsN_lw0MA~l(Q!$#wFh~?5Xz+hD|{zXY5or=b#i8inXI-~#Ha91(c1!cMaOU6Q}GG{FW+*&Oq&uL zoDn@Q-H7u!x8*>$n1eIxllfQjHlNQAvOYjZjl7k4Jxf>-)sg5rGfu@0YAnGPMT~s? zpT!&7oV8AnF=MGql~1vZe`Uw_FXw!7pwzjVF{nH`1Vub>>5;=WY37gS@FNtN8#evp zGK!I1(y&G!LUbZQIE7T8YP+go596~V^Q?xrN2aS?+IBJ4<4>N(2_>mubg|i12kGcO zH!-){<9|Cj_MID|=9}Y*$q@}%kSBb~PMe}%gnDsRbU*D)-sT@A0-t6r)K@rLdU8H# zQ=a0xGA%mo#B$#$iIQNNpKXn0Z7SZf!Q-gw$? z!Bf+rM>D1seR* zD`z*7B4YG|sLX~}q-WzD5>sd-A;`%%H&&kz)-W!-!FllYUeRdY++=ZxSja9K6TILl z5%btx7j~FfycqXL{^2u#>y=)4DUjkl%t1MVhEk&)ZFpD~pFXE3=LNYL8dTGyz4YL5 z`|}jh-3~~d?G}w8Q%3evf@(`5|1^nbvCNXInVgT-%S!=ightek-XL?>ZuTFqqjWj$ z8I_CfgwkCMB4tvf(@)-2*>Yl}D5BQ7nb->7DpAeenNBn53AV%8AyHXq%RX(=sl8fv ztLRkcS_S8y{$UV)g%nNVUquHr2ikbgjL_C4DV9g8st}fPABDk(ww^0?+@cyEn$>{PuTNg6_`-U7it7?eWr8!_k&~Z%8d616YA_nzG-xZ2Jy3s=CpxV>J?AaI z)*rpOeAUQK8N!azZvDv+on<3-Y&**~WG$VG`nn3g@@qqQ7Dug^MV+*>b7y(D2d`no zsHQry#rgGY-G7C7^o>VXl+IsC!PuI1z>-u*CqBF2&7NE95Ie`;=1@C+GW$jqp4^M2 z?kafyb(tJoA3C5FAF2&O^ zM4XsKV=m9-5mkafy`z@>1IAkOBlC%Q2QFS733T+(Egk%6Am(r3X*;g$TieUVHlSH(hdI=~^HE$b%8&M{H*z%61eKF}swq(%+w%xBm}lUu7N_7UN0Fx4iyrUd8ja5rD1;2P3OHsU`)}i^5p>{PB_MW#< zCMo9#nr|3t6ZJ)m@`{@Cm(}iJ8sL2>y#)H)O-Ip4j){BAYuAVDCvM45oT2uv-8){r zI#9D{1uul44>E@LyvouChI`KlaCCi)XKHd^vK{4|)m;O>M$M~YwF|q({jr?LVhVra zGlqLf*g=!~o;}3QGURS!{NM7P%lVD0c3v9vLADxhEvOkfO1PK_OXUf7y24#V9@>pP z@rbFj)tnlZjZ$jFbu8hL9uNVuNQ&$K{J%VtD)&n;6P~X2pCt2*PVcVp?CubYzfU7B^Z3?XoJ z!y&MsjY8cBz{1>R4BStEUpH_+k_I?vMZlxT#DZ6^44NA154=`Wyf4tyQYZs-xoRks z4NWx#ea%Q~Df|gOo>dgCfTo5bYxpk-9H2G$!<*Ru)o%D z$zULJND|)NMQbqMOW;&(7<7Xs6mFV;`#aJ`VYol&TxOi&ysidz2Jn#f)EW?s#=IxSUg%-nQK8=;cjmdZdtnggMu8hpr{3yX zaw~#RoUSG0fS73mB2`61r)ho=`Vr9yM5;i|?`yhUUc3Xkr8?t%zsaI=Uxi?IqypTS zbe~U$WW{>9`FnTC15_=>i|AGQI5DKqJoFN_9=NhTW(3gtfxTr~#MK6T*Bb3)C$;+R zsNM424@LZPa5MbV{@cgH&9JBL73t3_8{84sNqm*8#+>O#V1t@@4WIAOe~_`nmzQ#Iu0ksXj#MsTb|MoGX&Cd+xOU{qbKr|%D3;vX zoVZy1{3hRH!a_iGCk~IlliJL=cU!0wFKc=Z!XvTUc~RSWi^q@nx6^kA5Lxt||AzPN zv3O-IxBC96FeZqdcr-%p^T1xl*Q;cY$lEKP-|7H~`%=ErbXR39XV|we`p?_BDRF9Ax6XIe3xkue-?=58-q%4z*d_TTsei`Y7DrVVTmskp5VTAs*i1K*(p#bPiyw6 zc2biymR9LH+ns5bKjUE9`J3g`|27Kyo?8s@k6P|W9_Tn2NB@+-ui8etCmH~%;l;!L zrwUX$+a7w_qf=71=@Wc@7Jy_}6jS2#k)PMSlorPESl->|1MOMOl`7zwJKqa3|@I3k{XW8@B#JNs(G};m>)nas50(mw2-KSy4YDfFCTA zmhpF_vq_iCm^8yo8VXGVoD5W-Xo&tYOnH<4Ecv7)^t-#sLq?5Sg(f3(Qj@i@-^`O5 z8|Be5T$S^Be;`mN1BPWuvT7k1jt4Anz>#iO$kKfZ$$*3o0TcYKsR4hcJ9!pM%#rD3 zQ|$y3R_ZudUqHn5&tqM}6+`E-5;A#0FY?Wa91T5xU@mhmuyGgzBq8?l)<`O(DHM z{IEU3Q|WXNZRsfly@e7IyRO>>MiMc~fxp;k1U2L}uiT&QE zL|-7!tMuF>4&s_cs|V;&-TIBXj>0W{N?4)idxF)a z5OM#`udvPV(xwppI@_CIaMfBD(oYACE+qRe=h%3{d+5xQ3YNv~fF#WLwyExQKJWAl zR3T6W)3cE_#6Fxzb+>xe=!d?FnA<2)l_MF{i}tP4hiIKF9^$DFp(?Mxmx&=7_GK3T ztnb?VfMT{K-i^A?>Ot@dALzx4B@j)sT-LwQXog7JDae)*oOA}Mub_%Icv}%GxMMD4 z__T97A_ifDb1}+CXa5%RM=oQJ9-|K>gweC~jvIeFhO)(~d~V1Ax^`-Av+a~-V)$}! zYs-q_4I8AC`yrbq*yPLfWbyR zL9F8;B1Dj8Vi6XMHi7{J(7$ET6yZsmvNgmm;>BZomMMse(C!xAi=tK-tu!Mt1g2Yw z`Y>cSva|SNnYgb+pz7TSePUM7+<*-0P?G)Uea=i-!l?K_Pxf8E{ z`z7uqHs>smQN{1uA#*@WytlLeT)PpCW@#@>vOpbWb}xJAfBrM#@>2@j)Q)ux_!kvC z=DmRSxZPe=HUo_c((6^x@h3@7 zT|K{tJD;C6e{_4oTb$gX?BQSYrfvp1g` zyl?WCJyRJK*KpbRt!K0Qugm(FQzv~=s*>v^_FmSbowJxL!^@8~E(xl!opCas^pems zmUjFfj6<%mj5`LEGRwQTo;UU?t07#HJFwb?zIH~|D!4rz^{^e}wD}Q-8S-gXxdO)d z_ZrB;c5!swPJDr4v%CB}hlicCy0p`!gfl}QI*o+8^*V0hQmq)n;w*@v`t(mf=6$O$ zq)cV+2+I0`fAeKrV0s=gf0j{OmE~jLhCTK9CU6d?L7M zUxkEm@juxq8FuZD!Ek;T4Jj!K?m$rP+(=(^F$=#--e^c_7{oj!d!Ei1z0#zCwC&Fq z=9B%{e1RsooGI5k6Be{d-At{eewUA1qA-dCfjcrm_o%AJp8~G1LEBIqSwk)x%}?c7G?5k}MHG)J)vV<4hJ9`0df3j}Ztk zpB>Q<&-+DJZC)_wPF^XYFs)-W46`A@mF}6`TEab1_)9OX^TIAi|Hd-Mt0|%G6vc+% zR556x?6%D)C8`M)`sFCHRC>)k-{xkSPW=|7?cBkeu!v)voJg9!-mlWGX)q*V z))F#Gc~y|@lU3+T9^w-(`?h;t0bUS($n!A6ZYu-2C{R8tM<-Acdtw)}9+`HdYxKG0 zl$j87tQ6cmL_dqp!ggYTd5sBZ_tz%4RSqiU4>D2&e>|Wg>mKk;L5yI|%sSoeU5y&4 zLeEShzC~)2giGgEX-I2?efHShWq69-2adt&)rvum{LNzu+rAjIstCG#u03;x_$>LK zE?#eZabwMmfe$(y28ZD@MRLICx;cm9hp3(_)cTL#qcV(s3k+@$WE6IQmd>p`OhLPD zWW;kZvz;EcF`V{ax4w5d@NC#_Mj9Xr=LsHfB7nLXN1v*1C9m;W5J@~o1cs{u`zfTL zdUZDr z2jM?R>w<27zf9kRlfMe|hFk3RpL;+;SaNAb^nBdf1ah`Ly>WON{ImstB~H&d_W7&M0oLZ=PDe~VMEvt4sz6;!VB)+AzCc4uWG`( zZ!jn0yalO1;_2WwSi&{GxZIndXV;tS85u}H!~8APO(N2amh#@^p-Qob8_1BG-*iWIV zx=K$**_o1)9Q1B4fEh_f7MkU4x*kL?>-6lZs7LYIL4^O8&-5Jx-Sx@p@YWXF@I9SfvhyF^?yUAJi0PD#(Rqv zL47`3GSX*UE@#~9+1p2l;E+Xa?D+pu`9m(b{Bqprt4nH(=hGzPF_90T?*n}=N39?N z^f+?UrKv+rzIDQ}yRW)bXRzD#e$kN54yJEk%qP$8d?&E-5S>O=J#r z4sU@H@K&-6l~p}0I`jB8~jpMzt?idkF*fR}o2S zV*b;=Bejh(L#f111hHJ8I(RiI78qIDVcJchA|~yx-MRD9wcoo~El=lEH}a?OLAEaB zNPcBzCN-8%3);>(xA%_ywywG_RlzVCjU|cSJ8+)A1&HE1MtsWrW!!VQ;tKOQg~tWl4pP z1k86*-;)GQpca4R)&4)(^EC`FvKMNQM0$SAz^z1#bb23jTak&+Cj@R-aFwi!U4FMk zws|2iw76Q2JoROiV6KdMtaa(gRcR#M8p4ljYsY7|`D5pptm(|Q?JI?oA__u%wXTpU zP9+;uAwMHW7#;P-*uN3WK=u3EcW_LXMppj$ii&yyKP=Q?La39j|0)ttCwP*b4q#%rCiR|Hw!NQ39j+v#F zThoNqT}J3#8F-Ed;YSoxo2KXXEGl{yovsP~9GF$XQ#sc?*#BW}qN&#F<@B{SRddk9 zVW(SL!ud>-3d}XLl>c^|8;4b1>}k@X`>SEO)I15@>tZ388xyU(3p=r9d8!)e8cTyhsH60D3Sri` z59o8WhKI~QkmLGN5`D^~IX9;-%>d(g7iRLU-1P31g5f7MlcL2ZH7;b|N&%c5tF2}J zlMdtR`l0WFS8AJA4eCkW7Q3Jr5SK)%LI$vmT4;9p2EW$%B=uwZ*7i7J$yTFQYOhU{ z&D9z~&fCq?;XGyVE@q=ee;tr3t`J##96~e1qVJ{smuGC@X|p5hqI`?`{7r?dt< zV-YHmY___3j0HX|TG1lE)>-c~_ZWGZskKu<{4jD^Qo;q+07@6}1{`gYVf7U$2M2j?1vm8U&O(mOm_yY>~Q6-&bw&qQy zfHPg&x-5#jJBl2+L*a70S76zuWA(f^l|e0xu|3YZSTMp0VBpqXI`!$SoSG|U^r-uz zvBae93i47VWcVGpR_vcJoF|b`KrqM=FWgNm0yDY~x=B##lS@7BLE;Cts(n^oL_K?k zqqY!XzyOE3Nkj!jpQ5{4U|{Eye^r_jOISF83>b7{`X;(PkEgS_X!fgCBJ}V1X{XQO zMwNz_@QXcnRKe5Lg7+PkpM5r}dgsA5826UqR5YksCm#bD(V)8IS@(#pCtOzJW7YSi zi{3eF?y21KYLK6@vp7$_Gs*Ke;@zBXz*7?edVrol^kEXP;u|Y5Zus zXYSYq@Aw5ay{FC`nIHrl>u&RECG(4FkF&k4EFkMG#@~qI-C|(|P9y6>@FYmV9N$_1 zQ5Sugy!c-ZcV1sjm5&q2zNa;C@TQ=!bJOm0MqO9N7x5kn-W5u6&y0yKDW$e7_g!^k zw&zgW^HvrkAXIIGzs7CouVBO!!YH!op)q&u?B1?~<>$%%pc{tbxtZc=z$x!vUFs%Ueo1@sdeN3A(`-1#?-4zxl8KWkvTvSS%1xK|G zX&*|u$V)B^JD{G{=o$|n@V;VZ89mmZp_wTIZ%FxI(lv_nO<5=y^lg~Wutmx36E1Z) zXK~_%M+a$L!tNL!C33#a?8-BW?~m8-yA*P6&;0pY+Zz<_4d~he%qheWnlZ$EF^>(- zYpB5Z_a6xOU0MIaf~fIK@dmnwMYZ&W>#nq8&)q#3XYHDfB(l$|AI!j=YK~#e0dX=r z>CAP=Is~If2d67F0x!MY_`_f3A9!f1%jimFlu8UhtPltfh>D3kPTuZ0qnH(Rrt~I% z;YJzk%!?c9;$2UGBsaO40_i?8VGwzDP}rRYW9@=pa9*D=mR{Fko9bBsys4qL5D3l~XPW%3zKTEteEj2?LG# z6Kp+tVbbP2cJKc{OL7K?hbPrEPQHN z;BU3_-T{q*JJk&Wnu_uwswKsAFtVNgvFnpR1J#KP>XCWK@o%E1WXlFLObG1B7_wRe zSgNq1*$@l8>nLNa?VA!@u5*Ok$e~Q@F*TRrzy_{XrnA3gU>{%;;li;7h>HaVo0UI1 z#Ve)A_(nV5=T$>X@1?BSmG8`<#N%VtoBPj1&%a*6N>A}L&-Qm!6gV9DW3!o3HW(NY zZ>BS5Pl-Xl8|VW#T(bJ#hX1dakfe+ zDXWn+`;N*MbOvW}7xbs4cal}eI0w7pOnHx8-P9UVuc3GAM8M@*^e@OgnU^<9t4mR( zRA^e<%-c_1UW(s-xPZ1gb%(#HlRzXL>&;t9K8<2h(e17x7$&{ne{%S!(%qs#Ch!*8G!B1+2syu2aCcVODarNg_TAss z{a8cHVKDz8248xNPq5gz2oqrU!?}y`Y*i^F1gEKpwZ}-kEF9xkx7mP=Uy8;a%gCNR z*W2II7bg(~AbP+yk(u5HpsH}#?XBJf#Ke?@UqcjVo@es@FjYKIhe=H3?7|iC<_{~( z*%nYW0;!_{5R19oWwACTfy0 z_UODxyFY-^+qjuqY9s|4asv*`0gS4D-+%BwZ?7xw%~Xv%Q41?lxeRoCbs1^qqmOj+ zF{|(lIs0A0ZQR?E*GTs|e`-ZOowS<{>kUErbOv)i|p2a5q6byJ`s4NN%kV?WKb6ttKg2$;X84mO*h+r65S#c z@;N8=>r>tccOPvS8FcTd=yVkTd6E}*7&d2mS$_^`C3^aw%WiFMqk2CKywWcB(@{H; z`qZCawge#7TlshNE`)*a9+B5B8YFMrYic}C6ukY>v9dgyjU zD=#*|u-tnQ$3Ngj$&djO`~=&zaxz|B3>zz1JGFcnN@DvbsmhwD<(}ZR*59?=rIA|h zj_$Gj%~URM)D692`&Xz%zdVleqlj9aJ zwQS!{>o(ns;(1mxQ>rs}|!d|8IhbCSD*m@q!WESS3P4pc}V zOuEQ7rHpkiwcRJixPPp0-}^NM8+)#vB=>bm)B6bWaOjhtwk5e%2l{6|DaT90+7vqrYFdn!rz&H+JEu&P2#SF}evUR3ZpB7us zO6t-@{v5FF{N7V{^}m3X_pzPsl!|@-c4m+iE)5>88ww;h*Zo_;Riq93k6dP};k1gX zt&UvDJb6yVq@wbFz~=B52t8}J^JYZ=ClS6TvZX6P&e576aYsq>4e^&+r81wQgXi5M zCM&Fd-}Vf{zkmTjtF+JwN}V8+jjTEuL2cXZ_4#xBh5(}#N`6mQW_OUWkE~+YLkjl% z3!uM%5bMh1Kmc*xi^z6wxEhAp1f@pP+qmiz$e_pEu@Ow`S)?uq*l=V5=mThAGeZWE zG%DvMLnoBU*l|+Wf7fsfcKl*)s(5^PO`;BhA^!_nfFqe+HamQ?k8@8h#pA)y%b)Oe*S{yEqr}lX=`Q5 z1&!3&6go*hTH-?dhOhq%U-!MB2^bwsPraZiV3xMhFSrovO`{nn{WP&F;h&J`T;3+j zGijA=of_SD%9^r?E@5=~of&6}959MTe~4ts@B;{DShI^<2qpXgDW=hAUF)0WF2rqk zfGy!AjI$RsXGTZ+ls@Va*L-Wmc3O|77|`H4XKecaU+xAqcg4X&&X7dELGc^wcE?ko z7A}cBRDU&g2=Y6Zr&`oA$MEUnuEaJm$^DwhCi>Omq^ie^Y`1`HuHA*RG|18;@XH?C z)5W|H07@erbW9{7%3Z`>n z2g)syG?lgAl;~Z8w{^*r`*}K$uJO_qf zIm9u*eA5fG_(d#MAFOD3&*%2D}h~ruSrS>f- z{U-11^_%@Dj)8s+S0&wcX+!+&=xy3x_R4-#KzN|bzjdQ48aA?*T1vU{WMD~`qm*Sp zSO}JJLH&nqQ;uo{%qZrEu58T=7HtlxT3nRHz;5_Lza_4`~&{`CTiO=!9 zyf3s>b7#)}(@IO4K<>wMCWW(4Jj(Bvl0FZo#dSb_%j@p0j7M*YrhN+6rF$0rrIM;S zDPPCGyQpiWX`Ju&)k%v2h>3_2y|oeWjw#V2s@P^{bV`Vhckq7bvxoXm+Ym)KK2CS~ zc|W(rapIDB$cMor$>`MIaBOUMx%2T134jr3=I8wIrx1!4d9_0Rxwo2zP)q~n+-w}ZlXV1qWJj$P0%AR2tJ}qb& zK!FqliJw4uaSL@5ZTcZ(ewilY2L%5OGjz0=$M`m$_D=BECpuqLC7fk_5K6QjcsJ;B z3b4R4oc00;L68M!zujcC;1=_2iaroNb7yHshZmu2p99u#2Mh{2n;RZ~-}OHyWSw;S zlJ`a6paYwP`_4v<9bjhy?JFdbwOffi6-$=vR`kUV;*w#h6%#n0>c2cz-cQ(jwUObl zug~75PG$kGS?JSB(so8%))QOzi+F!FLs!l3bt1Fb7uZUxIxakY zXgkqGxoe$5r&CTJb2LMOPI&S=9@WrPl14ANM3#k2syBoG=;pO37WX0?Ik4y+8!DP} zsq5HyDaBP*=+YyPN4tq&n9I2#NzvljbOkN+*h7BB<>)jK-8Zk7oAIN=F+%zrNmuv` zNIwz%B5Ed8#Kyj>krHmz=vBJIXGZ=%AC&LsG;qap_XZ{13<#0;q>J#zeiXNY{UT?2^{>W7Yu_6_Q5R{`i4CAP$p(s9};;u!)_*tX;s4{cpi>H4@#)eRfte z`;5Xt@%r8##lqS9w9TGXYX5i@)3xjwb7`5bp!#iba#G5$?j_S87&>B+kUa&{Ikc6S z0aec3S1@a`=MtE+DTii;NYYuAuWnmJt;uC6egA=Fmv9Eea5@&3oknp~dA;r*Z~mEW zXnT5O$}MWm$i8Gkp;584ZaEb`!uIs~K!aw;9}xy97>g7-$8NRqH~OzTp4@yIT-Ww7 zE~JxLo$rx-^gP%ZU7S5ctX%N>e$y9hu!k2++kOSF5HSaJ)cUguAy>&VY<98e{bbA^$Jczj8riAs4%_=#QfGEWvYY<0u-t|%tNw`1y zqjGFjueH&nkLxJ{V|~+1+v#U*q08Q^$Qr|!3BhqRad5kN^~NvTx0}MMy+mi(-9FqK zCbO|ckq3^^`swN)ZlAs`Qlnvaap)TbC{eZOPO^%`taEAetyF&B+jd_ zWi}BOQU05Y`|PwpOUK|L-oQdp2?JgvVxJ%1u<2_;Gt)uR8j`TThH1tVhrs7sAAH%< z_Af?!XPi)3)v=&a^?YrIAR&+{tiI?%Guy`<>J+1Ava$BqpV&N{6@M_AD6C*pB$O^=nFGI&!|nn z+N+6U8^}Yyv4F|ytIz{1YjgoaBQZWq?R!?qrCr#HxN!k?FX~+(4)gO+yY{<1O4#Wz zdoVU_IJs#^Fm+e3_LH*(n!nVdH#*iBF7z!+&z^GJ`V*2Ly(k`>p;9mn%vNQv(`YBo z7hCf0Cs0nbx;-;W?UEyLi4t>ePc-_bJ9n_j?b(Jmz9x~o)n_jfaJY8?Q%XjCij zh)C-l5_`2;jE%WOI3*l`fYgm{bxJLeo7z^}QKny9JW#XBcEoLN(!Kfu5cl=~5gR;& z!P3Q5{TqRW3Z%#Yvqclpc_DMq!Jp)EAb>D5X4uc3PIK4A$w=-mVh3tI??mu)+SVVk z$oTE6zvq*kL()54rqix6&xRZP_`?)iikP-^}MVuLA|=C5QyO@!{tA-*+aYOAw~|1_=_3vhPqr4qE#W`uw}0Hn<8OYZksyQ8~RgNavn^xAzVpIpiiz6vk}&a znSUtP12d-o6E;pr-}2Yv6%jov8cSGpcLECqLo}9e+G9f1K6wK!c*!Pd(Js&W{3#cA zs`=>nEQVfz@@6Yo7-fjI>VF$uy38&5tWKqY{w0EzD;~RcshEi;UM%myrsZyKpojx# zX*K0jCU`Zn><*x|0Y60(%IZ1ZtS7L~T37No6lZuPE{ zGI5{2;DzMwK1JodzpWjqw{woP^Ya5HAn$i{FuDucc^x@V7{+5W%pIw3){gF*nKvwe zqlF{&S9A%D>8IIeW6i!@-0C&Y6s?dBR_y$tJH5yh6~Ov^$+uSClfT>E76RA=%z`=2 zuM0y*Y3S2!AcwD%)5|Kh_F9Ia?O@V9Evl{Tq(6>lSAbC;M!NGhjFTZfo*(S2Au2Ae z5j7H>p{lXtG_m@9Fd+h6O2PtM$vs@~gb&y0Vs$#9kB&?)=j~G%FS=ELjcL5!*!7?| zIfZEY<$BKU{ylstjaysm85)k9Acj~}RG@xHV&S*$`5*B8r0Y9_$Lp|%J(*sE?l0Ee<{Glg9E5deo$9g zG)C4H;CYpKpp*+MO&>5+A}zcmrOpoy{MF6M)$dC8lTy#%))SRDO8CPU|C3Ttg98XH zAJ3yq;bVU(wPA1|eOf*)AeO_&7o;#zdw^keL(S5h(KK`6k#FbY%K}(Zi*YEPG|-H# zZ3&rJEsbKKk`~gTqZykXpymjR_$V((eIk$rcT`YLv^BdbRnij}Y194-oj3iWLKxL- zNK&^XYUiY6qyX9=Uoxo1E=sA=!2!BeK29_FF~N@t>CZz8@^xNDP|}d*70yPbI+*9( zfi4NqIyV+sq3Jf(ofP`kBt-_P z%>&gOknzwlf`^?^VfvATE=rlYqw>gj1-W(`{WmQFJhV3O?5bo4ewWUDgUw0UzMqp`jsw)brT)~Vvy@#tWtY9~;#c}*UyU;k(bT9q zH8ijlzin4;g=V$a@-LfTdi7?x%tr(XXBOgUi%Z1)!FlYx$jXqKWs@wHgGp1qvweeA zv2vzLQupqgbWliMQnBoeNFOKE=tU)C(5Kd7&T{>oUuU7YRJ)W7^%1dQ-?(Jv1X_N= z!evv>Oc)nj89ZkPTc}HqQM5Err`vAvKrXoFB6LXg#qYV)_J3#ES6{%nn*Ognz90xJ zy>LoMuLs*we-3d~tucz4AH=9Us_x1kebIla4@F6 zfx1HFwcW@8uhg#_zYKAy%LHqEcrNl3ymndNk9EQK?!Xzt@2#hL+)ch7~MplNujVbj3-l*B)*Zs7vg890Sq))i} zts3xw^M2|l|AB(}rCH6LY}L})J;)T%Ov?|XIONdRYah_}SoBNGiH6^k|I0B>JCP9^##|Pkko~bvF?a$WFi2`JL!RRO={9DG|u;gRAU|H>aNmd4543B}Z@wlg@OUMHz!_U6Hc}zc9Pe z(9jm7)%ixg%u4Gx{koc=iJR$2l)^1`xfDQ9);h4&S9~k?5q1QP$}iG_XAq`-12P8h}V_COkk7Dl5CZQ|Ev?CWOh4G)j~* z@AXGC*`$T&oz9VHNVM3yx!f4+h<=4`Zy&YKd~k&IIS_g6f#&euUFF8;;b`s5`)#aU z`(`+%UT$=KJfCf`Z_3~o^mpsiYq@Zn!*Cmm4ur;IHm~Q)q^?Zn(OylIs^0baWR=N@A z;c2qKs976H3$_~Wrv`b{m!PuPa75FHveHTmMJ$X23Wtx zb)|(X@>aSqLtN-4F279tUfZP7Sbpx*1+!|$C-nQC?BJ!TG#3{%FI?e64cS^BoUc>e zhm;p=T$hEb3z`zXR9<%b*r6`x8Z+--iL73X6 zGFBtY=#=ZfQHrfLsaScjHj8a#R?XOqEJK=^@26GMx<$ks(`u$V(Wr~}tydyd)}C@f z62cYUD_mUBqVS8!)R`fq7(Vv~J{LfUOSF-piV71yYCL?yB|mB^qmVjNE=cza4<;X( zR+pJpOT`Ml)P&MfhSVp|Dr%8&7t8M`yOt>lJ5Woj(((Gk$H=rLHty&>1Emoz)`c&6 zO(&u*kQ3m?=o1k}R6fA(s=>*U{1bmu}pS*Nr9U2MsSIYnKZ|1?CkX$`l_ zKzCVx?x!#_aK@<1Vx2dTFutPPigA#BIo+`z>8&=r&Zg(#6iG%aQP1 z<$~ywwZv1j3Z7DGxWaXX3wXzm1`{;Y97}M%I;Y(H1 zu8fE(yte3rS(oP}zlla&>4S2ueHfq4f@i&XO8mwLpwWvDCj3+&w!8TH?#R26vJ>6> zkl+XU>6pYYn3@DH!lk1WANysXK;XT?4NN*jyf972s`Yig!9jBGk|Ttvb7L&Ms#yEA zIPk$0KenSTBkd>_H7zkUVBWJ-xp8 zlUQV}Rj8(QN-9hgs?!Ht(4w$UxNFeSQsu^rQdY~Ng+vviuPso{Y zL&Cox*7@2zq>FfRJ(5yxT#EZHukYet_G9}Pb;+ge#Vg<~i78l3n-^! zT@EQEXZhxEQS2!~{$2DAoHjB0&e-Je#gG5Q0b zlVk82I&|twH+TW*u{lTu16aYuL^W3pxlpJ+o!ty=;M&Td9}|2SgHWH*c4lWf8;>2-WDQ70T~1T$L9<3fl@bcrH$}$)LIvr2-{}a+7)*iG zEf^iwNhr$Tb7ARhfI>Qxm!A6w`%<;QB3K?S`(}0(UTR&Mnr)>cxnG02;M}x8Ol-Xr z>h4DU^}%C$gg+8f1h$T%7!8rJLx@uo&`78Emo1^Q{$cwcS5iJTwqYhs;5=%}1I>ur zd0>nbY{Fqw(uAUiBu!>@0q=8e8%o0F)=^v!JmeGdt99x@AU)_E4a?gl-aOwjnnVgQU?WVl`Dkl9A<0jI63(AD| zCh|_x0A5!Vt>Crd>rfCfvfA^q=%_W~+T@VajLqt&PTk|8PhAk(dmp z^z;|`)|WfC5?C#hd$%68Cd)wyz833fL_|q4*lOf`i(xN zM@`#^Z|&#`$6UHCWYm~o`kq4A`a6Vvx*_3RtI*P8hWunT6zdj+*!MR|)#+>V5Kpbx zlTd}T~$ie{2jDSAZarjeuJfwtEIR4>bA zjOdyd;Io2gs4KjE2|G9r&3VHtp0LyfQdCN5K7LcMPK%O%j%Ahw>vcui*eZ&#MpDG= zWy_pdbdC3d8mLz)sr;?u?9rs6Qy)|}ATv?W-^nWOXDpU}DH}6h2dNx{Q>Vd?U#uUQ z$R~V~n6O(Zj>s|>X{=yk?Ehk>n$1Mx?;R_ix1{9iiIY*PlpqvLc@}p&vRx2RS8Tj+ zx62>M`-me&Q0L&62J0nE$G84L|GEs1b+`u^uj9%poS?R7LcJlid(mU`XSj*FhxcAe zI6NB@JVze-!emt@<}aZqxAxz?w;o3$+(Yw}!h6itW#qybt#M(JFYY|GQI`A?>vTR| z<9DBJRB!z{X&KMAb^f$vRL<84(~i_LOQa!L&*-f)E9Q2axom;8=|5$c*3pWcme5G( z^i|8f&~T4K&#d%CUT^dY*aEXPFxF)`0>-$Om*yH7`}5v_b# znB7Sk?tO@MjYgN$^t_pG&FMFSDw?R%$~Yhn^E3H{P)q%{uGVo$0#p##x4E~MwOen$SrKcATS=HMZQL7AjhVtd zK!vD_!8zm)ddw3PUtV&Q0n2#v998;vDKj5Km!OhH_osZ3`!vInU?8Xd1|#t@9;IJD zk9ZRLivETME7_^%lU5rzh-OYZe(;{QYSk0uqS@JiO)K}yT>i|6HA;oX{XCOP6aGwB zOemFGm)Ug$w@T(85bJWJM?RLy2C;V(rCQ1i!T0Dj%VdY!rlc&%L zL5t4d2zdpW6yosdDW-J38vDhC{1A-$cxjfCP6>9p97q^x^@bKh>^O^C``6aP1+jr? zS9qby6P{7CRBN?3uI8*Ned6Upl@BnbHi8ajJ?8T*@ zRS{FnT@FNgvW@WytN|anFs(HknH_4BxlkkG4zTqy)|v5tcu+8W&=3p# zfPxu&KNdceWSQQTO1dCPlyPxeZp{0zv#y@)-771Fjn{pnNu-z<6Oi;oVl9Ppp?jlMJh+B?@KWVWhLZ5VXdgj~rt zbPf(Z(RzEniFsZpya(f9rjN?i-+gsf|F17s|5317VQbn3cwoqZ=)@C!BI@u% z^sxYdCVZqmpSOVi@hzniMKg3hzPqf~CJG$2*=)O^c6r8UNa%142FC44OtKDMpg&uB z>M{BFSiXu04K6IRqWre9Wj;*u5jwxinteD{!c|-o5)P&XYgmH}v9 z7sgqN4xaGfLM!(8vrySU#oz5@=r+#yyXCQ`?a&dem^$2M9Ab8*-E8j_tMTYJ>6m3u ztLJSmpAj-7*^7oAFUh7)mEJvtc1X3}fmQ6ZZ2A-j3U0_83WEN($sF-VVxy^r*uc?M zLzMDLx|~0aNylD$7SIPQJ`Q{WbPpjll$Z-(OM}0-fa*+)0%1O9L}Yd1De%ZhiU?Lf zQ{RhJ&FOm>T&SDyS4rjDmS}dYYhb@r>zET{ea!sL4KrnP+yc;l^rX(eM@lmo65f*b zM;OxI39};FSxQApJs)|{@Bk8?g0ddX88)r-CGRQgJI~j2@*cvb&v}L9-<-4!>=a~| z@X+})3dgf4s;K4QUGAr*nodUTa_RC9TCbccGx$sJp=$W0&$-%fR!xLeQ|D>;q;pP{ z+#r^ZC>pN@H2|oV-KKy4Q-wM z12UaY`X9P#1Ns;#jk^lxTvlLp>Yshd7!|2CE<`mghw3M zjv#tYgxUFKjEM&cZNX|~`9rN&zuc_d7I~qBxl0^PrEZ9^`#ng|;n_E#HNd2YzYu6W zU|GSu`1R#2y3Cz|Z2MmNi3nS2j#9<7Zv?s}yUz|uyuh!GJ2rwVXzAf|YFhL0Rm(;p zrPAvoyBpHUyw7SRiD8F3wJ(-Jm0{uY8)#Y2h)0Xp9cK6M@hHR%v<9xuhMkByvD;Xw z?G`lY+}K7tzEaEmJmx}{-oG}1kU!mvE&~n|U!xA?^@N#5#S=5YX+kGdq@Yn%^7u>R z;0k!38|bg?XI3^-YIHmb{0SUFvg(X|FjMuh9yi6(JJ|+AxY%nOr5+ zy4IheF5Ku8oTI*ChUe$0DdXWwtUEl~lq3{uYNW8M<8%ED>};c9lx{XgsdB1-#`tL! zl1T>^|MO&l7@1QmPCHRW{bq8;WPx8ux8QH`CX#jpSJf#6(48-oF~}u#hT$+zWaD$z zc{OC}z`*yP{wRCPMMZ>=gt(eYYQ7Mj1fPEL{0lC>Cyp7S^P#UB91^_t|7YSt$hOz8 z3?1}7>oNoGEPC8qhClDZD${ff~PNW=$6&F54F6w)619BdEvp`PbutB8y zak_D_`nKE~N$V6mS_9=t2f8$a0^K(#w|%m|PjHU?O&T#Z)V_;#(-3>?%udNhZwKl) z+8kTT^vsa`Bs0WV3;m8Bpzds~FV+4(6&>W>1WR}%42g3cAYfi53wMI9Ut;>~Kd>av z(srQ6&w+3me@s#@nn{PF0vdVLjmWuM0Q&%)p48z|v@3lh3LDd{T!jQof!Sly_3pzt zHyow#*^ETrxdw@lg;mW|cvGK^%yk-PjR_ofa7c%)(Llch;pjRj?I1hRmJDoMKa$dm z%+fq@fP4xKOr@9XW9-aCXKz*`8)*de+E87kh)6&&xB4Q-GUbqCPvGb^cd80$h9*^% z1N=q6w3h-plwA0Jg5u)1R$p@a&)NoTO8~L*SMt&^Jm<2?3u6qpbL7@ z@3?pBlaL@c3LkI(MeeL=;A&l41+YOu>_DJPi?HrZ%zrSEbTMUuRAFPGQ{xkQp+`D# zdfl+k3Z#K2F<3sdb|M>s6}`?n==SJv-6;u^36O{}nryZhp)G^VSRvh(3u8B`;VBI> z-Dzr^ypNW0wGh349c8J`hqA2D;Y#RjEDhg-%uth7i{g+hCi!`oeVqp9lVhL3+MW^U z)zN=o{z(IO5BYi7f^#b9rn=n*st!81ESbgeLP+WW@Lmu-f`I{0t4BgTMOJA9bcwNo zhbg>DIqDbx<=6r_+N#QHWDTx3K zs3A!7UGF6to#5C)7-G7`jep5tJbDUc$*DdwqQ|q&)6UOTdjviCWy|A&_Ka6+wopDJ6|hroOR39N6(G$h~rzQNLb=Uoam@3zPRpiG?=Sm{Gjh=m2p^dWqP( zS2G0XyL_Y4y9e1~6zM-VH?a%oPJ6iS#}VZES768zRmUs5f*V>Rfr zDg4Ul{fPa#Hde;#zjnJ-I1(xe2M!4*W}`vk;D8;WkoM9oT0v?|*eQ0`FfIeQ<#s?z zE%L!&Ekd#Ga<#``vUU{Os zgOi}Le?KKU{pFuBk7nZR)ZY;QwCr)rz_PH-f9&N2N*j@aZalWARqgLW>@$qU^1@4` zzJ8j5$Yc{eq8asK-6j>ye30vS6M=!`!ov7PM3-*N1{#TMW}kpWnLz@A2vY_?Y^^bon~4Rb(Wtyp_R7hwE=V_$~pAriLO}Mc4p9q+X~Ic zj#Hh`ZTK=fZe9prBv7qP+nXgrK5%T;IOXQj+lo#M2a;wnn6ZCk>kj2Xd+PwD>&{pP zQ!@FJBP!=4%Jw)vGLFVlFiy8J96KuEWLgNf-XEYpKedvAhQm!a;OFR7Poj14o=~iw zBrtJt$<#G{+45J(3e>O8Qk(2k8~)UF>C2FHGkqkym+(02!fk`c!{q`@O^pIbv&!e(~z7Yof( zNa-t3(Ty{y+UpWXzT7&?(|>&uGP2Kps-DjfBS?ZAn~U02)OY=qp~r;^-|;}i`}$`; zcacxgkn{ftb;-0DFI}E-a=}GYOLhUI97h01MT=jAg!hgKQAo*y-sp{E$JuZq6bpb8 zn|1&A4`pUkS3}I#N1R(zPOXJ8@sQ!8>3`mgKoZS=x;a`^dmIMy8_ln0(}93+a&Ns$ z-i8?A;NR2c-I%=CX>BIh@LwYSV-4EUFmD4cIXl0KPHagmyS3u9C-s_gernHus+$Ap zr-9ERIMAbf^aR3*eKWMuTE_B5?a3YWBlEBF)8`&R!$*gbzkOLR`=L4+$?9e8|4o_0 z;)|v8-FB0`VZk3_$vIUx!~5@b_rn}*&jo$oPu^C3vm1JkWOq(@@riNOtX&M(J2}Ll z%=w#|$ZCH`aT&3PFUVTB;g^?mdsC4;T5rNKS*bwR$B&5Lw07lC(PsnnNQj_`gs|Nz z(dtdB;vizatoybgLd#{ig&rIt?!ei74jP4;)7xmIsyArB0pkQb6+bx(Y`UYraoSm? zPM$;U+>1l)(#1m&bVc77s#7k9WY@k5smn=EYGSTEDysQ|}1X^V8X|s3(k!XS)cqRnNfHeQ`&%EHcXS`<^LhBxd5@ zn$t(8z-%stk>%jzpFPqo3epPvt&U^>^}Ls?2n}bS02;DuCD50px`F9A8V>4R(&J?> z7_dnB#?4c?j^Lr3Bd(1wB}oEhd@T*qqlKo0kRBJyzzUwH?|Qd3IV^Fk_HD04_yP>@MZGtr!K-=p6!ZpJ3p$j-owEM_=cb0A4p>)Pcm~T6Yp~GBEHL^ggQtW>gxZ zQUvXqK121G#v6k1RZMM)H8I83{AejuY)8DCk5(`tZLSlleJQrI0Q89*@ti{j&jjhc zA$qwhpxymK!&V0l6>qz*wu3=QC))gVuzH*6kpp_VUq}RZ>W~5ci(3|(aebln=U$fG zadLiLpYz4458sf`o!Yt_4UN5h?tkQ_~Uv7j26a}3OtM!0k-$7W{{)X4iZPsbEKvRV*RlQz$P|PE$))&LN|64I* z`z%y|?@D8ZwAO%bmTc=lN*%lX@&X7`H5%OjuNw8PdT zlf~^mYycGk4s5Ia8&TfL13f3~uR$)>PzuOJ*3MX>5mI-c>m*!P3>jsH0wKIdNXGX@ z!nCQEwa70-hKiYT*RdK*e4Ax2JGm1>_s^}`C?wX*7oIsqBKX+otdm^My{ zZl9uYUZqJBJ5YN*XjrhRtNSJ!$tIy-Fzj!@fs56|RZwj`Sz3=qr$(TwB83?Vlwm$; z^bD>x)K)!4h*&zBD|ep#3aV5e>Uw!$uQd*%HB7nW$-}tdy=1AfV#=i`GXk#8D3{f* zsUy8me|q_A7l1^4kKB2{JWeGTV{s4`$5!#ouRRS5L1-( zNTL00xF(W*QZs7kC=4DXrSe#)dcpza+laz3?*XucQbi3Tz~tV&ez{{PcGVxEZRFIU z;dF{=BNW|&cYn3^{ z&$w#U`ZB%X#wXiEUW@$Z<}vSGXx2KNS*#Lh7zZ9q$XUS*nB8>cxTuhO z?Bv1w-TdYplE>IFPG`kj#yjT;dg20NJ#9j1l5-DnlO zwhjG_j7eSO-~F+fsjhE!XXjPWL?@mz=vSL2opbACWG6K}ZRKvf(Bw(%SeUy3W~BD0 z8Jm@Gycjmep*+}bqCu;P3(;2Qqo_dvmkJr7+-ghhhwh)u@Yt~%;CL2?krwpFFeSU5 zK5Poa>0|xML`}AR)zPkIXuU7wVMEE*FcxxCp??B6yqdiY!ikdt7cBq;vs_4U|7}3j z3?hYUgqlC1`lku| zLbSA>)M!ctd2g%GU@>l zhunxHc(Z1o`eqI6-HX}r%GV0 zpmjhp3`X}rFI1>zPYkF--xiWqL5}djgcaW>T>+iwj1}L({WTrV@PCk$&CuHmcSJao za0;?ot=*1vVfM4$-sp1ns#G(*5v3s3X!_bIZK3Cs!uR8+GL}6B5WaIpH+08R^OWH5 zOp31aS;?4`YhYRns#i>Vc)w<4$;O0x48VdPB)xuJqDLA189fhx8pE^ur1v zTf!?jIBEkfBp;xzx+ycMu31abTDVxw6S*yTaGp%;tI*s0J>=Yu{q3F5YKm?2Meg<9 zZIKK4`bPb{FZ_jT>768SRlrMnPr&7iV^C-mZXD_5S$uo4W<;L3Ch?IG9X*hy0 zBYub=oFM1Q(1M7mgQ_QFN4^f3+0gnZwg+TiD|%RX?qom|npjh)J>63UwL$z@ zM_Y_xOr*kl_w$k0JzhKm7MImQYsayBQtx^cYRtjm<5`RdWK;3XINesq?mUQJs)jRT z)7qfz!+rX=rfxyz*IDy7)a9hkB)k!mgboN@CtP`$vw|WWiJT4qW{{*gH1JRfCRLQc z+-%x51pHP4`VDv7vm1a(Wc&@oLpkB}E9v|@{&af=6( z8=^i!vIo5rd}EqUOxfXb#|{qSs|}WL!hOYjKFrbm8`m0Bgka)Gm@?~`%lPA^(fsj{ zT1<5TznN2ufa)sWCisbqekZDT7s0M-omFCBNdrbhVq_DYV#?&m8G2``#ex6M-0fwB zCFjqq9sehnnyOUw@|wpCt=$w~0C3~7<;AUx|kDd2HRP=4C+cW@|1L2LGWs1$Xgl_AI)gQ=qm_?tOKo9*q`J0 z6+hmfVnOynGcseaAM-`Y6dgwWtx`8~L3?>6f|9v0!MIr?6TKcr+4l?5OAD#!KEcuN zIuWLYOnWV}H1KY=aZ1}H(xY(9h^3v@I+9N1ob3^}GB?2Qh;lfqy;%5obvi;tq52_8 zMo7e%%kShqUc#>goeToDj`Q~EtnRkkKkHat!N*4QClG&b4v(4dzdFJ%jmpPoET;g? zrWe1P$G?9{?Jr6om&2n%OJHP`S}q)hlbI};>*Hc3blCDA*~-%nSITh=vQnmEQo_VL zn*O=^Tl&=$39D#m1mYcaW(m{;OLuf~>QdXzl0$R&MME+sZnO7i0n7^7*O7(o>n~y& zG9)OBohd{K!Kkkc14%%74IjjwSiOwAyl!`E@9VHbGdIszvhd$AE=H%0OC8xJ<(BbSkg`1NJRj7lHt?Q=X4d;2z+k&NWZ}2+W zz>&eyu7a-~cokA`^xvOT!{Hx?k8gMHjcxZ#q?*3mhd`U;PfTz6)eV{qMBfGC3zvuO&`>=`;xn3iqcxe> zv2wh2(CnLWozCK5FdLcyaYu1LgXo_rVd$tg;Mpy&!`g84p1VfH_T8_!B?#F*M`Qs? zPtM7LtD-P96+8d>6*y(*w;@O^XGZ7gOEDqc1)V5aA8};KJEahI z#cV3-xGL|m|F+#M3LI%Rm`opk`AiEkBVZ5(CM#YSvHmZ*h>wD(B*l67@g~;keT)AHfaQaLGs*Un7{ZFM zqn|}zd-VAK1sQio$pu;nGkzRID3ioea`w1uh4@7{?c7b((H`b}kFx&UZZxuwd0fw0 zIgDQ#duVOuNfj%ch@9eNZ)CR9rbeR%YlAnW$-FGWnSJuzcOlTC{MvmBp6076r*=Zs z?ivozLA1kN=TtN4M3*~{nwZGnxFr_59zNmgE>yqlCu%B|RU#hGj|Pf)S``&>T*3#i z^XGZDkUK6F+%EgR>Da6C$;BUt&(KJ>MYm`1HFz4r|Bt9QkBh1Q-^V3N(qfI0DIr@D z5)~swS(4pN7<=f>aFdA6DW!-Eg^-LbA>Ct3H!Y`>inJj^(P`5*)yyE)i=9!{|hj->}0s_1Qxb$A{#BTj85zTHdo0jH%_{w}iis<2T>v z!15&hDY<#~J-l8F77x_5iD`GL`ahdzO}u$N$YnNx8;gLO43vl$H&e;*D9Zcs6kTJt zaCWR2+{8@Vll_WkXg6V@PLMxNspU=i^&YP|Ud>YnzIac4qr=KYZ;95P%t+k@jlM2y z8i`DZxpuO)ko?i?|4-DspRvu6^{rpY+}ZJoAJIatyEPm`M&{#l(L{8<$0@8=c&mb4 z$8;J+)ep>3g3DI#>^yB577*bnr2|@$(dT?^MOgrPi}eQhWX04k&|VY2MiaN+Fnm*Z z`vyt+<(|HJ*e#p!m%Bvwa;I=JGU0GKS<}~>4=gzQY$or)M^TPJXG}>ly`?A1X7Yej z8n?>Uo@sJN&wCkfq8@GDa?`y_&shhGdam|LRW=0o_^)6t*i z+^lSQ15c=jN7!B>+I>z2K1!tlaxRdQ&(V~c8#AkjMJ+YOChoFn1Dxw+#JsWW{Kx|ICBFf8 znnyd1iXr=aVq%YI)O|iNne#NWv{|Mfn?;Mnc>mT7Y#wjRwxior5*G4BiHVsdwRw88EL}jj9a4Pc>@%4 zGX{CKM(odIYQyW0TgFbW+_M#??}R%qVP|U4Xt`XfDNfk2rd*f#1dVwaijQGo0j%Yv zQPtnJu$rz8L6-%=h%!{f7mL4FHz$zy*g`BzWi|8I&00Hat7UT^sNKHtC(rukL~~|E zllSf@7aF%Bf#ofP*0pX-y#-`WD{qQUmZxE1=Q;|dU*8wO*|A)m>F_!*lalDYLyVT}_>|PVQ zWp5v7Dg(&(BBf$D?GD4^wZJGm{%B8WOR{Hw3F!cBB_A@6U#uKYyksCR8MuYtmv~Kv zJ+|JhQ07{c{Ow ziRk&wet0d3c-QypDM5x(V}{Q*Y|iZJuOV2zS$Hn0H6c)KFp0Q!Fi+l~#y!*wZ_G&) zG8#i6ZMi6oQ42rnUQciAN1ODelmE);Lm{^HLk|q=uVo7tJ82+&J^4ILw+)wbLr;LG z2mun(xpWYKK(pJ17lxCzS_(Xb)1_?r^qpV2)w&F~KBU8`w!7xc|VWxJ2Dx`waCf`8}$sa9AF})>Ml$)^fQXVmXIf%>VIy z`H$M=_{*MiUb@73eXYj-vNL`EWi-!obL1ULyupvY?v_Oqr8aLslVow;Q9(VhR5U4n z^L+|lrd{itw?3r3mZy=tAnp-}dKM7L=g_`&nM8#8!#17epONjYBDobk*V}!Xifrn~ zZt>@Z|5qJJ&h1xva-sH;_e-^a4OJ~rk2>YrqZ9E){&g+#!@b*;QX>tqP?X1v7Uda* z%**3W;?1gr{`Tar58gdq|9-3^dn7N&hs;KzOO$_n#L;1tDH>tFaC~lo>7){^DQ&Ma zB}fCZ!6i;-+BP5;3dzCgRH1%Fuhn{xd-b z*4%m|su}4Jk3y?OS~r{L>6kUmN)|6WY*CGrwL8iIc9jLvp-+cn-k&a&EyBy+*37-O zy6e(|8hqkXV<~<9Ijm${pAbyyExvuUj@2$P`EI!upDsi-R zV0qL(;}e1)bTJo%drj(8IG5WkG}f3^@HotxRSk`1B=nnV>7WhkQ#3sbaif*l?$`Q4 z;#`y6t3_QkUCb%s(&m^Sz(ja&Rn-22`y|A!M|W0R5pyS2v8ylAF8O)QYF@y!m`m3x z)wVAW^-SA4PWHAVidR1Rr5>%c+vv$HvcYoFjj=51T<#W6?~?wHPUkJ(9r)>&(Uya+ zh(dF6PJv;ysK1Pi*`MY((_z`;1kU4wzjqE=UE4XBr52aBG?4}xddnA|iNm(^)@NpR z0dSl70FSi5tX-tU6}ZxmY?O*w6)c7oYx}(qAoTE-s(Nu6Rw20Dy>3h27|Z48=Zmw6j?tj?4QU%owInW}ek19Kr{N=ql)cf2DVHlB`(s%BYer zz{JRQ@xeSMJ$E90`S-K>SjM&5KaU#r?P>!}fvJ}Mjo@>C{cb1CJIJgmA57$l_6QjUim}|nB%;6| zl&O(S(X9TjujoI};*nx&ALeNZ>!mWJh?tK~d7!xrnzgZpHhSNmCmi~mHei0THhn*1ji7f${Cp$J_nFM4p2EJ6{xni}q~HMG=acheLO z>y~u-KgE&WpT+ln6-AOiTIRAx6Kd-#vVR${E!q9h;+YBL7@_x3D||-lT&zk!-l)}( zTgTB?3L1zx^V~b?WhM18pCcMyERk>WXA?WGsKF4zz~Xv4TE^%DUwz62^_yRbo9F6Om}l(y-kEMhK94%JYpNy=ymq%9T+Ij` zx^kEnWs2H%^GWJz!F?X`o7~GzVPi9%%t7fZkFtMD>`UTdOW4f#v&lr!r?5$`GLSj$ zF;Q_Dw=&C)@0`UCS}ZUJ1IppxD^<*w05gYKkW;Q+{b;|*RpLXxo4JI23DpR~R!(~s zPZA&#Bb7fYA|^RUm@t1GNaLXzqMQ~dgPVFe=-5CpRR<67ET7-An^@KZiAQCSok&j{ zvQ(vjY^ChGAy@z~?|(AW*kgm|LkkEi401NFV^aJF9S4m($Y~-*vkl6M?;+=l{=S1p zl20k?CrJct5&jr0%znb_o6|mU@6P^SKl(d}<*Ez9(cq)v2;3!H8bK}a&=VDq8WN?4 zRiaM*Jv+7xw-yO_t>S*Ugz+9Vj}rOjDl?z3OIIIOiy3FkJLAKE`pgA;lC<870$504 z;Kde=b(??lRMBfK2jpadpzc{pG#~x^!Lf)qxCnF5f+dg@v2dcF8)pyTW1v!wd7-c?mTaWbB4DAQx>hTm65W>*`i>}ctlI+rX z3YX#AdfL>(wk>`+`0uA6Eqn@5>2LcV`NC%cX+nDP!>!odj?nb4R$+$E!y5 z!6db8-OL+AejQFp+FhF<7Li`?O=`=ZCx}JXY zXhLiC7sjOHar2$oBQB$A)5n-E)MVhdcnN;)?>8ESX{`=1>5E!2ZLK#jN&6@6)*i*h zho=*FdZ#n6K@{=)81~R5L$+Ap>i%3c@WWZ6c@w+TdZ~tlshX$VhRE&un43TG9NtB7 z8r~JM_z_rZl%X~O64=!EW@XtJ{i)JEW z`Fmaxgb*pL(!v^em-Wt0R(P$-KyHuWnFbIBSZ(Pr0X&x#%C2OO#HSY#7VmeV9Jl zL0lX^>!eiRi4)%|?yh0%k@bW+G;(pb)A=^3;U>y0h-;)xmRygvtRB$KrUc ziFBRKC`K-XCc+!RrBduy1rwTlg~2x3o){BN`_s2Th@$cbyaaUay-+Ak*p1VKrqA2! zyW`177of>m+@_I<7Zys1d=9E;QixjR(0neW8a!%Q$J za5VvJ6FJ1=p;BXoKI6k^mCyiZ0`hq__b#1bDMy*up0-#*xrakH6gjnz(a1_zr3=Ot zq(-a_P9nnhwK&e#9KCUEQ3?QL1tG+^Fh%MYWBh!WqJFR!G*wQI)qvIS2f6lnn*de% z-N?wq{rgbp`@>Gt;IBo7zW5ASly zew~EQ0xQ&=&4xXLq>Z~9zk&>I`IJ+dK$<0XTpxQkr_{nH$>D&4TO}fp)cio?B5+03 zZUYRP471MDjKT?(#h0kdO6ATxt!Bdh;d5TGhW}i)JD|2$1LUbXs<=-jJW;88uz;qr zKARCAxRL^aCIBE6Sw(39c?QpQTd8U7K$NqYjTMpJ1wQtts)V)w3dnM)=MIa(S!;d- zo()TRE;8JS{#CaA$Y-tHf6ztz;rBS-s<$PllAU6hAQ16f7F*=~K5`f@PHJFX34?$3 zW%YoWMb|j?I6Zhf+J>zQLyp#=Nc7@Umly<%Vt)DDdTF7c#bW1gm9$9IH|2e*tyt9X zPw}Z=Vn_^fVdfc6+pfz<xK2C3Fq?0{9d0Yn>Kx`;43AYbcFQ|(*6gb z!6)jU@F`@Ro7Wx6HyWhf&Q?2L@8Ifu{4e7ZAH$_C@*ITT?^und?m9f-)Ki{1L}L0Q zOdZ(drY9<4TzsCeu3?>+)rGjmbJ2#x3ugTb9q8@>%3{lw86RR)Udd#9BMsaxf5$C` zBJu^yJAd2`QNTZsoF4@^mDOqmI!vIyRCuEq7$ksX9jGo2(*@GaFmtb8P5;Lild)Ha zw>Lh`R>ZGtbG$FZ!!k-^uA}ibb*hZ?F?o>n8rmt7pIy_~{=ET4ejIfy83X#!=Hg2r9up7mU zP}=6_7C(4=9CLdZgz5dWwtpjtsl)D5d_@u*g)T@x7>((I;3m$bHoPAlulO+S^Ko#f z@O&jxKV68d58P~zU$k(?=JhQjA_}KJS#)NLxli)JJ3cqZtpuHb#BG;+5q58uol0Rw z>nh((S~+~K$4vF^O9SyZ*xL2YpcE=n2mw{rh!@o{W&;kl7`Zu~=*px_%w|+JIkH)s z7vj>-G_Vdf_9fE>LP?O=NxX_2%pJ7GiX)CKGkt$|A-YDMTv{WVdi8 zj(H!uS`|{|c-6>Dws@K+%=% zky`b|LjWMe;n(XlE047*T^2tQIM>0iGV=Kmnz&{WY)b0}KH=iq7#Q=Z0aOiclXnBI zUrvtbx;JUlU5Usu3>`?;Y8=2v@xr%1yuttZ<1P)~elgbOp!?t&bg5G}5VDZ)*}C1_ zXfm@oWPd(4ox0A-CG~=#NN%-yv?7LHWpj4T1!CdSrN(DJ_Hqsu^#YqDj{10|JrZ;CUq#P^1K|9R%mol8C8~6S-k2r_rfTYP3kL z3mDglua3ACa_LVp{# z(On!*PRFB1{`tnAkFvvDyr#-LuqIBE5=NjTNg`0@bf_nB zZYgSsx%1>;#odKBhG>G?#iUM*a_|m-d$8eyEz`(R+hBb#4f~7f)m(Gk5x9hNa$8A= z?PFYUtBzCnC(|gLZj|#qEdPY;u(7?0Ys7$BCGb)y2h8QWGd|f8*vfI9p)ivY>K!C>nRd@Kn##LioD4JcP%il}PE>-ajWarC6moU8o` z$@u8&*E=`U00{GSwSO}T_bfOtc0xX5ylZ66PbLn6SWgSqa)<_x@p+ilKxLBgWyBU^ z`RZkUum+okfRF)HB+?$8AA5}}6;oY}m#Y&a7HnRvs2CWc>|0RW5S@{t^<(PZXMJ9x z*GiQfsO8Dlxi5LR6SJ%TD|PNHq&jA9y#Uzi=zepP;p}EM_SHW5gE{>{QdY(%D3G|tnmQMSKda}>RFxjpI%J(s`AYa$=&4;y$ zp?opElL=CW)kH_8&KaA1OVH}hK~qk>ox>s0Z1%M@WmXz#RbP<=nhCZT6sI;riS(BB zn3b~Rd--0+0Bz=Y9k?IRk7$X8%~luF!4;_Z6OyA3b#-rBs#Q-xENVoJq+ z!S!~Q>Uqyyb#qYX174FLMdLfqUO>tc|CKel^bs7C@a}mKHvN4e`ZlO;jzD@}^w0(FnM%#EJ2n+ZO!uL_AghR)l($hY6_ zRlj&d^n)@#xR&bHlA46e?Hdlw(`4f5CWRqhhzEAK{lTaZ-Q<3^>*2Gr@v-cz%?(0r zQzXF-sEuEr@3?dY6(P=Kt%op~(BK)L7mRW1Zf+3mm9Y+ZDG5o;>86j|FO!X#>`iW! zMA`Q+MFRpR90np(jzyb@@OOHXKqZ0(Etc0lpNCAFhcI)OH^9ZWrV&2R$d9G`YTK?} z4oX6RZtzvbXxm>s^CED$Kl`R{c+`LDZ+6knn%Z4T$6DM7BJOAEw2q`h zsNv|y;)EUgBKW`70c+*a0Wh+2k~;NOy1zC%)! z8g?kDi&hmW#rl4@srWl#ye&NC*s9RHD|peXMEl1 z^GBFbBW`b%&4E%%MVdZEmV`!ZKOLqXhL3Tinq2O3zoc;@CAN<)y{5(qG?_Ye+&vv+ zUXV+92}h6tk)Hb)|8##?z(#!ci}k=5Erl>QLt>$_dkfNR9pGHHFaU zc}?}=KYTn*sBy*|HoPE;906A}cC+p-AjkJM@W<$6nXzG-+EC7|3e3v(JiAZ6*KYZk zXXwTxomtV?D@#yt^M>RKo?4uD1M9C?c3)$4?&h*Sq|F^Ns?BfC+eh)pnqOp}$@jTK zq8}}6P1&{s^aW%w=sR(-1w>2gKo^~|ov-v~iU_@=r{r~qk$Z!Gu7blqB5p%j)$T4bQ$nk#n=BNa^$hS4I#w9G2qrBAq`_@OX%y| z=FP2)s)^c+!jcLwaZ05zjr9Yrz{-MW3>Ejw!=vmJ(%5vi6*FfW*5BnBP`J*}k zoTPC%+9dl43$8xZI+g!4&+FnQ-+qJ}_53+fw(v;bMip<(ZZhie9A&9ZzB(!WLi;VN zCWXD*>DRvD%aE1nDLh8X$YnNgZ?%ahkzFC4p3|ez|IHh9_AezhF39(<7Wnp6+VECb zd_1VikS{K`D{+u?p*BCHj~TI)GhFad23}L)ZjS3Z$L>7yXa2SU8kgN0;l7^z=h_iP zz}iIIJlpNlN!Z2=1Q8RP#ner_ZfX$K#FHV71pr+WkpTaRns{=g*#u9W;puPGM8bDn zx;V0&v#{#%^jFGnHO>EL@x;^_SGtgg`%n7LoM7(Va606JH=!iQ4IL#7pg?_JttwDJs3C!^i4WT2OfiJ{OIT;K)sq;)o!m^{GV83iT+{~RBJxNtAjq(^ z>U1;);ZSKovhs0LZtz+&e^bIaVfhM$KBY|<=84>Vi-b2;nk*FG)YY~JA6vp@w;g^t#t#T0|8Hd>yR&<^ zjN!hg1HbTnjITlphX3l(|EYM-TXaGDs~cVJ3NQlXY&sRL;0bhSiKaCZQlu{MkcGZk z)?NKw@oy*-)8*7M-Y%QPIYPK!lmAGK!j=hl%_Qa$iP(TD*p7A=+Rd%Ykt2i6L|}FKBq=9he!ORgiDqjJ8|uc zB|askr|(_#4O|-<2k%P4Ta&DdScsjJcE6RgksW z8nEG~Pd&Vzn|aga*96o;mw6-GC-60dkHgU z`$;v+%U{wU>LC>uDz`7b2?Z|=40wz8%TsV6_>MhrVCmmeh^hSO=|5-fhHJ$cFrSYc z0Dn@yrt)dmXU=B?Sdd>vn>XR+S0`Zf?nh%GOYb~7S8ToVN4`)QXvxl;eDaKJcPTks ze#Z3koVE*vetKfwCW99rCZJ{ak0XaF)}oRnQinGl-eVhzUfny_4=*1ey{D^{&AD`n zH+aliN@Mo&p(bRYD`xHqhLMHgc}*e6;ad3pNKW#a&b|9~HRdzHx&#}}zyz5jG>6s8f^7kRgI>4Y8c zp5~MEyNgetm!5fvirJwC{OC+we#kGk=!XLimg)x&cfxaE{&N*ftn|7pEMfUk4|0r{AL;wUDBDeC}O5LMm<5 zuEgu{6=a`IgQFoU&9)>V-m;N2$k)Vy$RoR#WLk0sJyx{kjdYUNrXY_fpcKT(+OPq=5dL}FC1gfca&hgr{f3+yLtEJKHQ5CQW%)9DWGq#&)^wsL&9~5Gk z@i^6Ac=E)sXtOb%76)gYR(G!pQ@b>0OmjcLi0O?ej1p!)Alc{qCeGaq-5p)9qHxc%IL+4e;`k+>7yxPD$d`FauMCeN;q<4OJCce>Ka8#~5tSc+bq zKhhLfV0LTi&KIe4t*Z|{zEblWcRZ^${NY><6+?J?vPpraD|*Lm#Pa{{=6rWGyhvUT zKh0Tj^>^?KKsf$efeRm$@%1_Fnav`+_M?b_#5H_TPat~p3h?(4-mq27H&Y3j(2X_C z4DW*OKXa^q^mE_jh1j;Jyvj|n1ubqk9gZ={(xtkKaez_RA#ox#D{4W#GBJV2f4ny{&=QWMeHT^K!ltd zypvum6U@b0@{dST;IKH|Z{dT%!(w@0QdMl=pPeZ1#=m7-f88^f2u37j|8+^rCtqIE z;4yeH(W~}_kzCHaWU$h;yq76 zA~(8j-{(h;16~_9jQIeUn~Hs%PL3;_*rLrDK6+0%%UDGFVb(3JDY=TQ&=bo!gpU9C z0c;mta5h+lyG`LS!cht7VX&{f|!CT<|DDA$M7?6S_xTxzsy||<|(X=Fgl>L z?|W%Y72l7;98ciZ`wG0Sx1v~K97_wZ7*gkF%Cgp{4r8ecZbtD&sczh} z!tc^|4LLl)UZsV07H|Wh`fDu{*R;*7%sEc^MZZ&V66X88H|qHF=Fjg(>TbL-Cv8q_ z_Jz;93n94S@dr~Ja#c-@C!HTAXLaHFJp{0WyUW6^Y@)KBZ~H;1o}`c}(IzJ8o7!(b zNo)_mut?s638NF2J6>AjF}(UK%;Pv*W}_Ox2{SNii&m`5LCs{*z_`~lUNL^ZegK4W zDp0!bUo3um4z-l(KJKw%^6`tDE5E@pAuc3()w^!F{*Zc^;4fZt$g-ce5v;LChredx(HOA2;+=6G^HPc= z{2AR4W;~V_Y644kZ%0riMRsKVi9mC?OznEEFCV?N#Q3zC;IT+#Q;2SSG6J#%IWsbXSj)r^SxDtc};apu<#coo!$kGidLqpz-f^%|6BIW1-n39O*s zClLxn?_TC9C4gpK{|r-R@48&rVEoyx-w^X|fV*!@!agDc+3WE-gL(1&m;x1F?(;}e}84bFFe1)3tQpOg!T$}kq_K!>xUD12)w{* z2v1e5-0_lW2)wQt<;9~_42$a{0Y`y+XmBdj6jZjj^bp!OhK~(LN#r-w;-c_CEi8wC zGsSO5a(_7E-{EN-Je44Mtu~qMg{P50k6vmmY&KFysHV(7BOTv0xCTICZ)orjoP~Z#Bwoe z&q zUwVN{+>??RPmZpFo=!1U3jc0O%s#PVi{XX7(_C7bHQ<0w2qwc}lXnkEu(dOkOE&l| ziovDgKI5;Xq1%Cs1C6B?pP$yr(|>z2K&dbrMH+1bhA+#j%*h6NupQP;a&vmh%I(xHeTJOT~asp)(^&PXXvs|@2FFg4ZpJgdTpC+bg`Cy zOqQg-Jy;mZd_dEDBi7vL-zskSPh&Q4?B)1cw|X!QCSKMz-z(LB&m(Y~PPNu^)SKyoB#HO?E1Z18i4 zihoozeZJGklfOzDS448suzc^=tCxm$xoAG9^9X2r%?=&$k*%la_YJNr>riBlAM05I z6k<`P(Kk-{YwZVn;%w%LeCDDPrfqb2s2n<}1J*MZ276?HqNj6o!Ed(Y{cj9k=R%pB z*m?227X6@(r+(`dm?!mKK+}FStT=evd}i}z2yNQ410Vm7h-l+joC6m4Rfeg@tX}ly z>pJjUuKFUyC)C4z2&Kyf+oTs`f+xxAk6wNXc>$G5)<9`c_#bta(09E@*pyXY*BZ~- z7FJ3R{P^!ujYO<7dCF}L>0kYM>-zxqLDW7pATIj0<2kn*ir@UgcrV)M5~aeM^lxUE*D~y4_v|Z?NcdzouiE=Xen5YdLcqKD~x<{c=d+cOQpk zI#nBpWlIu(p)lBJiRN`HGPM~UP`6Od8>`I*wRYe(bVoV@Q^KG%?6f6U5w%!E= z<3h5n7y~m77uNa28Xu3kety^H7Q=anA||elU9_3~ zaIi-BzoosGzpCyJw?g0MG@jhS%M&R}rHmCrd3^$lK8?y@xV6)W_IfoNgmbiiPC@sg z4n!@$23J)1!xPv|0HxyZ-pNq?JH+=(x?%pQ;6}ydPrGvIoSO@_vHhnF!sAQqX1)p? zc{2EA$EBc;rjSQ4CKI~%E@+%sW3Mp9uHIf;8#tEU-YtRELNk2u<2tf72U)e<4!Y92 z0y9ZK-_3A_%rcg8)w@yzj~j%Yhfiy)YAsOI;(+#kd0WSARelzZm+r`0upsgU#B{Vk zOp@x@XHoI|My^Rv$x~!RSgmgoslco>>)WkeQT^95Dy&a&==YEpD%nLWEcU=%B~FbQ zypCY7!^3YdgO2$3q5WuZr8@m^CMa=Jf6hQ#xJ5Ik6!ohlf0b8@N@t;fndN1U zwv)MX!#c*{L=L|-vtE_UytE^GYPvKV^e0fyxY+M3;S;uQBElRR%bb^ zeem(So41}0^~Yzv_w2d&tSEIMHe2HZx23$w zdhp<)JB{-PmFL5O z?$CA24+C^1wC|z}1bMCK<5*VeIdXVT|JT~H-SCo_r!Pm?R>q@USal;2t)zNGv`c`Iw756rsxOtBTp~;1 zB|P?T|(f^o*BHq~VYr-KEPm!3nqL8EMNc{DcEBo&FQ_Srr zOZ+9~R)R(GRn}$|`(aU2oP0OnzPl4;?9m%iJn@Js$u?f2@|qp5P$umhk2&;oOxvZm z+&X+d=8)tuv*$lW;MU5^XlwKfRcihNO-33yc$lwg9WVL~G53h@Vl)>y;MQ90Zo=iY z5)3K7&#L74)zB>u`2bv@5Lf!lb{bqBl>T$Vh>9us$Qj$lpnRuD+5~IiD<^A!Ln51z z>VnqMU_zgReIqVt?@2-GbczGn2G=6pL7=IaE4U+FYM_ zc{!bdhYe(kkAggh?HgG>CJTD}$yeW`*uqLIdVT^_d~%Z}-A!UXs2BiJ^@oG^rd~uq z27`1EOSvuhR|juI`kwbhE0Mk-nRn3>#=dCCB8q!b|5g7q<2IN%JOMsY*2f@*3?7Pu z7qJV}@?9+z_XTWxBzcwh!+i`OtSTIlK-FmcV~1+XhT9z_%0y1%@1v8SL+GW81Jem3 z28mNRFt5wI)O+>M$ikE|{sb<@^sRvzn0|Z0KRK?mJIzz3lzk2u^lzJ*mxOW0mP$3W zOkL!~81>{!qs?;d34W7$N-n+ROS?!t8@-q~gQfgBd9b9j5L2qgJcZ!>x3Y){3T+4e zxH*aQwW3#k^UYjgigI)67^}Y(hF|@nHD8IjZQj|vZ8&6W1H|@v$6IuL&DzcfK>&K+ zo)wMfN(0a%s00jB>0w^#=3{s?M>%GaD$)HrH_wJ>_CfumbUf*a`oZQzu0#F!Z2WFo zUQ5S&Qujd0c|2-f*e0~0*#o^Piu^7`|DnIKTZtQ&S-miWohJtDyGNoH^5Rje?=io2 zPe#$w7>O1B3m;$iU+zPE%UwLpP|3g0pDAOT%-cxI{!Hz=Mff(#Jf8BeT>Bm<=E}x= zVg3-=Zrpv?0Aj#fqY3M5=N>?Sh#ANP#vfNW);&g0vBRY41IepWz_KN}6t zZ?LX&P6?Ub`nRMEE=?=kmu{{w<@T2{!999MyU^#jsAXhTt0CSf`k2fvw}x8!8JS8qY(Ek!;cn}py3I~ zKCEXNhL0V!<{YiGKWtV4nlJDt=+mXIUHb{jTzS&T{^tmHy@v$54*WA!vv+JzSL5C5 ztr^H9Td?nlE@NJ?*MWb@i**B6xIkdoPJGP18+Ec2DuGwP`63-le~7JMw1G0=`2Rk6 zuF!M{*bJmVERiLQ%q9j7ZzHtOT2%832CQXu4%pF19sk}%AOKfw*YR3OlUgfoy$j>) zQwJ4$c-X@13`BtM4#Wg|w*AL-ga^)FlA~%TaS8dbyMCo+GQbx2;Dtu#8Px zKk>uz&H3wgw}l&J7Y$`lgXo?CBc?Jk+5VFX{Yp4E@Mh~-jY1?szO;-^=znxoVA zO3-I-m}ClG{A;qk_EcJb+PRSL@$Az|X2qQs9JPP<1j2w~jc*#jOWb>^69=-ZoB7<- zxrQN&`d2RTZ4speVNSVBUqmZXA7GE{is~@)H1FFf3Tq~ehtZdQX!BS5e_V_tzW|cb zENFj4lqe?}bcl6L_mtSjujCp1_hiH=5UDt^v!tWt2k$Mu0m2xwsj;JAYkQhR2qtuPH#3+=fWwx>Xoc=7 zUAF5AH6esbB=@`0p}7zSiNn;*+0$m{@t6SxPL1=1e)SnmN#tAUcxmOdJshL&A|dOc ze0x9{HW}Q(K!gML{(Ppa&E>}{2a0A}%&kWbSqX%}9guwCl~G|Q4YmYioq^@1hV{XBr%zVVd zeG@#z+4|dA)l(9Q!w+}UmOk-}JyGGzT|k6p{Qfb-G~8 zB%4iqPyw0^D2Yd=Y>v1RWlxN=LEkk>@xRha0Z(ANp0GBytaCZ?XWFm_j!t)Y^sx1s zl)M#16W+!WvBk<2kP5t~&Gl`pH@uN;QoHmiJMIqeVdAXU#4WPhq3y!Qbd5`&yd6*U?LsET;1?iZ2F5MHm zy@&(Lc#%sr(Hl6mENqPk~0eM|UP2 z$g>izJ*J06bS!bJySMnNkURgv!Qxq7V3eB&@P0Ig^jo^9qDdw?Myx(@_z_?gpB+51I7lw1&bmBkmV$$L5%+spc9-qlYquL;=&}BHt z=~tDxHE9kQ;u7Aj+kFDIC54G?N-)75v0NqKKjxtZGA)Fue+rD zTIdjq93Ki%zppsMNwAyvw=6JI6DHy5euw^j_n%v|<+*s)w#o#Jch+URkx79TlLc-< zv+!^{J@WS{ZVG{hezdJGiyg9Iyi_K-S&`Mc*y=rPR{u7isOHE5XJ;>9W+!lQljgf< zCZ!b&?IfqZaNPI#-wht=Pf<&8n-IUTzQM7q{j2wA$Th{8P-GkYn@&)+bE5pTX%4%} z{jm18;x_K$2i)5u+Wz-No^+`99uVKEIZau(LhQA4uLPXrz-0mZIAo6jiyM@+69aES z&%LL=I}~TL28u5iX-p1`$((BR1iD3bRLedI$^6dqalgcAa&O{#G=V$q-~&&2615i> z-gP0tXHI?V_Ah)Eo~h!{hs?)n!M^%KI3o#SbjqKAXuk$2N%_r%C#4qb8&@;JZeo6m zQqElxM$dhCFygSvdwkHznfC=#GBw^i8?J4==I`%r&zx|RcA`23_bMh2J$H!> zA8^u#I;9gbYJ51RKoodp^+^bx-7!}oP?cFkf;XRU!9y)wHpry0l58^G2X(a}Kw<%F z(qhh}y-qn>eQ-I5Qe>e240L}aVh6SauwU%_dn5~Jlbe57HMu%QCkc~?{n40j1AiK8 z6(FU}7X@h_Q{>}q8|W?HIA0@4-Ke%J^cM2W-?Bj-$Zppy<4PbLi6KBUEn#M;QTj7Lko0qp~6gfG~;^Xfzij$ z^U;9Q65{AtKU65Qu9sgT-?rd*_*{G~QRdjf$DXW7h5@z7JhgT|4v^c z-60MaXdMg6H{os?ByIrVqhpRDu;=9mN5&U3*%IHvsV2R)9-5PviTOVNMtb<-)@&vf zjL%LR*OtM(T*IY*FKO1Q$vc?KOtdIMYiN06`i!T=P!cz}DRqQ_b#P49j)xu%?tHkP7CCy<~(cPIf2k>TVn8hWrg|>68jHf# zhv3^<4aYCVf?72dk2Z%XvlNnQp~5OZA9HUttJZGI3V`wbIt3`_$We>_(C{y$oN%ZYOMxScgMNQ6M%w24eE%2XL+ zA#F{tyRX6)99YLp{I*BRqccWsde+sorW8*K&N|lL=DfDak%_bM==FWElNf2Yw+Ldx zw-B0&K^Y~9Q(0PiQ5NQ;{l`O!*QKMn}%x`hl8B7wSy#9DT?Fk=-^Du zWe2+s`b~QhX*F_4$Rqld&0D24>X4EXvol#p8h*rZk&_K&@imjMkJ(RX9Pjh+L?ls1 zoqympnWZv@ZBJo>ZdFN5vtYua5n|csiJBM)b(HCNPYY(fYX~tkC7R0n`dT;TPoj8E z|GUj%yA+!zBmbF%n>-7)ri0rcd~YMkr4nsyaKp{kiYd?2*>R_BgmgS%&Oyh2m4P6b)%myi zxK?*xI?ud8mAt^fq-elMqQQXNj=axh7hKnp7jKWC+IVatZgM*EZT~zzV_GKl-p_`g zz6K0rct18~oHgdZd5zXtg~+ux+Um*OuIxUU^Zz61O5kF6|9|Dk9ZFGYUCEV%R65qJ zB)O8WFbE;6D;;X5M4_@2%8^A8DvORq$CPwQw^}Jp_qEmD?KLyc|LOOCy?RmGR=YFv z%=7uYKktK?4FyYN!p3;|$E;^Hm-i@KR)paY=RV?8b}K#NrI)|hXB_ReqpELYNxEZW zv_nuUF6G0Vcq0^+W@amw+KXv^{+*oUH9zOW;M+FIIO?;#cwImzL*uAOhor3AplqBw zF5vi9|4uGpb!t2;PTk_yXl%0AI(B{Q5*3&mten^jwAs{?UuIA_WZH^~p3Ho$v?|-E zG)3)L8>k`=DygFm5nD?<#1<@Urj3mw!`8FjD18Q^(f0Ou-$VKLHCsN|G;P^jmKAZdt^=8zQ&O+c$RE!Yr zNy8hp91*fXV2xTq#6j*u#$e&hzmNwI8IH{_GLQH@gni$yOzhMc9^|D^-|%rQ`J9bQ zuVal+)dEgvko?;_6jfC4rZregA;Nm9>G~=p3h*E>(YD5W92$)u<#Ryvy7Hl_i{zu- z>nq%-1I=>ikVgz}ssNAr23c-6DQ{0i<*m@D^M}=Z{cU6!BmB4eC~# z*5jjf#nv5l_@gG{IkS{LJ}uSR4X14ZZ0@Kd$;ZzVIn@xfyj#bSs?hCOCHNmn4$*X6oWG(As2&^vtG~W zF#kjRlU5~0{U;S1J*%-k+4z<_WW!tfSlR=r{^E6BOZWjIg#hD<*4Za zt7lhd=g<9_eN9WkDr^ld9^JKH`L@VT~@FFUvkwu&NZ?Z8AikY5DNcHPn_ zs!Hju6~ei70UcfJT6t3JLNSAcu=PhZ_U2mbCFlF^6FSQxUX;;qEyT<*RTHy3ACi5b zgWNUA(^?hWXf?9ra!-sj=x}wJAFU~Bq;Y$rr>(=FO}XW;0G(9}O$TGpG4v4*73Y&4 zSn%7Xl}ee~P9I@fHTN0-J|VzPq97Qe$Jr{{jpZ0SV{Vg#(HcQ^8#uXCZYCX8+hN96 zbZ26t&C#?p!S^h9PG*uI92$VshCFNfJv>o`?f}rk8n{uDCHnbfAhg{SW;c@qm(R$J zh~-$5cWVva%C#lzlvOMyP2Z9bv1$RBy1k5^j|T-Q41`smK9=uMfy+T^15q+Nc-T`? zwKW2ZAc7U9dBjE~+@~+FP^Mdmm#VT4uwQN-8-+F@-yh8DyT`_IDPp#?NAQ-8nvqI7 zeiib9j>i4a(wIAix}5qL42#v6D+U5R>6?!SzKtoPf%$|;u#rYr+1050?y&%LBf6$g zSbQ(>#H{W6@$drvY7`DX4mnZ|U}umro7mqYVKJ+?_p2Z;rOR4R8pS5~E5}pTzq$mK z>EaQR+qLgG68?DF-qox!f#%Bj5%ZeEI4QvS&*n?7ySwlRglwRRvy-rfHpWJTT23GK znf-k-)LeET{HX^NevsA)_`C-;I)T71^g%}ld^jD~(1TCtza?&lMq@FLG4z5Ig}JPN zx0aY8T}4I++q_e6)uLgPgGxu#hjj(3u=YCCkWDdKl7aQ))?P+YathKEta9mzb zDil607i?ft_Z3p>ZU2%nOOh##oOxZ|$96KlCUpq97P z9(Ef`#cbUnIvASYK~s@9bcPvXOjA9@IEtrb9L;HKAfm}~k%8X@ zj#f-?6dZ5g%*Jt#?k37M@kV^pFAx&=9ttg7K}bO?hpEN4p@~D_$!TB+b&{vq##gY zZO}||LNjBhO{LDk;ZaV2&~kq})TsgvXA(-mIL1;oFwfjg5e();HeD3gRkcqk!3uAT95ggv07%9( zanJW2C^qL7JkzWmOLa0we=cEzRgUC2rAr}O;iQnD4?Kh$;eW>_lwBxo6)$r7?7anddAzhJ8Fb|268pEK6)l$9Kj?Eo2XyZ@Szh&UUTZ z6;7Ek4_(mfHqr&2wFkkDnLju+Wzl3-jFEaarBQZQxmIjFAZ)epvsaXBnfyQ=X@fak z1xToK5nZb0{15=22yMWehIuZs&e|*i-|kGwrSpOhE`Vagjz9OejcTUi6V$V{;B^)pY%)$Rn;%W z9jttv&h2gKME4Cj=YXl9Vz|#T$hITD!|;RM_pq(Uh&Tebj}RBo!*zsD zyPDik^Bpypmrl6MjHY)&pKY+^YIMjZ;at7h)q6KFC*OCl5n$n0Zd#;Z0$$19Q5j63 zyjr`S?n+u=oz@rk3q8OO4rfk%gi?FiY;bh+p%MA?RwyqS!9VDC*cJ3GfQmtlF>0+R z7=8V{8$>pu=y0^f?wrc!`M*ZN+IsrUeV!mAi15i-F-Xmle+rhf2lLcbML5~>uLQqe z^&TzoIo(D^ireQ;6d>(7!_oxwzqW;&I$sC$ATLo<@5*YX=OzC0(`xh~rR<=5$1m|> zhtgIC!r3`fkx8TU$YBeIL}5VWrn!xQV*c(g1mvrs#FK7?HKb*YaF@egpcItodSz^b zbI3K&-(@sR^!kK7P;^5YDmq(}f?;SGyIrP><3>%;f&Qld8<&2=!7wP=htQNf=Wf z!Gqs}0P970xE4koQyK*CMfG126US&OM_A|hbT+#A!=H_hz9PRk;20&vfBczoC`jnj z*W>nS5}7hr2Q!Du`Kvq(-Pt*g=8l>Lg0#*V#M?^e`&0~mz_FEyT2eN~7vqLT9X=AI zXc8u4H`RKlXzSj=qtnT4a}x;)4Ql7Mf*5?HvX2_q*Mi((j5c4je@I1sU zKoMrAr}e}gG%$|utka>+?KBdY5XpLDJbfvHw~`LN1nV9tf>g#c7+Q-@W=Bm&72kHFB(8bdLOd&`? zDWG;>uTSTHaWbl10E5{v&z8ye zEuB19h*oFFylp_AkzRn=#iAjD#*R9mr&%vKyRq7hlm!d5P2^*Bn`I#$sr2Y(GWcaPbfhfi zsIw1z_4=}7$bZ4}=1`-}L(MbYhy1_H^9zp?T=9Q=@M2-PAL_!6gPTVvc~!*E4vo*I#!w8ZMb%}S~1s5tkvZGB`M z1XZJ0H`wymR!n~)h`p7C-el8bdDYt#%01^pP#X0?Jevtjz2HuN(WCg&qq~_dC*#;h zgGrY9u8jWb$)BQ^pbTfY;+tawJ5w2l)or2DCDu8B5j&x=v3U z1P^5F3v4_S^8kxUNlCEO=RSRyUBl??#d|!eUn#5lV0<c(pPNKnv�d70?b$DbkA>Y%|?TZbqT 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