Exemplo n.º 1
0
 def test_is_empty_zero_bytes(self,
                              _m_requests_get: mock.MagicMock) -> None:
     e = DataUrlElement('some-address')
     # simulate no content bytes returned
     # noinspection PyTypeHints
     e.get_bytes = mock.MagicMock(return_value='')  # type: ignore
     self.assertTrue(e.is_empty())
Exemplo n.º 2
0
    def test_get_bytes_404_return_code(self,
                                       m_requests_get: mock.MagicMock) -> None:
        e = DataUrlElement('some-address')

        sim_rc = 500
        simulated_r = requests.Response()
        simulated_r.status_code = sim_rc
        m_requests_get.return_value = simulated_r

        self.assertRaisesRegex(requests.HTTPError, '%d' % sim_rc, e.get_bytes)
Exemplo n.º 3
0
 def test_content_type(self) -> None:
     e = DataUrlElement(self.EXAMPLE_URL)
     self.assertEqual(e.content_type(), 'image/png')
Exemplo n.º 4
0
 def test_new_add_missing_scheme(self) -> None:
     # Construct without scheme header, should add http://
     e = DataUrlElement(self.EXAMPLE_URL[8:])
     self.assertEqual(e._url, 'http://' + self.EXAMPLE_URL[8:])
     self.assertEqual(e.get_bytes(), open(self.EXAMPLE_PTH, 'rb').read())
Exemplo n.º 5
0
 def test_new_from_internet(self) -> None:
     e = DataUrlElement(self.EXAMPLE_URL)
     self.assertEqual(e.get_bytes(), open(self.EXAMPLE_PTH, 'rb').read())
Exemplo n.º 6
0
 def test_configuration(self, m_req_get: mock.MagicMock) -> None:
     # Mocking requests usage to no actually head into the network.
     inst = DataUrlElement(self.EXAMPLE_URL)
     for i in configuration_test_helper(inst):  # type: DataUrlElement
         assert i._url == self.EXAMPLE_URL
Exemplo n.º 7
0
 def test_set_bytes_universal_readonly(self) -> None:
     # should never be able to write to a url element
     e = DataUrlElement(self.EXAMPLE_URL)
     self.assertRaises(ReadOnlyError, e.set_bytes, 'foo')
Exemplo n.º 8
0
 def test_writable_universal_false(self) -> None:
     # Cannot write to a URL hosted file, should always return false
     e = DataUrlElement(self.EXAMPLE_URL)
     self.assertFalse(e.writable())
Exemplo n.º 9
0
 def test_get_bytes_from_url(self) -> None:
     e = DataUrlElement(self.EXAMPLE_URL)
     self.assertEqual(e.get_bytes(), open(self.EXAMPLE_PTH, 'rb').read())
     self.assertEqual(e.content_type(), 'image/png')