From d8bede1dd5962f83d9528d6c034cdea674846738 Mon Sep 17 00:00:00 2001 From: abhi1992002 Date: Thu, 22 Jan 2026 12:42:15 +0530 Subject: [PATCH] chore: update CI workflow to include integration tests - Renamed the existing test job to `e2e_test` for clarity. - Added a new `integration_test` job that runs on `ubuntu-latest`. - Configured steps for checking out the repository, setting up Node.js, enabling corepack, restoring dependencies, and running unit tests using pnpm. --- .github/workflows/platform-frontend-ci.yml | 35 ++++++++++++++++++- .../__tests__/main.test.tsx | 15 ++++++++ 2 files changed, 49 insertions(+), 1 deletion(-) create mode 100644 autogpt_platform/frontend/src/app/(platform)/marketplace/components/MainMarketplacePage/__tests__/main.test.tsx diff --git a/.github/workflows/platform-frontend-ci.yml b/.github/workflows/platform-frontend-ci.yml index fb7a55055e..51987cde7c 100644 --- a/.github/workflows/platform-frontend-ci.yml +++ b/.github/workflows/platform-frontend-ci.yml @@ -128,7 +128,7 @@ jobs: token: ${{ secrets.GITHUB_TOKEN }} exitOnceUploaded: true - test: + e2e_test: runs-on: big-boi needs: setup strategy: @@ -258,3 +258,36 @@ jobs: - name: Print Final Docker Compose logs if: always() run: docker compose -f ../docker-compose.yml logs + + integration_test: + runs-on: ubuntu-latest + needs: setup + + steps: + - name: Checkout repository + uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Set up Node.js + uses: actions/setup-node@v4 + with: + node-version: "22.18.0" + + - name: Enable corepack + run: corepack enable + + - name: Restore dependencies cache + uses: actions/cache@v4 + with: + path: ~/.pnpm-store + key: ${{ needs.setup.outputs.cache-key }} + restore-keys: | + ${{ runner.os }}-pnpm-${{ hashFiles('autogpt_platform/frontend/pnpm-lock.yaml') }} + ${{ runner.os }}-pnpm- + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Run Integration Tests + run: pnpm test:unit diff --git a/autogpt_platform/frontend/src/app/(platform)/marketplace/components/MainMarketplacePage/__tests__/main.test.tsx b/autogpt_platform/frontend/src/app/(platform)/marketplace/components/MainMarketplacePage/__tests__/main.test.tsx new file mode 100644 index 0000000000..ab8b3572d0 --- /dev/null +++ b/autogpt_platform/frontend/src/app/(platform)/marketplace/components/MainMarketplacePage/__tests__/main.test.tsx @@ -0,0 +1,15 @@ +import { expect, test } from "vitest"; +import { render, screen } from "@/tests/integrations/test-utils"; +import { MainMarkeplacePage } from "../MainMarketplacePage"; +import { server } from "@/mocks/mock-server"; +import { getDeleteV2DeleteStoreSubmissionMockHandler422 } from "@/app/api/__generated__/endpoints/store/store.msw"; + +// Only for CI testing purpose, will remove it in future PR +test("MainMarketplacePage", async () => { + server.use(getDeleteV2DeleteStoreSubmissionMockHandler422()); + + render(); + expect( + await screen.findByText("Featured agents", { exact: false }), + ).toBeDefined(); +}); \ No newline at end of file