일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- ethers websocket
- ethers v6
- erc4337 contract
- 머신러닝기초
- 스마트컨트렉트테스트
- 러스트 기초 학습
- 러스트 기초
- ambiguous function description
- ethers typescript
- 컨트렉트 배포 자동화
- erc4337
- 컨트렉트 동일한 함수이름 호출
- Vue.js
- rust 기초
- 계정추상화
- chainlink 설명
- SBT표준
- git rebase
- 스마트 컨트렉트 함수이름 중복
- Vue
- 체인의정석
- 오블완
- 티스토리챌린지
- ethers type
- 스마트컨트렉트 예약어 함수이름 중복
- multicall
- 러스트기초
- ethers
- vue기초
- 스마트컨트렉트 함수이름 중복 호출
Archives
- Today
- Total
체인의정석
jest.config - mouduleNameMapper @ 경로 인식 에러 해결하기 본문
728x90
반응형
jest를 사용하기 위해서는 jest.config를 잘 설정해 주어야 한다.
경로의 경우 따로 설정을 해주었기 때문에
다음과 같이 mouduleNameMapper를 사용하여야 경로 지정이 인식되게 된다.
다음과 같이 map을 사용하여 이미지나 스타일 같은 경로를 쉽게 인식 시킬 수 있다.
{
"moduleNameMapper": {
"^image![a-zA-Z0-9$_-]+$": "GlobalImageStub",
"^[./a-zA-Z0-9$_-]+\\.png$": "<rootDir>/RelativeImageStub.js",
"module_name_(.*)": "<rootDir>/substituted_module_$1.js",
"assets/(.*)": [
"<rootDir>/images/$1",
"<rootDir>/photos/$1",
"<rootDir>/recipes/$1"
]
}
}
https://jestjs.io/docs/configuration#modulenamemapper-objectstring-string--arraystring
이를 실제로 활용하여 오류를 해결해 보았다.
현재 코드에서는
@lib와 같은 경로를 자주 사용한다.
type.config에 이것이 정의되어 있다.
{
"compilerOptions": {
"resolveJsonModule": true,
"esModuleInterop": true,
"module": "commonjs",
"declaration": true,
"removeComments": true,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"target": "es2019",
"sourceMap": true,
"outDir": "./dist",
"baseUrl": "./",
"incremental": true,
"paths" : {
"@lib/*": ["./lib/*"],
"@test/*": ["./test/*"]
}
},
"include": ["lib", "test", "test/**/**.ts"],
"exclude": ["node_modules", "dist"]
}
ts config 에서 paths를 사용하여 위와 같이 지정해 주어야 경로지정을 해줄 수 있다.
여기에 맞추어서 jest config에서도 다음과 같이 지정을 해주어야 경로지정이 인식되는 것이다.
moduleNameMapper: {
'^@lib/(.*)$': '<rootDir>/lib/$1',
},
를 넣어주었다.
module.exports = {
preset: 'ts-jest',
testEnvironment: 'node',
moduleNameMapper: {
'^@lib/(.*)$': '<rootDir>/lib/$1',
},
};
728x90
반응형
'개발' 카테고리의 다른 글
typescript에서 enum에 string을 인덱스로 썼을 때 발생하는 문제 해결 (0) | 2021.07.22 |
---|---|
package.json의 dependency 살펴보기 (0) | 2021.07.22 |
ts config.json (0) | 2021.07.22 |
Tool 소개) spectacle (0) | 2021.07.22 |
typescript 커스텀 모듈 만들어서 사용하기 (0) | 2021.07.21 |
Comments