diff --git a/tests/test_affiliation.py b/tests/test_affiliation.py index 6c7bef617396a738cfa34cba6816578d951b60ec..153e9db31f6ee74da4bb7fd3527638334404957b 100644 --- a/tests/test_affiliation.py +++ b/tests/test_affiliation.py @@ -59,7 +59,7 @@ def setup_function(function): def teardown_function(function): - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY Test*").delete() def test_affiliation_there(): diff --git a/tests/test_authentication.py b/tests/test_authentication.py index c885523a8ac52b2f2d84a55e92c3351a39edae47..88ef80133ddd793f6c9009621b54da5fab593bfc 100644 --- a/tests/test_authentication.py +++ b/tests/test_authentication.py @@ -46,7 +46,7 @@ def setup_function(function): # deactivate anonymous user db.administration.set_server_property("AUTH_OPTIONAL", "FALSE") - d = db.execute_query("FIND Test*") + d = db.execute_query("FIND ENTITY Test*") if len(d) > 0: d.delete() @@ -307,18 +307,18 @@ def test_crud_with_one_time_token(): # CREATE rt = db.RecordType(name="TestRT") rt.insert() - assert rt.id == db.execute_query("FIND TestRT", unique=True).id + assert rt.id == db.execute_query("FIND ENTITY TestRT", unique=True).id # UPDATE - assert db.execute_query("FIND TestRT", unique=True).description is None + assert db.execute_query("FIND ENTITY TestRT", unique=True).description is None rt.description = "new desc" rt.update() assert rt.description == db.execute_query( - "FIND TestRT", unique=True).description + "FIND ENTITY TestRT", unique=True).description # RETRIEVE rt.retrieve() - assert rt.id == db.execute_query("FIND TestRT", unique=True).id + assert rt.id == db.execute_query("FIND ENTITY TestRT", unique=True).id rt.delete() - assert len(db.execute_query("FIND TestRT")) == 0 + assert len(db.execute_query("FIND ENTITY TestRT")) == 0 diff --git a/tests/test_boolean.py b/tests/test_boolean.py index eb9b359a9d2a62dc4ce761b6461415f30774af85..ef8f317ce5f75a264bdb33d101c2b7e18510b1e5 100644 --- a/tests/test_boolean.py +++ b/tests/test_boolean.py @@ -27,134 +27,86 @@ """ import caosdb as h -# @UnresolvedImport -from nose.tools import assert_true, assert_equal, assert_false from caosdb.exceptions import TransactionError from pytest import raises -def test_property(): +def teardown_module(): try: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass - p = h.Property( - name="SimpleBooleanProperty", - datatype=h.BOOLEAN).insert() - assert_true(p.is_valid()) - assert_equal(p.datatype, h.BOOLEAN) - - p2 = h.Property(id=p.id).retrieve() - assert_true(p2.is_valid) - assert_equal(p2.datatype, h.BOOLEAN) - finally: - try: - p.delete() - except BaseException: - pass + h.execute_query("FIND ENTITY").delete() + except BaseException: + pass + + +def setup_function(function): + teardown_module() + + +def test_property(): + p = h.Property( + name="SimpleBooleanProperty", + datatype=h.BOOLEAN).insert() + assert p.is_valid() + assert p.datatype == h.BOOLEAN + + p2 = h.Property(id=p.id).retrieve() + assert p2.is_valid + assert p2.datatype == h.BOOLEAN def test_recordType(): - try: - p = h.Property( - name="SimpleBooleanProperty", - datatype=h.BOOLEAN).insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() - assert_true(rt.is_valid()) - assert_equal( - rt.get_property("SimpleBooleanProperty").datatype, - h.BOOLEAN) - - rt2 = h.RecordType(id=rt.id).retrieve() - assert_true(rt2.is_valid()) - assert_equal( - rt2.get_property("SimpleBooleanProperty").datatype, - h.BOOLEAN) - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleBooleanProperty", + datatype=h.BOOLEAN).insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() + assert rt.is_valid() + assert rt.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN + + rt2 = h.RecordType(id=rt.id).retrieve() + assert rt2.is_valid() + assert rt2.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN def test_record(): - try: - p = h.Property( - name="SimpleBooleanProperty", - datatype=h.BOOLEAN).insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() - assert_true(rt.is_valid()) - - rec1 = h.Record(name="SimpleRecord1").add_parent( - rt).add_property(p, value="TRUE").insert() - assert_true(rec1.is_valid()) - assert_equal( - rec1.get_property("SimpleBooleanProperty").datatype, - h.BOOLEAN) - assert_equal(rec1.get_property("SimpleBooleanProperty").value, True) - - rec1c = h.Record(id=rec1.id).retrieve() - assert_true(rec1c.is_valid()) - assert_equal(rec1c.get_property( - "SimpleBooleanProperty").datatype, h.BOOLEAN) - assert_equal(rec1c.get_property( - "SimpleBooleanProperty").value, True) - - rec2 = h.Record(name="SimpleRecord2").add_parent( - rt).add_property(p, value=True).insert() - assert_true(rec2.is_valid()) - assert_equal( - rec2.get_property("SimpleBooleanProperty").datatype, - h.BOOLEAN) - assert_equal(rec2.get_property("SimpleBooleanProperty").value, True) - - rec2c = h.Record(id=rec2.id).retrieve() - assert_true(rec2c.is_valid()) - assert_equal(rec2c.get_property( - "SimpleBooleanProperty").datatype, h.BOOLEAN) - assert_equal(rec2c.get_property( - "SimpleBooleanProperty").value, True) - - rec3 = h.Record( - name="SimpleRecord3").add_parent(rt).add_property( - p.name, value="BLABLA") - with raises(TransactionError): - rec3.insert() - - assert_false(rec3.is_valid()) - assert_equal( - rec3.get_property( - "SimpleBooleanProperty").get_errors()[0].description, - "Cannot parse value to boolean (either 'true' or 'false', " - "case insensitive).") - - finally: - try: - rec3.delete() - except BaseException: - pass - try: - rec2.delete() - except BaseException: - pass - try: - rec1.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleBooleanProperty", + datatype=h.BOOLEAN).insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() + assert rt.is_valid() + + rec1 = h.Record(name="SimpleRecord1").add_parent( + rt).add_property(p, value="TRUE").insert() + assert rec1.is_valid() + assert rec1.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN + assert rec1.get_property("SimpleBooleanProperty").value is True + + rec1c = h.Record(id=rec1.id).retrieve() + assert rec1c.is_valid() + assert rec1c.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN + assert rec1c.get_property("SimpleBooleanProperty").value is True + + rec2 = h.Record(name="SimpleRecord2").add_parent( + rt).add_property(p, value=True).insert() + assert rec2.is_valid() + assert rec2.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN + assert rec2.get_property("SimpleBooleanProperty").value is True + + rec2c = h.Record(id=rec2.id).retrieve() + assert rec2c.is_valid() + assert rec2c.get_property("SimpleBooleanProperty").datatype == h.BOOLEAN + assert rec2c.get_property("SimpleBooleanProperty").value is True + + rec3 = h.Record( + name="SimpleRecord3").add_parent(rt).add_property( + p.name, value="BLABLA") + with raises(TransactionError): + rec3.insert() + + assert not rec3.is_valid() + assert rec3.get_property("SimpleBooleanProperty").get_errors()[ + 0].description, ("Cannot parse value to boolean " + "(either 'true' or 'false' == " "case insensitive).") diff --git a/tests/test_datatype.py b/tests/test_datatype.py index 46c52108e9bb1aed097c109ea30f675f6efc20a2..a536d50ccbeb0e620c0f5c0d6046f770a15e116d 100644 --- a/tests/test_datatype.py +++ b/tests/test_datatype.py @@ -31,16 +31,13 @@ from pytest import raises def setup_function(function): try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY").delete() except BaseException: pass def teardown_function(function): - try: - db.execute_query("FIND Test*").delete() - except BaseException: - pass + setup_function(function) def test_override_with_non_existing_ref(): @@ -83,7 +80,7 @@ def test_reference_datatype_sequencial(): assert p.is_valid() is True - dt = db.execute_query("FIND TestProp", unique=True).datatype + dt = db.execute_query("FIND ENTITY TestProp", unique=True).datatype assert dt == "TestRT" rt2 = db.RecordType( diff --git a/tests/test_datatype_inheritance.py b/tests/test_datatype_inheritance.py index 119f72869612f636346da098630ff8715d888a44..4ab7311ac56baebadd24fb05e967c29fd769c281 100644 --- a/tests/test_datatype_inheritance.py +++ b/tests/test_datatype_inheritance.py @@ -25,7 +25,6 @@ from caosdb import Container, Property, RecordType, Record, execute_query import caosdb import caosdb as db from caosdb.connection.connection import get_connection -from nose.tools import assert_is_not_none, assert_true, assert_equal from caosdb.exceptions import TransactionError from pytest import raises @@ -37,11 +36,7 @@ def setup_function(function): def teardown_function(function): try: - db.execute_query("FIND test_*").delete() - except BaseException: - pass - try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY").delete() except BaseException: pass @@ -49,179 +44,134 @@ def teardown_function(function): def test_default_datatype_for_recordtypes(): rt1 = db.RecordType(name="TestRT1").insert() rt2 = db.RecordType(name="TestRT2").add_property(name="TestRT1").insert() - p = db.execute_query("FIND TestRT2", unique=True).get_properties()[0] - assert_equal(p.id, rt1.id) - assert_equal(p.name, rt1.name) - assert_equal(p.datatype, rt1.name) + p = db.execute_query("FIND ENTITY TestRT2", unique=True).get_properties()[0] + assert p.id == rt1.id + assert p.name == rt1.name + assert p.datatype == rt1.name p = rt2.get_properties()[0] - assert_equal(p.id, rt1.id) - assert_equal(p.name, rt1.name) - assert_equal(p.datatype, rt1.name) + assert p.id == rt1.id + assert p.name == rt1.name + assert p.datatype == rt1.name def test_datatype_inheritance(): insert = '<Insert><Property id="-1" name="test_property" description="bla" datatype="Text"/><RecordType name="test_rt" description="bla"> <Property id="-1" importance="obligatory" /></RecordType></Insert>' - print(insert) con = get_connection() http_response = con.insert( entity_uri_segment=["Entity"], body=insert) c = Container._response_to_entities(http_response) - print(c) for e in c: - assert_true(e.is_valid()) - assert_is_not_none(e.id) - assert_true(int(e.id) >= 100) - - c.delete() + assert e.is_valid() + assert e.id is not None + assert int(e.id) >= 100 def test_datatype_overriding(): - try: - p = Property( - name="DatatypeOverridingDoubleProperty", - description="DoubleDesc", - datatype="DOUBLE").insert() - assert_true(p.is_valid()) - - rt = RecordType( - name="DatatypeOverridingRT").add_property( - p, datatype="TEXT") - rt.insert() - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal( - "DatatypeOverridingDoubleProperty", - rt.get_properties()[0].name) - assert_equal("DoubleDesc", rt.get_properties()[0].description) - assert_equal( - str("TEXT").lower(), - rt.get_properties()[0].datatype.lower()) - - # retrieve again: - rt = execute_query("FIND DatatypeOverridingRT", unique=True) - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal( - "DatatypeOverridingDoubleProperty", - rt.get_properties()[0].name) - assert_equal("DoubleDesc", rt.get_properties()[0].description) - assert_equal( - str("TEXT").lower(), - rt.get_properties()[0].datatype.lower()) - finally: - try: - execute_query("FIND DatatypeOverriding*").delete() - except BaseException: - pass + p = Property( + name="DatatypeOverridingDoubleProperty", + description="DoubleDesc", + datatype="DOUBLE").insert() + assert p.is_valid() + + rt = RecordType( + name="DatatypeOverridingRT").add_property( + p, datatype="TEXT") + rt.insert() + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DatatypeOverridingDoubleProperty" == rt.get_properties()[0].name + assert "DoubleDesc" == rt.get_properties()[0].description + assert str("TEXT").lower() == rt.get_properties()[0].datatype.lower() + + # retrieve again: + rt = execute_query("FIND ENTITY DatatypeOverridingRT", unique=True) + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DatatypeOverridingDoubleProperty" == rt.get_properties()[0].name + assert "DoubleDesc" == rt.get_properties()[0].description + assert str("TEXT").lower() == rt.get_properties()[0].datatype.lower() def test_datatype_overriding_update(): - try: - p = Property(name="DoubleProperty", datatype="DOUBLE").insert() - assert_true(p.is_valid()) - - rt = RecordType( - name="DatatypeOverridingRT").add_property( - p, datatype="TEXT") - rt.insert() - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal("DoubleProperty", rt.get_properties()[0].name) - assert_equal( - str("TEXT").lower(), - rt.get_properties()[0].datatype.lower()) - - # retrieve again: - rt = execute_query("FIND DatatypeOverridingRT", unique=True) - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal("DoubleProperty", rt.get_properties()[0].name) - assert_equal( - str("TEXT").lower(), - rt.get_properties()[0].datatype.lower()) - - with raises(TransactionError) as te: - p.datatype = "INT" - p.update() - - assert "Unknown data type." == te.value.errors[0].msg - - p.datatype = "INTEGER" + p = Property(name="DoubleProperty", datatype="DOUBLE").insert() + assert p.is_valid() + + rt = RecordType( + name="DatatypeOverridingRT").add_property( + p, datatype="TEXT") + rt.insert() + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DoubleProperty" == rt.get_properties()[0].name + assert str("TEXT").lower() == rt.get_properties()[0].datatype.lower() + + # retrieve again: + rt = execute_query("FIND ENTITY DatatypeOverridingRT", unique=True) + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DoubleProperty" == rt.get_properties()[0].name + assert str("TEXT").lower() == rt.get_properties()[0].datatype.lower() + + with raises(TransactionError) as te: + p.datatype = "INT" p.update() - assert_true(p.is_valid()) - assert_equal(str("INTEGER").lower(), p.datatype.lower()) - - # retrieve again: - p = execute_query("FIND DoubleProperty", unique=True) - assert_true(p.is_valid()) - assert_equal(str("INTEGER").lower(), p.datatype.lower()) - - # retrieve rt again: - rt = execute_query("FIND DatatypeOverridingRT", unique=True) - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal("DoubleProperty", rt.get_properties()[0].name) - # overriding still ok? - assert_equal( - str("TEXT").lower(), - rt.get_properties()[0].datatype.lower()) - - rt.get_properties()[0].datatype = "DATETIME" - rt.update() - assert_true(rt.is_valid()) - assert_is_not_none(rt.get_properties()) - assert_equal(1, len(rt.get_properties())) - assert_equal("DoubleProperty", rt.get_properties()[0].name) - assert_equal( - str("DATETIME").lower(), - rt.get_properties()[0].datatype.lower()) - - finally: - try: - if len(execute_query("FIND DatatypeOverridingRT")) > 0: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + + assert "Unknown data type." == te.value.errors[0].msg + + p.datatype = "INTEGER" + p.update() + assert p.is_valid() + assert str("INTEGER").lower() == p.datatype.lower() + + # retrieve again: + p = execute_query("FIND ENTITY DoubleProperty", unique=True) + assert p.is_valid() + assert str("INTEGER").lower() == p.datatype.lower() + + # retrieve rt again: + rt = execute_query("FIND ENTITY DatatypeOverridingRT", unique=True) + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DoubleProperty" == rt.get_properties()[0].name + # overriding still ok? + assert str("TEXT").lower() == rt.get_properties()[0].datatype.lower() + + rt.get_properties()[0].datatype = "DATETIME" + rt.update() + assert rt.is_valid() + assert rt.get_properties() is not None + assert 1 == len(rt.get_properties()) + assert "DoubleProperty" == rt.get_properties()[0].name + assert str("DATETIME").lower() == rt.get_properties()[0].datatype.lower() def test_recordtype_to_record(): - try: - rt = RecordType(name="SimpleTextRecordType") - rt.datatype = "TEXT" - rt.insert() - assert_true(rt.is_valid()) - assert_is_not_none(rt.datatype) - assert_equal(str("TEXT").lower(), rt.datatype.lower()) - - rt = RecordType(id=rt.id).retrieve() - assert_true(rt.is_valid()) - assert_is_not_none(rt.datatype) - assert_equal(str("TEXT").lower(), rt.datatype.lower()) - - rec = Record().add_parent(name="SimpleTextRecordType").insert() - assert_true(rec.is_valid()) - # TODO - # assert_is_not_none(rec.datatype) - # assert_equal(str("TEXT").lower(),rec.datatype.lower()) - - finally: - try: - rt = execute_query("FIND SimpleTextRecordType").delete() - except BaseException: - pass + rt = RecordType(name="SimpleTextRecordType") + rt.datatype = "TEXT" + rt.insert() + assert rt.is_valid() + assert rt.datatype is not None + assert str("TEXT").lower() == rt.datatype.lower() + + rt = RecordType(id=rt.id).retrieve() + assert rt.is_valid() + assert rt.datatype is not None + assert str("TEXT").lower() == rt.datatype.lower() + + rec = Record().add_parent(name="SimpleTextRecordType").insert() + assert rec.is_valid() + # TODO + # assert rec.datatype is not None + # assert str("TEXT").lower() == rec.datatype.lower() def test_concrete_property(): @@ -230,11 +180,11 @@ def test_concrete_property(): p = Property( name="DataTypeTestDoubleProperty", datatype=datatype.upper()).insert() - assert_true(p.is_valid()) - assert_equal(p.datatype.upper(), datatype.upper()) + assert p.is_valid() + assert p.datatype.upper() == datatype.upper() p2 = Property(id=p.id).retrieve() - assert_equal(p.datatype, p2.datatype) + assert p.datatype == p2.datatype return p finally: @@ -242,98 +192,34 @@ def test_concrete_property(): p.delete() except BaseException: pass - try: - p_double = test("DOUBLE") - p_datetime = test("DATETIME") - p_integer = test("INTEGER") - p_timespan = test("TIMESPAN") - p_text = test("TEXT") - p_file = test("FILE") - p_reference = test("REFERENCE") - - finally: - try: - p_reference.delete() - except BaseException: - pass - try: - p_file.delete() - except BaseException: - pass - try: - p_text.delete() - except BaseException: - pass - try: - p_timespan.delete() - except BaseException: - pass - try: - p_integer.delete() - except BaseException: - pass - try: - p_datetime.delete() - except BaseException: - pass - try: - p_double.delete() - except BaseException: - pass + p_double = test("DOUBLE") + p_datetime = test("DATETIME") + p_integer = test("INTEGER") + p_timespan = test("TIMESPAN") + p_text = test("TEXT") + p_file = test("FILE") + p_reference = test("REFERENCE") def test_reference_with_null_value(): - try: - try: - execute_query("FIND RT2").delete() - except BaseException: - pass - try: - execute_query("FIND RT1").delete() - except BaseException: - pass - RT1 = RecordType(name="RT1").insert() - assert_true(RT1.is_valid()) + RT1 = RecordType(name="RT1").insert() + assert RT1.is_valid() - RT2 = RecordType(name="RT2").add_property(RT1).insert() - assert_true(RT2.is_valid()) - assert_equal(RT2.get_property("RT1").datatype, "RT1") + RT2 = RecordType(name="RT2").add_property(RT1).insert() + assert RT2.is_valid() + assert RT2.get_property("RT1").datatype == "RT1" - RT2c = RecordType(name="RT2").retrieve() - assert_true(RT2c.is_valid()) - assert_equal(RT2c.get_property("RT1").datatype, "RT1") - - finally: - try: - RT2.delete() - except BaseException: - pass - try: - RT1.delete() - except BaseException: - pass + RT2c = RecordType(name="RT2").retrieve() + assert RT2c.is_valid() + assert RT2c.get_property("RT1").datatype == "RT1" def test_duplicate_properties(): - try: - p = Property( - name="SimpleTestProperty", - datatype=caosdb.DOUBLE).insert() - assert_true(p.is_valid()) - - rt = RecordType( - name="SimpleTestRecordType").add_property( - p, - datatype=caosdb.TEXT).add_property( - p, - datatype=caosdb.INTEGER).insert() - assert_true(rt.is_valid()) - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = Property( + name="SimpleTestProperty", + datatype=caosdb.DOUBLE).insert() + assert p.is_valid() + + rt = RecordType( + name="SimpleTestRecordType").add_property(p, datatype=caosdb.TEXT).add_property(p, datatype=caosdb.INTEGER).insert() + assert rt.is_valid() diff --git a/tests/test_datetime.py b/tests/test_datetime.py index b6254d5d5930e2cce0f659a6013c9e499406e59d..3925370a8ca7c8a3bee1da8810c0d15e655cdd25 100644 --- a/tests/test_datetime.py +++ b/tests/test_datetime.py @@ -27,13 +27,19 @@ """ import pytest -from nose.tools import assert_true, assert_false # @UnresolvedImport import caosdb as h ''' some helpful functions ''' old_stored = None +def setup_function(function): + try: + h.execute_query("FIND ENTITY").delete() + except BaseException: + pass + + def update_rec(rec, datetime): global old_stored if old_stored == datetime: @@ -45,7 +51,7 @@ def update_rec(rec, datetime): def store(rec, datetime): update_rec(rec, datetime) - assert_true(rec.is_valid()) + assert rec.is_valid() return h.Record(id=rec.id).retrieve().get_property( "SimpleDateProperty").value @@ -54,22 +60,22 @@ def set_up_rec(): global old_stored old_stored = None p = h.Property(name="SimpleDateProperty", datatype="DATETIME").insert() - assert_true(p.is_valid()) + assert p.is_valid() rt = h.RecordType( name="SimpleRecordType").add_property( p, importance="OBLIGATORY").insert() - assert_true(rt.is_valid()) + assert rt.is_valid() rec = h.Record(name="SimpleRecord").add_parent(rt).add_property(p).insert() - assert_true(rec.is_valid()) + assert rec.is_valid() return rec def query_assertion(rec, stored, op, queried): update_rec(rec, stored) - assert_true(rec.is_valid()) + assert rec.is_valid() q = h.execute_query( "FIND RECORD SimpleRecord WHICH HAS A SimpleDateProperty" + @@ -82,1855 +88,1501 @@ def query_assertion(rec, stored, op, queried): def test_utcdatetime_storage(): - try: - rec = set_up_rec() - - utcs = [ - "2015-12-24T20:15:30", - "2015-12-24T20:15:30.123", - "-9999-01-01T00:00:00", - "-9999-01-01T00:00:00.0", - "9999-12-31T23:59:59", - "9999-12-31T23:59:59.999999999", - "0001-01-01T00:00:00", - "0001-01-01T00:00:00.0", - "-0001-12-31T23:59:59", - "-0001-12-31T23:59:59.999999"] - for d in utcs: - assert_true(d in store(rec, d)) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + utcs = [ + "2015-12-24T20:15:30", + "2015-12-24T20:15:30.123", + "-9999-01-01T00:00:00", + "-9999-01-01T00:00:00.0", + "9999-12-31T23:59:59", + "9999-12-31T23:59:59.999999999", + "0001-01-01T00:00:00", + "0001-01-01T00:00:00.0", + "-0001-12-31T23:59:59", + "-0001-12-31T23:59:59.999999"] + for d in utcs: + assert d in store(rec, d) def test_date_storage(): - try: - rec = set_up_rec() - - dates = [ - "2015-12-24", - "2015", - "2015-12", - "9999-12-31", - "9999-12", - "9999", - "-9999-01-01", - "-9999-01", - "-9999", - "0001-01-01", - "0001-01", - "0001", - "-0001-12-31", - "-0001-12", - "-0001"] - for d in dates: - print(d) - assert_true(d in store(rec, d)) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + dates = [ + "2015-12-24", + "2015", + "2015-12", + "9999-12-31", + "9999-12", + "9999", + "-9999-01-01", + "-9999-01", + "-9999", + "0001-01-01", + "0001-01", + "0001", + "-0001-12-31", + "-0001-12", + "-0001"] + for d in dates: + assert d in store(rec, d) @pytest.mark.slow def test_in_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_true(query_assertion(rec, d, " IN ", d)) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05")) - assert_true(query_assertion(rec, d, " IN ", "2015-05")) - assert_true(query_assertion(rec, d, " IN ", "2015")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:15:30.124")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:15:31")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:16")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05")) - assert_false(query_assertion(rec, d, " IN ", "2015-04")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05")) - assert_false(query_assertion(rec, d, " IN ", "2014-05")) - assert_false(query_assertion(rec, d, " IN ", "2014")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_true(query_assertion(rec, d, " IN ", d)) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05T20")) - assert_true(query_assertion(rec, d, " IN ", "2015-05-05")) - assert_true(query_assertion(rec, d, " IN ", "2015-05")) - assert_true(query_assertion(rec, d, " IN ", "2015")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:15:30.124")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:15:31")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T20:16")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-05T21")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-04")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-05")) - assert_false(query_assertion(rec, d, " IN ", "2015-04")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05T20")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-05")) - assert_false(query_assertion(rec, d, " IN ", "2014-05")) - assert_false(query_assertion(rec, d, " IN ", "2014")) - - # Date YYYY-MM-dd - d = "2015-01-01" - assert_true(query_assertion(rec, d, " IN ", d)) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-01-01T20")) - assert_true(query_assertion(rec, d, " IN ", "2015-01-01")) - assert_true(query_assertion(rec, d, " IN ", "2015-01")) - assert_true(query_assertion(rec, d, " IN ", "2015")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-02-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-02-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-02-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-02-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-02-01")) - assert_false(query_assertion(rec, d, " IN ", "2015-02")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2016-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2016-01-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2016-01-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2016-01-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2016-01-01")) - assert_false(query_assertion(rec, d, " IN ", "2016-01")) - assert_false(query_assertion(rec, d, " IN ", "2016")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2014-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2014-01-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2014-01-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2014-01-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2014-01-01")) - assert_false(query_assertion(rec, d, " IN ", "2014-01")) - assert_false(query_assertion(rec, d, " IN ", "2014")) - - # Date YYYY-MM - d = "2015-05" - assert_true(query_assertion(rec, d, " IN ", d)) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01")) - assert_true(query_assertion(rec, d, " IN ", "2015")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-06-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-06-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-06-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-06-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-06-01")) - assert_false(query_assertion(rec, d, " IN ", "2015-06")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-04-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-04-01")) - assert_false(query_assertion(rec, d, " IN ", "2015-04")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2016-05-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01")) - assert_false(query_assertion(rec, d, " IN ", "2016-05")) - assert_false(query_assertion(rec, d, " IN ", "2016")) - - # Date YYYY - d = "2015" - assert_true(query_assertion(rec, d, " IN ", d)) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2015-05-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2015-05-01")) - assert_false(query_assertion(rec, d, " IN ", "2015-05")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2016-05-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2016-05-01")) - assert_false(query_assertion(rec, d, " IN ", "2016-05")) - assert_false(query_assertion(rec, d, " IN ", "2016")) - assert_false( - query_assertion( - rec, - d, - " IN ", - "2014-05-01T20:15:30.123")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-01T20:15:30")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-01T20:15")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-01T20")) - assert_false(query_assertion(rec, d, " IN ", "2014-05-01")) - assert_false(query_assertion(rec, d, " IN ", "2014-05")) - assert_false(query_assertion(rec, d, " IN ", "2014")) - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert query_assertion(rec, d, " IN ", d) + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, " IN ", "2015-05-05T20:15:30") + assert query_assertion(rec, d, " IN ", "2015-05-05T20:15") + assert query_assertion(rec, d, " IN ", "2015-05-05T20") + assert query_assertion(rec, d, " IN ", "2015-05-05") + assert query_assertion(rec, d, " IN ", "2015-05") + assert query_assertion(rec, d, " IN ", "2015") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20") + assert not query_assertion(rec, d, " IN ", "2015-05-04") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20") + assert not query_assertion(rec, d, " IN ", "2015-04-05") + assert not query_assertion(rec, d, " IN ", "2015-04") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20") + assert not query_assertion(rec, d, " IN ", "2014-05-05") + assert not query_assertion(rec, d, " IN ", "2014-05") + assert not query_assertion(rec, d, " IN ", "2014") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert query_assertion(rec, d, " IN ", d) + assert query_assertion(rec, d, " IN ", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, " IN ", "2015-05-05T20:15:30") + assert query_assertion(rec, d, " IN ", "2015-05-05T20:15") + assert query_assertion(rec, d, " IN ", "2015-05-05T20") + assert query_assertion(rec, d, " IN ", "2015-05-05") + assert query_assertion(rec, d, " IN ", "2015-05") + assert query_assertion(rec, d, " IN ", "2015") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, " IN ", "2015-05-05T20:16") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21:15") + assert not query_assertion(rec, d, " IN ", "2015-05-05T21") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20:15") + assert not query_assertion(rec, d, " IN ", "2015-05-04T20") + assert not query_assertion(rec, d, " IN ", "2015-05-04") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20:15") + assert not query_assertion(rec, d, " IN ", "2015-04-05T20") + assert not query_assertion(rec, d, " IN ", "2015-04-05") + assert not query_assertion(rec, d, " IN ", "2015-04") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20:15") + assert not query_assertion(rec, d, " IN ", "2014-05-05T20") + assert not query_assertion(rec, d, " IN ", "2014-05-05") + assert not query_assertion(rec, d, " IN ", "2014-05") + assert not query_assertion(rec, d, " IN ", "2014") + + # Date YYYY-MM-dd + d = "2015-01-01" + assert query_assertion(rec, d, " IN ", d) + assert not query_assertion(rec, d, " IN ", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-01-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-01-01T20") + assert query_assertion(rec, d, " IN ", "2015-01-01") + assert query_assertion(rec, d, " IN ", "2015-01") + assert query_assertion(rec, d, " IN ", "2015") + assert not query_assertion(rec, d, " IN ", "2015-02-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-02-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-02-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-02-01T20") + assert not query_assertion(rec, d, " IN ", "2015-02-01") + assert not query_assertion(rec, d, " IN ", "2015-02") + assert not query_assertion(rec, d, " IN ", "2016-01-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2016-01-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2016-01-01T20:15") + assert not query_assertion(rec, d, " IN ", "2016-01-01T20") + assert not query_assertion(rec, d, " IN ", "2016-01-01") + assert not query_assertion(rec, d, " IN ", "2016-01") + assert not query_assertion(rec, d, " IN ", "2016") + assert not query_assertion(rec, d, " IN ", "2014-01-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2014-01-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2014-01-01T20:15") + assert not query_assertion(rec, d, " IN ", "2014-01-01T20") + assert not query_assertion(rec, d, " IN ", "2014-01-01") + assert not query_assertion(rec, d, " IN ", "2014-01") + assert not query_assertion(rec, d, " IN ", "2014") + + # Date YYYY-MM + d = "2015-05" + assert query_assertion(rec, d, " IN ", d) + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20") + assert not query_assertion(rec, d, " IN ", "2015-05-01") + assert query_assertion(rec, d, " IN ", "2015") + assert not query_assertion(rec, d, " IN ", "2015-06-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-06-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-06-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-06-01T20") + assert not query_assertion(rec, d, " IN ", "2015-06-01") + assert not query_assertion(rec, d, " IN ", "2015-06") + assert not query_assertion(rec, d, " IN ", "2015-04-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-04-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-04-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-04-01T20") + assert not query_assertion(rec, d, " IN ", "2015-04-01") + assert not query_assertion(rec, d, " IN ", "2015-04") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20") + assert not query_assertion(rec, d, " IN ", "2016-05-01") + assert not query_assertion(rec, d, " IN ", "2016-05") + assert not query_assertion(rec, d, " IN ", "2016") + + # Date YYYY + d = "2015" + assert query_assertion(rec, d, " IN ", d) + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20:15") + assert not query_assertion(rec, d, " IN ", "2015-05-01T20") + assert not query_assertion(rec, d, " IN ", "2015-05-01") + assert not query_assertion(rec, d, " IN ", "2015-05") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20:15") + assert not query_assertion(rec, d, " IN ", "2016-05-01T20") + assert not query_assertion(rec, d, " IN ", "2016-05-01") + assert not query_assertion(rec, d, " IN ", "2016-05") + assert not query_assertion(rec, d, " IN ", "2016") + assert not query_assertion(rec, d, " IN ", "2014-05-01T20:15:30.123") + assert not query_assertion(rec, d, " IN ", "2014-05-01T20:15:30") + assert not query_assertion(rec, d, " IN ", "2014-05-01T20:15") + assert not query_assertion(rec, d, " IN ", "2014-05-01T20") + assert not query_assertion(rec, d, " IN ", "2014-05-01") + assert not query_assertion(rec, d, " IN ", "2014-05") + assert not query_assertion(rec, d, " IN ", "2014") @pytest.mark.slow def test_not_in_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_false(query_assertion(rec, d, " NOT IN ", d)) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.123")) - assert_false( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05T20")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.124")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_false(query_assertion(rec, d, " NOT IN ", d)) - assert_false( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.123")) - assert_false( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05T20")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.124")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016")) - - # Date YYYY-MM-dd - d = "2015-05-05" - assert_false(query_assertion(rec, d, " NOT IN ", d)) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014")) - - # Date YYYY-MM - d = "2015-05" - assert_false(query_assertion(rec, d, " NOT IN ", d)) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-06")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-04")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014")) - - # Date YYYY - d = "2015" - assert_false(query_assertion(rec, d, " NOT IN ", d)) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2015-05")) - assert_false(query_assertion(rec, d, " NOT IN ", "2015")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2016")) - assert_true( - query_assertion( - rec, - d, - " NOT IN ", - "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05T20")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014-05")) - assert_true(query_assertion(rec, d, " NOT IN ", "2014")) - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert not query_assertion(rec, d, " NOT IN ", d) + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05") + assert not query_assertion(rec, d, " NOT IN ", "2015-05") + assert not query_assertion(rec, d, " NOT IN ", "2015") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05") + assert query_assertion(rec, d, " NOT IN ", "2015-06") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05") + assert query_assertion(rec, d, " NOT IN ", "2016-05") + assert query_assertion(rec, d, " NOT IN ", "2016") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert not query_assertion(rec, d, " NOT IN ", d) + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05T20") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05") + assert not query_assertion(rec, d, " NOT IN ", "2015-05") + assert not query_assertion(rec, d, " NOT IN ", "2015") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:31") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:16") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T21:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06T20") + assert query_assertion(rec, d, " NOT IN ", "2015-05-06") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05") + assert query_assertion(rec, d, " NOT IN ", "2015-06") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05") + assert query_assertion(rec, d, " NOT IN ", "2016-05") + assert query_assertion(rec, d, " NOT IN ", "2016") + + # Date YYYY-MM-dd + d = "2015-05-05" + assert not query_assertion(rec, d, " NOT IN ", d) + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20") + assert not query_assertion(rec, d, " NOT IN ", "2015-05-05") + assert not query_assertion(rec, d, " NOT IN ", "2015-05") + assert not query_assertion(rec, d, " NOT IN ", "2015") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05") + assert query_assertion(rec, d, " NOT IN ", "2015-06") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05") + assert query_assertion(rec, d, " NOT IN ", "2015-04") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05") + assert query_assertion(rec, d, " NOT IN ", "2016-05") + assert query_assertion(rec, d, " NOT IN ", "2016") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05") + assert query_assertion(rec, d, " NOT IN ", "2014-05") + assert query_assertion(rec, d, " NOT IN ", "2014") + + # Date YYYY-MM + d = "2015-05" + assert not query_assertion(rec, d, " NOT IN ", d) + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05") + assert not query_assertion(rec, d, " NOT IN ", "2015-05") + assert not query_assertion(rec, d, " NOT IN ", "2015") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-06-05") + assert query_assertion(rec, d, " NOT IN ", "2015-06") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-04-05") + assert query_assertion(rec, d, " NOT IN ", "2015-04") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05") + assert query_assertion(rec, d, " NOT IN ", "2016-05") + assert query_assertion(rec, d, " NOT IN ", "2016") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05") + assert query_assertion(rec, d, " NOT IN ", "2014-05") + assert query_assertion(rec, d, " NOT IN ", "2014") + + # Date YYYY + d = "2015" + assert not query_assertion(rec, d, " NOT IN ", d) + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2015-05-05") + assert query_assertion(rec, d, " NOT IN ", "2015-05") + assert not query_assertion(rec, d, " NOT IN ", "2015") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2016-05-05") + assert query_assertion(rec, d, " NOT IN ", "2016-05") + assert query_assertion(rec, d, " NOT IN ", "2016") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15:30") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20:15") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05T20") + assert query_assertion(rec, d, " NOT IN ", "2014-05-05") + assert query_assertion(rec, d, " NOT IN ", "2014-05") + assert query_assertion(rec, d, " NOT IN ", "2014") @pytest.mark.slow def test_eq_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_true(query_assertion(rec, d, "=", d)) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "=", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "=", "2015-05-05")) - assert_false(query_assertion(rec, d, "=", "2015-05")) - assert_false(query_assertion(rec, d, "=", "2015")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_true(query_assertion(rec, d, "=", d)) - assert_true(query_assertion(rec, d, "=", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "=", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "=", "2015-05-05")) - assert_false(query_assertion(rec, d, "=", "2015-05")) - assert_false(query_assertion(rec, d, "=", "2015")) - - # Date YYYY-MM-dd - d = "2015-01-01" - assert_true(query_assertion(rec, d, "=", d)) - assert_false(query_assertion(rec, d, "=", "2015-01-02")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "=", "2015-01")) - assert_false(query_assertion(rec, d, "=", "2015")) - - # Date YYYY-MM - d = "2015-01" - assert_true(query_assertion(rec, d, "=", d)) - assert_false(query_assertion(rec, d, "=", "2015-02")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "=", "2015-01-01")) - assert_false(query_assertion(rec, d, "=", "2015")) - - # Date YYYY - d = "2015" - assert_true(query_assertion(rec, d, "=", d)) - assert_false(query_assertion(rec, d, "=", "2016")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "=", "2015-01-01")) - assert_false(query_assertion(rec, d, "=", "2015-01")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert query_assertion(rec, d, "=", d) + assert not query_assertion(rec, d, "=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "=", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "=", "2015-05-05T20:15") + assert not query_assertion(rec, d, "=", "2015-05-05T20") + assert not query_assertion(rec, d, "=", "2015-05-05") + assert not query_assertion(rec, d, "=", "2015-05") + assert not query_assertion(rec, d, "=", "2015") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert query_assertion(rec, d, "=", d) + assert query_assertion(rec, d, "=", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "=", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "=", "2015-05-05T20:15") + assert not query_assertion(rec, d, "=", "2015-05-05T20") + assert not query_assertion(rec, d, "=", "2015-05-05") + assert not query_assertion(rec, d, "=", "2015-05") + assert not query_assertion(rec, d, "=", "2015") + + # Date YYYY-MM-dd + d = "2015-01-01" + assert query_assertion(rec, d, "=", d) + assert not query_assertion(rec, d, "=", "2015-01-02") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "=", "2015-01-01T20") + assert not query_assertion(rec, d, "=", "2015-01") + assert not query_assertion(rec, d, "=", "2015") + + # Date YYYY-MM + d = "2015-01" + assert query_assertion(rec, d, "=", d) + assert not query_assertion(rec, d, "=", "2015-02") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "=", "2015-01-01T20") + assert not query_assertion(rec, d, "=", "2015-01-01") + assert not query_assertion(rec, d, "=", "2015") + + # Date YYYY + d = "2015" + assert query_assertion(rec, d, "=", d) + assert not query_assertion(rec, d, "=", "2016") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "=", "2015-01-01T20") + assert not query_assertion(rec, d, "=", "2015-01-01") + assert not query_assertion(rec, d, "=", "2015-01") @pytest.mark.slow def test_neq_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_false(query_assertion(rec, d, "!=", d)) - assert_true(query_assertion(rec, d, "!=", "2015-05-05T20:15:31")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05")) - assert_false(query_assertion(rec, d, "!=", "2015-05")) - assert_false(query_assertion(rec, d, "!=", "2015")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_false(query_assertion(rec, d, "!=", d)) - assert_true(query_assertion(rec, d, "!=", "2015-05-05T20:15:30.124")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "!=", "2015-05-05")) - assert_false(query_assertion(rec, d, "!=", "2015-05")) - assert_false(query_assertion(rec, d, "!=", "2015")) - - # Date YYYY-MM-dd - d = "2015-01-01" - assert_false(query_assertion(rec, d, "!=", d)) - assert_true(query_assertion(rec, d, "!=", "2015-01-02")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "!=", "2015-01")) - assert_false(query_assertion(rec, d, "!=", "2015")) - - # Date YYYY-MM - d = "2015-01" - assert_false(query_assertion(rec, d, "!=", d)) - assert_true(query_assertion(rec, d, "!=", "2015-02")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01")) - assert_false(query_assertion(rec, d, "!=", "2015")) - - # Date YYYY - d = "2015" - assert_false(query_assertion(rec, d, "!=", d)) - assert_true(query_assertion(rec, d, "!=", "2016")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15:30")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20:15")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01T20")) - assert_false(query_assertion(rec, d, "!=", "2015-01-01")) - assert_false(query_assertion(rec, d, "!=", "2015-01")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert not query_assertion(rec, d, "!=", d) + assert query_assertion(rec, d, "!=", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15") + assert not query_assertion(rec, d, "!=", "2015-05-05T20") + assert not query_assertion(rec, d, "!=", "2015-05-05") + assert not query_assertion(rec, d, "!=", "2015-05") + assert not query_assertion(rec, d, "!=", "2015") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert not query_assertion(rec, d, "!=", d) + assert query_assertion(rec, d, "!=", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "!=", "2015-05-05T20:15") + assert not query_assertion(rec, d, "!=", "2015-05-05T20") + assert not query_assertion(rec, d, "!=", "2015-05-05") + assert not query_assertion(rec, d, "!=", "2015-05") + assert not query_assertion(rec, d, "!=", "2015") + + # Date YYYY-MM-dd + d = "2015-01-01" + assert not query_assertion(rec, d, "!=", d) + assert query_assertion(rec, d, "!=", "2015-01-02") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "!=", "2015-01-01T20") + assert not query_assertion(rec, d, "!=", "2015-01") + assert not query_assertion(rec, d, "!=", "2015") + + # Date YYYY-MM + d = "2015-01" + assert not query_assertion(rec, d, "!=", d) + assert query_assertion(rec, d, "!=", "2015-02") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "!=", "2015-01-01T20") + assert not query_assertion(rec, d, "!=", "2015-01-01") + assert not query_assertion(rec, d, "!=", "2015") + + # Date YYYY + d = "2015" + assert not query_assertion(rec, d, "!=", d) + assert query_assertion(rec, d, "!=", "2016") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30.123") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15:30") + assert not query_assertion(rec, d, "!=", "2015-01-01T20:15") + assert not query_assertion(rec, d, "!=", "2015-01-01T20") + assert not query_assertion(rec, d, "!=", "2015-01-01") + assert not query_assertion(rec, d, "!=", "2015-01") @pytest.mark.slow def test_smaller_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_false(query_assertion(rec, d, "<", d)) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-05")) - assert_false(query_assertion(rec, d, "<", "2015-05")) - assert_false(query_assertion(rec, d, "<", "2015")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.122")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.124")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:29.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:29")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:15:31")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-04")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<", "2015-05-06")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-04-05")) - assert_false(query_assertion(rec, d, "<", "2015-04")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<", "2015-06-05")) - assert_true(query_assertion(rec, d, "<", "2015-06")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2014-05-05")) - assert_false(query_assertion(rec, d, "<", "2014-05")) - assert_false(query_assertion(rec, d, "<", "2014")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<", "2016-05-05")) - assert_true(query_assertion(rec, d, "<", "2016-05")) - assert_true(query_assertion(rec, d, "<", "2016")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_false(query_assertion(rec, d, "<", d)) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-05")) - assert_false(query_assertion(rec, d, "<", "2015-05")) - assert_false(query_assertion(rec, d, "<", "2015")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.122")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:15:30.124")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:29.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:29")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:15:31")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:14")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T20:16")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T19")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21:15")) - assert_true(query_assertion(rec, d, "<", "2015-05-05T21")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-04")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<", "2015-05-06")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-04-05")) - assert_false(query_assertion(rec, d, "<", "2015-04")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<", "2015-06-05")) - assert_true(query_assertion(rec, d, "<", "2015-06")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2014-05-05")) - assert_false(query_assertion(rec, d, "<", "2014-05")) - assert_false(query_assertion(rec, d, "<", "2014")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<", "2016-05-05")) - assert_true(query_assertion(rec, d, "<", "2016-05")) - assert_true(query_assertion(rec, d, "<", "2016")) - - # Date YYYY-MM-dd - d = "2015-05-05" - assert_false(query_assertion(rec, d, "<", d)) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-05")) - assert_false(query_assertion(rec, d, "<", "2015-05")) - assert_false(query_assertion(rec, d, "<", "2015")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-04")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<", "2015-05-06")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-04-05")) - assert_false(query_assertion(rec, d, "<", "2015-04")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<", "2015-06-05")) - assert_true(query_assertion(rec, d, "<", "2015-06")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2014-05-05")) - assert_false(query_assertion(rec, d, "<", "2014-05")) - assert_false(query_assertion(rec, d, "<", "2014")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<", "2016-05-05")) - assert_true(query_assertion(rec, d, "<", "2016-05")) - assert_true(query_assertion(rec, d, "<", "2016")) - - # Date YYYY-MM - d = "2015-05" - assert_false(query_assertion(rec, d, "<", d)) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-05")) - assert_false(query_assertion(rec, d, "<", "2015-05")) - assert_false(query_assertion(rec, d, "<", "2015")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-04-05")) - assert_false(query_assertion(rec, d, "<", "2015-04")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<", "2015-06-05")) - assert_true(query_assertion(rec, d, "<", "2015-06")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2014-05-05")) - assert_false(query_assertion(rec, d, "<", "2014-05")) - assert_false(query_assertion(rec, d, "<", "2014")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<", "2016-05-05")) - assert_true(query_assertion(rec, d, "<", "2016-05")) - assert_true(query_assertion(rec, d, "<", "2016")) - - # Date YYYY - d = "2015" - assert_false(query_assertion(rec, d, "<", d)) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2015-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2015-05-05")) - assert_false(query_assertion(rec, d, "<", "2015-05")) - assert_false(query_assertion(rec, d, "<", "2015")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<", "2014-05-05")) - assert_false(query_assertion(rec, d, "<", "2014-05")) - assert_false(query_assertion(rec, d, "<", "2014")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<", "2016-05-05")) - assert_true(query_assertion(rec, d, "<", "2016-05")) - assert_true(query_assertion(rec, d, "<", "2016")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert not query_assertion(rec, d, "<", d) + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15") + assert not query_assertion(rec, d, "<", "2015-05-05T20") + assert not query_assertion(rec, d, "<", "2015-05-05") + assert not query_assertion(rec, d, "<", "2015-05") + assert not query_assertion(rec, d, "<", "2015") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.122") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:29.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:29") + assert query_assertion(rec, d, "<", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, "<", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14") + assert query_assertion(rec, d, "<", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, "<", "2015-05-05T20:16:30") + assert query_assertion(rec, d, "<", "2015-05-05T20:16") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15") + assert not query_assertion(rec, d, "<", "2015-05-05T19") + assert query_assertion(rec, d, "<", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, "<", "2015-05-05T21:15:30") + assert query_assertion(rec, d, "<", "2015-05-05T21:15") + assert query_assertion(rec, d, "<", "2015-05-05T21") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<", "2015-05-04T20") + assert not query_assertion(rec, d, "<", "2015-05-04") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<", "2015-05-06T20:15") + assert query_assertion(rec, d, "<", "2015-05-06T20") + assert query_assertion(rec, d, "<", "2015-05-06") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<", "2015-04-05T20") + assert not query_assertion(rec, d, "<", "2015-04-05") + assert not query_assertion(rec, d, "<", "2015-04") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<", "2015-06-05T20:15") + assert query_assertion(rec, d, "<", "2015-06-05T20") + assert query_assertion(rec, d, "<", "2015-06-05") + assert query_assertion(rec, d, "<", "2015-06") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<", "2014-05-05T20") + assert not query_assertion(rec, d, "<", "2014-05-05") + assert not query_assertion(rec, d, "<", "2014-05") + assert not query_assertion(rec, d, "<", "2014") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<", "2016-05-05T20:15") + assert query_assertion(rec, d, "<", "2016-05-05T20") + assert query_assertion(rec, d, "<", "2016-05-05") + assert query_assertion(rec, d, "<", "2016-05") + assert query_assertion(rec, d, "<", "2016") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert not query_assertion(rec, d, "<", d) + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15") + assert not query_assertion(rec, d, "<", "2015-05-05T20") + assert not query_assertion(rec, d, "<", "2015-05-05") + assert not query_assertion(rec, d, "<", "2015-05") + assert not query_assertion(rec, d, "<", "2015") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.122") + assert query_assertion(rec, d, "<", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:29.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:29") + assert query_assertion(rec, d, "<", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, "<", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:14") + assert query_assertion(rec, d, "<", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, "<", "2015-05-05T20:16:30") + assert query_assertion(rec, d, "<", "2015-05-05T20:16") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T19:15") + assert not query_assertion(rec, d, "<", "2015-05-05T19") + assert query_assertion(rec, d, "<", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, "<", "2015-05-05T21:15:30") + assert query_assertion(rec, d, "<", "2015-05-05T21:15") + assert query_assertion(rec, d, "<", "2015-05-05T21") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<", "2015-05-04T20") + assert not query_assertion(rec, d, "<", "2015-05-04") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<", "2015-05-06T20:15") + assert query_assertion(rec, d, "<", "2015-05-06T20") + assert query_assertion(rec, d, "<", "2015-05-06") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<", "2015-04-05T20") + assert not query_assertion(rec, d, "<", "2015-04-05") + assert not query_assertion(rec, d, "<", "2015-04") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<", "2015-06-05T20:15") + assert query_assertion(rec, d, "<", "2015-06-05T20") + assert query_assertion(rec, d, "<", "2015-06-05") + assert query_assertion(rec, d, "<", "2015-06") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<", "2014-05-05T20") + assert not query_assertion(rec, d, "<", "2014-05-05") + assert not query_assertion(rec, d, "<", "2014-05") + assert not query_assertion(rec, d, "<", "2014") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<", "2016-05-05T20:15") + assert query_assertion(rec, d, "<", "2016-05-05T20") + assert query_assertion(rec, d, "<", "2016-05-05") + assert query_assertion(rec, d, "<", "2016-05") + assert query_assertion(rec, d, "<", "2016") + + # Date YYYY-MM-dd + d = "2015-05-05" + assert not query_assertion(rec, d, "<", d) + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15") + assert not query_assertion(rec, d, "<", "2015-05-05T20") + assert not query_assertion(rec, d, "<", "2015-05-05") + assert not query_assertion(rec, d, "<", "2015-05") + assert not query_assertion(rec, d, "<", "2015") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<", "2015-05-04T20") + assert not query_assertion(rec, d, "<", "2015-05-04") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<", "2015-05-06T20:15") + assert query_assertion(rec, d, "<", "2015-05-06T20") + assert query_assertion(rec, d, "<", "2015-05-06") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<", "2015-04-05T20") + assert not query_assertion(rec, d, "<", "2015-04-05") + assert not query_assertion(rec, d, "<", "2015-04") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<", "2015-06-05T20:15") + assert query_assertion(rec, d, "<", "2015-06-05T20") + assert query_assertion(rec, d, "<", "2015-06-05") + assert query_assertion(rec, d, "<", "2015-06") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<", "2014-05-05T20") + assert not query_assertion(rec, d, "<", "2014-05-05") + assert not query_assertion(rec, d, "<", "2014-05") + assert not query_assertion(rec, d, "<", "2014") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<", "2016-05-05T20:15") + assert query_assertion(rec, d, "<", "2016-05-05T20") + assert query_assertion(rec, d, "<", "2016-05-05") + assert query_assertion(rec, d, "<", "2016-05") + assert query_assertion(rec, d, "<", "2016") + + # Date YYYY-MM + d = "2015-05" + assert not query_assertion(rec, d, "<", d) + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15") + assert not query_assertion(rec, d, "<", "2015-05-05T20") + assert not query_assertion(rec, d, "<", "2015-05-05") + assert not query_assertion(rec, d, "<", "2015-05") + assert not query_assertion(rec, d, "<", "2015") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<", "2015-04-05T20") + assert not query_assertion(rec, d, "<", "2015-04-05") + assert not query_assertion(rec, d, "<", "2015-04") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<", "2015-06-05T20:15") + assert query_assertion(rec, d, "<", "2015-06-05T20") + assert query_assertion(rec, d, "<", "2015-06-05") + assert query_assertion(rec, d, "<", "2015-06") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<", "2014-05-05T20") + assert not query_assertion(rec, d, "<", "2014-05-05") + assert not query_assertion(rec, d, "<", "2014-05") + assert not query_assertion(rec, d, "<", "2014") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<", "2016-05-05T20:15") + assert query_assertion(rec, d, "<", "2016-05-05T20") + assert query_assertion(rec, d, "<", "2016-05-05") + assert query_assertion(rec, d, "<", "2016-05") + assert query_assertion(rec, d, "<", "2016") + + # Date YYYY + d = "2015" + assert not query_assertion(rec, d, "<", d) + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2015-05-05T20:15") + assert not query_assertion(rec, d, "<", "2015-05-05T20") + assert not query_assertion(rec, d, "<", "2015-05-05") + assert not query_assertion(rec, d, "<", "2015-05") + assert not query_assertion(rec, d, "<", "2015") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<", "2014-05-05T20") + assert not query_assertion(rec, d, "<", "2014-05-05") + assert not query_assertion(rec, d, "<", "2014-05") + assert not query_assertion(rec, d, "<", "2014") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<", "2016-05-05T20:15") + assert query_assertion(rec, d, "<", "2016-05-05T20") + assert query_assertion(rec, d, "<", "2016-05-05") + assert query_assertion(rec, d, "<", "2016-05") + assert query_assertion(rec, d, "<", "2016") @pytest.mark.slow def test_greater_operator(): - try: - rec = set_up_rec() - # query with > - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_false(query_assertion(rec, d, ">", d)) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-05")) - assert_false(query_assertion(rec, d, ">", "2015-05")) - assert_false(query_assertion(rec, d, ">", "2015")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.122")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.124")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:15:29.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:15:29")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:31")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">", "2015-05-04")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-06")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">", "2015-04-05")) - assert_true(query_assertion(rec, d, ">", "2015-04")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-06-05")) - assert_false(query_assertion(rec, d, ">", "2015-06")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">", "2014-05-05")) - assert_true(query_assertion(rec, d, ">", "2014-05")) - assert_true(query_assertion(rec, d, ">", "2014")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2016-05-05")) - assert_false(query_assertion(rec, d, ">", "2016-05")) - assert_false(query_assertion(rec, d, ">", "2016")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_false(query_assertion(rec, d, ">", d)) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-05")) - assert_false(query_assertion(rec, d, ">", "2015-05")) - assert_false(query_assertion(rec, d, ">", "2015")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:15:30.122")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.124")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:15:29.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:15:29")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:31")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T20:14")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:16")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19:15")) - assert_true(query_assertion(rec, d, ">", "2015-05-05T19")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T21")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">", "2015-05-04")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-06")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">", "2015-04-05")) - assert_true(query_assertion(rec, d, ">", "2015-04")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-06-05")) - assert_false(query_assertion(rec, d, ">", "2015-06")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">", "2014-05-05")) - assert_true(query_assertion(rec, d, ">", "2014-05")) - assert_true(query_assertion(rec, d, ">", "2014")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2016-05-05")) - assert_false(query_assertion(rec, d, ">", "2016-05")) - assert_false(query_assertion(rec, d, ">", "2016")) - - # Date YYYY-MM-dd - d = "2015-05-05" - assert_false(query_assertion(rec, d, ">", d)) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-05")) - assert_false(query_assertion(rec, d, ">", "2015-05")) - assert_false(query_assertion(rec, d, ">", "2015")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-06")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">", "2015-05-04")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-06-05")) - assert_false(query_assertion(rec, d, ">", "2015-06")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">", "2015-04-05")) - assert_true(query_assertion(rec, d, ">", "2015-04")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2016-05-05")) - assert_false(query_assertion(rec, d, ">", "2016-05")) - assert_false(query_assertion(rec, d, ">", "2016")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">", "2014-05-05")) - assert_true(query_assertion(rec, d, ">", "2014-05")) - assert_true(query_assertion(rec, d, ">", "2014")) - - # Date YYYY-MM - d = "2015-05" - assert_false(query_assertion(rec, d, ">", d)) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-05")) - assert_false(query_assertion(rec, d, ">", "2015-05")) - assert_false(query_assertion(rec, d, ">", "2015")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-06-05")) - assert_false(query_assertion(rec, d, ">", "2015-06")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">", "2015-04-05")) - assert_true(query_assertion(rec, d, ">", "2015-04")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2016-05-05")) - assert_false(query_assertion(rec, d, ">", "2016-05")) - assert_false(query_assertion(rec, d, ">", "2016")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">", "2014-05-05")) - assert_true(query_assertion(rec, d, ">", "2014-05")) - assert_true(query_assertion(rec, d, ">", "2014")) - - # Date YYYY - d = "2015" - assert_false(query_assertion(rec, d, ">", d)) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2015-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2015-05-05")) - assert_false(query_assertion(rec, d, ">", "2015-05")) - assert_false(query_assertion(rec, d, ">", "2015")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">", "2016-05-05")) - assert_false(query_assertion(rec, d, ">", "2016-05")) - assert_false(query_assertion(rec, d, ">", "2016")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">", "2014-05-05")) - assert_true(query_assertion(rec, d, ">", "2014-05")) - assert_true(query_assertion(rec, d, ">", "2014")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + # query with > + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert not query_assertion(rec, d, ">", d) + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15") + assert not query_assertion(rec, d, ">", "2015-05-05T20") + assert not query_assertion(rec, d, ">", "2015-05-05") + assert not query_assertion(rec, d, ">", "2015-05") + assert not query_assertion(rec, d, ">", "2015") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.122") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, ">", "2015-05-05T20:15:29.123") + assert query_assertion(rec, d, ">", "2015-05-05T20:15:29") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:31") + assert query_assertion(rec, d, ">", "2015-05-05T20:14:30.123") + assert query_assertion(rec, d, ">", "2015-05-05T20:14:30") + assert query_assertion(rec, d, ">", "2015-05-05T20:14") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16") + assert query_assertion(rec, d, ">", "2015-05-05T19:15:30.123") + assert query_assertion(rec, d, ">", "2015-05-05T19:15:30") + assert query_assertion(rec, d, ">", "2015-05-05T19:15") + assert query_assertion(rec, d, ">", "2015-05-05T19") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15") + assert not query_assertion(rec, d, ">", "2015-05-05T21") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">", "2015-05-04T20:15") + assert query_assertion(rec, d, ">", "2015-05-04T20") + assert query_assertion(rec, d, ">", "2015-05-04") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">", "2015-05-06T20") + assert not query_assertion(rec, d, ">", "2015-05-06") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">", "2015-04-05T20:15") + assert query_assertion(rec, d, ">", "2015-04-05T20") + assert query_assertion(rec, d, ">", "2015-04-05") + assert query_assertion(rec, d, ">", "2015-04") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">", "2015-06-05T20") + assert not query_assertion(rec, d, ">", "2015-06-05") + assert not query_assertion(rec, d, ">", "2015-06") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">", "2014-05-05T20:15") + assert query_assertion(rec, d, ">", "2014-05-05T20") + assert query_assertion(rec, d, ">", "2014-05-05") + assert query_assertion(rec, d, ">", "2014-05") + assert query_assertion(rec, d, ">", "2014") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">", "2016-05-05T20") + assert not query_assertion(rec, d, ">", "2016-05-05") + assert not query_assertion(rec, d, ">", "2016-05") + assert not query_assertion(rec, d, ">", "2016") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert not query_assertion(rec, d, ">", d) + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15") + assert not query_assertion(rec, d, ">", "2015-05-05T20") + assert not query_assertion(rec, d, ">", "2015-05-05") + assert not query_assertion(rec, d, ">", "2015-05") + assert not query_assertion(rec, d, ">", "2015") + assert query_assertion(rec, d, ">", "2015-05-05T20:15:30.122") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, ">", "2015-05-05T20:15:29.123") + assert query_assertion(rec, d, ">", "2015-05-05T20:15:29") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:31") + assert query_assertion(rec, d, ">", "2015-05-05T20:14:30.123") + assert query_assertion(rec, d, ">", "2015-05-05T20:14:30") + assert query_assertion(rec, d, ">", "2015-05-05T20:14") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:16") + assert query_assertion(rec, d, ">", "2015-05-05T19:15:30.123") + assert query_assertion(rec, d, ">", "2015-05-05T19:15:30") + assert query_assertion(rec, d, ">", "2015-05-05T19:15") + assert query_assertion(rec, d, ">", "2015-05-05T19") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T21:15") + assert not query_assertion(rec, d, ">", "2015-05-05T21") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">", "2015-05-04T20:15") + assert query_assertion(rec, d, ">", "2015-05-04T20") + assert query_assertion(rec, d, ">", "2015-05-04") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">", "2015-05-06T20") + assert not query_assertion(rec, d, ">", "2015-05-06") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">", "2015-04-05T20:15") + assert query_assertion(rec, d, ">", "2015-04-05T20") + assert query_assertion(rec, d, ">", "2015-04-05") + assert query_assertion(rec, d, ">", "2015-04") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">", "2015-06-05T20") + assert not query_assertion(rec, d, ">", "2015-06-05") + assert not query_assertion(rec, d, ">", "2015-06") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">", "2014-05-05T20:15") + assert query_assertion(rec, d, ">", "2014-05-05T20") + assert query_assertion(rec, d, ">", "2014-05-05") + assert query_assertion(rec, d, ">", "2014-05") + assert query_assertion(rec, d, ">", "2014") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">", "2016-05-05T20") + assert not query_assertion(rec, d, ">", "2016-05-05") + assert not query_assertion(rec, d, ">", "2016-05") + assert not query_assertion(rec, d, ">", "2016") + + # Date YYYY-MM-dd + d = "2015-05-05" + assert not query_assertion(rec, d, ">", d) + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15") + assert not query_assertion(rec, d, ">", "2015-05-05T20") + assert not query_assertion(rec, d, ">", "2015-05-05") + assert not query_assertion(rec, d, ">", "2015-05") + assert not query_assertion(rec, d, ">", "2015") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">", "2015-05-06T20") + assert not query_assertion(rec, d, ">", "2015-05-06") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">", "2015-05-04T20:15") + assert query_assertion(rec, d, ">", "2015-05-04T20") + assert query_assertion(rec, d, ">", "2015-05-04") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">", "2015-06-05T20") + assert not query_assertion(rec, d, ">", "2015-06-05") + assert not query_assertion(rec, d, ">", "2015-06") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">", "2015-04-05T20:15") + assert query_assertion(rec, d, ">", "2015-04-05T20") + assert query_assertion(rec, d, ">", "2015-04-05") + assert query_assertion(rec, d, ">", "2015-04") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">", "2016-05-05T20") + assert not query_assertion(rec, d, ">", "2016-05-05") + assert not query_assertion(rec, d, ">", "2016-05") + assert not query_assertion(rec, d, ">", "2016") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">", "2014-05-05T20:15") + assert query_assertion(rec, d, ">", "2014-05-05T20") + assert query_assertion(rec, d, ">", "2014-05-05") + assert query_assertion(rec, d, ">", "2014-05") + assert query_assertion(rec, d, ">", "2014") + + # Date YYYY-MM + d = "2015-05" + assert not query_assertion(rec, d, ">", d) + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15") + assert not query_assertion(rec, d, ">", "2015-05-05T20") + assert not query_assertion(rec, d, ">", "2015-05-05") + assert not query_assertion(rec, d, ">", "2015-05") + assert not query_assertion(rec, d, ">", "2015") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">", "2015-06-05T20") + assert not query_assertion(rec, d, ">", "2015-06-05") + assert not query_assertion(rec, d, ">", "2015-06") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">", "2015-04-05T20:15") + assert query_assertion(rec, d, ">", "2015-04-05T20") + assert query_assertion(rec, d, ">", "2015-04-05") + assert query_assertion(rec, d, ">", "2015-04") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">", "2016-05-05T20") + assert not query_assertion(rec, d, ">", "2016-05-05") + assert not query_assertion(rec, d, ">", "2016-05") + assert not query_assertion(rec, d, ">", "2016") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">", "2014-05-05T20:15") + assert query_assertion(rec, d, ">", "2014-05-05T20") + assert query_assertion(rec, d, ">", "2014-05-05") + assert query_assertion(rec, d, ">", "2014-05") + assert query_assertion(rec, d, ">", "2014") + + # Date YYYY + d = "2015" + assert not query_assertion(rec, d, ">", d) + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2015-05-05T20:15") + assert not query_assertion(rec, d, ">", "2015-05-05T20") + assert not query_assertion(rec, d, ">", "2015-05-05") + assert not query_assertion(rec, d, ">", "2015-05") + assert not query_assertion(rec, d, ">", "2015") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">", "2016-05-05T20") + assert not query_assertion(rec, d, ">", "2016-05-05") + assert not query_assertion(rec, d, ">", "2016-05") + assert not query_assertion(rec, d, ">", "2016") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">", "2014-05-05T20:15") + assert query_assertion(rec, d, ">", "2014-05-05T20") + assert query_assertion(rec, d, ">", "2014-05-05") + assert query_assertion(rec, d, ">", "2014-05") + assert query_assertion(rec, d, ">", "2014") @pytest.mark.slow def test_greater_equal_operator(): - try: - rec = set_up_rec() - # query with > Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_true(query_assertion(rec, d, ">=", d)) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05")) - assert_true(query_assertion(rec, d, ">=", "2015-05")) - assert_true(query_assertion(rec, d, ">=", "2015")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.122")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.124")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:29.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:29")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:15:31")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05")) - assert_true(query_assertion(rec, d, ">=", "2015-04")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05")) - assert_false(query_assertion(rec, d, ">=", "2015-06")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05")) - assert_true(query_assertion(rec, d, ">=", "2014-05")) - assert_true(query_assertion(rec, d, ">=", "2014")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05")) - assert_false(query_assertion(rec, d, ">=", "2016-05")) - assert_false(query_assertion(rec, d, ">=", "2016")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_true(query_assertion(rec, d, ">=", d)) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05")) - assert_true(query_assertion(rec, d, ">=", "2015-05")) - assert_true(query_assertion(rec, d, ">=", "2015")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.122")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.124")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:29.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:29")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:15:31.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:15:31")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:14")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T20:16")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T19")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21:15")) - assert_false(query_assertion(rec, d, ">=", "2015-05-05T21")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05")) - assert_true(query_assertion(rec, d, ">=", "2015-04")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05")) - assert_false(query_assertion(rec, d, ">=", "2015-06")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05")) - assert_true(query_assertion(rec, d, ">=", "2014-05")) - assert_true(query_assertion(rec, d, ">=", "2014")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05")) - assert_false(query_assertion(rec, d, ">=", "2016-05")) - assert_false(query_assertion(rec, d, ">=", "2016")) - - # Date YYYY-MM-dd - d = "2015-05-05" - assert_true(query_assertion(rec, d, ">=", d)) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05")) - assert_true(query_assertion(rec, d, ">=", "2015-05")) - assert_true(query_assertion(rec, d, ">=", "2015")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06T20")) - assert_false(query_assertion(rec, d, ">=", "2015-05-06")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-04")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05")) - assert_false(query_assertion(rec, d, ">=", "2015-06")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05")) - assert_true(query_assertion(rec, d, ">=", "2015-04")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05")) - assert_false(query_assertion(rec, d, ">=", "2016-05")) - assert_false(query_assertion(rec, d, ">=", "2016")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05")) - assert_true(query_assertion(rec, d, ">=", "2014-05")) - assert_true(query_assertion(rec, d, ">=", "2014")) - - # Date YYYY-MM - d = "2015-05" - assert_true(query_assertion(rec, d, ">=", d)) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05")) - assert_true(query_assertion(rec, d, ">=", "2015-05")) - assert_true(query_assertion(rec, d, ">=", "2015")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05T20")) - assert_false(query_assertion(rec, d, ">=", "2015-06-05")) - assert_false(query_assertion(rec, d, ">=", "2015-06")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-04-05")) - assert_true(query_assertion(rec, d, ">=", "2015-04")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05")) - assert_false(query_assertion(rec, d, ">=", "2016-05")) - assert_false(query_assertion(rec, d, ">=", "2016")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05")) - assert_true(query_assertion(rec, d, ">=", "2014-05")) - assert_true(query_assertion(rec, d, ">=", "2014")) - - # Date YYYY - d = "2015" - assert_true(query_assertion(rec, d, ">=", d)) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2015-05-05")) - assert_true(query_assertion(rec, d, ">=", "2015-05")) - assert_true(query_assertion(rec, d, ">=", "2015")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15:30")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20:15")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05T20")) - assert_false(query_assertion(rec, d, ">=", "2016-05-05")) - assert_false(query_assertion(rec, d, ">=", "2016-05")) - assert_false(query_assertion(rec, d, ">=", "2016")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15:30")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20:15")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05T20")) - assert_true(query_assertion(rec, d, ">=", "2014-05-05")) - assert_true(query_assertion(rec, d, ">=", "2014-05")) - assert_true(query_assertion(rec, d, ">=", "2014")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + # query with > Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert query_assertion(rec, d, ">=", d) + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15") + assert query_assertion(rec, d, ">=", "2015-05-05T20") + assert query_assertion(rec, d, ">=", "2015-05-05") + assert query_assertion(rec, d, ">=", "2015-05") + assert query_assertion(rec, d, ">=", "2015") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.122") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:29.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:29") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:15:31") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15") + assert query_assertion(rec, d, ">=", "2015-05-05T19") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15") + assert not query_assertion(rec, d, ">=", "2015-05-05T21") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15") + assert query_assertion(rec, d, ">=", "2015-05-04T20") + assert query_assertion(rec, d, ">=", "2015-05-04") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">=", "2015-05-06T20") + assert not query_assertion(rec, d, ">=", "2015-05-06") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15") + assert query_assertion(rec, d, ">=", "2015-04-05T20") + assert query_assertion(rec, d, ">=", "2015-04-05") + assert query_assertion(rec, d, ">=", "2015-04") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">=", "2015-06-05T20") + assert not query_assertion(rec, d, ">=", "2015-06-05") + assert not query_assertion(rec, d, ">=", "2015-06") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15") + assert query_assertion(rec, d, ">=", "2014-05-05T20") + assert query_assertion(rec, d, ">=", "2014-05-05") + assert query_assertion(rec, d, ">=", "2014-05") + assert query_assertion(rec, d, ">=", "2014") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">=", "2016-05-05T20") + assert not query_assertion(rec, d, ">=", "2016-05-05") + assert not query_assertion(rec, d, ">=", "2016-05") + assert not query_assertion(rec, d, ">=", "2016") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert query_assertion(rec, d, ">=", d) + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15") + assert query_assertion(rec, d, ">=", "2015-05-05T20") + assert query_assertion(rec, d, ">=", "2015-05-05") + assert query_assertion(rec, d, ">=", "2015-05") + assert query_assertion(rec, d, ">=", "2015") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.122") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:29.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:29") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:15:31.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:15:31") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:14") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16:30") + assert not query_assertion(rec, d, ">=", "2015-05-05T20:16") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T19:15") + assert query_assertion(rec, d, ">=", "2015-05-05T19") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15:30") + assert not query_assertion(rec, d, ">=", "2015-05-05T21:15") + assert not query_assertion(rec, d, ">=", "2015-05-05T21") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15") + assert query_assertion(rec, d, ">=", "2015-05-04T20") + assert query_assertion(rec, d, ">=", "2015-05-04") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">=", "2015-05-06T20") + assert not query_assertion(rec, d, ">=", "2015-05-06") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15") + assert query_assertion(rec, d, ">=", "2015-04-05T20") + assert query_assertion(rec, d, ">=", "2015-04-05") + assert query_assertion(rec, d, ">=", "2015-04") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">=", "2015-06-05T20") + assert not query_assertion(rec, d, ">=", "2015-06-05") + assert not query_assertion(rec, d, ">=", "2015-06") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15") + assert query_assertion(rec, d, ">=", "2014-05-05T20") + assert query_assertion(rec, d, ">=", "2014-05-05") + assert query_assertion(rec, d, ">=", "2014-05") + assert query_assertion(rec, d, ">=", "2014") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">=", "2016-05-05T20") + assert not query_assertion(rec, d, ">=", "2016-05-05") + assert not query_assertion(rec, d, ">=", "2016-05") + assert not query_assertion(rec, d, ">=", "2016") + + # Date YYYY-MM-dd + d = "2015-05-05" + assert query_assertion(rec, d, ">=", d) + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15") + assert query_assertion(rec, d, ">=", "2015-05-05T20") + assert query_assertion(rec, d, ">=", "2015-05-05") + assert query_assertion(rec, d, ">=", "2015-05") + assert query_assertion(rec, d, ">=", "2015") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-05-06T20:15") + assert not query_assertion(rec, d, ">=", "2015-05-06T20") + assert not query_assertion(rec, d, ">=", "2015-05-06") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-04T20:15") + assert query_assertion(rec, d, ">=", "2015-05-04T20") + assert query_assertion(rec, d, ">=", "2015-05-04") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">=", "2015-06-05T20") + assert not query_assertion(rec, d, ">=", "2015-06-05") + assert not query_assertion(rec, d, ">=", "2015-06") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15") + assert query_assertion(rec, d, ">=", "2015-04-05T20") + assert query_assertion(rec, d, ">=", "2015-04-05") + assert query_assertion(rec, d, ">=", "2015-04") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">=", "2016-05-05T20") + assert not query_assertion(rec, d, ">=", "2016-05-05") + assert not query_assertion(rec, d, ">=", "2016-05") + assert not query_assertion(rec, d, ">=", "2016") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15") + assert query_assertion(rec, d, ">=", "2014-05-05T20") + assert query_assertion(rec, d, ">=", "2014-05-05") + assert query_assertion(rec, d, ">=", "2014-05") + assert query_assertion(rec, d, ">=", "2014") + + # Date YYYY-MM + d = "2015-05" + assert query_assertion(rec, d, ">=", d) + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15") + assert query_assertion(rec, d, ">=", "2015-05-05T20") + assert query_assertion(rec, d, ">=", "2015-05-05") + assert query_assertion(rec, d, ">=", "2015-05") + assert query_assertion(rec, d, ">=", "2015") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2015-06-05T20:15") + assert not query_assertion(rec, d, ">=", "2015-06-05T20") + assert not query_assertion(rec, d, ">=", "2015-06-05") + assert not query_assertion(rec, d, ">=", "2015-06") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-04-05T20:15") + assert query_assertion(rec, d, ">=", "2015-04-05T20") + assert query_assertion(rec, d, ">=", "2015-04-05") + assert query_assertion(rec, d, ">=", "2015-04") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">=", "2016-05-05T20") + assert not query_assertion(rec, d, ">=", "2016-05-05") + assert not query_assertion(rec, d, ">=", "2016-05") + assert not query_assertion(rec, d, ">=", "2016") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15") + assert query_assertion(rec, d, ">=", "2014-05-05T20") + assert query_assertion(rec, d, ">=", "2014-05-05") + assert query_assertion(rec, d, ">=", "2014-05") + assert query_assertion(rec, d, ">=", "2014") + + # Date YYYY + d = "2015" + assert query_assertion(rec, d, ">=", d) + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2015-05-05T20:15") + assert query_assertion(rec, d, ">=", "2015-05-05T20") + assert query_assertion(rec, d, ">=", "2015-05-05") + assert query_assertion(rec, d, ">=", "2015-05") + assert query_assertion(rec, d, ">=", "2015") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30.123") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15:30") + assert not query_assertion(rec, d, ">=", "2016-05-05T20:15") + assert not query_assertion(rec, d, ">=", "2016-05-05T20") + assert not query_assertion(rec, d, ">=", "2016-05-05") + assert not query_assertion(rec, d, ">=", "2016-05") + assert not query_assertion(rec, d, ">=", "2016") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30.123") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15:30") + assert query_assertion(rec, d, ">=", "2014-05-05T20:15") + assert query_assertion(rec, d, ">=", "2014-05-05T20") + assert query_assertion(rec, d, ">=", "2014-05-05") + assert query_assertion(rec, d, ">=", "2014-05") + assert query_assertion(rec, d, ">=", "2014") @pytest.mark.slow def test_smaller_equal_operator(): - try: - rec = set_up_rec() - - # Date YYYY-MM-ddThh:mm:ss - d = "2015-05-05T20:15:30" - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.122")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.124")) - assert_true(query_assertion(rec, d, "<=", d)) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05")) - assert_true(query_assertion(rec, d, "<=", "2015-05")) - assert_true(query_assertion(rec, d, "<=", "2015")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:15:29.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:15:29")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:31")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05")) - assert_false(query_assertion(rec, d, "<=", "2015-04")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05")) - assert_true(query_assertion(rec, d, "<=", "2015-06")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05")) - assert_false(query_assertion(rec, d, "<=", "2014-05")) - assert_false(query_assertion(rec, d, "<=", "2014")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05")) - assert_true(query_assertion(rec, d, "<=", "2016-05")) - assert_true(query_assertion(rec, d, "<=", "2016")) - - # Date YYYY-MM-ddThh:mm:ss.ns - d = "2015-05-05T20:15:30.123" - assert_true(query_assertion(rec, d, "<=", d)) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05")) - assert_true(query_assertion(rec, d, "<=", "2015-05")) - assert_true(query_assertion(rec, d, "<=", "2015")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.122")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.124")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:15:29.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:15:29")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:31.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:31")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T20:14")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:16")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19:15")) - assert_false(query_assertion(rec, d, "<=", "2015-05-05T19")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T21")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05")) - assert_false(query_assertion(rec, d, "<=", "2015-04")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05")) - assert_true(query_assertion(rec, d, "<=", "2015-06")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05")) - assert_false(query_assertion(rec, d, "<=", "2014-05")) - assert_false(query_assertion(rec, d, "<=", "2014")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05")) - assert_true(query_assertion(rec, d, "<=", "2016-05")) - assert_true(query_assertion(rec, d, "<=", "2016")) - - # Date YYYY-MM-dd - d = "2015-05-05" - assert_true(query_assertion(rec, d, "<=", d)) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05")) - assert_true(query_assertion(rec, d, "<=", "2015-05")) - assert_true(query_assertion(rec, d, "<=", "2015")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04T20")) - assert_false(query_assertion(rec, d, "<=", "2015-05-04")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-06")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05")) - assert_false(query_assertion(rec, d, "<=", "2015-04")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05")) - assert_true(query_assertion(rec, d, "<=", "2015-06")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05")) - assert_false(query_assertion(rec, d, "<=", "2014-05")) - assert_false(query_assertion(rec, d, "<=", "2014")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05")) - assert_true(query_assertion(rec, d, "<=", "2016-05")) - assert_true(query_assertion(rec, d, "<=", "2016")) - - # Date YYYY-MM - d = "2015-05" - assert_true(query_assertion(rec, d, "<=", d)) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05")) - assert_true(query_assertion(rec, d, "<=", "2015-05")) - assert_true(query_assertion(rec, d, "<=", "2015")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05T20")) - assert_false(query_assertion(rec, d, "<=", "2015-04-05")) - assert_false(query_assertion(rec, d, "<=", "2015-04")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-06-05")) - assert_true(query_assertion(rec, d, "<=", "2015-06")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05")) - assert_false(query_assertion(rec, d, "<=", "2014-05")) - assert_false(query_assertion(rec, d, "<=", "2014")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05")) - assert_true(query_assertion(rec, d, "<=", "2016-05")) - assert_true(query_assertion(rec, d, "<=", "2016")) - - # Date YYYY - d = "2015" - assert_true(query_assertion(rec, d, "<=", d)) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2015-05-05")) - assert_true(query_assertion(rec, d, "<=", "2015-05")) - assert_true(query_assertion(rec, d, "<=", "2015")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15:30")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20:15")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05T20")) - assert_false(query_assertion(rec, d, "<=", "2014-05-05")) - assert_false(query_assertion(rec, d, "<=", "2014-05")) - assert_false(query_assertion(rec, d, "<=", "2014")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15:30")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20:15")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05T20")) - assert_true(query_assertion(rec, d, "<=", "2016-05-05")) - assert_true(query_assertion(rec, d, "<=", "2016-05")) - assert_true(query_assertion(rec, d, "<=", "2016")) - - finally: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + rec = set_up_rec() + + # Date YYYY-MM-ddThh:mm:ss + d = "2015-05-05T20:15:30" + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.122") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.124") + assert query_assertion(rec, d, "<=", d) + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15") + assert query_assertion(rec, d, "<=", "2015-05-05T20") + assert query_assertion(rec, d, "<=", "2015-05-05") + assert query_assertion(rec, d, "<=", "2015-05") + assert query_assertion(rec, d, "<=", "2015") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:15:29.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:15:29") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14:30") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15:30") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15") + assert not query_assertion(rec, d, "<=", "2015-05-05T19") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15") + assert query_assertion(rec, d, "<=", "2015-05-05T21") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<=", "2015-05-04T20") + assert not query_assertion(rec, d, "<=", "2015-05-04") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15") + assert query_assertion(rec, d, "<=", "2015-05-06T20") + assert query_assertion(rec, d, "<=", "2015-05-06") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<=", "2015-04-05T20") + assert not query_assertion(rec, d, "<=", "2015-04-05") + assert not query_assertion(rec, d, "<=", "2015-04") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15") + assert query_assertion(rec, d, "<=", "2015-06-05T20") + assert query_assertion(rec, d, "<=", "2015-06-05") + assert query_assertion(rec, d, "<=", "2015-06") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<=", "2014-05-05T20") + assert not query_assertion(rec, d, "<=", "2014-05-05") + assert not query_assertion(rec, d, "<=", "2014-05") + assert not query_assertion(rec, d, "<=", "2014") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15") + assert query_assertion(rec, d, "<=", "2016-05-05T20") + assert query_assertion(rec, d, "<=", "2016-05-05") + assert query_assertion(rec, d, "<=", "2016-05") + assert query_assertion(rec, d, "<=", "2016") + + # Date YYYY-MM-ddThh:mm:ss.ns + d = "2015-05-05T20:15:30.123" + assert query_assertion(rec, d, "<=", d) + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15") + assert query_assertion(rec, d, "<=", "2015-05-05T20") + assert query_assertion(rec, d, "<=", "2015-05-05") + assert query_assertion(rec, d, "<=", "2015-05") + assert query_assertion(rec, d, "<=", "2015") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:15:30.122") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.124") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:15:29.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:15:29") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:31.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:31") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14:30") + assert not query_assertion(rec, d, "<=", "2015-05-05T20:14") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:16") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15:30") + assert not query_assertion(rec, d, "<=", "2015-05-05T19:15") + assert not query_assertion(rec, d, "<=", "2015-05-05T19") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T21:15") + assert query_assertion(rec, d, "<=", "2015-05-05T21") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<=", "2015-05-04T20") + assert not query_assertion(rec, d, "<=", "2015-05-04") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15") + assert query_assertion(rec, d, "<=", "2015-05-06T20") + assert query_assertion(rec, d, "<=", "2015-05-06") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<=", "2015-04-05T20") + assert not query_assertion(rec, d, "<=", "2015-04-05") + assert not query_assertion(rec, d, "<=", "2015-04") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15") + assert query_assertion(rec, d, "<=", "2015-06-05T20") + assert query_assertion(rec, d, "<=", "2015-06-05") + assert query_assertion(rec, d, "<=", "2015-06") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<=", "2014-05-05T20") + assert not query_assertion(rec, d, "<=", "2014-05-05") + assert not query_assertion(rec, d, "<=", "2014-05") + assert not query_assertion(rec, d, "<=", "2014") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15") + assert query_assertion(rec, d, "<=", "2016-05-05T20") + assert query_assertion(rec, d, "<=", "2016-05-05") + assert query_assertion(rec, d, "<=", "2016-05") + assert query_assertion(rec, d, "<=", "2016") + + # Date YYYY-MM-dd + d = "2015-05-05" + assert query_assertion(rec, d, "<=", d) + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15") + assert query_assertion(rec, d, "<=", "2015-05-05T20") + assert query_assertion(rec, d, "<=", "2015-05-05") + assert query_assertion(rec, d, "<=", "2015-05") + assert query_assertion(rec, d, "<=", "2015") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-05-04T20:15") + assert not query_assertion(rec, d, "<=", "2015-05-04T20") + assert not query_assertion(rec, d, "<=", "2015-05-04") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-06T20:15") + assert query_assertion(rec, d, "<=", "2015-05-06T20") + assert query_assertion(rec, d, "<=", "2015-05-06") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<=", "2015-04-05T20") + assert not query_assertion(rec, d, "<=", "2015-04-05") + assert not query_assertion(rec, d, "<=", "2015-04") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15") + assert query_assertion(rec, d, "<=", "2015-06-05T20") + assert query_assertion(rec, d, "<=", "2015-06-05") + assert query_assertion(rec, d, "<=", "2015-06") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<=", "2014-05-05T20") + assert not query_assertion(rec, d, "<=", "2014-05-05") + assert not query_assertion(rec, d, "<=", "2014-05") + assert not query_assertion(rec, d, "<=", "2014") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15") + assert query_assertion(rec, d, "<=", "2016-05-05T20") + assert query_assertion(rec, d, "<=", "2016-05-05") + assert query_assertion(rec, d, "<=", "2016-05") + assert query_assertion(rec, d, "<=", "2016") + + # Date YYYY-MM + d = "2015-05" + assert query_assertion(rec, d, "<=", d) + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15") + assert query_assertion(rec, d, "<=", "2015-05-05T20") + assert query_assertion(rec, d, "<=", "2015-05-05") + assert query_assertion(rec, d, "<=", "2015-05") + assert query_assertion(rec, d, "<=", "2015") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2015-04-05T20:15") + assert not query_assertion(rec, d, "<=", "2015-04-05T20") + assert not query_assertion(rec, d, "<=", "2015-04-05") + assert not query_assertion(rec, d, "<=", "2015-04") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-06-05T20:15") + assert query_assertion(rec, d, "<=", "2015-06-05T20") + assert query_assertion(rec, d, "<=", "2015-06-05") + assert query_assertion(rec, d, "<=", "2015-06") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<=", "2014-05-05T20") + assert not query_assertion(rec, d, "<=", "2014-05-05") + assert not query_assertion(rec, d, "<=", "2014-05") + assert not query_assertion(rec, d, "<=", "2014") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15") + assert query_assertion(rec, d, "<=", "2016-05-05T20") + assert query_assertion(rec, d, "<=", "2016-05-05") + assert query_assertion(rec, d, "<=", "2016-05") + assert query_assertion(rec, d, "<=", "2016") + + # Date YYYY + d = "2015" + assert query_assertion(rec, d, "<=", d) + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2015-05-05T20:15") + assert query_assertion(rec, d, "<=", "2015-05-05T20") + assert query_assertion(rec, d, "<=", "2015-05-05") + assert query_assertion(rec, d, "<=", "2015-05") + assert query_assertion(rec, d, "<=", "2015") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30.123") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15:30") + assert not query_assertion(rec, d, "<=", "2014-05-05T20:15") + assert not query_assertion(rec, d, "<=", "2014-05-05T20") + assert not query_assertion(rec, d, "<=", "2014-05-05") + assert not query_assertion(rec, d, "<=", "2014-05") + assert not query_assertion(rec, d, "<=", "2014") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30.123") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15:30") + assert query_assertion(rec, d, "<=", "2016-05-05T20:15") + assert query_assertion(rec, d, "<=", "2016-05-05T20") + assert query_assertion(rec, d, "<=", "2016-05-05") + assert query_assertion(rec, d, "<=", "2016-05") + assert query_assertion(rec, d, "<=", "2016") diff --git a/tests/test_double.py b/tests/test_double.py index 041a060ca61ff92dc7117e6fd64572f269e249ab..f01f85e747a27c20a9f7d39200e92bafb723a55f 100644 --- a/tests/test_double.py +++ b/tests/test_double.py @@ -26,7 +26,7 @@ import caosdb as db def setup_module(): - clean = db.execute_query("FIND Test*") + clean = db.execute_query("FIND ENTITY") if len(clean) > 0: clean.delete() @@ -40,9 +40,9 @@ def test_nan(): rt = db.RecordType(name="TestRecordType").add_property(name="TestDoubleProperty", value="NaN").insert() - test1 = db.execute_query("FIND TestRecordType", unique=True) + test1 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert math.isnan(test1.get_property("TestDoubleProperty").value) test2 = db.execute_query( - "FIND TestRecordType WITH TestDoubleProperty = NaN", unique=True) + "FIND ENTITY TestRecordType WITH TestDoubleProperty = NaN", unique=True) assert math.isnan(test1.get_property("TestDoubleProperty").value) diff --git a/tests/test_empty_text_value.py b/tests/test_empty_text_value.py index 64be317878150e735e6d197835381d5a52b22dcc..dba100e0c0ec4f59a3993b85b3ce6aebaf86819e 100644 --- a/tests/test_empty_text_value.py +++ b/tests/test_empty_text_value.py @@ -34,7 +34,7 @@ def setup_function(function): def teardown_function(function): try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY").delete() except Exception as e: print(e) @@ -50,8 +50,8 @@ def test_empty_string(): "TestProp").value == "" # query language works for empty string assert db.execute_query( - "FIND TestRT with TestProp=''", unique=True).id == r1.id - assert db.execute_query('FIND TestRT with TestProp=""', + "FIND ENTITY TestRT with TestProp=''", unique=True).id == r1.id + assert db.execute_query('FIND ENTITY TestRT with TestProp=""', unique=True).get_property("TestProp").value == "" r2 = db.Record() @@ -60,10 +60,10 @@ def test_empty_string(): r2.insert() assert db.execute_query( - "FIND TestRT with TestProp='not empty'", unique=True).id == r2.id + "FIND ENTITY TestRT with TestProp='not empty'", unique=True).id == r2.id # query language work while other records with non empty values are present assert db.execute_query( - "FIND TestRT with TestProp=''", unique=True).id == r1.id + "FIND ENTITY TestRT with TestProp=''", unique=True).id == r1.id assert len(db.execute_query("FIND Record TestRT")) == 2 @@ -78,7 +78,7 @@ def test_null_value(): unique=True).get_property("TestProp").value is None # query language works with null value assert db.execute_query( - "FIND TestRT WHERE TestProp IS NULL", unique=True).id == r1.id + "FIND ENTITY TestRT WHERE TestProp IS NULL", unique=True).id == r1.id # add a bit of noise r2 = db.Record() @@ -87,10 +87,10 @@ def test_null_value(): r2.insert() assert db.execute_query( - "FIND TestRT with TestProp='null'", unique=True).id == r2.id + "FIND ENTITY TestRT with TestProp='null'", unique=True).id == r2.id # query language works while other record with non-null values are present assert db.execute_query( - "FIND TestRT WHERE TestProp IS NULL", unique=True).id == r1.id + "FIND ENTITY TestRT WHERE TestProp IS NULL", unique=True).id == r1.id assert len(db.execute_query("FIND Record TestRT")) == 2 @@ -105,7 +105,7 @@ def test_list_with_empty_string(): unique=True).get_property("TestProp").value == [""] # query language works assert db.execute_query( - "FIND TestRT with TestProp=''", unique=True).id == r1.id + "FIND ENTITY TestRT with TestProp=''", unique=True).id == r1.id r2 = db.Record() r2.add_parent("TestRT") @@ -114,9 +114,9 @@ def test_list_with_empty_string(): assert db.execute_query("FIND Record TestRT with TestProp='leer'", unique=True).get_property("TestProp").value == ["leer"] assert db.execute_query( - "FIND TestRT with TestProp='leer'", unique=True).id == r2.id + "FIND ENTITY TestRT with TestProp='leer'", unique=True).id == r2.id assert db.execute_query( - "FIND TestRT with TestProp=''", unique=True).id == r1.id + "FIND ENTITY TestRT with TestProp=''", unique=True).id == r1.id def test_null_list(): @@ -129,7 +129,7 @@ def test_null_list(): assert db.execute_query("FIND Record TestRT", unique=True).get_property("TestProp").value is None assert db.execute_query( - "FIND TestRT WHERE TestProp IS NULL", unique=True).id == r1.id + "FIND ENTITY TestRT WHERE TestProp IS NULL", unique=True).id == r1.id @pytest.mark.xfail(reason="""this is the confirmation for diff --git a/tests/test_error_stuff.py b/tests/test_error_stuff.py index ca33fb2f101ad87e701bad92745490699b1e789a..b43b53ee194a9ec8c598118861786d8e5fde77af 100644 --- a/tests/test_error_stuff.py +++ b/tests/test_error_stuff.py @@ -42,7 +42,7 @@ import pytest def setup_function(function): try: - h.execute_query("FIND Test*").delete() + h.execute_query("FIND ENTITY").delete() except BaseException: pass diff --git a/tests/test_importance.py b/tests/test_importance.py index 6bcf4a097647c6d8393192361337e0b45a1417b0..41668d98c221fb0080aeba47c51104a8343d61f6 100644 --- a/tests/test_importance.py +++ b/tests/test_importance.py @@ -27,7 +27,7 @@ def setup_function(function): def teardown_module(): - clean = db.execute_query("FIND Test*") + clean = db.execute_query("FIND ENTITY") if len(clean) > 0: clean.delete() diff --git a/tests/test_inheritance.py b/tests/test_inheritance.py index bffb128484364906ec2e30342cbc5090c7ca9554..01d094c989305e67c7e1cf2efeb9a336807a5ebb 100644 --- a/tests/test_inheritance.py +++ b/tests/test_inheritance.py @@ -200,7 +200,7 @@ def test_inheritance_unit(): assert rt.is_valid() assert rt.get_property("SimpleIntProperty").unit == "km" - rt2 = db.execute_query("FIND SimpleRecordType", True) + rt2 = db.execute_query("FIND ENTITY SimpleRecordType", True) assert rt2.id == rt.id assert rt2.get_property("SimpleIntProperty").unit == "km" @@ -212,7 +212,7 @@ def test_inheritance_unit(): assert rt3.get_property("SimpleIntProperty") is not None assert rt3.get_property("SimpleIntProperty").unit == "km" - rt4 = db.execute_query("FIND SimpleRecordType2", True) + rt4 = db.execute_query("FIND ENTITY SimpleRecordType2", True) assert rt4.is_valid() assert rt4.id == rt3.id assert rt4.get_property("SimpleIntProperty").unit == "km" diff --git a/tests/test_issues_server.py b/tests/test_issues_server.py index 6419573d22e583e400eccad626bc8d4b143f92d1..b0380fbfbe66e3246be83a37455c5d70773f8c3a 100644 --- a/tests/test_issues_server.py +++ b/tests/test_issues_server.py @@ -290,21 +290,21 @@ def test_issue_154_no_versioning(): "FIND RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")] assert "Violin" not in [e.name for e in db.execute_query( "FIND RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")] - assert len(db.execute_query("FIND MusicalInstrument")) == 4 + assert len(db.execute_query("FIND ENTITY MusicalInstrument")) == 4 assert len(db.execute_query("FIND RECORD MusicalInstrument")) == 3 assert len(db.execute_query( - "FIND MusicalInstrument WITH Manufacturer")) == 3 + "FIND ENTITY MusicalInstrument WITH Manufacturer")) == 3 assert len(db.execute_query( "FIND RECORD MusicalInstrument WITH Manufacturer")) == 2 assert rec_inst.id == db.execute_query( - "FIND MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'", + "FIND ENTITY MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'", unique=True).id assert len(db.execute_query( - "FIND MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 3 + "FIND ENTITY MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 3 assert len(db.execute_query( "FIND RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 2 assert len(db.execute_query( - "FIND MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 + "FIND ENTITY MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 assert len(db.execute_query( "FIND RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 @@ -330,22 +330,22 @@ def test_issue_154_with_versioning(): "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")] assert "Violin" not in [e.name for e in db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")] - assert len(db.execute_query("FIND ANY VERSION OF MusicalInstrument")) == 4 + assert len(db.execute_query("FIND ANY VERSION OF ENTITY MusicalInstrument")) == 4 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument")) == 3 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer")) == 3 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer")) == 3 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer")) == 2 assert rec_inst.id == db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'", + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'", unique=True).id assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 3 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 3 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 2 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 1 @@ -365,21 +365,21 @@ def test_issue_154_with_versioning(): "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")] assert "Violin" not in [e.name for e in db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")] - assert len(db.execute_query("FIND ANY VERSION OF MusicalInstrument")) == 8 + assert len(db.execute_query("FIND ANY VERSION OF ENTITY MusicalInstrument")) == 8 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument")) == 6 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer")) == 6 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer")) == 6 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer")) == 4 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'")) == 2 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer = 'Antonio Stradivari'")) == 2 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 6 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 6 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH NOT Manufacturer = 'Antonio Stradivari'")) == 4 assert len(db.execute_query( - "FIND ANY VERSION OF MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 2 + "FIND ANY VERSION OF ENTITY MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 2 assert len(db.execute_query( "FIND ANY VERSION OF RECORD MusicalInstrument WITH Manufacturer != 'Antonio Stradivari'")) == 2 @@ -393,11 +393,11 @@ def test_issue_127(): rt = db.RecordType(name="TestRecordType").add_property(name="TestDoubleProperty", value=["nan"]).insert() - test1 = db.execute_query("FIND TestRecordType", unique=True) + test1 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert math.isnan(test1.get_property("TestDoubleProperty").value[0]) test2 = db.execute_query( - "FIND TestRecordType WITH TestDoubleProperty = NaN", unique=True) + "FIND ENTITY TestRecordType WITH TestDoubleProperty = NaN", unique=True) assert math.isnan(test1.get_property("TestDoubleProperty").value[0]) @@ -407,14 +407,14 @@ def test_issue_170(): p.value = [1, 2] p.insert() - p2 = db.execute_query("FIND TestProp1", unique=True) + p2 = db.execute_query("FIND ENTITY TestProp1", unique=True) assert p2.datatype == db.LIST(db.INTEGER) assert p2.value == [1, 2] p.description = "TestDescription" p.update() # this failed - p2 = db.execute_query("FIND TestProp1", unique=True) + p2 = db.execute_query("FIND ENTITY TestProp1", unique=True) assert p2.datatype == db.LIST(db.INTEGER) assert p2.value == [1, 2] assert p2.description == "TestDescription" @@ -424,12 +424,12 @@ def test_issue_170(): p.datatype = db.LIST(db.INTEGER) p.update() # this worked because no value yet - p2 = db.execute_query("FIND TestProp2", unique=True) + p2 = db.execute_query("FIND ENTITY TestProp2", unique=True) assert p2.datatype == db.LIST(db.INTEGER) p.value = [1, 2] p.update() # this failed - p2 = db.execute_query("FIND TestProp2", unique=True) + p2 = db.execute_query("FIND ENTITY TestProp2", unique=True) assert p2.datatype == db.LIST(db.INTEGER) assert p2.value == [1, 2] @@ -440,7 +440,7 @@ def test_issue_170(): p.value = [1, 2] p.update() # this failed - p2 = db.execute_query("FIND TestProp3", unique=True) + p2 = db.execute_query("FIND ENTITY TestProp3", unique=True) assert p2.datatype == db.LIST(db.INTEGER) assert p2.value == [1, 2] @@ -875,7 +875,7 @@ def test_141(): # switch back to admin user db.configure_connection() - assert db.execute_query("FIND TestRT", unique=True).description == "Desc2" + assert db.execute_query("FIND ENTITY TestRT", unique=True).description == "Desc2" def test_145(): diff --git a/tests/test_list.py b/tests/test_list.py index 63ece67b7b454800533a68b2c86d5db51776be68..b2c246e092d9998e37b2c4fd12f2f18f26c4ae35 100644 --- a/tests/test_list.py +++ b/tests/test_list.py @@ -89,12 +89,12 @@ def test_list_datatype_know(): assert_equal( p.id, db.execute_query( - "FIND TestListProperty", + "FIND ENTITY TestListProperty", unique=True).id) assert_equal( p.datatype, db.execute_query( - "FIND TestListProperty", + "FIND ENTITY TestListProperty", unique=True).datatype) @@ -113,12 +113,12 @@ def test_rt_property_without_value(): assert_equal( p.id, db.execute_query( - "FIND TestRT", + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").id) assert_equal( p.datatype, db.execute_query( - "FIND TestRT", + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").datatype) @@ -141,21 +141,21 @@ def test_concrete_property_with_single_value(): assert_equal( p.id, db.execute_query( - "FIND TestRT", + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").id) assert_equal( p.datatype, db.execute_query( - "FIND TestRT", + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").datatype) assert_equal( "[1]", str( db.execute_query( - "FIND TestRT", unique=True).get_property("TestListProperty").value)) + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").value)) assert_equal( [1], db.execute_query( - "FIND TestRT", + "FIND ENTITY TestRT", unique=True).get_property("TestListProperty").value) @@ -175,7 +175,7 @@ def test_query_concrete_property_with_single_value(): assert_equal( rt.id, db.execute_query( - "FIND TestRT WHICH HAS A TestListProperty=1337", + "FIND ENTITY TestRT WHICH HAS A TestListProperty=1337", unique=True).id) @@ -195,7 +195,7 @@ def test_query_concrete_property_with_more_values(): assert_equal( rt.id, db.execute_query( - "FIND TestRT WHICH HAS A TestListProperty=1337", + "FIND ENTITY TestRT WHICH HAS A TestListProperty=1337", unique=True).id) @@ -292,7 +292,7 @@ def test_rt_ref_property_without_value(): assert_equal( db.execute_query( - "FIND TestRT2", + "FIND ENTITY TestRT2", unique=True).get_property("TestListProperty").datatype, db.LIST( rt.name)) @@ -308,7 +308,7 @@ def test_datatype_inheritance1(): assert_equal(p2.datatype, db.LIST(rt.name)) assert_equal( db.execute_query( - "FIND TestListProperty2", + "FIND ENTITY TestListProperty2", unique=True).datatype, db.LIST( rt.name)) @@ -328,7 +328,7 @@ def test_datatype_inheritance2(): assert_equal(p2.datatype, db.LIST(rt2.name)) assert_equal( db.execute_query( - "FIND TestListProperty2", + "FIND ENTITY TestListProperty2", unique=True).datatype, db.LIST( rt2.name)) @@ -348,7 +348,7 @@ def test_datatype_inheritance3(): assert_equal(p2.datatype, db.LIST(rt2.name)) assert_equal( db.execute_query( - "FIND TestListProperty2", + "FIND ENTITY TestListProperty2", unique=True).datatype, db.LIST( rt2.name)) @@ -492,17 +492,17 @@ def test_multi_ref_value(): assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec2", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec2", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec1", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec1", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=" + str(rec.id), + "FIND ENTITY TestRT2 WHICH HAS A TestProp=" + str(rec.id), unique=True).id, rt2.id) @@ -527,17 +527,17 @@ def test_multi_ref_with_doublets(): assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec2", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec2", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec1", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec1", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=" + str(rec1.id), + "FIND ENTITY TestRT2 WHICH HAS A TestProp=" + str(rec1.id), unique=True).id, rt2.id) @@ -560,20 +560,20 @@ def test_multi_ref_with_null(): assert_equal(rt2.get_property("TestProp").value[1], rec2.id) assert_equal(rt2.get_property("TestProp").value[2], None) - assert_equal(db.execute_query("FIND TestRT2", unique=True).id, rt2.id) + assert_equal(db.execute_query("FIND ENTITY TestRT2", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec2", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec2", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WHICH HAS A TestProp=TestRec1", + "FIND ENTITY TestRT2 WHICH HAS A TestProp=TestRec1", unique=True).id, rt2.id) assert_equal( db.execute_query( - "FIND TestRT2 WITH TestProp IS NULL", + "FIND ENTITY TestRT2 WITH TestProp IS NULL", unique=True).id, rt2.id) @@ -592,17 +592,17 @@ def test_rec_with_value(): assert_true(rec4.is_valid()) assert_equal( db.execute_query( - "FIND TestRec4 WHICH REFERENCES TestRec3", + "FIND ENTITY TestRec4 WHICH REFERENCES TestRec3", unique=True).id, rec4.id) assert_equal( db.execute_query( - "FIND TestRec4 WHICH REFERENCES TestRec2", + "FIND ENTITY TestRec4 WHICH REFERENCES TestRec2", unique=True).id, rec4.id) assert_equal( db.execute_query( - "FIND TestRec4 WHICH REFERENCES TestRec1", + "FIND ENTITY TestRec4 WHICH REFERENCES TestRec1", unique=True).id, rec4.id) @@ -620,12 +620,12 @@ def test_rec_with_null_value(): assert_true(rec4.is_valid()) assert_equal( db.execute_query( - "FIND TestRec4 WHICH REFERENCES TestRec1", + "FIND ENTITY TestRec4 WHICH REFERENCES TestRec1", unique=True).id, rec4.id) assert_equal( db.execute_query( - "FIND TestRec4 WHICH REFERENCES TestRec2", + "FIND ENTITY TestRec4 WHICH REFERENCES TestRec2", unique=True).id, rec4.id) @@ -641,7 +641,7 @@ def test_list_of_references(): assert p.name == rt1.name assert p.datatype == db.LIST(rt1.name) - p = db.execute_query("FIND Test_RT2", unique=True).get_properties()[0] + p = db.execute_query("FIND ENTITY Test_RT2", unique=True).get_properties()[0] assert p.id == rt1.id assert p.name == rt1.name assert p.datatype == db.LIST(rt1.name) diff --git a/tests/test_name_properties.py b/tests/test_name_properties.py index 39e63e3b9850127f821c1679cb6ccd53c938a612..ad53e2050d9d7e514b72ad3f3df5be27603028cf 100644 --- a/tests/test_name_properties.py +++ b/tests/test_name_properties.py @@ -41,14 +41,14 @@ def teardown_module(): def setup_function(function): try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY Test*").delete() except BaseException: pass def teardown_function(function): try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY Test*").delete() except BaseException: pass @@ -66,10 +66,10 @@ def test_property_insertion(): def test_property_query(): pid = test_property_insertion().id - assert_equal(db.execute_query("FIND TestShortName", unique=True).id, pid) + assert_equal(db.execute_query("FIND ENTITY TestShortName", unique=True).id, pid) # the short name does not apply to the property itself!!! - assert_equal(len(db.execute_query("FIND TestSN")), 0) + assert_equal(len(db.execute_query("FIND ENTITY TestSN")), 0) def test_recordtype_insertion_separately_prop_by_id_direct_name_child(): @@ -181,22 +181,22 @@ def assert_same_unique_results(call, queries): def test_recordtype_query(): assert_same_unique_results( test_recordtype_insertion_separately_prop_by_id_direct_name_child, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) assert_same_unique_results( test_recordtype_insertion_separately_prop_by_name_direct_name_child, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) assert_same_unique_results( test_recordtype_insertion_container_prop_by_name_direct_name_child, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) assert_same_unique_results( test_recordtype_insertion_container_prop_by_tempid_direct_name_child, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) assert_same_unique_results( test_recordtpye_insertion_with_indirect_child_with_new_parent, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) assert_same_unique_results( test_recordtpye_insertion_with_indirect_child_with_existing_parent, [ - "FIND TestRecordType", "FIND TestRT"]) + "FIND ENTITY TestRecordType", "FIND ENTITY TestRT"]) def test_query_name_property(): @@ -209,7 +209,7 @@ def test_query_name_property(): rec.add_property("TestGivenName", "John") rec.insert() - assert db.execute_query("FIND TestPerson WITH TestGivenName='John'", + assert db.execute_query("FIND ENTITY TestPerson WITH TestGivenName='John'", unique=True).id == rec.id with raises(db.BadQueryError): db.execute_query("FIND John", unique=True) @@ -223,7 +223,7 @@ def test_query_name_property(): rec.add_property("TestGivenName", "John") rec.insert() - assert db.execute_query("FIND TestPerson WITH TestGivenName='John'", + assert db.execute_query("FIND ENTITY TestPerson WITH TestGivenName='John'", unique=True).id == rec.id assert db.execute_query("FIND John", unique=True).id == rec.id @@ -254,22 +254,22 @@ def test_query_property_with_pov(): assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestRating=4", + "FIND ENTITY TestExperiment WHICH HAS A TestRating=4", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestRating>3", + "FIND ENTITY TestExperiment WHICH HAS A TestRating>3", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestScore=4", + "FIND ENTITY TestExperiment WHICH HAS A TestScore=4", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestScore>3", + "FIND ENTITY TestExperiment WHICH HAS A TestScore>3", unique=True).id, rec.id) @@ -299,12 +299,12 @@ def test_query_with_reference(): value="TestJohnDoe").insert() assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=TestJohnDoe", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=TestJohnDoe", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=John", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=John", unique=True).id, rec.id) @@ -333,22 +333,22 @@ def test_query_with_back_reference(): value="TestJohnDoe").insert() assert_equal( db.execute_query( - "FIND TestPerson WHICH IS REFERENCED BY TestMeasurement", + "FIND ENTITY TestPerson WHICH IS REFERENCED BY TestMeasurement", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestPerson WHICH IS REFERENCED BY TestMeasurement AS A TestConductor", + "FIND ENTITY TestPerson WHICH IS REFERENCED BY TestMeasurement AS A TestConductor", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestPerson WHICH IS REFERENCED BY TestObservation", + "FIND ENTITY TestPerson WHICH IS REFERENCED BY TestObservation", unique=True).id, rec.id) assert_equal( db.execute_query( - "FIND TestPerson WHICH IS REFERENCED BY TestObservation AS A TestConductor", + "FIND ENTITY TestPerson WHICH IS REFERENCED BY TestObservation AS A TestConductor", unique=True).id, rec.id) diff --git a/tests/test_permissions.py b/tests/test_permissions.py index bcad1f33f2601ca975673dcd13e210d27a51aed5..a88735d265f1f1ef123600cf719409ae95640223 100644 --- a/tests/test_permissions.py +++ b/tests/test_permissions.py @@ -42,7 +42,7 @@ test_pw = "passphrase1P!" def setup_module(): - d = db.execute_query("FIND *") + d = db.execute_query("FIND ENTITY") if len(d) > 0: d.delete() insert_test_user() @@ -61,7 +61,7 @@ def teardown_module(): os.remove("test2.dat") except BaseException: pass - d = db.execute_query("FIND *") + d = db.execute_query("FIND ENTITY") if len(d) > 0: d.delete() @@ -147,7 +147,7 @@ def teardown_function(function): def setup_function(function): switch_to_admin_user() try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY Test*").delete() except BaseException: pass @@ -202,19 +202,19 @@ def test_query(): value=dan.id).insert() assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor->TestPerson", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor->TestPerson", unique=True).id == exp.id assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=TestPerson", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=TestPerson", unique=True).id == exp.id assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=" + str(dan.id), + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=" + str(dan.id), unique=True).id == exp.id assert db.execute_query( - "FIND TestExperiment", + "FIND ENTITY TestExperiment", unique=True).id == exp.id assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", unique=True).id == exp.id '''success''' @@ -224,7 +224,7 @@ def test_query(): switch_to_test_user() assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", unique=True).id == exp.id '''failure - dan''' @@ -235,13 +235,13 @@ def test_query(): # QUERY_FILTER_ENTITIES_WITHOUT_RETRIEVE_PERMISSIONS = FALSE with raises(db.EmptyUniqueQueryError): db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor WHICH has a TestFirstName=Daniel", unique=True) '''... but works without the which clause''' - assert db.execute_query("FIND TestExperiment", unique=True).id == exp.id + assert db.execute_query("FIND ENTITY TestExperiment", unique=True).id == exp.id '''and with the id''' assert db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=" + str(dan.id), + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=" + str(dan.id), unique=True).id == exp.id '''failure - exp''' @@ -251,11 +251,11 @@ def test_query(): with raises(db.EmptyUniqueQueryError): db.execute_query( - "FIND TestExperiment WHICH HAS A TestConductor=TestDaniel", + "FIND ENTITY TestExperiment WHICH HAS A TestConductor=TestDaniel", unique=True) with raises(db.EmptyUniqueQueryError): - db.execute_query("FIND TestExperiment", unique=True) + db.execute_query("FIND ENTITY TestExperiment", unique=True) def test_update_acl(): @@ -283,7 +283,7 @@ def test_update_acl(): db.get_config().get("Connection", "username"))) p2 = db.execute_query( - "FIND TestProperty", + "FIND ENTITY TestProperty", unique=True, flags={ "ACL": None}) @@ -308,7 +308,7 @@ def test_update_acl(): p2.update() p3 = db.execute_query( - "FIND TestProperty", + "FIND ENTITY TestProperty", unique=True, flags={ "ACL": None}) @@ -334,7 +334,7 @@ def test_update_acl(): assert te.value.has_error(db.AuthorizationError) p3 = db.execute_query( - "FIND TestProperty", + "FIND ENTITY TestProperty", unique=True, flags={ "ACL": None}) @@ -367,7 +367,7 @@ def test_update_name(): assert_is_none(p.acl) p.update() - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() assert_equal(p2.name, "TestPropertyNew") @@ -382,7 +382,7 @@ def test_update_name(): p.update() assert te.value.has_error(db.AuthorizationError) - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p2.is_valid() assert p2.name == "TestPropertyNew" @@ -403,7 +403,7 @@ def test_update_desc(): p.description = "DescriptionNew" p.update() - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() assert_equal(p2.description, "DescriptionNew") @@ -415,7 +415,7 @@ def test_update_desc(): p.update() assert te.value.has_error(db.AuthorizationError) - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p2.is_valid() assert p2.description == "DescriptionNew" @@ -432,7 +432,7 @@ def test_update_data_type(): p.datatype = db.INTEGER p.update() - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() assert_equal(p2.datatype, db.INTEGER) @@ -444,7 +444,7 @@ def test_update_data_type(): p.update() assert te.value.has_error(db.AuthorizationError) - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p2.is_valid() assert p2.datatype == db.INTEGER @@ -461,7 +461,7 @@ def test_update_role(): rt.role = "RecordType" rt.update() - rt2 = db.execute_query("FIND TestProperty", unique=True) + rt2 = db.execute_query("FIND ENTITY TestProperty", unique=True) assert isinstance(rt2, db.RecordType) deny_permission(p, "UPDATE:ROLE") @@ -473,7 +473,7 @@ def test_update_role(): rec.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND Test*", unique=True) + rt2 = db.execute_query("FIND ENTITY Test*", unique=True) assert rt2.is_valid() assert isinstance(rt2, db.RecordType) @@ -495,7 +495,7 @@ def test_update_move_file(): f.path = "/testfiles/otherpermissiontestfiles/test.dat" f.update() - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) assert_equal(f2.path, "/testfiles/otherpermissiontestfiles/test.dat") deny_permission(f, "UPDATE:FILE:MOVE") @@ -506,7 +506,7 @@ def test_update_move_file(): f.update() assert te.value.has_error(db.AuthorizationError) - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) assert f2.path == "/testfiles/otherpermissiontestfiles/test.dat" @@ -527,19 +527,19 @@ def test_update_add_file(): f.update() assert te.value.has_error(db.AuthorizationError) - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) assert f2.path is None '''SUCCESS''' grant_permission(f, "UPDATE:FILE:ADD") - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) f2.path = "/testfiles/permissiontestfiles/newtest.dat" f2.file = upload_file f2.update() assert f2.is_valid() - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) assert_equal(f2.path, "/testfiles/permissiontestfiles/newtest.dat") @@ -568,7 +568,7 @@ def test_update_change_file(): f.update() assert te.value.has_error(db.AuthorizationError) - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) download_file = f2.download() assert db.File._get_checksum( download_file) == db.File._get_checksum(upload_file) @@ -582,12 +582,12 @@ def test_update_change_file(): grant_permission(f, "UPDATE:FILE:ADD") print(f.acl) - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) f2.file = upload_file2 f2.update() assert f2.is_valid() - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) download_file = f2.download() assert db.File._get_checksum( download_file) == db.File._get_checksum(upload_file2) @@ -601,7 +601,7 @@ def test_update_add_property(): rt = db.RecordType(name="TestRecordType").insert() assert rt.is_valid() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_properties()), 0) grant_permission(p, "RETRIEVE:ENTITY") @@ -615,7 +615,7 @@ def test_update_add_property(): '''Success - add p to rt''' rt.add_property(name="TestProperty", id=p.id).update() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_properties()), 1) assert_is_not_none(rt.get_property("TestProperty")) @@ -627,7 +627,7 @@ def test_update_add_property(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt2.get_properties()) == 1 assert rt2.get_property("TestProperty") is not None @@ -637,7 +637,7 @@ def test_update_add_property(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt2.get_properties()) == 1 assert rt2.get_property("TestProperty") is not None @@ -653,7 +653,7 @@ def test_update_remove_property(): name="TestProperty2").insert() assert rt.is_valid() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_properties()), 2) assert_is_not_none(rt.get_property("TestProperty")) assert_is_not_none(rt.get_property("TestProperty2")) @@ -669,7 +669,7 @@ def test_update_remove_property(): '''Success - remove p2 from rt''' rt.remove_property("TestProperty2").update() - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt2.get_properties()), 1) assert_is_not_none(rt2.get_property("TestProperty")) assert_is_none(rt2.get_property("TestProperty2")) @@ -682,7 +682,7 @@ def test_update_remove_property(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt2.get_properties()) == 1 assert rt2.get_property("TestProperty") is not None @@ -695,7 +695,7 @@ def test_update_add_parent(): par2 = db.RecordType(name="TestRecordTypePar2").insert() assert par2.is_valid() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_parents()), 0) grant_permission(rt, "RETRIEVE:ENTITY") @@ -708,7 +708,7 @@ def test_update_add_parent(): '''Success - add par1 to rt''' rt.add_parent(name="TestRecordTypePar1", id=par1.id).update() - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt2.get_parents()), 1) assert_is_not_none(rt2.get_parent("TestRecordTypePar1")) @@ -720,7 +720,7 @@ def test_update_add_parent(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt2.get_parents()) == 1 assert rt2.get_parent("TestRecordTypePar1") is not None @@ -730,7 +730,7 @@ def test_update_add_parent(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt2 = db.execute_query("FIND TestRecordType", unique=True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt2.get_parents()) == 1 assert rt2.get_parent("TestRecordTypePar1") is not None assert rt2.get_parent("TestRecordTypePar2") is None @@ -745,7 +745,7 @@ def test_update_remove_parent(): par1).add_parent(par2).insert() assert rt.is_valid() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_parents()), 2) assert_is_not_none(rt.get_parent("TestRecordTypePar1")) assert_is_not_none(rt.get_parent("TestRecordTypePar2")) @@ -760,7 +760,7 @@ def test_update_remove_parent(): '''Success''' rt.remove_parent("TestRecordTypePar2").update() - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert_equal(len(rt.get_parents()), 1) assert_is_not_none(rt.get_parent("TestRecordTypePar1")) assert_is_none(rt.get_parent("TestRecordTypePar2")) @@ -773,7 +773,7 @@ def test_update_remove_parent(): rt.update() assert te.value.has_error(db.AuthorizationError) - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rt.get_parents()) == 1 assert rt.get_parent("TestRecordTypePar1") is not None assert rt.get_parent("TestRecordTypePar2") is None @@ -786,7 +786,7 @@ def test_update_value(): value="Value").insert() assert p.is_valid() - p = db.execute_query("FIND Test*", unique=True) + p = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() assert p.value == "Value" @@ -797,7 +797,7 @@ def test_update_value(): p.value = "NewValue" p.update() - p = db.execute_query("FIND Test*", unique=True) + p = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() assert p.value == "NewValue" @@ -809,7 +809,7 @@ def test_update_value(): p.update() assert te.value.has_error(db.AuthorizationError) - p2 = db.execute_query("FIND Test*", unique=True) + p2 = db.execute_query("FIND ENTITY Test*", unique=True) assert p2.is_valid() assert p2.value == "NewValue" @@ -821,7 +821,7 @@ def test_deletion(): grant_permission(p, "RETRIEVE:ENTITY") '''Failure''' - p = db.execute_query("FIND Test*", unique=True) + p = db.execute_query("FIND ENTITY Test*", unique=True) assert p.is_valid() with raises(db.TransactionError) as te: p.delete() @@ -921,7 +921,7 @@ def test_download_file(): assert f.is_valid() '''FAILURE''' - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) grant_permission(f2, "RETRIEVE:ENTITY") deny_permission(f2, "RETRIEVE:FILE") @@ -932,7 +932,7 @@ def test_download_file(): '''SUCCESS''' grant_permission(f2, "RETRIEVE:FILE") - f2 = db.execute_query("FIND TestFile", unique=True) + f2 = db.execute_query("FIND ENTITY TestFile", unique=True) download_file = f2.download() assert db.File._get_checksum( download_file) == db.File._get_checksum(upload_file) diff --git a/tests/test_plantuml.py b/tests/test_plantuml.py index 87ae6b0e01781a5f811768e69a5ca4e55b881414..d3e2a930277219273f58c064df53813370986fef 100644 --- a/tests/test_plantuml.py +++ b/tests/test_plantuml.py @@ -224,7 +224,7 @@ class TestRetrieveSubstructure(unittest.TestCase): self.assertEqual(len(tst4), 13) def tearDown(self) -> None: - db.execute_query(f'FIND {self.test_prefix}*').delete() + db.execute_query(f'FIND ENTITY {self.test_prefix}*').delete() if __name__ == '__main__': diff --git a/tests/test_query.py b/tests/test_query.py index 93f6315d272b7df35e55d934ea8485c665e4c440..b3d0d0197cda3f115986711b561e95cbd95b035d 100644 --- a/tests/test_query.py +++ b/tests/test_query.py @@ -33,7 +33,7 @@ import caosdb as db from pytest import mark, raises from caosdb.connection.connection import get_connection -from caosdb.exceptions import EmptyUniqueQueryError +from caosdb.exceptions import EmptyUniqueQueryError, TransactionError from lxml import etree @@ -44,8 +44,9 @@ def setup_module(): def setup_function(function): + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "ENTITY") try: - db.execute_query("FIND *").delete() + db.execute_query("FIND ENTITY").delete() except Exception as e: print(e) @@ -59,6 +60,10 @@ def teardown_function(function): print(e) +def teardown_module(): + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "RECORD") + + def test_query_with_reference_by_parent(): db.RecordType("TestExperiment").insert() db.RecordType("TestProtocolLog").insert() @@ -1160,7 +1165,7 @@ def test_query_cache_with_permissions(): def test_find_star(): """related: caosdb-server#116""" rt = db.RecordType("TestRT").insert() - response = db.execute_query("FIND *")[0] + response = db.execute_query("FIND ENTITY")[0] assert response.id == rt.id @@ -1305,3 +1310,27 @@ def test_transaction_time(): with raises(EmptyUniqueQueryError): db.execute_query("FIND TestRT WHICH WAS INSERTED SINCE " + next_year, unique=True) + + +def test_find_query_default_role(): + p = db.Property("TestProp", datatype=db.TEXT).insert() + rt = db.RecordType("TestRT").add_property("TestProp").insert() + rec = db.Record().add_parent("TestRT").add_property("TestProp", "val").insert() + assert len(db.execute_query("FIND ENTITY Test*")) == 3 + + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "ENTITY") + assert len(db.execute_query("FIND Test*")) == 3 + + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "PROPERTY") + assert db.execute_query("FIND Test*", unique=True).id == p.id + + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", + "RECORDTYPE") + assert db.execute_query("FIND Test*", unique=True).id == rt.id + + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "RECORD") + assert db.execute_query("FIND Test*", unique=True).id == rec.id + + db.administration.set_server_property("FIND_QUERY_DEFAULT_ROLE", "asdf") + with raises(TransactionError): + assert db.execute_query("FIND Test*", unique=True).id == rec.id diff --git a/tests/test_query_template.py b/tests/test_query_template.py index 58eccf87b502587c9c7ce0c0424012006167fc03..f9c069971703082d438dfe7d9d1badb783a60a1d 100644 --- a/tests/test_query_template.py +++ b/tests/test_query_template.py @@ -37,7 +37,7 @@ def setup_module(): except Exception as e: print(e) try: - db.execute_query("FIND Test*").delete() + db.execute_query("FIND ENTITY").delete() except Exception as e: print(e) db.RecordType(name="TestPerson").insert() @@ -259,10 +259,10 @@ def test_query_with_select_in_outer_query(): def test_query_with_other_filters(): - query_def = "FIND TestExperiment WHICH HAS A TestAnimal" + query_def = "FIND ENTITY TestExperiment WHICH HAS A TestAnimal" db.QueryTemplate(name="TestAnimalExperiment", query=query_def).insert() - r = db.execute_query("FIND TestAnimalExperiment") + r = db.execute_query("FIND ENTITY TestAnimalExperiment") assert_equal(len(r), 2) r = db.execute_query( @@ -272,10 +272,10 @@ def test_query_with_other_filters(): def test_query_simple_find_with_wildcard(): - query_def = "FIND TestExperiment WHICH HAS A TestAnimal = Pig" + query_def = "FIND ENTITY TestExperiment WHICH HAS A TestAnimal = Pig" db.QueryTemplate(name="TestAnimalExperiment", query=query_def).insert() - r = db.execute_query("FIND TestAnimal*") + r = db.execute_query("FIND ENTITY TestAnimal*") assert_equal(len(r), 2) r = db.execute_query( @@ -285,10 +285,10 @@ def test_query_simple_find_with_wildcard(): def test_query_select_from_with_wildcard(): - query_def = "FIND TestExperiment WHICH HAS A TestAnimal = Pig" + query_def = "FIND ENTITY TestExperiment WHICH HAS A TestAnimal = Pig" db.QueryTemplate(name="TestAnimalExperiment", query=query_def).insert() - r = db.execute_query("SELECT TestAnimal FROM TestAnimal*") + r = db.execute_query("SELECT TestAnimal FROM ENTITY TestAnimal*") assert_equal(len(r), 2) assert_equal(len(r.get_entity_by_name("TestRecord").get_properties()), 1) assert_equal(len(r.get_entity_by_name("TestAnimal").get_properties()), 0) diff --git a/tests/test_recursive_parents.py b/tests/test_recursive_parents.py index c262e7ceef1e777e91dc6c88601b74f06590a999..a79feff30fe1ac606a5ce8027c13a37220d3b315 100644 --- a/tests/test_recursive_parents.py +++ b/tests/test_recursive_parents.py @@ -34,7 +34,7 @@ import pytest def setup_module(): """Delete all test entities""" - db.execute_query("FIND Test*").delete( + db.execute_query("FIND ENTITY Test*").delete( raise_exception_on_error=False) diff --git a/tests/test_select.py b/tests/test_select.py index 64182bbe3b8e5d6ffa585fd4a2c4cd981cb9f78d..80e380ab04ed9268059347a57787ab286b300483 100644 --- a/tests/test_select.py +++ b/tests/test_select.py @@ -91,7 +91,7 @@ def setup_module(): def teardown_module(): - d = db.execute_query("FIND Test*") + d = db.execute_query("FIND ENTITY Test*") if len(d) > 0: d.delete() @@ -102,13 +102,13 @@ def teardown_module(): def test_id1(): - p1 = db.execute_query("FIND TestPropertyOne", unique=True) + p1 = db.execute_query("FIND ENTITY TestPropertyOne", unique=True) assert p1.is_valid() is True assert p1.name is not None assert p1.datatype is not None assert p1.description is None - p1_c = db.execute_query("SELECT id FROM TestPropertyOne", unique=True) + p1_c = db.execute_query("SELECT id FROM ENTITY TestPropertyOne", unique=True) assert p1_c.is_valid() is True assert p1_c.id == p1.id assert p1_c.name is None @@ -117,13 +117,13 @@ def test_id1(): def test_id2(): - p2 = db.execute_query("FIND TestPropertyTwo", unique=True) + p2 = db.execute_query("FIND ENTITY TestPropertyTwo", unique=True) assert p2.is_valid() is True assert p2.name is not None assert p2.datatype is not None assert p2.description is not None - p2_c = db.execute_query("SELECT id FROM TestPropertyTwo", unique=True) + p2_c = db.execute_query("SELECT id FROM ENTITY TestPropertyTwo", unique=True) assert p2_c.is_valid() is True assert p2_c.id == p2.id assert p2_c.name is None @@ -132,7 +132,7 @@ def test_id2(): def test_id3(): - p3s = db.execute_query("SELECT description FROM TestProperty*") + p3s = db.execute_query("SELECT description FROM ENTITY TestProperty*") assert len(p3s) == 2 for e in p3s: @@ -140,7 +140,7 @@ def test_id3(): def test_name1(): - p3s = db.execute_query("SELECT description FROM TestProperty*") + p3s = db.execute_query("SELECT description FROM ENTITY TestProperty*") assert len(p3s) == 2 for e in p3s: @@ -148,7 +148,7 @@ def test_name1(): def test_name2(): - p3s = db.execute_query("SELECT name FROM TestProperty*") + p3s = db.execute_query("SELECT name FROM ENTITY TestProperty*") assert len(p3s) == 2 for e in p3s: @@ -169,14 +169,14 @@ def test_name_from_entity(): def test_multi1(): p1 = db.execute_query( - "SELECT id, name, description FROM TestPropertyOne", + "SELECT id, name, description FROM ENTITY TestPropertyOne", unique=True) assert p1.id is not None assert p1.name == "TestPropertyOne" assert p1.description is None p2 = db.execute_query( - "SELECT id, name, description FROM TestPropertyTwo", + "SELECT id, name, description FROM ENTITY TestPropertyTwo", unique=True) assert p2.id is not None assert p2.name == "TestPropertyTwo" @@ -184,13 +184,13 @@ def test_multi1(): def test_sub1(): - rt = db.execute_query("FIND TestRecordType", unique=True) + rt = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert rt.id is not None assert rt.name is not None assert rt.get_property("TestPropertyOne") is not None rt = db.execute_query( - "SELECT TestPropertyOne FROM TestRecordType", + "SELECT TestPropertyOne FROM ENTITY TestRecordType", unique=True) assert rt.id is not None assert rt.name is not None @@ -201,7 +201,7 @@ def test_sub1(): def test_sub2(): rt = db.execute_query( - "SELECT TestPropertyTwo.description FROM TestRecordType", + "SELECT TestPropertyTwo.description FROM ENTITY TestRecordType", unique=True) assert rt.id is not None assert rt.name is not None diff --git a/tests/test_server_side_scripting.py b/tests/test_server_side_scripting.py index 5801f98a7b634c2c391d531be42f3c4878cc1d2c..2bb5ba38f9d1c26b0c74d5ae93b533183b273721 100644 --- a/tests/test_server_side_scripting.py +++ b/tests/test_server_side_scripting.py @@ -176,18 +176,18 @@ def test_run_server_side_script_with_file_as_positional_param(): "pos0", "pos1", exit="123", - query="COUNT TestRT", + query="COUNT ENTITY TestRT", files={"-p2": "test_file.txt"}) assert response.stderr is None assert response.code == 123 assert response.call == ('administration/diagnostics.py ' - '--exit=123 --query=COUNT TestRT ' + '--exit=123 --query=COUNT ENTITY TestRT ' 'pos0 pos1 .upload_files/test_file.txt') json_data = json.loads(response.stdout) assert "caosdb" in json_data assert "query" in json_data["caosdb"] - assert json_data["caosdb"]["query"] == ["COUNT TestRT", "1"] + assert json_data["caosdb"]["query"] == ["COUNT ENTITY TestRT", "1"] assert "./.upload_files/test_file.txt" in json_data["files"] @@ -201,16 +201,16 @@ def test_run_server_side_script_with_additional_file(): "pos0", "pos1", exit="123", - query="COUNT TestRT", + query="COUNT ENTITY TestRT", files={"dummykey": "test_file.txt"}) assert response.stderr is None assert response.code == 123 assert response.call == ('administration/diagnostics.py ' - '--exit=123 --query=COUNT TestRT ' + '--exit=123 --query=COUNT ENTITY TestRT ' 'pos0 pos1') json_data = json.loads(response.stdout) - assert json_data["caosdb"]["query"] == ["COUNT TestRT", "1"] + assert json_data["caosdb"]["query"] == ["COUNT ENTITY TestRT", "1"] assert "./.upload_files/test_file.txt" in json_data["files"] @@ -220,7 +220,7 @@ def test_diagnostics_basic(): form = dict() form["call"] = "administration/diagnostics.py" form["-Oexit"] = "123" - form["-Oquery"] = "COUNT TestRT" + form["-Oquery"] = "COUNT ENTITY TestRT" response = get_connection().post_form_data("scripting", form) xml = etree.parse(response) @@ -242,7 +242,7 @@ def test_diagnostics_basic(): assert "exception" not in diagnostics["caosdb"], EXC_ERR assert "query" in diagnostics["caosdb"] - assert diagnostics["caosdb"]["query"][0] == "COUNT TestRT" + assert diagnostics["caosdb"]["query"][0] == "COUNT ENTITY TestRT" assert diagnostics["caosdb"]["query"][1] == "1", ("The RecordType should " "have been found.") assert xml.xpath("/Response/script/@code")[0] == "123", ("The script " diff --git a/tests/test_state.py b/tests/test_state.py index 0b2c510d5c78609e9f9797336687446a7b20e2d6..a8321f87cd4dae4f80efa5bc4a0e52feb204a60a 100644 --- a/tests/test_state.py +++ b/tests/test_state.py @@ -171,7 +171,7 @@ def teardown_function(function): switch_to_admin_user() # deactivate anonymous user db.administration.set_server_property("AUTH_OPTIONAL", "FALSE") - d = db.execute_query("FIND TestRT") + d = db.execute_query("FIND ENTITY TestRT") if len(d) > 0: d.delete(flags={"forceFinalState": "true"}) @@ -254,7 +254,7 @@ def test_state_query(): rec.insert() assert rec.get_property("State") is None - result = db.execute_query("FIND TestRT WITH State = State1", unique=True) + result = db.execute_query("FIND ENTITY TestRT WITH State = State1", unique=True) assert result.id == rec.id assert result.get_property("State") is None diff --git a/tests/test_tickets.py b/tests/test_tickets.py index 7deb0aa5158e27cf55d0f0556950e19be5855dba..106d2f63aeb3c93840a67b86ebd6e51672c3b137 100644 --- a/tests/test_tickets.py +++ b/tests/test_tickets.py @@ -33,7 +33,7 @@ from tests import test_misc def setup_function(function): - d = db.execute_query("FIND Test*") + d = db.execute_query("FIND ENTITY") if len(d) > 0: d.delete() @@ -410,49 +410,43 @@ def test_ticket_139(): rt1 = db.RecordType(name="TestRT1").insert() assert rt1.is_valid() assert "TestRT1" == rt1.name - assert 1 == len(db.execute_query("FIND TestRT1")) + assert 1 == len(db.execute_query("FIND ENTITY TestRT1")) rt1.delete() assert not rt1.is_valid() - assert 0 == len(db.execute_query("FIND TestRT1")) + assert 0 == len(db.execute_query("FIND ENTITY TestRT1")) rt1.insert() assert rt1.is_valid() assert "TestRT1" == rt1.name - assert 1 == len(db.execute_query("FIND TestRT1")) + assert 1 == len(db.execute_query("FIND ENTITY TestRT1")) rt1.delete() assert not rt1.is_valid() - assert 0 == len(db.execute_query("FIND TestRT1")) + assert 0 == len(db.execute_query("FIND ENTITY TestRT1")) assert "TestRT1" == rt1.name def test_ticket_138(): - try: - rt_person = db.RecordType("Person").insert() - rt_person_x = db.RecordType("Person_x") - rt_person_x.add_property(rt_person) - rt_person_x.insert() - - assert 1 == len(rt_person_x.get_properties()) + rt_person = db.RecordType("Person").insert() + rt_person_x = db.RecordType("Person_x") + rt_person_x.add_property(rt_person) + rt_person_x.insert() - rt_person_x.delete() - assert 1 == len(rt_person_x.get_properties()) + assert 1 == len(rt_person_x.get_properties()) - rt_person_x.insert() - assert 1 == len(rt_person_x.get_properties()) + rt_person_x.delete() + assert 1 == len(rt_person_x.get_properties()) - rt_person_x.delete() - assert 1 == len(rt_person_x.get_properties()) + rt_person_x.insert() + assert 1 == len(rt_person_x.get_properties()) - rt_person_x.insert() - assert 1 == len(rt_person_x.get_properties()) + rt_person_x.delete() + assert 1 == len(rt_person_x.get_properties()) - finally: - if len(db.execute_query("FIND Person_x")) > 0: - rt_person_x.delete() - rt_person.delete() + rt_person_x.insert() + assert 1 == len(rt_person_x.get_properties()) def test_ticket_137(): @@ -460,19 +454,16 @@ def test_ticket_137(): rt1 = db.RecordType("TestRT1").insert() assert rt1.is_valid() - crt1 = db.execute_query("FIND TestRT1", unique=True) + crt1 = db.execute_query("FIND ENTITY TestRT1", unique=True) assert crt1.is_valid() assert rt1.id == crt1.id crt1.delete() assert not crt1.is_valid() - assert 0 == len(db.execute_query("FIND TestRT1")) + assert 0 == len(db.execute_query("FIND ENTITY TestRT1")) - try: + with pytest.raises(TransactionError): rt1.insert() - raise AssertionError("This should have raised an TransactionError") - except TransactionError as e: - print(e) @pytest.mark.skip @@ -506,7 +497,7 @@ def test_ticket_39(): finally: os.chmod(testfile, 0o600) - if len(db.execute_query("FIND RT1")) > 0: + if len(db.execute_query("FIND ENTITY RT1")) > 0: rt1.delete() try: os.remove(testfile) @@ -515,7 +506,6 @@ def test_ticket_39(): def test_ticket_128(): - try: db.execute_query(r"FIND 5\#):xw;;-`;BY6~PjsI^*g.$+eY#n.aA9zm") except TransactionError as e: @@ -523,29 +513,25 @@ def test_ticket_128(): def test_ticket_123a(): + p = db.Property( + name="TestDoubleProperty", datatype="Double").insert() + assert p.is_valid() - try: - p = db.Property( - name="TestDoubleProperty", datatype="Double").insert() - assert p.is_valid() - - assert p.id == db.execute_query( - "FIND TestDoubleProperty", unique=True).id - assert p.id == db.execute_query("FIND TestDouble*", unique=True).id - assert p.id == db.execute_query( - "FIND TestD*Property", unique=True).id - assert p.id == db.execute_query( - "FIND *stDoubleProperty", unique=True).id - assert p.id == db.execute_query( - "FIND TestDoubleProperty*", unique=True).id - assert p.id == db.execute_query( - "FIND TestDouble*Property", unique=True).id - assert p.id == db.execute_query( - "FIND *Te*tDoublePr*operty", unique=True).id - assert p.id == db.execute_query( - "FIND *T*oubl*oper*", unique=True).id - finally: - p.delete() + assert p.id == db.execute_query( + "FIND PROPERTY TestDoubleProperty", unique=True).id + assert p.id == db.execute_query("FIND PROPERTY TestDouble*", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY TestD*Property", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY *stDoubleProperty", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY TestDoubleProperty*", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY TestDouble*Property", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY *Te*tDoublePr*operty", unique=True).id + assert p.id == db.execute_query( + "FIND PROPERTY *T*oubl*oper*", unique=True).id def test_ticket_123(): @@ -556,332 +542,279 @@ def test_ticket_123(): assert p.is_valid() assert p.id == db.execute_query( - "FIND <<TestDoubleProperty>>", unique=True).id + "FIND PROPERTY <<TestDoubleProperty>>", unique=True).id assert p.id == db.execute_query( - "FIND <<TestDouble>>", unique=True).id + "FIND PROPERTY <<TestDouble>>", unique=True).id assert p.id == db.execute_query( - "FIND <<TestD.*Property>>", unique=True).id + "FIND PROPERTY <<TestD.*Property>>", unique=True).id assert p.id == db.execute_query( - "FIND <<stDoubleProperty>>", unique=True).id + "FIND PROPERTY <<stDoubleProperty>>", unique=True).id assert p.id == db.execute_query( - "FIND <<TestDoubleProperty>>", unique=True).id + "FIND PROPERTY <<TestDoubleProperty>>", unique=True).id assert p.id == db.execute_query( - "FIND <<TestDoubleProperty>>", unique=True).id + "FIND PROPERTY <<TestDoubleProperty>>", unique=True).id assert p.id == db.execute_query( - "FIND <<TestDoubleProperty>>", unique=True).id + "FIND PROPERTY <<TestDoubleProperty>>", unique=True).id assert p.id == db.execute_query( - "FIND <<Te[asdfgjkle]tDoubl.*oper>>", unique=True).id + "FIND PROPERTY <<Te[asdfgjkle]tDoubl.*oper>>", unique=True).id finally: p.delete() def test_ticket_143(): - - try: - p = db.Property( - name="TestDoubleProperty", datatype="DOUBLE").insert() - assert p.is_valid() - rt = db.RecordType(name="TestRecordType").add_property(p).insert() - assert rt.is_valid() - r1 = db.Record().add_parent(rt).add_property(p, value="1.0").insert() - assert r1.is_valid() - r2 = db.Record().add_parent(rt).add_property(p, value="2.0").insert() - assert r2.is_valid() - - s = db.execute_query("FIND TestRecordType") - assert 3 == len(s) - assert s.is_valid() - - s = db.execute_query("FIND RECORD TestRecordType") - assert 2 == len(s) - assert s.is_valid() - - s = db.execute_query("FIND TestRecordType WITH TestDoubleProperty") - assert 3 == len(s) - assert s.is_valid() - - s = db.execute_query( - "FIND RECORD TestRecordType WITH TestDoubleProperty") - assert 2 == len(s) - assert s.is_valid() - - s = db.execute_query( - "FIND TestRecordType WITH TestDoubleProperty>0") - assert 2 == len(s) - assert s.is_valid() - - s = db.execute_query( - "FIND TestRecordType WITH THE GREATEST TestDoubleProperty>0") - assert 1 == len(s) - assert s.is_valid() - - assert r2.id == db.execute_query( - "FIND TestRecordType WITH THE GREATEST TestDoubleProperty>0", - unique=True).id - assert r2.id == db.execute_query( - "FIND TestRecordType WITH THE GREATEST TestDoubleProperty", - unique=True).id - assert r1.id == db.execute_query( - "FIND TestRecordType WITH THE SMALLEST TestDoubleProperty", - unique=True).id - finally: - try: - r2.delete() - except BaseException: - pass - try: - r1.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = db.Property( + name="TestDoubleProperty", datatype="DOUBLE").insert() + assert p.is_valid() + rt = db.RecordType(name="TestRecordType").add_property(p).insert() + assert rt.is_valid() + r1 = db.Record().add_parent(rt).add_property(p, value="1.0").insert() + assert r1.is_valid() + r2 = db.Record().add_parent(rt).add_property(p, value="2.0").insert() + assert r2.is_valid() + + s = db.execute_query("FIND ENTITY TestRecordType") + assert 3 == len(s) + assert s.is_valid() + + s = db.execute_query("FIND RECORD TestRecordType") + assert 2 == len(s) + assert s.is_valid() + + s = db.execute_query("FIND ENTITY TestRecordType WITH TestDoubleProperty") + assert 3 == len(s) + assert s.is_valid() + + s = db.execute_query( + "FIND RECORD TestRecordType WITH TestDoubleProperty") + assert 2 == len(s) + assert s.is_valid() + + s = db.execute_query( + "FIND ENTITY TestRecordType WITH TestDoubleProperty>0") + assert 2 == len(s) + assert s.is_valid() + + s = db.execute_query( + "FIND ENTITY TestRecordType WITH THE GREATEST TestDoubleProperty>0") + assert 1 == len(s) + assert s.is_valid() + + assert r2.id == db.execute_query( + "FIND ENTITY TestRecordType WITH THE GREATEST TestDoubleProperty>0", + unique=True).id + assert r2.id == db.execute_query( + "FIND ENTITY TestRecordType WITH THE GREATEST TestDoubleProperty", + unique=True).id + assert r1.id == db.execute_query( + "FIND ENTITY TestRecordType WITH THE SMALLEST TestDoubleProperty", + unique=True).id @pytest.mark.slow def test_ticket_147(): - try: - db.execute_query("FIND ticket147_*").delete() - except BaseException: - pass - - try: - # structure - obs = db.Property( - name="ticket147_ObstacleRadius", datatype="DOUBLE").insert() - assert obs.is_valid() - tstep = db.Property( - name="ticket147_TimeStep", datatype="DOUBLE").insert() - assert tstep.is_valid() - bmsim = db.RecordType(name="ticket147_BarkleyModelSimulation" - ).add_property(tstep).insert() - assert bmsim.is_valid() - frm = db.RecordType(name="ticket147_FrequencyMeasurement" - ).add_property(obs).add_property(bmsim).insert() - assert frm.is_valid() - - # data - c = db.Container() - r1 = db.Record().add_parent(bmsim).add_property(tstep, value="0.001") - r2 = db.Record().add_parent(bmsim).add_property(tstep, value="0.001") - r3 = db.Record().add_parent(bmsim).add_property(tstep, value="0.002") - r4 = db.Record().add_parent(bmsim).add_property(tstep, value="0.002") - r5 = db.Record().add_parent(bmsim).add_property(tstep, value="0.003") - c.extend([r1, r2, r3, r4, r5]).insert() - assert c.is_valid() - - for e in c: - assert e.is_valid() - - c2 = db.Container() - r21 = db.Record().add_parent(frm).add_property( - obs, value="1.0").add_property( - id=bmsim.id, value=r1) - r22 = db.Record().add_parent(frm).add_property( - obs, value="2.0").add_property( - id=bmsim.id, value=r2) - r23 = db.Record().add_parent(frm).add_property( - obs, value="2.0").add_property( - id=bmsim.id, value=r3) - r24 = db.Record().add_parent(frm).add_property( - obs, value="3.0").add_property( - id=bmsim.id, value=r4) - r25 = db.Record().add_parent(frm).add_property( - obs, value="3.0").add_property( - id=bmsim.id, value=r5) - c2.extend([r21, r22, r23, r24, r25]).insert() - assert c2.is_valid() - ''' - s = db.execute_query("FIND ticket147*") - assert s.is_valid() - assert 14 == len(s) - - s = db.execute_query("FIND ticket147_Bar*") - assert s.is_valid() - assert 6 == len(s) - - s = db.execute_query("FIND RECORD ticket147_Bar*") - assert s.is_valid() - assert 5 == len(s) - - s = db.execute_query("FIND ticket147_Fre*") - assert s.is_valid() - assert 6 == len(s) - - s = db.execute_query("FIND RECORD ticket147_Fre*") - assert s.is_valid() - assert 5 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius=2.0") - assert s.is_valid() - assert 2 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0'") - assert s.is_valid() - assert 2 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation") - assert s.is_valid() - assert 6 == len(s) - - s = db.execute_query( - "FIND Record ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation") - assert s.is_valid() - assert 5 == len(s)''' - - s = db.execute_query( - "FIND Record ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep" - ) - assert s.is_valid() - assert 5 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation )" - ) - assert s.is_valid() - assert 2 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep)" - ) - assert s.is_valid() - assert 2 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep<='0.0021')" - ) - assert s.is_valid() - assert 2 == len(s) - assert r22.id == s[0].id - assert r23.id == s[1].id - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep='0.002')" - ) - assert s.is_valid() - assert 1 == len(s) - assert r23.id == s[0].id - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius>='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep>='0.002')" - ) - assert s.is_valid() - assert 3 == len(s) - - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep='0.001')" - ) - assert s.is_valid() - assert 1 == len(s) - assert r22.id == s[0].id + # structure + obs = db.Property( + name="ticket147_ObstacleRadius", datatype="DOUBLE").insert() + assert obs.is_valid() + tstep = db.Property( + name="ticket147_TimeStep", datatype="DOUBLE").insert() + assert tstep.is_valid() + bmsim = db.RecordType(name="ticket147_BarkleyModelSimulation" + ).add_property(tstep).insert() + assert bmsim.is_valid() + frm = db.RecordType(name="ticket147_FrequencyMeasurement" + ).add_property(obs).add_property(bmsim).insert() + assert frm.is_valid() - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS ticket147_TimeStep='0.001')" - ) - assert s.is_valid() - assert 1 == len(s) - assert r22.id == s[0].id + # data + c = db.Container() + r1 = db.Record().add_parent(bmsim).add_property(tstep, value="0.001") + r2 = db.Record().add_parent(bmsim).add_property(tstep, value="0.001") + r3 = db.Record().add_parent(bmsim).add_property(tstep, value="0.002") + r4 = db.Record().add_parent(bmsim).add_property(tstep, value="0.002") + r5 = db.Record().add_parent(bmsim).add_property(tstep, value="0.003") + c.extend([r1, r2, r3, r4, r5]).insert() + assert c.is_valid() - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLEST ticket147_TimeStep)" - ) - assert s.is_valid() - assert 1 == len(s) - assert r22.id == s[0].id + for e in c: + assert e.is_valid() + c2 = db.Container() + r21 = db.Record().add_parent(frm).add_property( + obs, value="1.0").add_property( + id=bmsim.id, value=r1) + r22 = db.Record().add_parent(frm).add_property( + obs, value="2.0").add_property( + id=bmsim.id, value=r2) + r23 = db.Record().add_parent(frm).add_property( + obs, value="2.0").add_property( + id=bmsim.id, value=r3) + r24 = db.Record().add_parent(frm).add_property( + obs, value="3.0").add_property( + id=bmsim.id, value=r4) + r25 = db.Record().add_parent(frm).add_property( + obs, value="3.0").add_property( + id=bmsim.id, value=r5) + c2.extend([r21, r22, r23, r24, r25]).insert() + assert c2.is_valid() + ''' + s = db.execute_query("FIND ENTITY ticket147*") + assert s.is_valid() + assert 14 == len(s) + + s = db.execute_query("FIND ENTITY ticket147_Bar*") + assert s.is_valid() + assert 6 == len(s) + + s = db.execute_query("FIND RECORD ticket147_Bar*") + assert s.is_valid() + assert 5 == len(s) + + s = db.execute_query("FIND ENTITY ticket147_Fre*") + assert s.is_valid() + assert 6 == len(s) + + s = db.execute_query("FIND RECORD ticket147_Fre*") + assert s.is_valid() + assert 5 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius=2.0") + assert s.is_valid() + assert 2 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0'") + assert s.is_valid() + assert 2 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation") + assert s.is_valid() + assert 6 == len(s) + + s = db.execute_query( + "FIND Record ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation") + assert s.is_valid() + assert 5 == len(s)''' + + s = db.execute_query( + "FIND Record ticket147_Fre* WHICH HAS A PROPERTY ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep" + ) + assert s.is_valid() + assert 5 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation )" + ) + assert s.is_valid() + assert 2 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep)" + ) + assert s.is_valid() + assert 2 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep<='0.0021')" + ) + assert s.is_valid() + assert 2 == len(s) + assert r22.id == s[0].id + assert r23.id == s[1].id + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep='0.002')" + ) + assert s.is_valid() + assert 1 == len(s) + assert r23.id == s[0].id + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius>='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep>='0.002')" + ) + assert s.is_valid() + assert 3 == len(s) + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS A ticket147_TimeStep='0.001')" + ) + assert s.is_valid() + assert 1 == len(s) + assert r22.id == s[0].id + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS ticket147_TimeStep='0.001')" + ) + assert s.is_valid() + assert 1 == len(s) + assert r22.id == s[0].id + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS A PROPERTY ticket147_ObstacleRadius='2.0' AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLEST ticket147_TimeStep)" + ) + assert s.is_valid() + assert 1 == len(s) + assert r22.id == s[0].id + + s = db.execute_query( + "FIND ENTITY ticket147_Fre* WHICH HAS THE SMALLEST ticket147_ObstacleRadius AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLEST ticket147_TimeStep)" + ) + assert s.is_valid() + assert 1 == len(s) + assert r21.id == s[0].id + + # typo: SMALLES + with pytest.raises(TransactionError): s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS THE SMALLEST ticket147_ObstacleRadius AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLEST ticket147_TimeStep)" + "FIND ENTITY ticket147_Fre* WHICH HAS THE SMALLEST ticket147_ObstacleRadius AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLES ticket147_TimeStep)" ) - assert s.is_valid() - assert 1 == len(s) - assert r21.id == s[0].id - # typo: SMALLES - with pytest.raises(TransactionError): - s = db.execute_query( - "FIND ticket147_Fre* WHICH HAS THE SMALLEST ticket147_ObstacleRadius AND A PROPERTY ( ticket147_BarkleyModelSimulation WHICH HAS THE SMALLES ticket147_TimeStep)" - ) - finally: - try: - c2.delete() - except BaseException: - pass - try: - c.delete() - except BaseException: - pass - try: - frm.delete() - except BaseException: - pass - try: - bmsim.delete() - except BaseException: - pass - try: - tstep.delete() - except BaseException: - pass - try: - obs.delete() - except BaseException: - pass +def test_ticket_89(): + nt_user = db.Property(name="NT_user", datatype="TEXT").insert() + assert nt_user.is_valid() + nt_data = db.RecordType(name="NT_testfile", id=-100) + # nt_data = <File id="-100" name="NT_testfile" + # path="testfiles/NT_test.txt"/> + + nt_data.insert() + assert nt_data.is_valid() + assert 0 == len(nt_data.get_properties()) + # nt_data = + # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> + # <Warning code="106" description="Entity has no description."/> + # </File> + + nt_data.add_property(nt_user, value="user1") + nt_data.update() + assert nt_data.is_valid() + assert 1 == len(nt_data.get_properties()) + + # nt_data = + # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> + # <Warning code="106" description="Entity has no description."/> + # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user1</Property> + # </File> + nt_data.add_property(nt_user, value="user2") + nt_data.update() + assert nt_data.is_valid() + assert 2 == len(nt_data.get_properties()) -def test_ticket_89(): + # nt_data = + # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> + # <Warning code="106" description="Entity has no description."/> + # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user2</Property> + # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user2</Property> + # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user1</Property> + # </File> - try: - nt_user = db.Property(name="NT_user", datatype="TEXT").insert() - assert nt_user.is_valid() - nt_data = db.RecordType(name="NT_testfile", id=-100) - # nt_data = <File id="-100" name="NT_testfile" - # path="testfiles/NT_test.txt"/> - - nt_data.insert() - assert nt_data.is_valid() - assert 0 == len(nt_data.get_properties()) - # nt_data = - # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> - # <Warning code="106" description="Entity has no description."/> - # </File> - - nt_data.add_property(nt_user, value="user1") - nt_data.update() - assert nt_data.is_valid() - assert 1 == len(nt_data.get_properties()) - - # nt_data = - # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> - # <Warning code="106" description="Entity has no description."/> - # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user1</Property> - # </File> - - nt_data.add_property(nt_user, value="user2") - nt_data.update() - assert nt_data.is_valid() - assert 2 == len(nt_data.get_properties()) - - # nt_data = - # <File id="318" cuid="c0c28bad-fb30-4e74-94ad-10934363e755" name="NT_testfile" path="testfiles/NT_test.txt" checksum="cf83e1357eefb8bdf1542850d66d8007d620e4050b5715dc83f4a921d36ce9ce47d0d13c5d85f2b0ff8318d2877eec2f63b931bd47417a81a538327af927da3e" size="0"> - # <Warning code="106" description="Entity has no description."/> - # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user2</Property> - # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user2</Property> - # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user1</Property> - # </File> - - nt_data.retrieve() - assert nt_data.is_valid() - assert 2 == len(nt_data.get_properties()) + nt_data.retrieve() + assert nt_data.is_valid() + assert 2 == len(nt_data.get_properties()) # response: # <Entities> # <File id="318" name="NT_testfile" path="testfiles/NT_test.txt" checksum="CF83E1357EEFB8BDF1542850D66D8007D620E4050B5715DC83F4A921D36CE9CE47D0D13C5D85F2B0FF8318D2877EEC2F63B931BD47417A81A538327AF927DA3E" size="0"> @@ -897,38 +830,20 @@ def test_ticket_89(): # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user2</Property> # <Property id="316" name="NT_user" description="Test Property of type 'string' for nosetests" datatype="TEXT" importance="FIX">user1</Property> # </File> - finally: - try: - db.execute_query("FIND RECORDTYPE NT_testfile").delete( - raise_exception_on_error=False) - except BaseException: - pass - try: - db.execute_query( - "FIND PROPERTY NT_user", - unique=True).delete(raise_exception_on_error=False) - except BaseException: - pass def test_ticket_173(): - try: - assert 0 == db.execute_query("COUNT TestTextProperty") + assert 0 == db.execute_query("COUNT ENTITY TestTextProperty") - p = db.Property( - name="TestTextProperty", - description="simple text property (from test_tickets.py:test_ticket173)", - datatype='text') - p.insert() + p = db.Property( + name="TestTextProperty", + description="simple text property (from test_tickets.py:test_ticket173)", + datatype='text') + p.insert() - assert p.is_valid() - assert 1 == db.execute_query("COUNT TestTextProperty") - finally: - try: - p.delete() - except BaseException: - pass + assert p.is_valid() + assert 1 == db.execute_query("COUNT ENTITY TestTextProperty") def test_ticket_166(): @@ -1006,330 +921,214 @@ def test_ticket_178(): xml = etree.Element("Björn") assert xml.tag == "Björn" - try: - rt = db.RecordType(name="Person") - rt.insert() - - assert rt.is_valid() + rt = db.RecordType(name="Person") + rt.insert() - p = db.Property(name="First name", datatype="TEXT") - p.insert() + assert rt.is_valid() - assert p.is_valid() + p = db.Property(name="First name", datatype="TEXT") + p.insert() - r = db.Record().add_parent(parent=rt).add_property( - name="First name", value="Björn") + assert p.is_valid() - r.insert() + r = db.Record().add_parent(parent=rt).add_property( + name="First name", value="Björn") - assert r.is_valid() + r.insert() - assert db.Record(id=r.id).retrieve().get_property( - "First name").value == "Björn" + assert r.is_valid() - finally: - try: - r.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass + assert db.Record(id=r.id).retrieve().get_property( + "First name").value == "Björn" def test_ticket_124(): + rt = db.RecordType(name="Person") + rt.insert() - try: - rt = db.RecordType(name="Person") - rt.insert() + assert rt.is_valid() - assert rt.is_valid() + p = db.Property(name="First name", datatype="TEXT") + p.insert() - p = db.Property(name="First name", datatype="TEXT") - p.insert() + assert p.is_valid() - assert p.is_valid() + r = db.Record().add_parent(parent=rt).add_property( + name="First name", value="Björn") - r = db.Record().add_parent(parent=rt).add_property( - name="First name", value="Björn") + r.insert() - r.insert() + assert r.is_valid() - assert r.is_valid() - - r2 = db.execute_query("Find Person WITH 'First name'=Björn")[0] - assert r2.is_valid() - assert r2.id == r.id - - finally: - try: - r.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass + r2 = db.execute_query("Find Person WITH 'First name'=Björn")[0] + assert r2.is_valid() + assert r2.id == r.id def test_ticket_163(): + p = db.Property(name="SomePropertyTest", datatype="TEXT") + p.insert() + assert p.is_valid() - try: - p = db.Property(name="SomePropertyTest", datatype="TEXT") - p.insert() - assert p.is_valid() + rt = db.RecordType(name="RecordTypeTest").add_property( + name="SomePropertyTest", importance="obligatory", value="blabla") + rt.insert() + assert rt.is_valid() - rt = db.RecordType(name="RecordTypeTest").add_property( - name="SomePropertyTest", importance="obligatory", value="blabla") - rt.insert() - assert rt.is_valid() + rt2 = db.execute_query( + "FIND Entity . SomePropertyTest=blabla", unique=True) + assert rt2.is_valid() - rt2 = db.execute_query( - "FIND Entity . SomePropertyTest=blabla", unique=True) - assert rt2.is_valid() - - assert rt2.id == rt.id - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + assert rt2.id == rt.id def test_ticket_165(): - try: - db.execute_query("FIND Test*").delete() - except BaseException: - pass - try: - p = db.Property(name="TestComment", datatype="TEXT") - - rt_a = db.RecordType(name="TestAnnotation").add_property( - name="TestComment") - rt_a.datatype = "REFERENCE" - - rt_b = db.RecordType(name="TestEntity") - - assert isinstance(rt_a, db.Entity) - r_a = db.Record().add_parent(rt_a).add_property( - name="TestComment", value="blablabla") - r_a.value = rt_b - - c = db.Container().extend([p, rt_a, rt_b, r_a]).insert() - assert c.is_valid() - - for e in c: - assert e.is_valid() - - assert rt_b.id == db.execute_query( - "FIND TestEntity WHICH IS REFERENCED BY TestAnnotation", unique=True).id - assert rt_b.id == db.execute_query( - "FIND Entity WHICH IS REFERENCED BY TestAnnotation", unique=True).id - assert rt_b.id == db.execute_query( - "FIND RecordType WHICH IS REFERENCED BY TestAnnotation", unique=True).id - assert 0 == len(db.execute_query( - "FIND Record WHICH IS REFERENCED BY TestAnnotation")) - - assert rt_b.id == db.execute_query( - "FIND TestEntity WHICH IS REFERENCED WITH TestComment", unique=True).id - assert rt_b.id == db.execute_query( - "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", - unique=True).id - assert rt_b.id == db.execute_query( - "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment", - unique=True).id - assert 0 == len(db.execute_query( - "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment")) + p = db.Property(name="TestComment", datatype="TEXT") - assert rt_b.id == db.execute_query( - "FIND TestEntity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", - unique=True).id - assert rt_b.id == db.execute_query( - "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", - unique=True).id - assert rt_b.id == db.execute_query( - "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment", - unique=True).id - assert 0 == len(db.execute_query( - "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment")) + rt_a = db.RecordType(name="TestAnnotation").add_property( + name="TestComment") + rt_a.datatype = "REFERENCE" - assert rt_b.id == db.execute_query( - "FIND TestEntity WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", - unique=True).id - assert rt_b.id == db.execute_query( - "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", - unique=True).id - assert rt_b.id == db.execute_query( - "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", - unique=True).id - assert 0 == len(db.execute_query( - "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'")) + rt_b = db.RecordType(name="TestEntity") - c.delete() + assert isinstance(rt_a, db.Entity) + r_a = db.Record().add_parent(rt_a).add_property( + name="TestComment", value="blablabla") + r_a.value = rt_b - finally: - try: - db.execute_query("FIND Test*").delete() - except BaseException: - pass - try: - r_a.delete() - except BaseException: - pass - try: - rt_b.delete() - except BaseException: - pass - try: - rt_b.delete() - except BaseException: - pass - try: - rt_a.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass - - -def test_ticket_174(): + c = db.Container().extend([p, rt_a, rt_b, r_a]).insert() + assert c.is_valid() - try: + for e in c: + assert e.is_valid() - p1 = db.Property(name="Ticket174_P1", datatype="INTEGER") - p2 = db.Property(name="Ticket174_P2", datatype="DOUBLE") - rt1 = db.RecordType(name="Ticket174_RecordType1").add_property( - p1, value=1).add_property( - p2, value=2) - rt2 = db.RecordType(name="Ticket174_RecordType2").add_property( - p2, value=1).add_property( - p1, value=2) - rt3 = db.RecordType(name="Ticket174_RecordType3").add_property( - p1, value=1).add_property( - p1, value=2).add_property( - p2, value=3) - rt4 = db.RecordType(name="Ticket174_RecordType4").add_property( - p2, value=1).add_property( - p1, value=2).add_property( - p1, value=3).add_property( - p2, value=4) + assert rt_b.id == db.execute_query( + "FIND ENTITY TestEntity WHICH IS REFERENCED BY TestAnnotation", unique=True).id + assert rt_b.id == db.execute_query( + "FIND Entity WHICH IS REFERENCED BY TestAnnotation", unique=True).id + assert rt_b.id == db.execute_query( + "FIND RecordType WHICH IS REFERENCED BY TestAnnotation", unique=True).id + assert 0 == len(db.execute_query( + "FIND Record WHICH IS REFERENCED BY TestAnnotation")) + + assert rt_b.id == db.execute_query( + "FIND ENTITY TestEntity WHICH IS REFERENCED WITH TestComment", unique=True).id + assert rt_b.id == db.execute_query( + "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", + unique=True).id + assert rt_b.id == db.execute_query( + "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment", + unique=True).id + assert 0 == len(db.execute_query( + "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment")) + + assert rt_b.id == db.execute_query( + "FIND ENTITY TestEntity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", + unique=True).id + assert rt_b.id == db.execute_query( + "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment", + unique=True).id + assert rt_b.id == db.execute_query( + "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment", + unique=True).id + assert 0 == len(db.execute_query( + "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment")) + + assert rt_b.id == db.execute_query( + "FIND ENTITY TestEntity WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", + unique=True).id + assert rt_b.id == db.execute_query( + "FIND Entity WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", + unique=True).id + assert rt_b.id == db.execute_query( + "FIND RecordType WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'", + unique=True).id + assert 0 == len(db.execute_query( + "FIND Record WHICH IS REFERENCED BY TestAnnotation WITH TestComment='blablabla'")) - c = db.Container().extend([p1, p2, rt1, rt2, rt3, rt4]).insert() - assert c.is_valid() +def test_ticket_174(): + p1 = db.Property(name="Ticket174_P1", datatype="INTEGER") + p2 = db.Property(name="Ticket174_P2", datatype="DOUBLE") + rt1 = db.RecordType(name="Ticket174_RecordType1").add_property( + p1, value=1).add_property( + p2, value=2) + rt2 = db.RecordType(name="Ticket174_RecordType2").add_property( + p2, value=1).add_property( + p1, value=2) + rt3 = db.RecordType(name="Ticket174_RecordType3").add_property( + p1, value=1).add_property( + p1, value=2).add_property( + p2, value=3) + rt4 = db.RecordType(name="Ticket174_RecordType4").add_property( + p2, value=1).add_property( + p1, value=2).add_property( + p1, value=3).add_property( + p2, value=4) + + c = db.Container().extend([p1, p2, rt1, rt2, rt3, rt4]).insert() - assert rt1.is_valid() + assert c.is_valid() - for i in range(len(rt1.get_properties())): - assert i + 1.0 == float(rt1.get_properties()[i].value) + assert rt1.is_valid() - assert rt2.is_valid() + for i in range(len(rt1.get_properties())): + assert i + 1.0 == float(rt1.get_properties()[i].value) - for i in range(len(rt2.get_properties())): - assert i + 1.0 == float(rt2.get_properties()[i].value) + assert rt2.is_valid() - assert rt3.is_valid() + for i in range(len(rt2.get_properties())): + assert i + 1.0 == float(rt2.get_properties()[i].value) - for i in range(len(rt3.get_properties())): - assert i + 1.0 == float(rt3.get_properties()[i].value) + assert rt3.is_valid() - assert rt4.is_valid() + for i in range(len(rt3.get_properties())): + assert i + 1.0 == float(rt3.get_properties()[i].value) - for i in range(len(rt4.get_properties())): - assert i + 1.0 == float(rt4.get_properties()[i].value) + assert rt4.is_valid() - # change order: - rt4_i1 = rt4.get_properties()[1] - rt4_i2 = rt4.get_properties()[2] - rt4.get_properties()[2] = rt4_i1 - rt4.get_properties()[1] = rt4_i2 - rt4.update() + for i in range(len(rt4.get_properties())): + assert i + 1.0 == float(rt4.get_properties()[i].value) - assert rt4.is_valid() + # change order: + rt4_i1 = rt4.get_properties()[1] + rt4_i2 = rt4.get_properties()[2] + rt4.get_properties()[2] = rt4_i1 + rt4.get_properties()[1] = rt4_i2 + rt4.update() - assert 1.0 == float(rt4.get_properties()[0].value) - assert 3.0 == float(rt4.get_properties()[1].value) - assert 2.0 == float(rt4.get_properties()[2].value) - assert 4.0 == float(rt4.get_properties()[3].value) + assert rt4.is_valid() - # retrieve again: - rt42 = db.execute_query("FIND Ticket174_RecordType4", unique=True) + assert 1.0 == float(rt4.get_properties()[0].value) + assert 3.0 == float(rt4.get_properties()[1].value) + assert 2.0 == float(rt4.get_properties()[2].value) + assert 4.0 == float(rt4.get_properties()[3].value) - assert 1.0 == float(rt42.get_properties()[0].value) - assert 3.0 == float(rt42.get_properties()[1].value) - assert 2.0 == float(rt42.get_properties()[2].value) - assert 4.0 == float(rt42.get_properties()[3].value) + # retrieve again: + rt42 = db.execute_query("FIND ENTITY Ticket174_RecordType4", unique=True) - c.delete() - finally: - try: - rt1.delete() - except BaseException: - pass - try: - rt2.delete() - except BaseException: - pass - try: - rt3.delete() - except BaseException: - pass - try: - rt4.delete() - except BaseException: - pass - try: - p2.delete() - except BaseException: - pass - try: - p1.delete() - except BaseException: - pass + assert 1.0 == float(rt42.get_properties()[0].value) + assert 3.0 == float(rt42.get_properties()[1].value) + assert 2.0 == float(rt42.get_properties()[2].value) + assert 4.0 == float(rt42.get_properties()[3].value) def test_ticket_192(): import time if time.localtime().tm_hour > time.gmtime().tm_hour: - try: - rt = db.RecordType(name="SimulationTestRecordType").insert() - rec = db.Record().add_parent(rt).insert() - - assert rec.id == db.execute_query( - "FIND Record SimulationTestRecordType WHICH WAS CREATED BY ME", unique=True).id - assert rec.id == db.execute_query( - "FIND Record SimulationTestRecordType WHICH WAS CREATED TODAY", unique=True).id - assert rec.id == db.execute_query( - "FIND Record SimulationTestRecordType WHICH WAS CREATED TODAY BY ME", - unique=True).id - assert rec.id == db.execute_query( - "FIND Record WHICH WAS CREATED TODAY BY ME", unique=True).id - finally: - try: - rec.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass + rt = db.RecordType(name="SimulationTestRecordType").insert() + rec = db.Record().add_parent(rt).insert() + + assert rec.id == db.execute_query( + "FIND Record SimulationTestRecordType WHICH WAS CREATED BY ME", unique=True).id + assert rec.id == db.execute_query( + "FIND Record SimulationTestRecordType WHICH WAS CREATED TODAY", unique=True).id + assert rec.id == db.execute_query( + "FIND Record SimulationTestRecordType WHICH WAS CREATED TODAY BY ME", + unique=True).id + assert rec.id == db.execute_query( + "FIND Record WHICH WAS CREATED TODAY BY ME", unique=True).id def test_ticket_200(): @@ -1372,7 +1171,7 @@ def test_ticket_155(): datatype="TEXT").insert() assert p.is_valid() assert p.description == "standard desc" - p2 = db.execute_query("FIND TestTextProperty", True) + p2 = db.execute_query("FIND PROPERTY TestTextProperty", True) assert p2.is_valid() assert p2.description == "standard desc" @@ -1381,7 +1180,7 @@ def test_ticket_155(): assert rt.is_valid() assert rt.get_property( "TestTextProperty").description == "overridden standard desc" - rt2 = db.execute_query("FIND TestRecordType", True) + rt2 = db.execute_query("FIND ENTITY TestRecordType", True) assert rt2.is_valid() assert rt2.get_property( "TestTextProperty").description == "overridden standard desc" @@ -1392,7 +1191,7 @@ def test_ticket_155(): assert rt3.get_property( "TestTextProperty").description == "overridden standard desc" - rt4 = db.execute_query("FIND TestRecordType2", True) + rt4 = db.execute_query("FIND ENTITY TestRecordType2", True) assert rt4.is_valid() assert rt4.get_property( "TestTextProperty").description == "overridden standard desc" @@ -1431,7 +1230,7 @@ def test_ticket_115(): c.insert() assert c.is_valid() - rtc = db.execute_query("FIND TestRecordType", unique=True) + rtc = db.execute_query("FIND ENTITY TestRecordType", unique=True) assert len(rtc.get_properties()) == 2 rtc.get_properties().remove("TestDoubleProperty1") diff --git a/tests/test_tickets_200.py b/tests/test_tickets_200.py index 1b242c865f9020be629a5a86efd0016edeca74fa..b6af11aef5d37903fb53de2a96c48a3e44ac98df 100644 --- a/tests/test_tickets_200.py +++ b/tests/test_tickets_200.py @@ -25,17 +25,19 @@ """ from __future__ import print_function, unicode_literals -from nose.tools import (assert_equal, assert_is_none, assert_is_not_none, - assert_true) from pytest import raises import caosdb as h from caosdb.common.models import Property, RecordType +def setup_function(function): + setup_module() + + def setup_module(): try: - h.execute_query("FIND Simple*").delete() + h.execute_query("FIND ENTITY").delete() except Exception as e: print(e) @@ -45,150 +47,94 @@ def teardown_module(): def test_ticket_208(): + c = h.Container() + rt1 = h.RecordType(name="SimpleRecordType") + c.append(rt1) - try: - c = h.Container() - rt1 = h.RecordType(name="SimpleRecordType") - c.append(rt1) + for i in range(10): + rec = h.Record(name="SimpleRecord" + str(i)).add_parent(rt1) + c.append(rec) - for i in range(10): - rec = h.Record(name="SimpleRecord" + str(i)).add_parent(rt1) - c.append(rec) + c.insert() + assert c.is_valid() - c.insert() - assert_true(c.is_valid()) + q = h.Query("FIND ENTITY SimpleRecordType") + rs = q.execute() + assert rs.is_valid() + assert len(rs) == 11 - q = h.Query("FIND SimpleRecordType") - rs = q.execute() - assert_true(rs.is_valid()) - assert_equal(len(rs), 11) + q = h.Query("FIND Record SimpleRecordType") + rs = q.execute() + assert rs.is_valid() + assert len(rs) == 10 - q = h.Query("FIND Record SimpleRecordType") - rs = q.execute() - assert_true(rs.is_valid()) - assert_equal(len(rs), 10) + q.putFlag("P", "0L3") + rs = q.execute() + assert rs.is_valid() + assert len(rs) == 3 - q.putFlag("P", "0L3") - rs = q.execute() - assert_true(rs.is_valid()) - assert_equal(len(rs), 3) + for i in range(3): + assert rs.get_entity_by_name("SimpleRecord" + str(i)) is not None - for i in range(3): - assert_is_not_none(rs.get_entity_by_name("SimpleRecord" + str(i))) + q.putFlag("P", "5L3") + rs = q.execute() + assert rs.is_valid() + assert len(rs) == 3 - q.putFlag("P", "5L3") - rs = q.execute() - assert_true(rs.is_valid()) - assert_equal(len(rs), 3) - - for i in range(5, 8): - assert_is_not_none(rs.get_entity_by_name("SimpleRecord" + str(i))) - - finally: - try: - c.delete() - except BaseException: - pass + for i in range(5, 8): + assert rs.get_entity_by_name("SimpleRecord" + str(i)) is not None def test_ticket_203(): - try: - - rt1 = h.RecordType(name="SimpleRecordType").add_property( - name="File", datatype=h.REFERENCE).insert() - assert_true(rt1.is_valid()) - - finally: - try: - rt1.delete() - except BaseException: - pass + rt1 = h.RecordType(name="SimpleRecordType").add_property( + name="File", datatype=h.REFERENCE).insert() + assert rt1.is_valid() def test_ticket_202(): - try: + p = h.Property(name="bla", datatype=h.TEXT).insert() + assert p.is_valid() - p = h.Property(name="bla", datatype=h.TEXT).insert() - assert_true(p.is_valid()) + rt1 = h.RecordType(name="SimpleRecordType").add_property( + p, importance=h.OBLIGATORY).insert() + assert rt1.is_valid() - rt1 = h.RecordType(name="SimpleRecordType").add_property( - p, importance=h.OBLIGATORY).insert() - assert_true(rt1.is_valid()) - - rt2 = h.RecordType(name="SimpleRecordType2").add_parent( - rt1, inheritance=h.OBLIGATORY).insert() - assert_true(rt2.is_valid()) - rt2.add_property(id=p.id, name="bla2").update() - assert_true(rt2.is_valid()) - assert_is_not_none(rt2.get_property("bla")) - assert_is_not_none(rt2.get_property("bla2")) - - finally: - try: - rt2.delete() - except BaseException: - pass - try: - rt1.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + rt2 = h.RecordType(name="SimpleRecordType2").add_parent( + rt1, inheritance=h.OBLIGATORY).insert() + assert rt2.is_valid() + rt2.add_property(id=p.id, name="bla2").update() + assert rt2.is_valid() + assert rt2.get_property("bla") is not None + assert rt2.get_property("bla2") is not None def test_ticket_201(): - try: - - p1 = h.Property(name="FirstName", datatype=h.TEXT).insert() - p2 = h.Property(name="LastName", datatype=h.TEXT).insert() - assert_true(p1.is_valid()) - assert_true(p2.is_valid()) + p1 = h.Property(name="FirstName", datatype=h.TEXT).insert() + p2 = h.Property(name="LastName", datatype=h.TEXT).insert() + assert p1.is_valid() + assert p2.is_valid() - rt1 = h.RecordType(name="SimpleRecordType").add_property( - p1, importance=h.OBLIGATORY).add_property( - p2, importance=h.OBLIGATORY).insert() - assert_true(rt1.is_valid()) + rt1 = h.RecordType(name="SimpleRecordType").add_property( + p1, importance=h.OBLIGATORY).add_property( + p2, importance=h.OBLIGATORY).insert() + assert rt1.is_valid() - rt2 = h.RecordType(name="SimpleRecordType2").add_parent( - rt1, inheritance=h.OBLIGATORY).add_property( - p2, importance=h.OBLIGATORY).insert() - assert_true(rt2.is_valid()) - assert_equal(len(rt2.get_properties()), 2) - assert_is_not_none(rt2.get_property("FirstName")) - assert_is_not_none(rt2.get_property("LastName")) - - finally: - try: - rt2.delete() - except BaseException: - pass - try: - rt1.delete() - except BaseException: - pass - try: - p1.delete() - except BaseException: - pass - try: - p2.delete() - except BaseException: - pass + rt2 = h.RecordType(name="SimpleRecordType2").add_parent( + rt1, inheritance=h.OBLIGATORY).add_property( + p2, importance=h.OBLIGATORY).insert() + assert rt2.is_valid() + assert len(rt2.get_properties()) == 2 + assert rt2.get_property("FirstName") is not None + assert rt2.get_property("LastName") is not None def test_ticket_204(): RT1 = h.RecordType(name="one") RT2 = h.RecordType(name="two").add_property(RT1, name="one_and_only") - assert_equal( - RT2.__str__(), - '<RecordType name="two">\n <Property name="one_and_only" datatype="one" importance="RECOMMENDED" flag="inheritance:FIX"/>\n</RecordType>\n') - assert_equal(RT2.get_properties()[0].__str__(), - '<Property name="one_and_only" datatype="one"/>\n') - assert_equal(RT2.get_properties()[0].datatype.__str__(), - '<RecordType name="one"/>\n') + assert RT2.__str__() == '<RecordType name="two">\n <Property name="one_and_only" datatype="one" importance="RECOMMENDED" flag="inheritance:FIX"/>\n</RecordType>\n' + assert RT2.get_properties()[0].__str__() == '<Property name="one_and_only" datatype="one"/>\n' + assert RT2.get_properties()[0].datatype.__str__() == '<RecordType name="one"/>\n' def test_ticket_232(): @@ -202,22 +148,19 @@ def test_ticket_232(): # h.get_connection().retrieve(uri) c = h.Container().extend(uri).retrieve(raise_exception_on_error=False) - assert_equal(len(c), 1000) + assert len(c) == 1000 def test_ticket_216(): """Tests creation and printing of a reference Property. """ - try: - RT = RecordType(name="RT") - p = Property(name="refProperty", datatype=RT) - assert_equal(str(p), '<Property name="refProperty" datatype="RT"/>\n') + RT = RecordType(name="RT") + p = Property(name="refProperty", datatype=RT) + assert str(p) == '<Property name="refProperty" datatype="RT"/>\n' - RT = RecordType() - p = Property(name="refProperty", datatype=RT) - assert_is_not_none(str(p)) - finally: - pass + RT = RecordType() + p = Property(name="refProperty", datatype=RT) + assert str(p) is not None def test_ticket_221(): @@ -228,10 +171,7 @@ def test_ticket_221(): RT2.add_property( property=h.Property(name="test_property_with_RT1", datatype=RT1)) - assert_equal( - repr(RT2), - '<RecordType name="TestRT2">\n <Property name="test_property_with_RT1" datatype="TestRT1" importance="RECOMMENDED" flag="inheritance:FIX"/>\n</RecordType>\n' - ) + assert repr(RT2) == '<RecordType name="TestRT2">\n <Property name="test_property_with_RT1" datatype="TestRT1" importance="RECOMMENDED" flag="inheritance:FIX"/>\n</RecordType>\n' def test_ticket_237(): @@ -242,43 +182,43 @@ def test_ticket_237(): pickup="pickup1", file="file1", thumbnail="thumbnail1") - assert_equal(f1.name, "name1") - assert_equal(f1.path, "path1") - assert_equal(f1.pickup, "pickup1") - assert_equal(f1.file, "file1") - assert_equal(f1.thumbnail, "thumbnail1") + assert f1.name == "name1" + assert f1.path == "path1" + assert f1.pickup == "pickup1" + assert f1.file == "file1" + assert f1.thumbnail == "thumbnail1" f2 = h.File(name="name2") - assert_equal(f2.name, "name2") - assert_is_none(f2.path) - assert_is_none(f2.pickup) - assert_is_none(f2.file) - assert_is_none(f2.thumbnail) + assert f2.name == "name2" + assert f2.path is None + assert f2.pickup is None + assert f2.file is None + assert f2.thumbnail is None f2._wrap(f1) - assert_equal(f2.name, "name2") - assert_equal(f2.path, "path1") - assert_equal(f2.pickup, "pickup1") - assert_equal(f2.file, "file1") - assert_equal(f2.thumbnail, "thumbnail1") + assert f2.name == "name2" + assert f2.path == "path1" + assert f2.pickup == "pickup1" + assert f2.file == "file1" + assert f2.thumbnail == "thumbnail1" f2.path = "path2" f2.pickup = "pickup2" f2.file = "file2" f2.thumbnail = "thumbnail2" - assert_equal(f2.name, "name2") - assert_equal(f2.path, "path2") - assert_equal(f2.pickup, "pickup2") - assert_equal(f2.file, "file2") - assert_equal(f2.thumbnail, "thumbnail2") + assert f2.name == "name2" + assert f2.path == "path2" + assert f2.pickup == "pickup2" + assert f2.file == "file2" + assert f2.thumbnail == "thumbnail2" - assert_equal(f1.name, "name1") - assert_equal(f1.path, "path1") - assert_equal(f1.pickup, "pickup1") - assert_equal(f1.file, "file1") - assert_equal(f1.thumbnail, "thumbnail1") + assert f1.name == "name1" + assert f1.path == "path1" + assert f1.pickup == "pickup1" + assert f1.file == "file1" + assert f1.thumbnail == "thumbnail1" def test_ticket_238(): @@ -288,175 +228,108 @@ def test_ticket_238(): p2 = h.Property(id=-1) p3 = h.Property() c.append(p1) - assert_equal(len(c), 1) + assert len(c) == 1 c.remove(p1) - assert_equal(len(c), 0) + assert len(c) == 0 c.extend([p1, p2, p3]) - assert_equal(len(c), 3) + assert len(c) == 3 c.remove(p3) - assert_equal(len(c), 2) - assert_is_not_none(c.get_entity_by_id(-1)) - assert_is_not_none(c.get_entity_by_name("bla")) + assert len(c) == 2 + assert c.get_entity_by_id(-1) is not None + assert c.get_entity_by_name("bla") is not None def test_ticket_239(): - try: - h.configure_connection() - p = h.Property( - name="SimpleReferenceProperty", datatype=h.REFERENCE).insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() - assert_true(rt.is_valid()) - - rec1 = h.Record(name="SimpleRecord1").add_parent(rt) - - rec2 = h.Record(name="SimpleRecord2").add_parent(rt).add_property( - p, value="SimpleRecord1") - - c = h.Container().extend([rec1, rec2]).insert() - assert_true(c.is_valid()) - assert_true(rec1.is_valid()) - assert_true(rec2.is_valid()) - - rec4 = h.Record(name="SimpleRecord4").add_parent(rt).add_property( - p, value="SimpleRecord3") - - c = h.Container().extend([rec4]) - with raises(h.TransactionError) as te: - c.insert() - assert te.value.has_error(h.UnqualifiedPropertiesError) - assert c[0].get_property("SimpleReferenceProperty").get_errors()[ - 0].description == "Referenced entity does not exist." - - rec3 = h.Record(name="SimpleRecord3").add_parent(rt) - c = h.Container().extend([rec3, rec4]).insert() - assert_true(c.is_valid()) - assert_true(rec4.is_valid()) - assert_true(rec3.is_valid()) - - rec5 = h.Record(name="SimpleRecord5").add_parent(rt).add_property( - p, value="SimpleRecord3").insert() - assert_true(rec5.is_valid()) - assert_equal( - int(rec5.get_property("SimpleReferenceProperty").value), rec3.id) + h.configure_connection() + p = h.Property( + name="SimpleReferenceProperty", datatype=h.REFERENCE).insert() + assert p.is_valid() - finally: - try: - rec5.delete() - except BaseException: - pass - try: - rec4.delete() - except BaseException: - pass - try: - rec3.delete() - except BaseException: - pass - try: - rec2.delete() - except BaseException: - pass - try: - rec1.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() + assert rt.is_valid() + rec1 = h.Record(name="SimpleRecord1").add_parent(rt) -def test_ticket_240(): - try: - # try: - # h.execute_query("FIND Simple*").delete() - # except: - # pass - p = h.Property(name="SimpleProperty", datatype=h.DOUBLE).insert() - assert_true(p.is_valid()) + rec2 = h.Record(name="SimpleRecord2").add_parent(rt).add_property( + p, value="SimpleRecord1") - rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() - assert_true(rt.is_valid()) + c = h.Container().extend([rec1, rec2]).insert() + assert c.is_valid() + assert rec1.is_valid() + assert rec2.is_valid() - rec1 = h.Record(name="SimpleRecord1").add_parent(rt).insert() + rec4 = h.Record(name="SimpleRecord4").add_parent(rt).add_property( + p, value="SimpleRecord3") - rec2 = h.Record(name="SimpleRecord2").add_parent(rt).add_property( - p, value=2.0).insert() + c = h.Container().extend([rec4]) + with raises(h.TransactionError) as te: + c.insert() + assert te.value.has_error(h.UnqualifiedPropertiesError) + assert c[0].get_property("SimpleReferenceProperty").get_errors()[ + 0].description == "Referenced entity does not exist." - rec3 = h.Record(name="SimpleRecord3").add_parent(rt).add_property( - p, value=1.0).insert() + rec3 = h.Record(name="SimpleRecord3").add_parent(rt) + c = h.Container().extend([rec3, rec4]).insert() + assert c.is_valid() + assert rec4.is_valid() + assert rec3.is_valid() - c = h.execute_query( - "FIND Record SimpleRecordType WHICH HAS A SimpleProperty='2.0'", - unique=True) - assert_equal(c.id, rec2.id) + rec5 = h.Record(name="SimpleRecord5").add_parent(rt).add_property( + p, value="SimpleRecord3").insert() + assert rec5.is_valid() + assert int(rec5.get_property("SimpleReferenceProperty").value) == rec3.id - c = h.execute_query( - "FIND Record SimpleRecordType WHICH HAS A SimpleProperty='1.0'", - unique=True) - assert_equal(c.id, rec3.id) - c = h.execute_query( - "FIND Record SimpleRecordType WHICH HAS A SimpleProperty!='1.0'", - unique=True) - assert_equal(c.id, rec2.id) +def test_ticket_240(): + p = h.Property(name="SimpleProperty", datatype=h.DOUBLE).insert() + assert p.is_valid() - c = h.execute_query( - "FIND Record SimpleRecordType WHICH HAS A SimpleProperty!='2.0'", - unique=True) - assert_equal(c.id, rec3.id) + rt = h.RecordType(name="SimpleRecordType").add_property(p).insert() + assert rt.is_valid() - c = h.execute_query( - "FIND Record SimpleRecordType WHICH DOESN'T HAVE A SimpleProperty='1.0'" - ) - assert_equal(len(c), 2) - assert_is_not_none(c.get_entity_by_id(rec1.id)) - assert_is_not_none(c.get_entity_by_id(rec2.id)) + rec1 = h.Record(name="SimpleRecord1").add_parent(rt).insert() - finally: - try: - rec3.delete() - except BaseException: - pass - try: - rec2.delete() - except BaseException: - pass - try: - rec1.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + rec2 = h.Record(name="SimpleRecord2").add_parent(rt).add_property( + p, value=2.0).insert() + rec3 = h.Record(name="SimpleRecord3").add_parent(rt).add_property( + p, value=1.0).insert() -def test_ticket_247(): - try: + c = h.execute_query( + "FIND Record SimpleRecordType WHICH HAS A SimpleProperty='2.0'", + unique=True) + assert c.id == rec2.id - p = h.Property( - name="SimpleProperty", datatype=h.DOUBLE, unit="1").insert() - assert_true(p.is_valid()) + c = h.execute_query( + "FIND Record SimpleRecordType WHICH HAS A SimpleProperty='1.0'", + unique=True) + assert c.id == rec3.id - finally: - try: - p.delete() - except BaseException: - pass + c = h.execute_query( + "FIND Record SimpleRecordType WHICH HAS A SimpleProperty!='1.0'", + unique=True) + assert c.id == rec2.id + + c = h.execute_query( + "FIND Record SimpleRecordType WHICH HAS A SimpleProperty!='2.0'", + unique=True) + assert c.id == rec3.id + + c = h.execute_query( + "FIND Record SimpleRecordType WHICH DOESN'T HAVE A SimpleProperty='1.0'" + ) + assert len(c) == 2 + assert c.get_entity_by_id(rec1.id) is not None + assert c.get_entity_by_id(rec2.id) is not None + + +def test_ticket_247(): + p = h.Property( + name="SimpleProperty", datatype=h.DOUBLE, unit="1").insert() + assert p.is_valid() def test_ticket_243(): @@ -478,92 +351,57 @@ def test_ticket_256(): path="testfiles/testfilewithcolon:initsname.dat", file="test.dat") file_.insert() - assert_true(file_.is_valid()) + assert file_.is_valid() ret = h.execute_query( "FIND FILE WHICH IS STORED AT testfiles/testfilewithcolon:initsname.dat", unique=True) - assert_equal(ret.id, file_.id) + assert ret.id == file_.id ret = h.execute_query( "FIND FILE WHICH IS STORED AT *colon:initsname.dat", unique=True) - assert_equal(ret.id, file_.id) + assert ret.id == file_.id finally: try: import os os.remove("test.dat") except BaseException: pass - try: - file_.delete() - except BaseException: - pass def test_ticket_228(): - try: - p1 = h.Property(name="SimpleProperty1", datatype=h.DOUBLE).insert() - p2 = h.Property(name="SimpleProperty_2", datatype=h.DOUBLE).insert() - p3 = h.Property(name="SimpleProperty.3", datatype=h.DOUBLE).insert() - assert_true(p1.is_valid()) - assert_true(p2.is_valid()) - assert_true(p3.is_valid()) - - assert_equal(h.execute_query("FIND *_*", unique=True).id, p2.id) - assert_equal( - len(h.execute_query("FIND *.*", raise_exception_on_error=False)), - 0) - assert_equal(h.execute_query("FIND '*.*'", unique=True).id, p3.id) - - p4 = h.Property(name="^.^", datatype=h.DOUBLE).insert() - assert_true(p4.is_valid()) - assert_equal(len(h.execute_query("FIND ^.^")), 0) - assert_equal(h.execute_query("FIND '^.^'", unique=True).id, p4.id) + p1 = h.Property(name="SimpleProperty1", datatype=h.DOUBLE).insert() + p2 = h.Property(name="SimpleProperty_2", datatype=h.DOUBLE).insert() + p3 = h.Property(name="SimpleProperty.3", datatype=h.DOUBLE).insert() + assert p1.is_valid() + assert p2.is_valid() + assert p3.is_valid() - finally: - try: - p4.delete() - except BaseException: - pass - try: - p3.delete() - except BaseException: - pass - try: - p2.delete() - except BaseException: - pass - try: - p1.delete() - except BaseException: - pass + assert h.execute_query("FIND ENTITY *_*", unique=True).id == p2.id + assert len(h.execute_query("FIND ENTITY *.*", raise_exception_on_error=False)) == 0 + assert h.execute_query("FIND ENTITY '*.*'", unique=True).id == p3.id + p4 = h.Property(name="^.^", datatype=h.DOUBLE).insert() + assert p4.is_valid() + assert len(h.execute_query("FIND ENTITY ^.^")) == 0 + assert h.execute_query("FIND ENTITY '^.^'", unique=True).id == p4.id -def test_ticket_231(): - try: - p1 = h.Property(name="Publication", datatype=h.TEXT).insert() - assert_equal( - h.execute_query("FIND publication", unique=True).id, p1.id) - assert_equal(h.Property("publication").retrieve().id, p1.id) - assert_equal(h.Entity("publication").retrieve().id, p1.id) +def test_ticket_231(): + p1 = h.Property(name="Publication", datatype=h.TEXT).insert() - finally: - try: - p1.delete() - except BaseException: - pass + assert h.execute_query("FIND ENTITY publication", unique=True).id == p1.id + assert h.Property("publication").retrieve().id == p1.id + assert h.Entity("publication").retrieve().id == p1.id def test_ticket_241(): q = h.Query("FIND RECORD WHICH HAS been created by some*") q.execute(raise_exception_on_error=False) - assert_is_not_none(q.messages["Info"]) - assert_equal( - q.messages["Info"], - ("Regular expression and like patterns are not implemented for transactor names yet.", - None)) + assert q.messages["Info"] is not None + assert q.messages["Info"] == ( + "Regular expression and like patterns are not implemented for transactor names yet.", None) def test_ticket_233(): diff --git a/tests/test_unit.py b/tests/test_unit.py index e02ccdc73534bc838c0b6670e125149da6224e93..fb2a403adc9e5f1bd204f40cbd2d5d248cf3827e 100644 --- a/tests/test_unit.py +++ b/tests/test_unit.py @@ -27,388 +27,282 @@ """ from __future__ import unicode_literals import caosdb as h -from nose.tools import assert_true, assert_equal # @UnresolvedImport def setup_module(): try: - h.execute_query("FIND Simple*").delete() + h.execute_query("FIND ENTITY").delete() except BaseException: pass def teardown_module(): - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass + setup_module() + + +def teardown_function(function): + setup_module() def test_km_1(): # insert with base unit and search for base unit and derived unit - try: + p = h.Property( + name="SimpleDoubleProperty", + datatype=h.DOUBLE, + unit="m") + p.insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3140) + rt.insert() + + rt2 = h.execute_query("FIND ENTITY SimpleRecordType", True) + assert rt2.is_valid() + assert rt2.id, rt.id + assert rt2.get_property("SimpleDoubleProperty").unit == "m" + assert rt2.get_property("SimpleDoubleProperty").value == 3140.0 + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3140.0m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id - p = h.Property( - name="SimpleDoubleProperty", - datatype=h.DOUBLE, - unit="m") - p.insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3140) - rt.insert() - - rt2 = h.execute_query("FIND SimpleRecordType", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - assert_equal(rt2.get_property("SimpleDoubleProperty").unit, "m") - assert_equal(rt2.get_property("SimpleDoubleProperty").value, 3140.0) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3140.0m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3140m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3.14km'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3140m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3.14km'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_km_2(): # insert with derived unit and search for base unit and derived unit - try: + p = h.Property( + name="SimpleDoubleProperty", + datatype="DOUBLE", + unit="km") + p.insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3.14) + rt.insert() + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3.14km'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3140.0m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id - p = h.Property( - name="SimpleDoubleProperty", - datatype="DOUBLE", - unit="km") - p.insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3.14) - rt.insert() - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3.14km'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3140.0m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='3140m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='3140m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_celsius_1(): # insert with base unit and search for base unit and derived unit - try: - p = h.Property( - name="SimpleDoubleProperty", - datatype=h.DOUBLE, - unit="K") - p.insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p, value=0) - rt.insert() - - rt2 = h.execute_query("FIND SimpleRecordType", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - assert_equal(rt2.get_property("SimpleDoubleProperty").unit, "K") - assert_equal(rt2.get_property("SimpleDoubleProperty").value, 0.0) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='0.0K'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='0K'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='-273.15°C'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleDoubleProperty", + datatype=h.DOUBLE, + unit="K") + p.insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p, value=0) + rt.insert() + + rt2 = h.execute_query("FIND ENTITY SimpleRecordType", True) + assert rt2.is_valid() + assert rt2.id, rt.id + assert rt2.get_property("SimpleDoubleProperty").unit == "K" + assert rt2.get_property("SimpleDoubleProperty").value == 0.0 + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='0.0K'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='0K'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='-273.15°C'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_celsius_2(): # insert with derived unit and search for base unit and derived unit - try: - p = h.Property( - name="SimpleDoubleProperty", - datatype="DOUBLE", - unit="°C") - p.insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p, value=0) - rt.insert() - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='0.0°C'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='0°C'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleDoubleProperty='273.15K'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleDoubleProperty", + datatype="DOUBLE", + unit="°C") + p.insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p, value=0) + rt.insert() + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='0.0°C'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='0°C'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleDoubleProperty='273.15K'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_int(): # insert with base unit and search for base unit and derived unit - try: - p = h.Property( - name="SimpleIntegerProperty", - datatype=h.INTEGER, - unit="m") - p.insert() - assert_true(p.is_valid()) - - rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3140) - rt.insert() - - rt2 = h.execute_query("FIND SimpleRecordType", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - assert_equal(rt2.get_property("SimpleIntegerProperty").unit, "m") - assert_equal(rt2.get_property("SimpleIntegerProperty").value, 3140) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3140m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3140.0m'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3.14km'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='314000cm'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='314000.0cm'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleIntegerProperty", + datatype=h.INTEGER, + unit="m") + p.insert() + assert p.is_valid() + + rt = h.RecordType(name="SimpleRecordType").add_property(p, value=3140) + rt.insert() + + rt2 = h.execute_query("FIND ENTITY SimpleRecordType", True) + assert rt2.is_valid() + assert rt2.id, rt.id + assert rt2.get_property("SimpleIntegerProperty").unit == "m" + assert rt2.get_property("SimpleIntegerProperty").value == 3140 + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3140m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3140.0m'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3.14km'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='314000cm'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='314000.0cm'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_unknown_unit(): # insert unknown unit - try: - p = h.Property( - name="SimpleIntegerProperty", - datatype=h.INTEGER, - unit="my_unit") - p.insert() - assert_true(p.is_valid()) - assert_equal(len(p.get_warnings()), 1) - assert_equal( - p.get_warnings()[0].description, - "Unknown unit. Values with this unit cannot be converted to other units when used in search queries.") - - rt = h.RecordType( - name="SimpleRecordType").add_property( - p, value="3140") - rt.insert() - - rt2 = h.execute_query("FIND SimpleRecordType", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - assert_equal( - rt2.get_property("SimpleIntegerProperty").unit, - "my_unit") - assert_equal(rt2.get_property("SimpleIntegerProperty").value, 3140) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3140'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3140my_unit'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - rt2 = h.execute_query( - "FIND SimpleRecordType.SimpleIntegerProperty='3140.0my_unit'", True) - assert_true(rt2.is_valid()) - assert_true(rt2.id, rt.id) - - finally: - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleIntegerProperty", + datatype=h.INTEGER, + unit="my_unit") + p.insert() + assert p.is_valid() + assert len(p.get_warnings()) == 1 + assert p.get_warnings()[ + 0].description == "Unknown unit. Values with this unit cannot be converted to other units when used in search queries." + + rt = h.RecordType( + name="SimpleRecordType").add_property( + p, value="3140") + rt.insert() + + rt2 = h.execute_query("FIND ENTITY SimpleRecordType", True) + assert rt2.is_valid() + assert rt2.id, rt.id + assert rt2.get_property("SimpleIntegerProperty").unit == "my_unit" + assert rt2.get_property("SimpleIntegerProperty").value == 3140 + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3140'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3140my_unit'", True) + assert rt2.is_valid() + assert rt2.id, rt.id + + rt2 = h.execute_query( + "FIND ENTITY SimpleRecordType.SimpleIntegerProperty='3140.0my_unit'", True) + assert rt2.is_valid() + assert rt2.id, rt.id def test_greatest(): # insert unknown unit - try: - try: - h.execute_query("FIND Simple*").delete() - except BaseException: - pass - p = h.Property( - name="SimpleDoubleProperty", - datatype=h.DOUBLE, - unit="m") - p.insert() - - rt = h.RecordType(name="SimpleRecordType").add_property(p) - rt.insert() - - rec1 = h.Record(name="SimpleRecord1").add_parent( - rt).add_property(p, unit="km", value="1").insert() - rec2 = h.Record(name="SimpleRecord2").add_parent( - rt).add_property(p, unit="km", value="2").insert() - rec3 = h.Record( - name="SimpleRecord3").add_parent(rt).add_property( - p, unit="m", value="200").insert() - - assert_true(rec1.is_valid()) - assert_true(rec2.is_valid()) - assert_true(rec3.is_valid()) - - c = h.execute_query( - "FIND SimpleRecord* WHICH HAS THE GREATEST SimpleDoubleProperty", - unique=True) - assert_equal(c.id, rec2.id) - - c = h.execute_query( - "FIND SimpleRecord* WHICH HAS THE SMALLEST SimpleDoubleProperty", - unique=True) - assert_equal(c.id, rec3.id) - - rec4 = h.Record( - name="SimpleRecord4").add_parent(rt).add_property( - p, unit="bla", value="150").insert() - assert_true(rec4.is_valid()) - - c = h.execute_query( - "FIND SimpleRecord* WHICH HAS THE GREATEST SimpleDoubleProperty") - assert_equal(c[0].id, rec3.id) - assert_equal( - c.get_warnings()[0].description, - "The filter POV(SimpleDoubleProperty,NULL,NULL) with the aggregate function 'max' could not match the values against each other with their units. The values had different base units. Only their numric value had been taken into account.") - - c = h.execute_query( - "FIND SimpleRecord* WHICH HAS THE SMALLEST SimpleDoubleProperty", - unique=True) - assert_equal(c.id, rec1.id) - assert_equal( - c.get_warnings()[0].description, - "The filter POV(SimpleDoubleProperty,NULL,NULL) with the aggregate function 'min' could not match the values against each other with their units. The values had different base units. Only their numric value had been taken into account.") - - finally: - try: - rec4.delete() - except BaseException: - pass - try: - rec3.delete() - except BaseException: - pass - try: - rec2.delete() - except BaseException: - pass - try: - rec1.delete() - except BaseException: - pass - try: - rt.delete() - except BaseException: - pass - try: - p.delete() - except BaseException: - pass + p = h.Property( + name="SimpleDoubleProperty", + datatype=h.DOUBLE, + unit="m") + p.insert() + + rt = h.RecordType(name="SimpleRecordType").add_property(p) + rt.insert() + + rec1 = h.Record(name="SimpleRecord1").add_parent( + rt).add_property(p, unit="km", value="1").insert() + rec2 = h.Record(name="SimpleRecord2").add_parent( + rt).add_property(p, unit="km", value="2").insert() + rec3 = h.Record( + name="SimpleRecord3").add_parent(rt).add_property( + p, unit="m", value="200").insert() + + assert rec1.is_valid() + assert rec2.is_valid() + assert rec3.is_valid() + + c = h.execute_query( + "FIND ENTITY SimpleRecord* WHICH HAS THE GREATEST SimpleDoubleProperty", + unique=True) + assert c.id == rec2.id + + c = h.execute_query( + "FIND ENTITY SimpleRecord* WHICH HAS THE SMALLEST SimpleDoubleProperty", + unique=True) + assert c.id == rec3.id + + rec4 = h.Record( + name="SimpleRecord4").add_parent(rt).add_property( + p, unit="bla", value="150").insert() + assert rec4.is_valid() + + c = h.execute_query( + "FIND ENTITY SimpleRecord* WHICH HAS THE GREATEST SimpleDoubleProperty") + assert c[0].id == rec3.id + assert c.get_warnings()[0].description, "The filter POV(SimpleDoubleProperty,NULL == NULL) with the aggregate function 'max' could not match the values against each other with their units. The values had different base units. Only their numric value had been taken into account." + + c = h.execute_query( + "FIND ENTITY SimpleRecord* WHICH HAS THE SMALLEST SimpleDoubleProperty", + unique=True) + assert c.id == rec1.id + assert c.get_warnings()[0].description, "The filter POV(SimpleDoubleProperty,NULL == NULL) with the aggregate function 'min' could not match the values against each other with their units. The values had different base units. Only their numric value had been taken into account." diff --git a/tests/test_version.py b/tests/test_version.py index 4d19aaae7d90c808b891042cc78484fba85bddcb..cedd710f16575dc530b2b8d0708cffc1681523e6 100644 --- a/tests/test_version.py +++ b/tests/test_version.py @@ -26,7 +26,7 @@ import caosdb as c def setup_function(function): - d = c.execute_query("FIND Test*") + d = c.execute_query("FIND ENTITY Test*") if len(d) > 0: d.delete() @@ -116,9 +116,9 @@ def test_update_parent(): third_version = rt.version # now retrieve and look again - assert c.execute_query("FIND TestRTParent1", unique=True).id == par1.id - assert len(c.execute_query("FIND TestRTParent2")) == 2 - assert c.execute_query("FIND TestRTChild", unique=True).id == rt.id + assert c.execute_query("FIND ENTITY TestRTParent1", unique=True).id == par1.id + assert len(c.execute_query("FIND ENTITY TestRTParent2")) == 2 + assert c.execute_query("FIND ENTITY TestRTChild", unique=True).id == rt.id rt_head = c.Container().retrieve( query=str( @@ -533,7 +533,7 @@ def test_reference_version_head(): id=str(versioned_rec.id), ver=version) test_rec = c.execute_query( - "FIND TestRec2 WHICH HAS A TestReferencedObject", unique=True) + "FIND ENTITY TestRec2 WHICH HAS A TestReferencedObject", unique=True) assert test_rec.get_property(ref_rt).value == "{id}@{ver}".format( id=str(versioned_rec.id), ver=version) @@ -546,7 +546,7 @@ def test_reference_version_head(): id=str(versioned_rec.id), ver=old_head), "after update still old head" test_rec = c.execute_query( - "FIND TestRec2 WHICH HAS A TestReferencedObject", unique=True) + "FIND ENTITY TestRec2 WHICH HAS A TestReferencedObject", unique=True) assert test_rec.get_property(ref_rt).value == "{id}@{ver}".format( id=str(versioned_rec.id), ver=old_head), "after query old head" @@ -663,7 +663,7 @@ def test_reference_version_old(): id=str(versioned_rec.id), ver=old_head) test_rec = c.execute_query( - "FIND TestRec2 WHICH HAS A TestReferencedObject", unique=True) + "FIND ENTITY TestRec2 WHICH HAS A TestReferencedObject", unique=True) assert test_rec.get_property(ref_rt).value == "{id}@{ver}".format( id=str(versioned_rec.id), ver=old_head) @@ -680,7 +680,7 @@ def test_reference_no_version(): assert rec.get_property(ref_rt).value == versioned_rec.id test_rec = c.execute_query( - "FIND TestRec2 WHICH HAS A TestReferencedObject", unique=True) + "FIND ENTITY TestRec2 WHICH HAS A TestReferencedObject", unique=True) assert test_rec.get_property(ref_rt).value == versioned_rec.id @@ -714,7 +714,7 @@ def test_reference_head_minus_in_separate_container(): str(rec1.id) + "@HEAD~2"]) rec2.insert() - test_rec = c.execute_query("FIND TestRecord2", unique=True) + test_rec = c.execute_query("FIND ENTITY TestRecord2", unique=True) assert test_rec.get_property("TestRT").value == [rec1.id, str(rec1.id) + "@" + v3, str(rec1.id) + "@" + v2, @@ -725,7 +725,7 @@ def test_properties_no_version(): c.Property("TestProperty", datatype=c.TEXT).insert() c.RecordType("TestRT").add_property("TestProperty").insert() - rt = c.execute_query("FIND TestRT", unique=True) + rt = c.execute_query("FIND ENTITY TestRT", unique=True) p = rt.get_property("TestProperty") assert p.version is None