예제 #1
0
 def test_default_values(self):
     config = Configuration()
     self.assertEqual(config.api_secret, None)
     self.assertEqual(config.host, 'api.castle.io')
     self.assertEqual(config.port, 443)
     self.assertEqual(config.url_prefix, '/v1')
     self.assertEqual(config.whitelisted,
                      [HeadersFormatter.call(v) for v in WHITELISTED])
     self.assertEqual(config.blacklisted,
                      [HeadersFormatter.call(v) for v in BLACKLISTED])
     self.assertEqual(config.request_timeout, 500)
     self.assertEqual(config.failover_strategy, 'allow')
예제 #2
0
 def test_default_values(self):
     config = Configuration()
     self.assertEqual(config.api_secret, None)
     self.assertEqual(config.host, 'api.castle.io')
     self.assertEqual(config.port, 443)
     self.assertEqual(config.url_prefix, '/v1')
     self.assertEqual(config.allowlisted, [])
     self.assertEqual(config.denylisted, [])
     self.assertEqual(config.request_timeout, 500)
     self.assertEqual(config.failover_strategy, 'allow')
     self.assertEqual(config.ip_headers, [])
     self.assertEqual(config.trusted_proxies, [])
예제 #3
0
 def test_request_timeout_setter(self):
     config = Configuration()
     config.request_timeout = 5000
     self.assertEqual(config.request_timeout, 5000)
예제 #4
0
 def test_blacklisted_setter_empty(self):
     config = Configuration()
     config.blacklisted = ''
     self.assertEqual(config.blacklisted, [])
예제 #5
0
 def test_blacklisted_setter_none(self):
     config = Configuration()
     config.blacklisted = None
     self.assertEqual(config.blacklisted, [])
예제 #6
0
 def test_blacklisted_setter_list(self):
     config = Configuration()
     config.blacklisted = ['test']
     self.assertEqual(config.blacklisted, ['Test'])
예제 #7
0
 def test_url_prefix_setter(self):
     config = Configuration()
     config.url_prefix = '/v2'
     self.assertEqual(config.url_prefix, '/v2')
예제 #8
0
 def test_host_setter(self):
     config = Configuration()
     config.host = 'test'
     self.assertEqual(config.host, 'test')
예제 #9
0
 def test_trusted_proxies_setter_invalid(self):
     config = Configuration()
     with self.assertRaises(ConfigurationError):
         config.trusted_proxies = 'invalid'
예제 #10
0
 def test_api_secret_setter(self):
     config = Configuration()
     config.api_secret = 'test'
     self.assertEqual(config.api_secret, 'test')
예제 #11
0
 def test_trusted_proxies_setter_valid(self):
     config = Configuration()
     config.trusted_proxies = ['2.2.2.2']
     self.assertEqual(config.trusted_proxies, ['2.2.2.2'])
예제 #12
0
 def test_ip_headers_setter_invalid(self):
     config = Configuration()
     with self.assertRaises(ConfigurationError):
         config.ip_headers = 'invalid'
예제 #13
0
 def test_ip_headers_setter_valid(self):
     config = Configuration()
     config.ip_headers = ['HTTP_X_FORWARDED_FOR']
     self.assertEqual(config.ip_headers, ['X-Forwarded-For'])
예제 #14
0
 def test_failover_strategy_setter_valid(self):
     config = Configuration()
     config.failover_strategy = 'throw'
     self.assertEqual(config.failover_strategy, 'throw')
예제 #15
0
 def test_port_setter(self):
     config = Configuration()
     config.port = 80
     self.assertEqual(config.port, 80)
예제 #16
0
 def test_failover_strategy_setter_invalid(self):
     config = Configuration()
     with self.assertRaises(FailoverStrategyValueError):
         config.failover_strategy = 'invalid'
예제 #17
0
 def test_init_custom_config(self):
     cfg = Configuration()
     self.assertIsInstance(APIRequest(cfg).req, CoreSendRequest)