test: add test suites #34
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: test | |
on: | |
- push | |
- pull_request | |
jobs: | |
linux: | |
runs-on: ubuntu-latest | |
strategy: | |
matrix: | |
node-version: | |
- 18.14.1 | |
- 19.x | |
redis-version: [6] | |
steps: | |
- uses: KengoTODA/actions-setup-docker-compose@v1 | |
if: ${{ env.ACT }} | |
name: Install `docker-compose` for local simulations | |
with: | |
version: '2.14.2' | |
- uses: actions/checkout@v3 | |
- name: Setup MySQL | |
uses: haltuf/mysql-action@master | |
with: | |
mysql version: '8.0' | |
mysql database: ${{ secrets.MYSQL_DB_NAME }} | |
mysql root password: ${{ secrets.MYSQL_PASSWORD }} | |
mysql user: ${{ secrets.MYSQL_USER }} | |
mysql password: ${{ secrets.MYSQL_PASSWORD }} | |
- name: Setup DynamoDB Local | |
uses: rrainn/dynamodb-action@v3.0.0 | |
with: | |
dbPath: # undefined by default, if this is undefined inMemory will be used | |
sharedDb: # undefined by default | |
delayTransientStatuses: # undefined by default | |
optimizeDbBeforeStartup: # undefined by default | |
port: 8000 | |
cors: '*' | |
- name: Setup Memcached | |
uses: niden/actions-memcached@v7 | |
- name: Setup Redis | |
uses: supercharge/redis-github-action@1.5.0 | |
with: | |
redis-version: ${{ matrix.redis-version }} | |
redis-port: ${{ secrets.REDIS_PORT }} | |
- name: Use Node.js ${{ matrix.node-version }} | |
uses: actions/setup-node@v3 | |
with: | |
node-version: ${{ matrix.node-version }} | |
- name: Install | |
run: npm install && npm install -g nyc | |
- name: Run tests | |
run: FORCE_COLOR=true nyc --reporter=lcovonly node -r @adonisjs/require-ts/build/register ./bin/test/index.ts | |
env: | |
AWS_ACCESS_KEY_ID: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
AWS_SECRET_ACCESS_KEY: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
AWS_REGION: ${{ secrets.AWS_REGION }} | |
DYNAMO_ENDPOINT: ${{ secrets.DYNAMO_ENDPOINT }} | |
DB_CONNECTION: ${{ secrets.DB_CONNECTION }} | |
MYSQL_DB_NAME: ${{ secrets.MYSQL_DB_NAME }} | |
MYSQL_HOST: ${{ secrets.MYSQL_HOST }} | |
MYSQL_PORT: ${{ secrets.MYSQL_PORT }} | |
MYSQL_USER: ${{ secrets.MYSQL_USER }} | |
MYSQL_PASSWORD: ${{ secrets.MYSQL_PASSWORD }} | |
MEMCACHED_SERVER_URL: ${{ secrets.MEMCACHED_SERVER_URL }} | |
REDIS_HOST: ${{ secrets.REDIS_HOST }} | |
REDIS_PORT: ${{ secrets.REDIS_PORT }} | |
- name: Coveralls | |
uses: coverallsapp/github-action@master | |
with: | |
github-token: ${{ secrets.GITHUB_TOKEN }} |