2017-11-08 8 views
8

mocha로 Trails.js 프로젝트의 모델을 테스트하고 싶습니다. 내 모델을 Waterline ORM에로드하려면 trailpack-waterline을 사용합니다.Trails.js에서 워터 라인 모델을 테스트하는 방법

'use strict' 

const assert = require('assert') 

describe('User Model',() => { 
    let User 

    before(() => { 
    assert(global.app.models.User) 
    User = global.app.models.User 
    }) 

    it('should exist',() => { 
    assert(User) 
    }) 
}) 

이 오류없이 실행 : 산책로 Docs 다음

나는 User.test.js가 만들었습니다.

그러나 어떤 방식 으로든 모델을 인스턴스화 할 수 없습니다. 문서 new User({...})의 예를 따르면 새 사용자 개체를 만들어야하지만이 코드는 User is not a constructor이라는 오류를 발생시킵니다. 그리고 워터 라인 Docs의 예제도 User.create({...})을 사용하는 것으로 작동하지 않습니다.

사용자 모델을 인쇄하면 두 개의 methods: [ 'getModelName', 'getTableName' ]으로 구성됩니다.

단위 테스트를 위해 수선 모델을 어떻게 인스턴스화합니까?

답변

0

global.app.models.User은 모델의 정의이며 흘수선 모델이 아니기 때문입니다. 이 하나는 global.app.orm.User에 속합니다. 그 후에는 User.create을 아무런 문제없이 사용할 수 있습니다.