diff options
Diffstat (limited to 'icing/icing-search-engine_schema_test.cc')
-rw-r--r-- | icing/icing-search-engine_schema_test.cc | 97 |
1 files changed, 0 insertions, 97 deletions
diff --git a/icing/icing-search-engine_schema_test.cc b/icing/icing-search-engine_schema_test.cc index 9b65e5e..49c024e 100644 --- a/icing/icing-search-engine_schema_test.cc +++ b/icing/icing-search-engine_schema_test.cc @@ -348,103 +348,6 @@ TEST_F(IcingSearchEngineSchemaTest, } } -TEST_F(IcingSearchEngineSchemaTest, SchemaPropertyNotMatch) { - IcingSearchEngine icing(GetDefaultIcingOptions(), GetTestJniCache()); - ASSERT_THAT(icing.Initialize().status(), ProtoIsOk()); - - // 1. Create a schema with an Email type with String property - SchemaProto schema; - SchemaTypeConfigProto* type = schema.add_types(); - type->set_schema_type("Email"); - PropertyConfigProto* property = type->add_properties(); - property->set_property_name("title"); - property->set_data_type(PropertyConfigProto::DataType::STRING); - property->set_cardinality(PropertyConfigProto::Cardinality::OPTIONAL); - - EXPECT_THAT(icing.SetSchema(schema).status(), ProtoIsOk()); - - // 2. Add a document with different property - DocumentProto doc = DocumentBuilder() - .SetKey("emails", "email#1") - .SetSchema("Email") - .AddBooleanProperty("title", true) - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); - doc = DocumentBuilder() - .SetKey("emails", "email#1") - .SetSchema("Email") - .AddDoubleProperty("title", 1) - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); - doc = DocumentBuilder() - .SetKey("emails", "email#1") - .SetSchema("Email") - .AddBytesProperty("title", "attachment bytes") - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); - doc = DocumentBuilder() - .SetKey("emails", "email#1") - .SetSchema("Email") - .AddInt64Property("title", 1) - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); - DocumentProto empty_document = - DocumentBuilder().SetKey("icing", "uri1").SetSchema("email").Build(); - doc = DocumentBuilder() - .SetKey("emails", "email#1") - .SetSchema("Email") - .AddDocumentProperty("title", empty_document) - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); -} - -TEST_F(IcingSearchEngineSchemaTest, SchemaPropertyNotMatchInNestedDoc) { - IcingSearchEngine icing(GetDefaultIcingOptions(), GetTestJniCache()); - ASSERT_THAT(icing.Initialize().status(), ProtoIsOk()); - - // 1. Create a schema with an Email type with a DOCUMENT property - SchemaProto schema; - SchemaTypeConfigProto* type = schema.add_types(); - type->set_schema_type("Email"); - PropertyConfigProto* property = type->add_properties(); - property->set_property_name("nestedDoc"); - property->set_schema_type("NestedDoc"); - property->set_data_type(PropertyConfigProto::DataType::DOCUMENT); - property->set_cardinality(PropertyConfigProto::Cardinality::OPTIONAL); - - // 2. Create a schema with a NestedDoc type with a String property - SchemaTypeConfigProto* nestedDoc = schema.add_types(); - nestedDoc->set_schema_type("NestedDoc"); - PropertyConfigProto* nestedDoc_property = nestedDoc->add_properties(); - nestedDoc_property->set_property_name("nestedProperty"); - nestedDoc_property->set_data_type(PropertyConfigProto::DataType::STRING); - nestedDoc_property->set_cardinality( - PropertyConfigProto::Cardinality::OPTIONAL); - - EXPECT_THAT(icing.SetSchema(schema).status(), ProtoIsOk()); - - // 3. Create a nested document with different property - DocumentProto nested_doc = DocumentBuilder() - .SetKey("namespace", "nestedDoc#1") - .SetSchema("NestedDoc") - .AddBooleanProperty("nestedProperty", true) - .Build(); - - // 4. Add a Email with nested document. - DocumentProto doc = DocumentBuilder() - .SetKey("namespace", "email#1") - .SetSchema("Email") - .AddDocumentProperty("nestedDoc", nested_doc) - .Build(); - EXPECT_THAT(icing.Put(std::move(doc)).status(), - ProtoStatusIs(StatusProto::INVALID_ARGUMENT)); -} - TEST_F(IcingSearchEngineSchemaTest, SetSchemaUnsetVersionIsZero) { IcingSearchEngine icing(GetDefaultIcingOptions(), GetTestJniCache()); ASSERT_THAT(icing.Initialize().status(), ProtoIsOk()); |