Add files via upload #5
This file contains hidden or 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: Keploy API Test | ||
| on: | ||
| push: | ||
| branches: [ main ] | ||
| pull_request: | ||
| branches: [ main ] | ||
| jobs: | ||
| run-keploy-tests: | ||
| runs-on: ubuntu-latest | ||
| services: | ||
| mongo: | ||
| image: mongo:4.4 | ||
| options: >- | ||
| --health-cmd="mongo --eval 'db.runCommand({ ping:1 })'" | ||
| --health-interval=10s --health-timeout=5s --health-retries=5 | ||
| --name mongo | ||
| steps: | ||
| - name: Checkout | ||
| uses: actions/checkout@v3 | ||
| - name: Setup Node.js | ||
| uses: actions/setup-node@v3 | ||
| with: | ||
| node-version: '18' | ||
| - name: Install dependencies | ||
| run: npm install | ||
| working-directory: ./bookvault-api | ||
| - name: Wait for MongoDB to be ready | ||
| run: | | ||
| for i in {1..10}; do | ||
| nc -z localhost 27017 && echo "Mongo is up" && break | ||
| echo "Waiting for Mongo..." | ||
| sleep 5 | ||
| done | ||
| - name: Install Keploy | ||
| run: | | ||
| curl -L https://github.com/keploy/keploy/releases/latest/download/keploy-linux-amd64 -o keploy | ||
| chmod +x keploy | ||
| sudo mv keploy /usr/local/bin/keploy | ||
| - name: Run Keploy tests | ||
| run: | | ||
| keploy test -c "npm start" --delay 20 --url http://localhost:5000/api/books | ||
| working-directory: ./bookvault-api | ||