如何编写单元测试以查看属性是否设置为indexed = False?

时间:2015-01-17 13:01:05

标签: python unit-testing google-app-engine google-cloud-datastore app-engine-ndb

如果我有这样的模型:

class Person(ndb.Model):
  name = ndb.StringProperty()
  age = ndb.IntegerProperty(indexed=False)

如何测试age的索引是否设为False?

2 个答案:

答案 0 :(得分:2)

您只需要:

self.assertFalse(Person.age._indexed)

没有任何复杂情况。

答案 1 :(得分:0)

properties = Person._properties
assertEqual(properties["age"], GenericProperty('age', indexed=False))

取决于您的代码发生了什么,在您的assert语句中可能需要有不同的属性。

使用Person._properties查看您应该期待的内容。或者,您可以只解析indexed=False,或者只解析_properties输出中的bool,并使用更简单的断言来提供更具体的测试。