def test_add_datatype_property(self, property_without, property_with_des): woql_object = WOQLClass("Journey") woql_object.add_property("Duration", "dateTime") assert woql_object.to_dict() == property_without woql_object = WOQLClass("Journey") woql_object.add_property( "Duration", "dateTime", label="Journey Duration", description="Journey duration in minutes.", ) assert woql_object.to_dict() == property_with_des
def test_init_int_prop(self): my_id = "my_journey" my_label = "My Journey" my_des = "This is my journey to work" my_prop = {"Duration": {"value": 30}} journey_class = WOQLClass("Journey") journey_class.add_property( "Duration", "integer", label="Journey Duration", description="Journey duration in minutes.", ) woql_obj = WOQLObj(my_id, journey_class, my_label, my_des, obj_property=my_prop) assert woql_obj.id == my_id assert woql_obj.label == my_label assert woql_obj.description == my_des assert woql_obj._type == journey_class assert woql_obj._property == my_prop def test_init_dt_prop(self): my_id = "my_journey" my_label = "My Journey" my_des = "This is my journey to work" my_prop = {"Duration": {"value": datetime("2020-08-08")}} journey_class = WOQLClass("Journey") journey_class.add_property( "Duration", "dateTime", label="Journey Duration", description="Journey duration in minutes.", ) woql_obj = WOQLObj(my_id, journey_class, my_label, my_des, obj_property=my_prop) assert woql_obj.id == my_id assert woql_obj.label == my_label assert woql_obj.description == my_des assert woql_obj._type == journey_class assert woql_obj._property == my_prop
def test_add_class_and_object(docker_url, one_class_obj, one_class_prop, one_object, one_prop_val): db = TerminusDB(docker_url, "test") my_class = WOQLClass( "Journey", label="Bike Journey", description="Bike Journey object that capture each bike joourney.", ) my_class.add_property("Duration", "integer") db.add_class(my_class) assert db.run(WOQLLib().classes()) == one_class_obj assert db.run(WOQLLib().property()) == one_class_prop my_obj = WOQLObj("myobj", my_class) my_obj.add_property("Duration", 75) db.add_object(my_obj) assert db.run(WOQLLib().objects()) == one_object assert db.run(WOQLLib().property_values()) == one_prop_val
def test_init( self, doctype_without, doctype_with_label, doctype_with_des, property_without, property_with_des, ): woql_object = WOQLClass("Station") woql_object_label = WOQLClass("Station", label="Station Object") woql_object_des = WOQLClass("Station", label="Station Object", description="A bike station object.") woql_object_prop = WOQLClass( "Journey", obj_property={"Duration": { "type": "dateTime" }}) woql_object_prop_des = WOQLClass( "Journey", obj_property={ "Duration": { "type": "dateTime", "label": "Journey Duration", "description": "Journey duration in minutes.", } }, ) assert woql_object.to_dict() == doctype_without assert woql_object_label.to_dict() == doctype_with_label assert woql_object_des.to_dict() == doctype_with_des assert woql_object_prop.to_dict() == property_without assert woql_object_prop_des.to_dict() == property_with_des
def test_add_object_property(self, obj_property_without): station_obj = WOQLClass("Station") woql_object = WOQLClass("Journey") woql_object.add_property("start_station", station_obj) assert woql_object.to_dict() == obj_property_without
def test_description(self, doctype_with_des): woql_object = WOQLClass("Station", label="Station Object") assert woql_object.description == "" woql_object.description = "A bike station object." assert woql_object.description == "A bike station object." assert woql_object.to_dict() == doctype_with_des
def test_label(self, doctype_with_label): woql_object = WOQLClass("Station") assert woql_object.label == "" woql_object.label = "Station Object" assert woql_object.label == "Station Object" assert woql_object.to_dict() == doctype_with_label
def test_idgen_quote(self): journey_class = WOQLClass("My Journey") woql_obj = WOQLObj("my journey", journey_class) assert woql_obj.woql_id == "doc:My%20Journey_my%20journey"
def test_idgen(self): journey_class = WOQLClass("Journey") woql_obj = WOQLObj("my_journey", journey_class) assert woql_obj.woql_id == "doc:Journey_my_journey"