コード例 #1
0
def test_indexes_searching(session, recovery, indexes, dropped_groups):
    """Testing that after recovery operation searching by indexes, which were not available
    in some groups before recovery operation, will return all keys for each index in each group."""
    for index in indexes:
        for group in session.groups:
            restricted_session = session.clone()
            restricted_session.set_groups([group])

            result_keys = restricted_session.find_all_indexes([index]).get()
            result_keys_ids = [key.id for key in result_keys]

            expected_keys = utils.get_expected_keys(recovery, group, index, dropped_groups)
            for expected_key in expected_keys:
                assert_that(result_keys_ids, hasitem(session.transform(expected_key)),
                            'Expected key "{}" not found when was searching for index "{}" '
                            'in group {}'.format(expected_key, index, group))
コード例 #2
0
def test_key_index_data(session, recovery, indexes, dropped_groups):
    """Testing that after recovery operation key-index data will be correct for all keys,
    which had to be recovered or were available before recovery operation."""
    for index in indexes:
        for group in session.groups:
            restricted_session = session.clone()
            restricted_session.set_groups([group])

            expected_keys = utils.get_expected_keys(recovery, group, index, dropped_groups)
            for expected_key in expected_keys:
                key_indexes = restricted_session.list_indexes(expected_key).get()
                filtered_data = [index_entry.data for index_entry in key_indexes
                                 if index_entry.index == restricted_session.transform(index)]
                key_index_data = filtered_data[0]
                assert_that(key_index_data, equal_to(utils.index_data_format(expected_key, index)),
                            'Key-index (key = "{}", index = "{}") data mismatch in group {}'
                            .format(expected_key, index, group))