게시글
질문&답변
11.3 통합테스트 중 TypeError: model.initiate is not a function
감사합니다 강사님! 질문드리고 이제야 확인했습니다!! 현재 test 파일 제외하고 진행하니 모두 잘 작동하는것을 확인할 수 있었습니다!
- 0
- 2
- 609
질문&답변
11.3 통합테스트 중 TypeError: model.initiate is not a function
예전의 강사님께서 initiate를 init으로 사용하다는 기억이 있어서 인터넷에 찾아보니 init으로 바꿔주면 도움이 될거라는 글을 보고 바꿔봤습니다.index.js에서 코드를 수정했습니다.... const basename = path.basename(__filename); fs .readdirSync(__dirname) // 현재 폴더의 모든 파일을 조회 .filter(file => { // 숨김 파일, index.js, js 확장자가 아닌 파일 필터링 return (file.indexOf('.') !== 0) && (file !== basename) && (file.slice(-3) === '.js'); }) .forEach(file => { // 해당 파일의 모델 불러와서 init const model = require(path.join(__dirname, file)); console.log(file, model.name); db[model.name] = model; model.init(sequelize); }); ...이때 나오는 에러 메세지입니다. PASS services/user.test.js PASS middlewares/index.test.js FAIL routes/auth.test.js ● Test suite failed to run No Sequelize instance passed 22 | console.log(file, model.name); 23 | db[model.name] = model; > 24 | model.init(sequelize); 25 | }); 26 | 27 | Object.keys(db).forEach(modelName => { // associate 호출 at Function.init (node_modules/sequelize/src/model.js:960:13) at init (models/index.js:24:11) at Array.forEach () at Object.forEach (models/index.js:20:4) at Object.require (app.js:8:23) at Object. (routes/auth.test.js:1:30) Test Suites: 1 failed, 3 passed, 4 total Tests: 9 passed, 9 total Snapshots: 0 total Time: 0.733 s, estimated 1 s
- 0
- 2
- 609