@@ -26,6 +26,7 @@ def setUp(self):
26
26
app .config ["TESTING" ] = True
27
27
app .config ["WTF_CSRF_ENABLED" ] = False
28
28
app .config ["DEBUG" ] = False
29
+ self .client = app .test_client ()
29
30
30
31
def test_require_all (self ):
31
32
with self .subTest ("all given" ):
@@ -60,3 +61,19 @@ def test_require_any(self):
60
61
with self .subTest ("one options given with is empty but ok" ):
61
62
with app .test_request_context ("/?abc=" ):
62
63
self .assertTrue (require_any (request , "abc" , empty = True ))
64
+
65
+ def test_origin_headers (self ):
66
+ with self .subTest ("referer and origin" ):
67
+ with self .assertLogs ("server_api" , level = 'INFO' ) as logs :
68
+ self .client .get ("/signal_dashboard_status" , headers = {
69
+ "Referer" : "https://test.com/test" ,
70
+ "Origin" : "https://test.com"
71
+ })
72
+ output = logs .output
73
+ self .assertEqual (len (output ), 2 ) # [before_request, after_request]
74
+ self .assertIn ("Received API request" , output [0 ])
75
+ self .assertIn ("\" req_referrer\" : \" https://test.com/test\" " , output [0 ])
76
+ self .assertIn ("\" req_origin\" : \" https://test.com\" " , output [0 ])
77
+ self .assertIn ("Served API request" , output [1 ])
78
+ self .assertIn ("\" req_referrer\" : \" https://test.com/test\" " , output [1 ])
79
+ self .assertIn ("\" req_origin\" : \" https://test.com\" " , output [1 ])
0 commit comments