class InformerTest(unittest.TestCase):
    def test_should_encode_username_and_password_to_authstring(self):
        self.informer = Informer(username="******", password="******")
        auth_string = base64.encodestring("%s:%s" % ("test", "test_pswd")).replace("\n", "")
        self.assertEquals(auth_string, self.informer._auth_string)

    def test_using_should_set_data_sanitizer_to_one_passed_in(self):
        self.informer = Informer(username="", password="")
        self.data_sanitizer = Mock(spec=DataSanitizer)
        self.informer.using(self.data_sanitizer)
        self.assertEquals(self.data_sanitizer, self.informer._data_sanitizer)

    def test_using_should_return_self(self):
        self.informer = Informer(username="", password="")
        self.data_sanitizer = Mock(spec=DataSanitizer)
        informer = self.informer.using(self.data_sanitizer)
        self.assertEquals(self.informer, informer)

    def test_should_fetch_data_from_url_and_sanitize_it_return_sanitized_data(self):
        self.informer = Informer(username="******", password="******")
        self.data_sanitizer = Mock(spec=DataSanitizer)
        self.data_sanitizer.clean.return_value = {"key": []}
        auth_string = base64.encodestring("%s:%s" % ("test", "password")).replace("\n", "")
        request = urllib2.Request("http://localhost")
        request.add_header("Authorization", "Basic %s" % auth_string)
        with patch.object(urllib2, "urlopen") as mock_urllib:
            mock_urllib.return_value = Response()
            data = self.informer.using(self.data_sanitizer).get_data_from(url="http://localhost")
            self.assertEquals({"key": []}, data)

    def test_should_return_empty_list_in_case_url_is_none(self):
        self.informer = Informer(username="******", password="******")
        data = self.informer.using(Mock(spec=DataSanitizer)).get_data_from(None)
        self.assertEquals([], data)
Example #2
0
 def test_should_fetch_data_from_url_and_sanitize_it_return_sanitized_data(
         self):
     self.informer = Informer(username='******', password='******')
     self.data_sanitizer = Mock(spec=DataSanitizer)
     self.data_sanitizer.clean.return_value = {'key': []}
     auth_string = base64.encodestring(
         '%s:%s' % ('test', 'password')).replace('\n', '')
     request = urllib2.Request('http://localhost')
     request.add_header("Authorization", "Basic %s" % auth_string)
     with patch.object(urllib2, 'urlopen') as mock_urllib:
         mock_urllib.return_value = Response()
         data = self.informer.using(
             self.data_sanitizer).get_data_from(url="http://localhost")
         self.assertEquals({'key': []}, data)
Example #3
0
 def from_url(self,
              url,
              discard=None,
              data_found_at=None,
              next_url_generators=[]):
     self._url_extractor = UrlExtractor(url, next_url_generators)
     self._data_sanitizer = DataSanitizer(discard, data_found_at)
     self._informer = Informer(self._username, self._password)
     return self
 def test_should_fetch_data_from_url_and_sanitize_it_return_sanitized_data(self):
     self.informer = Informer(username="******", password="******")
     self.data_sanitizer = Mock(spec=DataSanitizer)
     self.data_sanitizer.clean.return_value = {"key": []}
     auth_string = base64.encodestring("%s:%s" % ("test", "password")).replace("\n", "")
     request = urllib2.Request("http://localhost")
     request.add_header("Authorization", "Basic %s" % auth_string)
     with patch.object(urllib2, "urlopen") as mock_urllib:
         mock_urllib.return_value = Response()
         data = self.informer.using(self.data_sanitizer).get_data_from(url="http://localhost")
         self.assertEquals({"key": []}, data)
