add FindPtr for belongs_to
This commit is contained in:
parent
c68711d9a5
commit
590bb1015b
|
@ -165,3 +165,54 @@ func TestBelongsTo_Find(t *testing.T) {
|
||||||
assert.Equal(t, "face1", noses2[0].Face.Name)
|
assert.Equal(t, "face1", noses2[0].Face.Name)
|
||||||
assert.Equal(t, "face2", noses2[1].Face.Name)
|
assert.Equal(t, "face2", noses2[1].Face.Name)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func TestBelongsTo_FindPtr(t *testing.T) {
|
||||||
|
assert.NoError(t, prepareEngine())
|
||||||
|
|
||||||
|
type Face struct {
|
||||||
|
Id int64
|
||||||
|
Name string
|
||||||
|
}
|
||||||
|
|
||||||
|
type Nose struct {
|
||||||
|
Id int64
|
||||||
|
Face *Face `xorm:"belongs_to"`
|
||||||
|
}
|
||||||
|
|
||||||
|
err := testEngine.Sync2(new(Nose), new(Face))
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
var face1 = Face{
|
||||||
|
Name: "face1",
|
||||||
|
}
|
||||||
|
var face2 = Face{
|
||||||
|
Name: "face2",
|
||||||
|
}
|
||||||
|
_, err = testEngine.Insert(&face1, &face2)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
var noses = []Nose{
|
||||||
|
{Face: &face1},
|
||||||
|
{Face: &face2},
|
||||||
|
}
|
||||||
|
_, err = testEngine.Insert(&noses)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
|
||||||
|
var noses1 []Nose
|
||||||
|
err = testEngine.Find(&noses1)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.Equal(t, 2, len(noses1))
|
||||||
|
assert.Equal(t, face1.Id, noses1[0].Face.Id)
|
||||||
|
assert.Equal(t, face2.Id, noses1[1].Face.Id)
|
||||||
|
assert.Equal(t, "", noses1[0].Face.Name)
|
||||||
|
assert.Equal(t, "", noses1[1].Face.Name)
|
||||||
|
|
||||||
|
var noses2 []Nose
|
||||||
|
err = testEngine.Cascade().Find(&noses2)
|
||||||
|
assert.NoError(t, err)
|
||||||
|
assert.Equal(t, 2, len(noses2))
|
||||||
|
assert.Equal(t, face1.Id, noses2[0].Face.Id)
|
||||||
|
assert.Equal(t, face2.Id, noses2[1].Face.Id)
|
||||||
|
assert.Equal(t, "face1", noses2[0].Face.Name)
|
||||||
|
assert.Equal(t, "face2", noses2[1].Face.Name)
|
||||||
|
}
|
||||||
|
|
Loading…
Reference in New Issue