Skip to content

Commit

Permalink
Nits
Browse files Browse the repository at this point in the history
  • Loading branch information
Pedro Mantica committed Mar 25, 2019
1 parent 2a32d48 commit 6b50cd4
Showing 1 changed file with 62 additions and 24 deletions.
86 changes: 62 additions & 24 deletions graphql_compiler/tests/test_schema_generation.py
Expand Up @@ -117,14 +117,22 @@

class GraphqlSchemaGenerationTests(unittest.TestCase):
def test_parsed_vertex(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA]
schema_data = [
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
self.assertTrue(schema_graph.get_element_by_class_name('Entity').is_vertex)

def test_parsed_edge(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, PERSON_SCHEMA_DATA,
LOCATION_SCHEMA_DATA, PERSON_LIVES_IN_EDGE_SCHEMA_DATA]
schema_data = [
BASE_EDGE_SCHEMA_DATA,
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
self.assertTrue(schema_graph.get_element_by_class_name('Person_LivesIn').is_edge)

Expand All @@ -140,38 +148,53 @@ def test_no_superclass(self):
schema_graph.get_inheritance_set(ORIENTDB_BASE_VERTEX_CLASS_NAME))

def test_parsed_superclass_field(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, PERSON_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA]
schema_data = [
BASE_EDGE_SCHEMA_DATA,
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
self.assertEqual({'Person_LivesIn', ORIENTDB_BASE_EDGE_CLASS_NAME},
schema_graph.get_inheritance_set('Person_LivesIn'))

def test_parsed_superclasses_field(self):
entity = ENTITY_SCHEMA_DATA
schema_data = [BASE_VERTEX_SCHEMA_DATA, entity]
schema_data = [
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
self.assertEqual({'Entity', ORIENTDB_BASE_VERTEX_CLASS_NAME},
schema_graph.get_inheritance_set('Entity'))

def test_parse_property(self):
entity = ENTITY_SCHEMA_DATA
schema_data = [BASE_VERTEX_SCHEMA_DATA, entity]
schema_data = [
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
name_property = schema_graph.get_element_by_class_name('Entity').properties['name']
self.assertEqual(name_property.type_id, PROPERTY_TYPE_STRING_ID)

def test_native_orientdb_collection_property(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
PERSON_SCHEMA_DATA]
schema_data = [
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
alias_property = schema_graph.get_element_by_class_name('Person').properties['alias']
self.assertEqual(alias_property.type_id, PROPERTY_TYPE_EMBEDDED_SET_ID)
self.assertEqual(alias_property.qualifier, PROPERTY_TYPE_STRING_ID)
self.assertEqual(alias_property.default, set())

def test_class_collection_property(self):
schema_data = [DATA_POINT_SCHEMA_DATA, EXTERNAL_SOURCE_SCHEMA_DATA]
schema_data = [
DATA_POINT_SCHEMA_DATA,
EXTERNAL_SOURCE_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
friends_property = schema_graph.get_element_by_class_name('DataPoint').properties[
'data_source']
Expand All @@ -180,9 +203,14 @@ def test_class_collection_property(self):
self.assertEqual(friends_property.default, list())

def test_link_property(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, PERSON_SCHEMA_DATA,
LOCATION_SCHEMA_DATA, PERSON_LIVES_IN_EDGE_SCHEMA_DATA]
schema_data = [
BASE_EDGE_SCHEMA_DATA,
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
person_lives_in_edge = schema_graph.get_element_by_class_name('Person_LivesIn')
in_property = person_lives_in_edge.properties['in']
Expand All @@ -193,19 +221,29 @@ def test_link_property(self):
self.assertEqual(out_property.qualifier, 'Person')

def test_parsed_class_fields(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, PERSON_SCHEMA_DATA,
LOCATION_SCHEMA_DATA, PERSON_LIVES_IN_EDGE_SCHEMA_DATA]
schema_data = [
BASE_EDGE_SCHEMA_DATA,
BASE_VERTEX_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema_graph = SchemaGraph(schema_data)
person_lives_in_edge = schema_graph.get_element_by_class_name('Person_LivesIn')
self.assertEqual(PERSON_LIVES_IN_EDGE_SCHEMA_DATA['customFields'],
person_lives_in_edge.class_fields)

def test_type_equivalence_dicts(self):
schema_data = [BASE_VERTEX_SCHEMA_DATA, ENTITY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, PERSON_SCHEMA_DATA, BABY_SCHEMA_DATA,
BASE_EDGE_SCHEMA_DATA, LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA]
schema_data = [
BASE_EDGE_SCHEMA_DATA,
BASE_VERTEX_SCHEMA_DATA,
BABY_SCHEMA_DATA,
ENTITY_SCHEMA_DATA,
LOCATION_SCHEMA_DATA,
PERSON_LIVES_IN_EDGE_SCHEMA_DATA,
PERSON_SCHEMA_DATA
]
schema, type_equivalence_dicts = get_graphql_schema_from_orientdb_schema_data(schema_data)
person, person_baby_union = next(six.iteritems(type_equivalence_dicts))
baby = schema.get_type('Baby')
Expand Down

0 comments on commit 6b50cd4

Please sign in to comment.