parent
c686261d43
commit
7b74eff740
@ -0,0 +1,68 @@ |
||||
stages: |
||||
- test |
||||
- build |
||||
- deploy |
||||
|
||||
variables: |
||||
NODE_VERSION: "20" |
||||
|
||||
.node_template: &node_template |
||||
image: node:${NODE_VERSION}-alpine |
||||
cache: |
||||
key: ${CI_COMMIT_REF_SLUG} |
||||
paths: |
||||
- node_modules/ |
||||
- ~/.cache/ |
||||
before_script: |
||||
- npm install -g bun |
||||
- bun install |
||||
|
||||
test: |
||||
<<: *node_template |
||||
stage: test |
||||
script: |
||||
- bun run lint |
||||
- bun run check |
||||
- bun run test --coverage |
||||
coverage: '/All files\s*\|\s*[\d.]+\s*\|\s*([\d.]+)/' |
||||
artifacts: |
||||
reports: |
||||
coverage_report: |
||||
coverage_format: cobertura |
||||
path: coverage/cobertura-coverage.xml |
||||
paths: |
||||
- coverage/ |
||||
expire_in: 1 week |
||||
only: |
||||
- main |
||||
- merge_requests |
||||
- branches |
||||
|
||||
build: |
||||
<<: *node_template |
||||
stage: build |
||||
script: |
||||
- bun run build |
||||
- bun run build:ldo |
||||
artifacts: |
||||
paths: |
||||
- dist/ |
||||
expire_in: 1 hour |
||||
only: |
||||
- main |
||||
- merge_requests |
||||
|
||||
pages: |
||||
<<: *node_template |
||||
stage: deploy |
||||
script: |
||||
- bun run build |
||||
- bun run build:ldo |
||||
- mkdir public |
||||
- cp -r dist/* public/ |
||||
artifacts: |
||||
paths: |
||||
- public |
||||
expire_in: 30 days |
||||
only: |
||||
- main |
@ -0,0 +1,26 @@ |
||||
export default { |
||||
preset: 'ts-jest/presets/default-esm', |
||||
extensionsToTreatAsEsm: ['.ts', '.tsx'], |
||||
globals: { |
||||
'ts-jest': { |
||||
useESM: true, |
||||
}, |
||||
}, |
||||
testEnvironment: 'jsdom', |
||||
moduleNameMapping: { |
||||
'^@/(.*)$': '<rootDir>/src/$1', |
||||
}, |
||||
setupFilesAfterEnv: ['<rootDir>/src/setupTests.ts'], |
||||
testMatch: [ |
||||
'<rootDir>/src/**/__tests__/**/*.(ts|tsx|js)', |
||||
'<rootDir>/src/**/?(*.)(spec|test).(ts|tsx|js)', |
||||
], |
||||
collectCoverageFrom: [ |
||||
'src/**/*.(ts|tsx)', |
||||
'!src/**/*.d.ts', |
||||
'!src/main.tsx', |
||||
'!src/vite-env.d.ts', |
||||
], |
||||
coverageDirectory: 'coverage', |
||||
coverageReporters: ['text', 'lcov', 'html'], |
||||
}; |
@ -0,0 +1 @@ |
||||
import '@testing-library/jest-dom'; |
Loading…
Reference in new issue