- Add GitHub Actions CI workflow with lint, type-check, test, build, and e2e jobs - Configure Jest for unit and integration tests with coverage reporting - Create unit tests for BaseAgent, PlantLineageAgent, and AgentOrchestrator - Add blockchain PlantChain unit tests - Create API integration tests for plants endpoints - Configure Cypress for E2E testing with support files and custom commands - Add E2E tests for home, plant registration, transparency, and vertical farm pages - Set up Prettier for code formatting with configuration - Configure Husky pre-commit hooks with lint-staged - Add commitlint for conventional commit message enforcement - Update package.json with new scripts and dev dependencies This implements Agent 5 (Testing & CI/CD) from the deployment plan.
35 lines
767 B
TypeScript
35 lines
767 B
TypeScript
import { defineConfig } from 'cypress';
|
|
|
|
export default defineConfig({
|
|
e2e: {
|
|
baseUrl: 'http://localhost:3001',
|
|
supportFile: 'cypress/support/e2e.ts',
|
|
specPattern: 'cypress/e2e/**/*.cy.{ts,tsx}',
|
|
viewportWidth: 1280,
|
|
viewportHeight: 720,
|
|
video: true,
|
|
screenshotOnRunFailure: true,
|
|
defaultCommandTimeout: 10000,
|
|
requestTimeout: 10000,
|
|
responseTimeout: 30000,
|
|
retries: {
|
|
runMode: 2,
|
|
openMode: 0,
|
|
},
|
|
setupNodeEvents(on, config) {
|
|
// implement node event listeners here
|
|
on('task', {
|
|
log(message) {
|
|
console.log(message);
|
|
return null;
|
|
},
|
|
});
|
|
},
|
|
},
|
|
component: {
|
|
devServer: {
|
|
framework: 'next',
|
|
bundler: 'webpack',
|
|
},
|
|
},
|
|
});
|