Пример #1
0
 def test_set_field_value(self):
     identifier = Identifier(namespace="test", table="test", key=uuid4())
     document = Document(identifier, timestamp=time(), fields=None)
     document.fields = [Field("one", 1), Field("two", 3)]
     document.set_field_value("one", 3)
     document.set_field_value("two", 5)
     assert_that(document.fields,
                 contains_inanyorder(Field("one", 3), Field("two", 5)))
Пример #2
0
 def test_add_field(self):
     identifier = Identifier(namespace="test", table="test", key=uuid4())
     document = Document(identifier, timestamp=time(), fields=None)
     document.fields = [Field("one", 1)]
     document.add_field("two", 2)
     document.add_field("three", 3)
     assert_that(
         document.fields,
         contains_inanyorder(Field("one", 1), Field("two", 2),
                             Field("three", 3)))
Пример #3
0
def _build_document(identifier, timestamp, source):
    if not timestamp:
        raise InvalidSchemaException(
            identifier=identifier,
            message=
            "Could not retrieve '_timestamp' for Elasticsearch document. Please check your mappings."
        )

    fields = []
    for (field_name, field_value) in source.items():
        fields.append(Field(field_name, field_value))

    return Document(identifier, timestamp, fields)
    def test_fields_are_identical(self):
        job_id = uuid4()
        left_fields = [
            Field("name", "john doe"),
            Field("salary", 1900.99),
            Field("married", True),
            Field("job_id", job_id)
        ]

        right_fields = [
            Field("name", "john doe"),
            Field("married", True),
            Field("salary", 1900.99),
            Field("points", 100),
            Field("job_id", str(job_id))
        ]

        assert Field.fields_are_identical(left_fields, right_fields)
        assert Field.fields_are_identical(right_fields, left_fields)
Пример #5
0
 def test_set_fields(self):
     identifier = Identifier(namespace="test", table="test", key=uuid4())
     document = Document(identifier,
                         timestamp=time(),
                         fields=[Field("foo", "bar")])
     assert document.fields == [Field("foo", "bar")]
     document.fields = [Field("one", 1), Field("two", 2)]
     assert_that(document.fields,
                 contains_inanyorder(Field("one", 1), Field("two", 2)))
    def test_fields_are_not_identical(self):

        left_fields = [
            Field("name", "john doe"),
            Field("salary", 1900.99),
            Field("married", True),
            Field("job_id", uuid4())
        ]

        right_fields = [
            Field("name", "john doe"),
            Field("married", True),
            Field("salary", 1900.99),
            Field("job_id", uuid4())
        ]

        assert not Field.field_values_are_identical(left_fields, right_fields)
        assert not Field.field_values_are_identical(right_fields, left_fields)
def build_fields(**kwargs):
    fields = []
    for (name, value) in kwargs.items():
        fields.append(Field(name, value))
    return fields