1

2.0 では、次のようにドメイン クラスをモック テーブルに保存する必要がありますか。

def jdoe = new User(name:"John Doe", role:"user")
def suziq = new User(name:"Suzi Q", role:"admin")
def jsmith = new User(name:"Jane Smith", role:"user")

mockDomain(User, [jdoe, suziq, jsmith])

def test = User.get(1) //correct ?

それとも、 @Mock と @TestFor を使用するだけで十分ですか?

@TestFor(MyController)
@Mock([User,Role])
{...

def jdoe = new User(name:"John Doe", role:"user")
def suziq = new User(name:"Suzi Q", role:"admin")
def jsmith = new User(name:"Jane Smith", role:"user")

def test = User.get(1) //will this work ?
}
4

2 に答える 2

1

ドメイン オブジェクトと mixin の単体テストでフラッシュを使用してください。

@TestFor(MyController)
@Mock([User,Role])
@TestMixin(DomainClassUnitTestMixin)
{...

    def jdoe = new User(name:"John Doe", role:"user").save(flush:true)
    def suziq = new User(name:"Suzi Q", role:"admin").save(flush:true)
    def jsmith = new User(name:"Jane Smith", role:"user").save(flush:true)

    def test = User.get(1) //will this work ?
}
于 2012-11-15T20:54:20.620 に答える
0

での 2 回目の試行@Mockはうまくいくはずです。

于 2012-11-15T13:53:04.593 に答える