Example #1
0
 def test_origin_null(self):
     from autobahn.websocket.protocol import _is_same_origin, _url_to_origin
     self.assertEqual('null', _url_to_origin('null'))
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), 'http', 80, []))
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), 'https', 80, []))
     self.assertFalse(_is_same_origin(_url_to_origin('null'), '', 80, []))
     self.assertFalse(_is_same_origin(_url_to_origin('null'), None, 80, []))
Example #2
0
    def test_match_origin_edge(self):
        # we're just testing the low-level function here...
        from autobahn.websocket.protocol import _is_same_origin, _url_to_origin
        policy = wildcards2patterns(['http://*example.com:80'])

        self.assertTrue(
            _is_same_origin(_url_to_origin('http://example.com:80'), 'http', 80, policy)
        )
        self.assertFalse(
            _is_same_origin(_url_to_origin('http://example.com:81'), 'http', 81, policy)
        )
        self.assertFalse(
            _is_same_origin(_url_to_origin('https://example.com:80'), 'http', 80, policy)
        )
 def test_origin_null(self):
     from autobahn.websocket.protocol import _is_same_origin, _url_to_origin
     self.assertEqual('null', _url_to_origin('null'))
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), 'http', 80, [])
     )
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), 'https', 80, [])
     )
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), '', 80, [])
     )
     self.assertFalse(
         _is_same_origin(_url_to_origin('null'), None, 80, [])
     )
Example #4
0
    def test_match_origin_counter_examples(self):
        """
        All the example 'not-same' origins from RFC6454 (3.2.1)
        """
        # we're just testing the low-level function here...
        from autobahn.websocket.protocol import _is_same_origin, _url_to_origin
        policy = wildcards2patterns(['example.com'])

        for url in ['http://ietf.org/', 'http://example.org/',
                    'https://example.com/', 'http://example.com:8080/',
                    'http://www.example.com/']:
            self.assertFalse(_is_same_origin(_url_to_origin(url), 'http', 80, policy))
Example #5
0
    def test_match_origin_examples(self):
        """
        All the example origins from RFC6454 (3.2.1)
        """
        # we're just testing the low-level function here...
        from autobahn.websocket.protocol import _is_same_origin, _url_to_origin
        policy = wildcards2patterns(['*example.com:*'])

        # should parametrize test ...
        for url in ['http://example.com/', 'http://example.com:80/',
                    'http://example.com/path/file',
                    'http://example.com/;semi=true',
                    # 'http://example.com./',
                    '//example.com/',
                    'http://@example.com']:
            self.assertTrue(_is_same_origin(_url_to_origin(url), 'http', 80, policy), url)