Esempio n. 1
0
 def test_get_fuzz_req_params(self):
     """Test fuzz_request against request with params."""
     req = get_req("/api/v1/endpoint", params=test_params_obj)
     strings = ["test", "test2"]
     expected_param_objs = [
         {
             "otherkey": "test",
             "key": "val"
         }, {
             "otherkey": "val2",
             "key": "test"
         }, {
             "otherkey": "test2",
             "key": "val"
         }, {
             "otherkey": "val2",
             "key": "test2"
         }
     ]
     i = 0
     for i, d in enumerate(
             fuzz_datagen.fuzz_request(req, strings, "params", "ut"), 1):
         name, req, fuzz_string, name = d
         self.assertIn(req.params, expected_param_objs)
     self.assertEqual(i, 4)
Esempio n. 2
0
 def test_get_fuzz_req_params(self):
     """Test fuzz_request against request with params."""
     req = get_req("/api/v1/endpoint", params=test_params_obj)
     strings = ["test", "test2"]
     expected_param_objs = [
         {
             "otherkey": "test",
             "key": "val"
         }, {
             "otherkey": "val2",
             "key": "test"
         }, {
             "otherkey": "test2",
             "key": "val"
         }, {
             "otherkey": "val2",
             "key": "test2"
         }
     ]
     i = 0
     for i, d in enumerate(
             fuzz_datagen.fuzz_request(req, strings, "params", "ut"), 1):
         name, req, fuzz_string, name = d
         self.assertIn(req.params, expected_param_objs)
     self.assertEqual(i, 4)
Esempio n. 3
0
 def test_post_fuzz_req_url_vars(self):
     """Test fuzz_request with 2 named URL params."""
     req = post_req("/api/v1/{key:val}/path/{otherkey:val2}")
     strings = ["test"]
     results = [
         d for d in fuzz_datagen.fuzz_request(req, strings, "url", "ut")
     ]
     req_objs = [r[1] for r in results]
     urls = [o.url for o in req_objs]
     self.assertIn(get_url("/api/v1/test/path/val2"), urls)
     self.assertIn(get_url("/api/v1/val/path/test"), urls)
     self.assertEqual(2, len(results))
Esempio n. 4
0
 def test_post_fuzz_req_url_vars(self):
     """Test fuzz_request with 2 named URL params."""
     req = post_req("/api/v1/{key:val}/path/{otherkey:val2}")
     strings = ["test"]
     results = [
         d for d in fuzz_datagen.fuzz_request(req, strings, "url", "ut")
     ]
     req_objs = [r[1] for r in results]
     urls = [o.url for o in req_objs]
     self.assertIn(get_url("/api/v1/test/path/val2"), urls)
     self.assertIn(get_url("/api/v1/val/path/test"), urls)
     self.assertEqual(2, len(results))
Esempio n. 5
0
 def test_post_fuzz_req_json_vars(self):
     """Test fuzz_request with a JSON-like dict."""
     req = post_req(
         "/api/v1/{key:val}/path/{otherkey:val2}", data=test_dict)
     strings = ["test"]
     results = [
         d for d in fuzz_datagen.fuzz_request(req, strings, "data", "ut")
     ]
     req_objs = [r[1] for r in results]
     for d in [o.data for o in req_objs]:
         _dict = json.loads(d)
         self.assertEqual("test", _dict.get("a").get("b"))
         self.assertEqual("e", _dict.get("a").get("d"))
     for url in [o.url for o in req_objs]:
         self.assertEqual(get_url("/api/v1/val/path/val2"), url)
     self.assertEqual(1, len(results))
Esempio n. 6
0
 def test_post_fuzz_req_json_vars(self):
     """Test fuzz_request with a JSON-like dict."""
     req = post_req("/api/v1/{key:val}/path/{otherkey:val2}",
                    data=test_dict)
     strings = ["test"]
     results = [
         d for d in fuzz_datagen.fuzz_request(req, strings, "data", "ut")
     ]
     req_objs = [r[1] for r in results]
     for d in [o.data for o in req_objs]:
         _dict = json.loads(d)
         self.assertEqual("test", _dict.get("a").get("b"))
         self.assertEqual("e", _dict.get("a").get("d"))
     for url in [o.url for o in req_objs]:
         self.assertEqual(get_url("/api/v1/val/path/val2"), url)
     self.assertEqual(1, len(results))