def compare_acl(test_set): acl, subject, expected, unexpected = test_set conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) bucket = conn.create_bucket(TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({"subject": TEST_FILE, "target": REMOTE_FILE}) proxy.upload(**args) # for sake of testing, ensure equality key_name = os.path.basename(REMOTE_FILE) key = bucket.get_key(key_name) key.set_canned_acl(acl) args = vars(_parse_args(['compare-acl', subject, acl])) radu.compare_acl(**args) out = [line.strip() for line in sys.stdout.getvalue().split("\n")] sys.stdout.truncate(0) for msg in expected: errmsg = "Expecting log message containing '{0}'".format(msg) assert_in(msg, out, msg=errmsg) for msg in unexpected: errmsg = "Not expecting log message containing '{0}'".format(msg) assert_not_in(msg, out, msg=errmsg)
def set_acl_subject(test_set, acl): subject, expected, unexpected = test_set conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) proxy.make_bucket(subject=TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({"subject": TEST_FILE, "target": subject}) proxy.upload(**args) sys.stdout.truncate(0) args = vars(_parse_args(['set-acl', subject, acl])) radu.set_acl(**args) out = [line.strip() for line in sys.stdout.getvalue().split("\n")] sys.stdout.truncate(0) for msg in expected: errmsg = "Expecting log message containing '{0}'".format(msg) assert_in(msg, out, msg=errmsg) for msg in unexpected: errmsg = "Not expecting log message containing '{0}'".format(msg) assert_not_in(msg, out, msg=errmsg)
def compare_acl(test_set): acl, subject, expected, unexpected = test_set conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) bucket = conn.create_bucket(TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({ "subject": TEST_FILE, "target": REMOTE_FILE }) proxy.upload(**args) # for sake of testing, ensure equality key_name = os.path.basename(REMOTE_FILE) key = bucket.get_key(key_name) key.set_canned_acl(acl) args = vars(_parse_args(['compare-acl', subject, acl])) radu.compare_acl(**args) out = [line.strip() for line in sys.stdout.getvalue().split("\n")] sys.stdout.truncate(0) for msg in expected: errmsg = "Expecting log message containing '{0}'".format(msg) assert_in(msg, out, msg=errmsg) for msg in unexpected: errmsg = "Not expecting log message containing '{0}'".format(msg) assert_not_in(msg, out, msg=errmsg)
def set_acl_subject(test_set, acl): subject, expected, unexpected = test_set conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) proxy.make_bucket(subject=TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({ "subject": TEST_FILE, "target": subject }) proxy.upload(**args) sys.stdout.truncate(0) args = vars(_parse_args(['set-acl', subject, acl])) radu.set_acl(**args) out = [line.strip() for line in sys.stdout.getvalue().split("\n")] sys.stdout.truncate(0) for msg in expected: errmsg = "Expecting log message containing '{0}'".format(msg) assert_in(msg, out, msg=errmsg) for msg in unexpected: errmsg = "Not expecting log message containing '{0}'".format(msg) assert_not_in(msg, out, msg=errmsg)
def set_acl_canned_fail(acl): conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) proxy.make_bucket(subject=TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({"subject": TEST_FILE, "target": REMOTE_FILE}) proxy.upload(**args) sys.stdout.truncate(0) args = vars(_parse_args(['set-acl', REMOTE_FILE, acl])) radu.set_acl(**args)
def allow_user(method, test_set): subject, flags, expected, unexpected = test_set conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) proxy.make_bucket(subject=TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({"subject": TEST_FILE, "target": subject}) proxy.upload(**args) sys.stdout.truncate(0) flags = flags.split(' ') args = [arg for arg in flags + [method, ALT_USER, subject] if arg] args = vars(_parse_args(args)) getattr(radu, args.get("command").replace('-', '_'))(**args) out = [line.strip() for line in sys.stdout.getvalue().split("\n")] sys.stdout.truncate(0) for msg in expected: errmsg = "Expecting log message containing '{0}'".format(msg) if msg not in out: p = 1 assert_in(msg, out, msg=errmsg) for msg in unexpected: errmsg = "Not expecting log message containing '{0}'".format(msg) assert_not_in(msg, out, msg=errmsg)
def set_acl_canned_fail(acl): conn = boto.connect_s3() proxy = RadulaProxy(connection=conn) radu = Radula(connection=conn) proxy.make_bucket(subject=TEST_BUCKET) # give something to download args = vars(_parse_args(['up'])) args.update({ "subject": TEST_FILE, "target": REMOTE_FILE }) proxy.upload(**args) sys.stdout.truncate(0) args = vars(_parse_args(['set-acl', REMOTE_FILE, acl])) radu.set_acl(**args)