name: Tests on: pull_request: push: branches: - main - release/** jobs: test-unit-cover: runs-on: ubuntu-latest steps: - uses: actions/setup-go@v3 with: go-version: 1.19 check-latest: true - uses: actions/checkout@v3 - name: Test and Create Coverage Report run: | make test-unit-cover - uses: codecov/codecov-action@v3 with: file: ./coverage.txt fail_ci_if_error: false test-importer: runs-on: ubuntu-latest timeout-minutes: 10 steps: - uses: actions/setup-go@v3 with: go-version: 1.19 check-latest: true - uses: actions/checkout@v3 - name: test-importer run: | make test-import test-rpc: runs-on: ubuntu-latest timeout-minutes: 15 steps: - uses: actions/setup-go@v3 with: go-version: 1.19 check-latest: true - uses: actions/checkout@v3 - name: Test rpc endpoint run: | make test-rpc sdk_tests: runs-on: ubuntu-latest steps: - uses: actions/checkout@v3 - name: Checkout laconic-sdk uses: actions/checkout@v3 with: path: "./laconic-sdk/" repository: cerc-io/laconic-sdk fetch-depth: 0 ref: main - name: Environment run: ls -tlh && env - name: Build laconicd container working-directory: tests/sdk_tests run: ./build-laconicd-container.sh - name: Build laconic-sdk container working-directory: laconic-sdk run: ./scripts/build-sdk-test-container.sh - name: Start containers working-directory: tests/sdk_tests run: docker compose up -d - name: Run tests working-directory: tests/sdk_tests run: ./run-tests.sh - name: Start containers (auctions enabled) working-directory: tests/sdk_tests env: TEST_AUCTION_ENABLED: true run: docker compose up -d - name: Run auction tests working-directory: tests/sdk_tests run: ./run-tests.sh test:auctions - name: Start containers (expiry enabled) working-directory: tests/sdk_tests env: TEST_REGISTRY_EXPIRY: true run: docker compose up -d - name: Run nameservice expiry tests working-directory: tests/sdk_tests run: ./run-tests.sh test:nameservice-expiry # integration_tests: # runs-on: ubuntu-latest # steps: # - uses: actions/checkout@v2 # - uses: cachix/install-nix-action@v18 # - uses: cachix/cachix-action@v12 # with: # name: ethermint # signingKey: "${{ secrets.CACHIX_SIGNING_KEY }}" # - uses: technote-space/get-diff-action@v6.1.2 # with: # PATTERNS: | # **/**.sol # **/**.go # go.mod # go.sum # tests/integration_tests/** # - name: Run integration tests # run: make run-integration-tests # if: env.GIT_DIFF # - name: 'Tar debug files' # if: failure() # run: tar cfz debug_files.tar.gz -C /tmp/pytest-of-runner . # - uses: actions/upload-artifact@v3 # if: failure() # with: # name: debug-files # path: debug_files.tar.gz # if-no-files-found: ignore # upload-cache: # if: github.event_name == 'push' # needs: ["integration_tests"] # strategy: # matrix: # os: [macos-latest] # runs-on: ${{ matrix.os }} # steps: # - uses: actions/checkout@v2 # - uses: cachix/install-nix-action@v18 # - uses: cachix/cachix-action@v12 # with: # name: ethermint # signingKey: "${{ secrets.CACHIX_SIGNING_KEY }}" # - name: 'instantiate integration test env' # run: nix-store -r "$(nix-instantiate tests/integration_tests/shell.nix)"