From 33a48f47de85fdab3e05592328999b8563d8248f Mon Sep 17 00:00:00 2001 From: Clemens Schwaighofer Date: Tue, 21 Jan 2025 11:11:56 +0900 Subject: [PATCH] Update unit tests to allow skip if AWS API flood on Github a lot of API tests will fail with "T001" flooding, so we just skip them --- .github/workflows/ci.yml | 34 +++++++++++++-------------- test/phpUnit/AmazonIncentivesTest.php | 5 ++++ 2 files changed, 22 insertions(+), 17 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index ac642ab..d5e7ad1 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -30,20 +30,20 @@ jobs: key: "result-cache-v1-${{ matrix.php-version }}-${{ github.run_id }}" # We need to use phpunit from the self install to get the class paths # Skip auto tests here, there are too many problems with flooding of the AWS API from github - # - name: PHPunit Tests Prepare - # env: - # AWS_GIFT_CARD_ENDPOINT: "${{ secrets.AWS_GIFT_CARD_ENDPOINT }}" - # AWS_GIFT_CARD_KEY: "${{ secrets.AWS_GIFT_CARD_KEY }}" - # AWS_GIFT_CARD_SECRET: "${{ secrets.AWS_GIFT_CARD_SECRET }}" - # AWS_GIFT_CARD_PARTNER_ID: "${{ secrets.AWS_GIFT_CARD_PARTNER_ID }}" - # AWS_GIFT_CARD_CURRENCY: "${{ secrets.AWS_GIFT_CARD_CURRENCY }}" - # run: | - # echo "AWS_GIFT_CARD_ENDPOINT=${AWS_GIFT_CARD_ENDPOINT}" > test/.env; - # echo "AWS_GIFT_CARD_KEY=${AWS_GIFT_CARD_KEY}" >> test/.env; - # echo "AWS_GIFT_CARD_SECRET=${AWS_GIFT_CARD_SECRET}" >> test/.env; - # echo "AWS_GIFT_CARD_PARTNER_ID=${AWS_GIFT_CARD_PARTNER_ID}" >> test/.env; - # echo "AWS_GIFT_CARD_CURRENCY=${AWS_GIFT_CARD_CURRENCY}" >> test/.env; - # echo "AWS_DEBUG=1" >> test/.env; - # - name: PHPunit Tests - # run: | - # vendor/bin/phpunit + - name: PHPunit Tests Prepare + env: + AWS_GIFT_CARD_ENDPOINT: "${{ secrets.AWS_GIFT_CARD_ENDPOINT }}" + AWS_GIFT_CARD_KEY: "${{ secrets.AWS_GIFT_CARD_KEY }}" + AWS_GIFT_CARD_SECRET: "${{ secrets.AWS_GIFT_CARD_SECRET }}" + AWS_GIFT_CARD_PARTNER_ID: "${{ secrets.AWS_GIFT_CARD_PARTNER_ID }}" + AWS_GIFT_CARD_CURRENCY: "${{ secrets.AWS_GIFT_CARD_CURRENCY }}" + run: | + echo "AWS_GIFT_CARD_ENDPOINT=${AWS_GIFT_CARD_ENDPOINT}" > test/.env; + echo "AWS_GIFT_CARD_KEY=${AWS_GIFT_CARD_KEY}" >> test/.env; + echo "AWS_GIFT_CARD_SECRET=${AWS_GIFT_CARD_SECRET}" >> test/.env; + echo "AWS_GIFT_CARD_PARTNER_ID=${AWS_GIFT_CARD_PARTNER_ID}" >> test/.env; + echo "AWS_GIFT_CARD_CURRENCY=${AWS_GIFT_CARD_CURRENCY}" >> test/.env; + echo "AWS_DEBUG=1" >> test/.env; + - name: PHPunit Tests + run: | + vendor/bin/phpunit diff --git a/test/phpUnit/AmazonIncentivesTest.php b/test/phpUnit/AmazonIncentivesTest.php index 1e827c2..401954f 100644 --- a/test/phpUnit/AmazonIncentivesTest.php +++ b/test/phpUnit/AmazonIncentivesTest.php @@ -954,6 +954,11 @@ final class AmazonIncentivesTest extends TestCase ); } catch (\Exception $e) { $error = AmazonIncentives\Exceptions\AmazonErrors::decodeExceptionMessage($e->getMessage()); + if ($error['code'] == "T001") { + $this->markTestSkipped( + "Skipped because of flooding" + ); + } $this->assertEquals( [ 'code' => $expected_code,