def test_024_check_queue_exists(self): """Checks if queue exists.""" url = self.cfg.base_url + '/queues/qtestqueue' http.put(url, self.header) result = http.get(url, self.header) self.assertEqual(result.status_code, 204) result = http.head(url, self.header) self.assertEqual(result.status_code, 204)
def test_016_queue_insert_metadata_size65535(self): """Updates Queue with metadata_size = 65535.""" url = self.cfg.base_url + '/queues/qtestqueue' result = http.put(url, self.header) url = self.cfg.base_url + '/queues/qtestqueue/metadata' doc = functionlib.get_custom_body({"metadatasize": 65535}) result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 204) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc))
def test_008_insert_queue_nonASCII_name(self): """Insert Queue with non ASCII name.""" url = self.cfg.base_url + '/queues/汉字漢字' doc = '{"queue": "non ASCII name"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400)
def test_020_queue_insert_metadata_invalidchar(self): """Update Queues with invalid char in metadata.""" url = self.cfg.base_url + '/queues/qtestqueue' doc = '{"queue": "#$%^&Apple"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400)
def test_016_queue_insert_long_queuename(self): """Insert queue with name > 64 bytes.""" url = self.cfg.base_url + queuefnlib.get_queue_name() doc = '{"queue": "Longer than allowed queue name"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400)
def test_015_queue_insert_nonASCII_metadata(self): """Insert Queue with non ASCII name.""" url = self.cfg.base_url + '/queues/nonASCIImetadata' result = http.put(url, self.header) url = self.cfg.base_url + '/queues/nonASCIImetadata/metadata' doc = '{"汉字": "non ASCII metadata"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 204) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) url = self.cfg.base_url + '/queues/nonASCIImetadata' result = http.delete(url, self.header)
def test_018_queue_insert_metadata_size65537(self): """Updates Queue with metadata_size = 65537.""" url = self.cfg.base_url + '/queues/qtestqueue/metadata' doc = functionlib.get_custom_body({"metadatasize": 65537}) result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400)
def test_004_insert_queue_invalid_authtoken(self): """Insert Queue with invalid authtoken.""" url = self.cfg.base_url + '/queues/invalidauthtoken' header = functionlib.invalid_auth_token_header() result = http.put(url, header) self.assertEqual(result.status_code, 401)
def test_000_message_setup(self): """Create Queue for Message Tests.""" url = self.cfg.base_url + '/queues/messagetestqueue' doc = '{"queuemetadata": "message test queue"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 201)
def test_010_insert_queue_hyphenated_queuename(self): """Insert queue with hyphen in name.""" url = self.cfg.base_url + '/queues/hyphen-name' result = http.put(url, self.header) self.assertEqual(result.status_code, 201) http.delete(url, self.header)
def test_013_queue_metadata_invalid_authtoken(self): """Update Queue with invalid authtoken.""" url = self.cfg.base_url + '/queues/qtestqueue/metadata' header = functionlib.invalid_auth_token_header() doc = '{"queue": "invalid auth token"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 401)
def test_014_queue_metadata_toplevel_underscore(self): """Insert Queue with underscore in toplevel field.""" url = self.cfg.base_url + '/queues/toplevel' result = http.put(url, self.header) url = self.cfg.base_url + '/queues/toplevel/metadata' doc = '{"_queue": "Top Level field with _"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 204) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc)) url = self.cfg.base_url + '/queues/toplevel' http.delete(url, self.header)
def test_002_insert_queue_case_insensitive(self): """Insert Queue with same name, different case.""" url = self.cfg.base_url + '/queues/QteStquEue' result = http.put(url, self.header) self.assertEqual(result.status_code, 201) http.delete(url, self.header)
def test_006_insert_queue_header_plaintext(self): """Insert Queue with 'Accept': 'plain/text'.""" url = self.cfg.base_url + '/queues/plaintextheader' header = functionlib.plain_text_in_header() result = http.put(url, header) self.assertEqual(result.status_code, 406) http.delete(url, self.header)
def test_005_insert_queue_missing_header(self): """Insert Queue with missing header field. Request has no Accept header. """ header = functionlib.missing_header_fields() url = self.cfg.base_url + '/queues/missingheader' http.put(url, header) url = self.cfg.base_url + '/queues/missingheader/metadata' doc = '{"queue": "Missing Header"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 400) url = self.cfg.base_url + '/queues/missingheader' http.delete(url, self.header)
def test_007_insert_queue_header_asterisk(self): """Insert Queue with 'Accept': '*/*'.""" url = self.cfg.base_url + '/queues/asteriskinheader' header = functionlib.asterisk_in_header() result = http.put(url, header) self.assertEqual(result.status_code, 201) http.delete(url, self.header)
def test_003_insert_queue_empty_json(self): """Update Queue with empty json.""" url = self.cfg.base_url + '/queues/emptyjson' doc = '{}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 201) http.delete(url, self.header)
def test_008_queue_insert_toplevel_underscore(self): """Insert Queue with underscore in toplevel field.""" url = self.cfg.base_url + '/queues/toplevel' doc = '{"_queue": "Top Level field with _"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400) result = http.get(url, self.header) self.assertEqual(result.status_code, 404)
def test_009_queue_insert_header_plaintext(self): """Insert Queue with 'Accept': 'plain/text'.""" url = self.cfg.base_url + '/queues/plaintextheader' header = functionlib.plain_text_in_header() doc = '{"queue": "text/plain in header"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 406) result = http.get(url, self.header) self.assertEqual(result.status_code, 404)
def test_014_queue_update_metadata_size4096(self): """Updates Queue with metadata_size = 4096.""" url = self.cfg.base_url + '/queues/qtestqueue' doc = functionlib.get_custom_body({"metadatasize": 4096}) result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 204) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc))
def test_004_queue_update_empty_json(self): """Update Queue with empty json.""" url = self.cfg.base_url + '/queues/qtestqueue' doc = '{}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 204) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc))
def test_005_queue_insert_invalid_authtoken(self): """Insert Queue with invalid authtoken.""" url = self.cfg.base_url + '/queues/invalidauthtoken' header = functionlib.invalid_auth_token_header() doc = '{"queue": "invalid auth token"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 401) result = http.get(url, self.header) self.assertEqual(result.status_code, 404)
def test_003_queue_update_empty_metadata(self): """Update Queue with empty metadata.""" url = self.cfg.base_url + '/queues/qtestqueue' doc_original = '{"queue": "Apple"}' doc = '' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 400) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc_original))
def test_000_claim_setup(self): """Create Queue, Post Messages for Claim Tests.""" url = self.cfg.base_url + '/queues/claimtestqueue' result = http.put(url, self.header) self.assertEqual(result.status_code, 201) #Post Messages url = self.cfg.base_url + '/queues/claimtestqueue/messages' doc = msgfnlib.get_message_body(messagecount=50) for i in range(5): result = http.post(url, self.header, doc) self.assertEqual(result.status_code, 201)
def test_006_queue_update_invalid_authtoken(self): """Update Queue with invalid authtoken.""" url = self.cfg.base_url + '/queues/qtestqueue' header = functionlib.invalid_auth_token_header() doc = '{"queue": "invalid auth token"}' doc_original = '{}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 401) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc_original))
def test_010_queue_insert_header_asterisk(self): """Insert Queue with 'Accept': '*/*'.""" url = self.cfg.base_url + '/queues/asteriskinheader' header = functionlib.asterisk_in_header() doc = '{"queue": "*/* in header"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 201) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) http.delete(url, self.header)
def test_002_queue_insert_case_insensitive(self): """Insert Queue with same name, different case.""" url = self.cfg.base_url + '/queues/QteStquEue' doc = '{"queue": "Orange"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 201) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc)) http.delete(url, self.header)
def test_007_queue_insert_missing_header(self): """Insert Queue with missing header field. Request has no USER_AGENT & X-Project-Id headers. """ url = self.cfg.base_url + '/queues/missingheader' header = functionlib.missing_header_fields() doc = '{"queue": "USER_AGENT header is missing"}' result = http.put(url, header, doc) self.assertEqual(result.status_code, 400) result = http.get(url, self.header) self.assertEqual(result.status_code, 404)
def test_001_queue_insert(self): """Insert Queue. Creates Queue, does a get & verifies data. """ url = self.cfg.base_url + '/queues/qtestqueue' doc = '{"queue": "Apple"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 201) result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), json.loads(doc))
def test_012_insert_queue_with_metadata(self): """Insert queue with a non-empty request body.""" url = self.cfg.base_url + '/queues/hasmetadata' doc = '{"queue": "Has Metadata"}' result = http.put(url, self.header, doc) self.assertEqual(result.status_code, 201) url = self.cfg.base_url + '/queues/hasmetadata/metadata' result = http.get(url, self.header) self.assertEqual(result.status_code, 200) self.assertEqual(result.json(), {}) url = self.cfg.base_url + '/queues/hasmetadata' http.delete(url, self.header)