Example #1
0
def check_ttl(key, expected_ttl):
	"""
	Ensures that the given key has the given TTL.
	"""
	meta_key, meta_ttl, record = lib.read_record(lib.SET, key)
	lib.validate_record(key, record, [u"value"], [u"value"])
	lib.validate_meta(key, meta_key, meta_ttl, False, expected_ttl)
def check_bins(set_name, key, bin_names, value):
	"""
	Ensures that the given key has the given bins with the given value.
	"""
	meta_key, meta_ttl, record = lib.read_record(set_name, key)
	values = [value] * len(bin_names)
	lib.validate_record(key, record, bin_names, values)
	lib.validate_meta(key, meta_key, meta_ttl)
def check_values(set_name, key, values):
	"""
	Ensures that the given key has bins "bin-0" ... "bin-<n>" with the n given values.
	"""
	meta_key, meta_ttl, record = lib.read_record(set_name, key)
	bin_names = [u"bin-" + str(index) for index in xrange(len(values))]
	lib.validate_record(key, record, bin_names, values)
	lib.validate_meta(key, meta_key, meta_ttl)
Example #4
0
def check_bins_unique():
	"""
	Verifies restore with --unique.
	"""
	record = lib.read_record(lib.SET, "key-1")[2]
	lib.validate_record("key-1", record, [u"bin-1", u"bin-2"], [u"value-1b", u"value-2b"])
	record = lib.read_record(lib.SET, "key-2")[2]
	lib.validate_record("key-2", record, [u"bin-1", u"bin-2"], [u"value-1b", u"value-2b"])
Example #5
0
def check_bins_replace_no_gen():
	"""
	Verifies restore with --replace and --no-generation.
	"""
	record = lib.read_record(lib.SET, "key-1")[2]
	lib.validate_record("key-1", record, [u"bin-1"], [u"value-1a"])
	record = lib.read_record(lib.SET, "key-2")[2]
	lib.validate_record("key-2", record, [u"bin-1"], [u"value-1a"])
Example #6
0
def check_bins_no_policy():
	"""
	Verifies restore without any policy options.
	"""
	record = lib.read_record(lib.SET, "key-1")[2]
	lib.validate_record("key-1", record, [u"bin-1", u"bin-2"], [u"value-1a", u"value-2b"])
	record = lib.read_record(lib.SET, "key-2")[2]
	lib.validate_record("key-2", record, [u"bin-1", u"bin-2"], [u"value-1b", u"value-2b"])
Example #7
0
def check_values(set_name, key, values):
	"""
	Ensures that the given key has bins "bin-0" ... "bin-<n>" with the n given values.
	"""
	meta_key, meta_ttl, record = lib.read_record(set_name, key)
	bin_names = [u"bin-" + str(index) for index in xrange(len(values))]
	lib.validate_record(key, record, bin_names, values)
	lib.validate_meta(key, meta_key, meta_ttl)
def check_bins(set_name, key, bin_names, value):
    """
	Ensures that the given key has the given bins with the given value.
	"""
    meta_key, meta_ttl, record = lib.read_record(set_name, key)
    values = [value] * len(bin_names)
    lib.validate_record(key, record, bin_names, values)
    lib.validate_meta(key, meta_key, meta_ttl)
def check_sets(set_names, key, bin_name, value):
	"""
	Ensures that the given key has the given bin with the given value
	across all given sets.
	"""
	for set_name in set_names:
		meta_key, meta_ttl, record = lib.read_record(set_name, key)
		lib.validate_record(key, record, [bin_name], [value])
		lib.validate_meta(key, meta_key, meta_ttl)
Example #10
0
def check_sets(set_names, key, bin_name, value):
    """
	Ensures that the given key has the given bin with the given value
	across all given sets.
	"""
    for set_name in set_names:
        meta_key, meta_ttl, record = lib.read_record(set_name, key)
        lib.validate_record(key, record, [bin_name], [value])
        lib.validate_meta(key, meta_key, meta_ttl)
def check_keys(set_name, keys, value, expect_key):
	"""
	Ensures that the given keys have a single "value" bin with the given value.

	We use a scan here, so that we can honor the expect_key flag. A get operation
	wouldn't allow us to determine whether a record in the database has a user key
	or not.
	"""
	records = lib.read_all_records(set_name)

	for key in keys:
		digest = lib.get_key_digest(set_name, key)
		meta_key, meta_ttl, record = records[str(digest).encode("hex")]
		lib.validate_record(key, record, [u"value"], [value])
		lib.validate_meta(key, meta_key, meta_ttl, expect_key)
def check_keys(set_name, keys, value, expect_key):
    """
	Ensures that the given keys have a single "value" bin with the given value.

	We use a scan here, so that we can honor the expect_key flag. A get operation
	wouldn't allow us to determine whether a record in the database has a user key
	or not.
	"""
    records = lib.read_all_records(set_name)

    for key in keys:
        digest = lib.get_key_digest(set_name, key)
        meta_key, meta_ttl, record = records[str(digest).encode("hex")]
        lib.validate_record(key, record, [u"value"], [value])
        lib.validate_meta(key, meta_key, meta_ttl, expect_key)