Skip to content

Commit

Permalink
add test case with array object in first level
Browse files Browse the repository at this point in the history
  • Loading branch information
msaipraneeth committed Dec 14, 2023
1 parent b3b2db7 commit 6c33fbb
Showing 1 changed file with 45 additions and 0 deletions.
45 changes: 45 additions & 0 deletions tests/test_utils_build_entities_from_data.py
Original file line number Diff line number Diff line change
Expand Up @@ -67,3 +67,48 @@ def test_single_object_one_level():
EntityPath("country", False, is_attribute=True)
]
)

def test_single_object_one_level_array():

Check failure on line 71 in tests/test_utils_build_entities_from_data.py

View workflow job for this annotation

GitHub Actions / JUnit Test Report

tests/test_utils_build_entities_from_data.py.E302, expected 2 blank lines, found 1

tests/test_utils_build_entities_from_data.py:71:1: E302 expected 2 blank lines, found 1
"""test write to single object"""
test_data = """
{
"name": "sai",
"email": "[email protected]",
"city": [{
"name": "San Francisco",
"country": "United States"
},
{
"name": "New York",
"country": "United States"
}]
}"""
data = json.loads(test_data)
entities = build_entities_from_data(data)
assert len(entities.entities) == 1
for _ in entities.entities:
assert len(_.values) == 3
assert _.values[0:2] == [["sai"], ["[email protected]"]]
assert _.values[2][0].startswith("urn:x-ulid:")
assert len(entities.schema.paths) == 3
assert entities.schema == EntitySchema(
type_uri="",
paths=[
EntityPath("name", False, is_attribute=True),
EntityPath("email", False, is_attribute=True),
EntityPath("city", True, is_attribute=False),
]
)
# Validate sub entities
for _ in entities.sub_entities:
assert len(list(_.entities)) == 2
for _entity in _.entities:
assert len(_entity.values) == 2
assert _.schema == EntitySchema(
type_uri="",
paths=[
EntityPath("name", False, is_attribute=True),
EntityPath("country", False, is_attribute=True)
]
)

Check failure on line 114 in tests/test_utils_build_entities_from_data.py

View workflow job for this annotation

GitHub Actions / JUnit Test Report

tests/test_utils_build_entities_from_data.py.W391, blank line at end of file

tests/test_utils_build_entities_from_data.py:114:1: W391 blank line at end of file

0 comments on commit 6c33fbb

Please sign in to comment.