class TestCompatibilityFactory(unittest.TestCase): def setUp(self): python_info = mock.create_autospec(PythonInfo).return_value self.factory = CompatibilityFactory(python_info) @mock.patch('xcrawler.compatibility.compatibility_factory.WriteOpenerPython2') def test_create_file_write_strings_python2(self, mock_write_opener_python2_class): mock_write_opener = mock.create_autospec(WriteOpenerPython2).return_value mock_write_opener_python2_class.return_value = mock_write_opener self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_write_opener() self.assertEquals(result, mock_write_opener) @mock.patch('xcrawler.compatibility.compatibility_factory.WriteOpenerPython3') def test_create_file_write_strings_python3(self, mock_write_opener_python3_class): mock_write_opener = mock.create_autospec(WriteOpenerPython3).return_value mock_write_opener_python3_class.return_value = mock_write_opener self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_write_opener() self.assertEquals(result, mock_write_opener) @mock.patch('xcrawler.compatibility.compatibility_factory.ObjectConverterPython2') def test_create_object_converter_python2(self, mock_object_converter_python2_class): mock_converter = mock.create_autospec(ObjectConverterPython2).return_value mock_object_converter_python2_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_object_converter() self.assertEquals(result, mock_converter) @mock.patch('xcrawler.compatibility.compatibility_factory.ObjectConverterPython3') def test_create_object_converter_python3(self, mock_object_converter_python3_class): mock_converter = mock.create_autospec(ObjectConverterPython3).return_value mock_object_converter_python3_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_object_converter() self.assertEquals(result, mock_converter) @mock.patch('xcrawler.compatibility.compatibility_factory.StringConverterPython2') def test_create_string_converter_python2(self, mock_string_converter_python2_class): mock_converter = mock.create_autospec(StringConverterPython2).return_value mock_string_converter_python2_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_string_converter() self.assertEquals(result, mock_converter) @mock.patch('xcrawler.compatibility.compatibility_factory.StringConverterPython3') def test_create_string_converter_python3(self, mock_string_converter_python3_class): mock_converter = mock.create_autospec(StringConverterPython3).return_value mock_string_converter_python3_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_string_converter() self.assertEquals(result, mock_converter)
class TestCompatibilityFactory(unittest.TestCase): def setUp(self): python_info = mock.create_autospec(PythonInfo).return_value self.factory = CompatibilityFactory(python_info) @mock.patch("xcrawler.compatibility.compatibility_factory.WriteOpenerPython2") def test_create_file_write_strings_python2(self, mock_write_opener_python2_class): mock_write_opener = mock.create_autospec(WriteOpenerPython2).return_value mock_write_opener_python2_class.return_value = mock_write_opener self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_write_opener() self.assertEquals(result, mock_write_opener) @mock.patch("xcrawler.compatibility.compatibility_factory.WriteOpenerPython3") def test_create_file_write_strings_python3(self, mock_write_opener_python3_class): mock_write_opener = mock.create_autospec(WriteOpenerPython3).return_value mock_write_opener_python3_class.return_value = mock_write_opener self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_write_opener() self.assertEquals(result, mock_write_opener) @mock.patch("xcrawler.compatibility.compatibility_factory.ObjectConverterPython2") def test_create_object_converter_python2(self, mock_object_converter_python2_class): mock_converter = mock.create_autospec(ObjectConverterPython2).return_value mock_object_converter_python2_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_object_converter() self.assertEquals(result, mock_converter) @mock.patch("xcrawler.compatibility.compatibility_factory.ObjectConverterPython3") def test_create_object_converter_python3(self, mock_object_converter_python3_class): mock_converter = mock.create_autospec(ObjectConverterPython3).return_value mock_object_converter_python3_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_object_converter() self.assertEquals(result, mock_converter) @mock.patch("xcrawler.compatibility.compatibility_factory.StringConverterPython2") def test_create_string_converter_python2(self, mock_string_converter_python2_class): mock_converter = mock.create_autospec(StringConverterPython2).return_value mock_string_converter_python2_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = True result = self.factory.create_compatible_string_converter() self.assertEquals(result, mock_converter) @mock.patch("xcrawler.compatibility.compatibility_factory.StringConverterPython3") def test_create_string_converter_python3(self, mock_string_converter_python3_class): mock_converter = mock.create_autospec(StringConverterPython3).return_value mock_string_converter_python3_class.return_value = mock_converter self.factory.python_info.is_python2.return_value = False result = self.factory.create_compatible_string_converter() self.assertEquals(result, mock_converter)
def __init__(self, url, page_scraper, request_factory=RequestFactory(), extractor_factory=ExtractorFactory(), url_joiner=UrlJoiner(), request_sender=RequestSender(), compatibility_factory=CompatibilityFactory()): self.url = url self.scraper = page_scraper self._content = None self.extractor = None self.request_factory = request_factory self.request = self.request_factory.create_request('GET', self.url) self.extractor_factory = extractor_factory self.url_joiner = url_joiner self.request_sender = request_sender self.string_converter = compatibility_factory.create_compatible_string_converter( )
def setUp(self): python_info = mock.create_autospec(PythonInfo).return_value self.factory = CompatibilityFactory(python_info)
def __init__(self, compatibility_factory=CompatibilityFactory()): self.compatibility_factory = compatibility_factory
def setUp(self): python_info = mock.create_autospec(PythonInfo).return_value self.factory = CompatibilityFactory(python_info)