Skip to content

Alihan Items/ItemTypes tests, Validate Items. #572

Alihan Items/ItemTypes tests, Validate Items.

Alihan Items/ItemTypes tests, Validate Items. #572

Workflow file for this run

name: CI for C# API with Python Tests
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
services:
api:
image: mcr.microsoft.com/dotnet/aspnet:8.0
ports:
- 3000:3000
env:
ASPNETCORE_ENVIRONMENT: Development
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0'
- name: Install EF Core tools globally
run: |
dotnet tool install --global dotnet-ef
- name: Install dependencies
run: dotnet restore CargoHub
- name: Build API
run: dotnet build CargoHub --no-restore
- name: Add and apply EF migrations
run: |
cd CargoHub # Navigate to the project folder (if not in root)
dotnet ef migrations add setup
dotnet ef database update
unit-tests:
runs-on: ubuntu-latest
services:
api:
image: mcr.microsoft.com/dotnet/aspnet:8.0
ports:
- 3000:3000
env:
ASPNETCORE_ENVIRONMENT: Development
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0'
- name: Install EF Core tools globally
run: |
dotnet tool install --global dotnet-ef
- name: Install dependencies
run: dotnet restore CargoHub
- name: Build API
run: dotnet build CargoHub --no-restore
- name: Add and apply EF migrations
run: |
cd CargoHub # Navigate to the project folder (if not in root)
dotnet ef migrations add setup
dotnet ef database update
- name: Install test dependencies
run: dotnet restore UnitTest
- name: Start testing
run: |
cd UnitTest
dotnet test
integration-tests:
runs-on: ubuntu-latest
services:
api:
image: mcr.microsoft.com/dotnet/aspnet:8.0
ports:
- 3000:3000
env:
ASPNETCORE_ENVIRONMENT: Development
steps:
- name: Checkout code
uses: actions/checkout@v2
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
dotnet-version: '8.0'
- name: Install EF Core tools globally
run: |
dotnet tool install --global dotnet-ef
- name: Install dependencies
run: dotnet restore CargoHub
- name: Build API
run: dotnet build CargoHub --no-restore
- name: Add and apply EF migrations
run: |
cd CargoHub # Navigate to the project folder (if not in root)
dotnet ef migrations add setup
dotnet ef database update
- name: Start API
run: |
cd CargoHub # Navigate to the project folder (if not in root)
dotnet run &
sleep 15 # wait for API to start
- name: Setup Python
uses: actions/setup-python@v4
with:
python-version: '3.12.6'
- name: Install Python dependencies
run: |
python -m pip install --upgrade pip
pip install requests pytest
- name: Run integration tests
env:
API_URL: http://localhost:3000
run: pytest Tests