Commit Graph
16 Commits
Author SHA1 Message Date
James Wampler b4a666ebf0 Refactor nunit tests off EF InMemory provider and web server
Extract IMicCheckDbContext so DB access can be mocked with Moq instead
of the InMemory provider, per project testing guidelines. Add shared
async DbSet test doubles (TestSupport/) to back the mocks. Rewrite
HTTP-pipeline tests (WebApplicationFactory) to exercise controllers
and auth handlers directly instead of running the web server. Drop
DbContext/seeder tests that only made sense against a real provider,
and remove stale duplicate test files left over from a namespace move.
2026-07-04 19:54:22 -07:00
James Wampler 1556b486d2 Fix CI build/deploy/smoke pipeline for the self-hosted qa runner (#3)
CI / build-and-push (push) Successful in 39s
CI / deploy-qa (push) Successful in 12s
CI / smoke-qa (push) Successful in 18s
## Summary
- Fix a chain of QA CI issues: Docker build/health-check flakiness, NuGet vuln pins, then adds the post-deploy integration + Playwright smoke suite and works through everything needed to make it actually run on the self-hosted `qa` runner (musl/Alpine job container, no node/dotnet/curl preinstalled, docker-outside-of-docker networking).
- Adds a fixed dev/QA seed admin user + fixed Development environment API key so integration tests and e2e specs have a stable target.
- Pins Aspire's `AppHost.cs` ports/credentials to match the docker-compose local dev defaults.
- Adds `tests/api/MicCheck.Api.Tests.Integration` coverage for disabled flags, environment-document bootstrap, identity override precedence, auth login, and unauthorized access; adds a Playwright e2e suite under `src/admin/e2e` (login, nav, context selection, features CRUD/toggle).
- Adds a `smoke-qa` CI job that runs both suites against the just-deployed QA stack, working around: no curl/node/dotnet on the bare runner, musl vs glibc (Playwright browsers run via the official `mcr.microsoft.com/playwright` image instead), and the runner's job-container network isolation (reach the QA stack via the docker bridge gateway IP; `docker cp` instead of a bind mount to get files into the playwright container, since paths don't cross the docker-outside-of-docker boundary).

## Test plan
- [x] Unit tests pass (dotnet test tests/api/MicCheck.Api.Tests.Unit, 243 passed)
- [x] API integration suite passes against the real QA stack in CI
- [x] Playwright e2e suite passes against the real QA stack in CI (verified 3/3 locally against a real dev API + vite server for the flakiest spec)
- [x] Full CI pipeline (build → deploy-qa → smoke-qa) green end to end on the qa runner

Reviewed-on: #3
2026-07-04 18:53:05 -07:00
James Wampler e10cba77ed qa-environment-aspire (#2)
CI / build-and-push (push) Failing after 18s
CI / deploy-qa (push) Has been skipped
Reviewed-on: #2
Co-authored-by: James Wampler <james@wamp.dev>
Co-committed-by: James Wampler <james@wamp.dev>
2026-07-02 12:42:46 -07:00
James Wampler 6887d09f9c version-0.1 (#1)
Squash and merge of version-0.1

Co-authored-by: James Wampler <james@wamp.dev>
Co-committed-by: James Wampler <james@wamp.dev>
2026-07-01 13:30:07 -07:00
James Wampler 8ff071c69b UX tweaks, traits bug fix, adding member info 2026-04-16 11:50:11 -07:00
James Wampler 7b624b3238 Fixing segment create error, adding environment to feature dialog 2026-04-16 08:59:54 -07:00
James Wampler b75f5f602e Adding Organiztion, environment and project. Segment fix, tag fix 2026-04-14 14:10:37 -07:00
James Wampler 4195d384d0 Adding Audit and Webhooks 2026-04-13 19:43:58 -07:00
James Wampler fc62ea634a Adding Identities 2026-04-13 19:37:56 -07:00
James Wampler 3fff7e3158 Adding Segments 2026-04-13 19:32:20 -07:00
James Wampler 8dfcb107d0 Adding Feature flag management 2026-04-13 16:04:23 -07:00
James Wampler f2816b6900 Building out navigation in the admin site 2026-04-13 15:27:09 -07:00
James Wampler 334b6cf3e1 Auth tweaks, Audit implementation, Webhooks 2026-04-13 14:17:45 -07:00
James Wampler b9a04df861 Adding Admin API 2026-04-08 14:25:10 -07:00
James Wampler 0ba076b650 Adding Flags API 2026-04-07 15:30:40 -07:00
James Wampler 7b15086fe5 Initial commit, project structure and domain models 2026-04-07 09:14:06 -07:00