def test_client_returned_record():
    ci = FooClientInterface.create()

    number1 = 10
    number2 = -10
    some_record = FooSomeOtherRecord(number1, number2)

    record_id = 28
    content = "Hello World"
    set_rec = FooClientReturnedRecord(record_id, content, some_record)

    ci.set_record(set_rec)
    get_rec = ci.get_record()

    assert set_rec.record_id == record_id and \
           set_rec.content == content and \
           set_rec.some_record.__dict__ == some_record.__dict__

    print("Forcing garbage collection in test_client_interface_py")
    set_rec = None
    get_rec = None
    some_record = None
    gc.collect()

    FooClientReturnedRecord.check_c_data_set_empty()
    FooSomeOtherRecord.check_c_data_set_empty()
示例#2
0
def test_client_returned_record():
    ci = FooClientInterface.create()

    number1 = 10
    number2 = -10
    some_record = FooSomeOtherRecord(number1, number2)

    record_id = 28
    content = "Hello World"
    set_rec = FooClientReturnedRecord(record_id, content, some_record)

    ci.set_record(set_rec)
    get_rec = ci.get_record()

    assert set_rec.record_id == record_id and \
           set_rec.content == content and \
           set_rec.some_record.__dict__ == some_record.__dict__

    print ("Forcing garbage collection in test_client_interface_py")
    set_rec = None
    get_rec = None
    some_record = None
    gc.collect()

    FooClientReturnedRecord.check_c_data_set_empty()
    FooSomeOtherRecord.check_c_data_set_empty()
 def check_c_data_set_empty():
     assert len(ListRecordFooSomeOtherRecordHelper.c_data_set) == 0
     FooSomeOtherRecord.check_c_data_set_empty()
 def check_c_data_set_empty():
     assert len(ListRecordFooSomeOtherRecordHelper.c_data_set) == 0
     FooSomeOtherRecord.check_c_data_set_empty()
 def check_c_data_set_empty():
     assert len(FooClientReturnedRecord.c_data_set) == 0
     FooSomeOtherRecord.check_c_data_set_empty()
示例#6
0
def test_set_get_record():
    ci = FooContainersInterface.create()

    optional_list_int = None
    list_int = list([5, 6, 7, 8, 9])
    list_int_2 = list_int  # possible to use same list as argument twice, as we use multiset
    list_binary = list([b'some_binary', b'some_other_binary'])
    list_string1 = list(['hi', '', 'bye'])
    list_string2 = list(['hi2', '', 'bye2'])
    list_list_string = list([list_string1, list_string2])
    number1 = 10
    number2 = -10
    some_record_1 = FooSomeOtherRecord(number1, number2)
    some_record_2 = FooSomeOtherRecord(number1 * 2, number2 * 2)
    list_record = list([some_record_1, some_record_2])
    set_record = set([some_record_1, some_record_1])
    optional_map_string_int = None
    map_string_int = dict([('josh', 4139), ('anna', 4127), ('jack', 4098)])
    map_string_string = dict([('josh', 'val1'), ('anna', 'val2'),
                              ('jack', 'val3')])
    list_date1 = list([datetime.datetime(2007, 4, 17, 1, 2, 3)])
    list_date2 = list([datetime.datetime(2007, 4, 17, 1, 2, 4)])
    map_int_list_date = dict([(18, list_date1), (5, list_date2)])
    optional_set_string = None
    set_string = set(['hi', 'bye'])
    map_int_set_string = dict([(18, set_string)])
    map_optional_int_set_string = dict([(18, set_string), (None, set_string)])
    list_optional_binary = list([b'some_binary', None])
    map_optional_string_optional_string = dict([('anna', None), (None, None)])
    set_optional_string = set(['hi', None])
    # set_record = set(list[some_record_1, some_record_2])

    # Passing optional list as argument
    ci.set_optional_list_int(list_int)
    assert ci.get_optional_list_int() == list_int
    ci.set_optional_list_int(None)
    assert ci.get_optional_list_int() is None

    # Passing optional map as argument
    ci.set_optional_map_string_int(map_string_int)
    assert ci.get_optional_map_string_int() == map_string_int
    ci.set_optional_map_string_int(None)
    assert ci.get_optional_map_string_int() is None

    # Passing non-Nones for the optional arguments
    set_get(ci, list_int_2, list_int, list_binary, list_binary, list_list_string, \
     list_record, map_string_int, map_string_int, map_string_string, map_string_string, map_int_list_date, \
       set_string, set_string, set_string, map_int_set_string, map_optional_int_set_string)

    set_get(ci, list(), list(), list(), list(), list(list()), list(), dict(),
            dict(), dict(), dict(), dict(), set(), set(), set(), dict(),
            dict())

    # Passing Nones for the optional arguments
    set_get(ci, optional_list_int, list_int, list_binary, list_optional_binary, list_list_string, \
     list_record, optional_map_string_int, map_string_int, map_string_string, map_optional_string_optional_string, map_int_list_date, \
      optional_set_string, set_string, set_optional_string, map_int_set_string, map_optional_int_set_string)

    # Passing non-None for optional record argument
    set_get_optional(ci, list(), list(), list(), list(), list(list()), list(),
                     dict(), dict(), dict(), dict(), dict(), set(), set(),
                     set(), dict(), dict())
    set_get_optional(ci, optional_list_int, list_int, list_binary, list_optional_binary, list_list_string, \
     list_record, optional_map_string_int, map_string_int, map_string_string, map_optional_string_optional_string, map_int_list_date, \
      optional_set_string, set_string, set_optional_string, map_int_set_string, map_optional_int_set_string)

    # Passing None for optional record argument
    ci.set_optional_containers_record(None)
    get_rec = ci.get_optional_containers_record()
    assert get_rec is None

    print("Forcing garbage collection")
    set_rec = None
    get_rec = None
    some_record_2 = None
    some_record_1 = None
    list_record = None
    # set_record = None
    list_string1 = None
    list_string2 = None
    list_list_string = None

    list_date1 = None
    list_date2 = None
    map_int_list_date = None
    gc.collect()

    FooContainersRecord.check_c_data_set_empty()
    FooSomeOtherRecord.check_c_data_set_empty()