Example #5
0
class InformerTest(unittest.TestCase):
    def test_should_encode_username_and_password_to_authstring(self):
        self.informer = Informer(username='******', password='******')
        auth_string = base64.encodestring(
            '%s:%s' % ('test', 'test_pswd')).replace('\n', '')
        self.assertEquals(auth_string, self.informer._auth_string)

    def test_using_should_set_data_sanitizer_to_one_passed_in(self):
        self.informer = Informer(username='', password='')
        self.data_sanitizer = Mock(spec=DataSanitizer)
        self.informer.using(self.data_sanitizer)
        self.assertEquals(self.data_sanitizer, self.informer._data_sanitizer)

    def test_using_should_return_self(self):
        self.informer = Informer(username='', password='')
        self.data_sanitizer = Mock(spec=DataSanitizer)
        informer = self.informer.using(self.data_sanitizer)
        self.assertEquals(self.informer, informer)

    def test_should_fetch_data_from_url_and_sanitize_it_return_sanitized_data(
            self):
        self.informer = Informer(username='******', password='******')
        self.data_sanitizer = Mock(spec=DataSanitizer)
        self.data_sanitizer.clean.return_value = {'key': []}
        auth_string = base64.encodestring(
            '%s:%s' % ('test', 'password')).replace('\n', '')
        request = urllib2.Request('http://localhost')
        request.add_header("Authorization", "Basic %s" % auth_string)
        with patch.object(urllib2, 'urlopen') as mock_urllib:
            mock_urllib.return_value = Response()
            data = self.informer.using(
                self.data_sanitizer).get_data_from(url="http://localhost")
            self.assertEquals({'key': []}, data)

    def test_should_return_empty_list_in_case_url_is_none(self):
        self.informer = Informer(username='******', password='******')
        data = self.informer.using(
            Mock(spec=DataSanitizer)).get_data_from(None)
        self.assertEquals([], data)
Example #6
0
 def test_should_return_empty_list_in_case_url_is_none(self):
     self.informer = Informer(username='******', password='******')
     data = self.informer.using(
         Mock(spec=DataSanitizer)).get_data_from(None)
     self.assertEquals([], data)
Example #7
0
 def test_using_should_return_self(self):
     self.informer = Informer(username='', password='')
     self.data_sanitizer = Mock(spec=DataSanitizer)
     informer = self.informer.using(self.data_sanitizer)
     self.assertEquals(self.informer, informer)
Example #8
0
 def test_using_should_set_data_sanitizer_to_one_passed_in(self):
     self.informer = Informer(username='', password='')
     self.data_sanitizer = Mock(spec=DataSanitizer)
     self.informer.using(self.data_sanitizer)
     self.assertEquals(self.data_sanitizer, self.informer._data_sanitizer)
Example #9
0
 def test_should_encode_username_and_password_to_authstring(self):
     self.informer = Informer(username='******', password='******')
     auth_string = base64.encodestring(
         '%s:%s' % ('test', 'test_pswd')).replace('\n', '')
     self.assertEquals(auth_string, self.informer._auth_string)
 def test_should_return_empty_list_in_case_url_is_none(self):
     self.informer = Informer(username="******", password="******")
     data = self.informer.using(Mock(spec=DataSanitizer)).get_data_from(None)
     self.assertEquals([], data)
 def test_using_should_return_self(self):
     self.informer = Informer(username="", password="")
     self.data_sanitizer = Mock(spec=DataSanitizer)
     informer = self.informer.using(self.data_sanitizer)
     self.assertEquals(self.informer, informer)
 def test_using_should_set_data_sanitizer_to_one_passed_in(self):
     self.informer = Informer(username="", password="")
     self.data_sanitizer = Mock(spec=DataSanitizer)
     self.informer.using(self.data_sanitizer)
     self.assertEquals(self.data_sanitizer, self.informer._data_sanitizer)
 def test_should_encode_username_and_password_to_authstring(self):
     self.informer = Informer(username="******", password="******")
     auth_string = base64.encodestring("%s:%s" % ("test", "test_pswd")).replace("\n", "")
     self.assertEquals(auth_string, self.informer._auth_string)