在测试中,我有一个actual
元素列表,其结构类似于:
type MyStruct struct {
Field1 string
Field2 int32
.
. // a long list of other fields
.
}
我想断言actual
包含预期元素列表的元素,但仅考虑Field1
and Field2
,其他字段与测试无关。我想将ContainElements
匹配器与一些“神奇”的自定义匹配器一起使用,就像在这个伪代码中一样:
expected := []MyStruct{{Field1: "value1", Field2: 1} ...{Field1: "value2", Field2: 2}}
Expect(actual).To(ContainElements(expected), <custom matcher>)
我一直在查看WithTransform
[1] 中的匹配器,但我一直无法弄清楚如何在这种情况下使用它。
[1] http://eng.rightscale.com/2015/11/30/composing-gomega-matchers.html