Exemplo n.º 1
0
    def test_lookup_test_helpers_and_collector_https(self):
        self.config.advanced.preferred_backend = "https"
        deck = NGDeck()
        deck.open(self.deck_file)

        first_net_test_loader = deck.tasks[0].ooni['net_test_loader']
        net_test_loaders = map(lambda task: task.ooni['net_test_loader'],
                               deck.tasks)

        self.assertEqual(len(first_net_test_loader .missingTestHelpers), 1)

        yield lookup_collector_and_test_helpers(
            net_test_loaders=net_test_loaders,
            preferred_backend='https',
            bouncer=MockBouncerClient()
        )

        self.assertEqual(
            first_net_test_loader.collector.settings['address'],
            'https://collector.ooni.io'
        )

        self.assertEqual(
            first_net_test_loader.localOptions['backend'],
            '127.0.0.1'
        )
Exemplo n.º 2
0
 def test_load_deck_with_global_options(self):
     global_options = {
         "annotations": {
             "spam": "ham"
         },
         "collector": "httpo://thirteenchars123.onion"
     }
     deck = NGDeck(global_options=global_options)
     deck.open(self.deck_file)
     self.assertEqual(deck.tasks[0].ooni['net_test_loader'].annotations,
                      global_options['annotations'])
     self.assertEqual(
         deck.tasks[0].ooni['net_test_loader'].collector.base_address,
         global_options['collector'].replace("httpo://", "http://"))
Exemplo n.º 3
0
 def test_load_deck_with_global_options(self):
     global_options = {
         "annotations": {"spam": "ham"},
         "collector": "httpo://thirteenchars123.onion"
     }
     deck = NGDeck(global_options=global_options)
     deck.open(self.deck_file)
     self.assertEqual(
         deck.tasks[0].ooni['net_test_loader'].annotations,
         global_options['annotations']
     )
     self.assertEqual(
         deck.tasks[0].ooni['net_test_loader'].collector.base_address,
         global_options['collector'].replace("httpo://", "http://")
     )
Exemplo n.º 4
0
    def test_deck_with_many_tests(self):
        os.remove(self.deck_file)
        deck_hash = sha256(self.dummy_deck_content_with_many_tests).hexdigest()
        self.deck_file = os.path.join(self.cwd, deck_hash)
        with open(self.deck_file, 'w+') as f:
            f.write(self.dummy_deck_content_with_many_tests)
        deck = NGDeck()
        deck.open(self.deck_file)

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].localOptions['backend'],
            '1.1.1.1')
        self.assertEqual(
            deck.tasks[1].ooni['net_test_loader'].localOptions['backend'],
            '2.2.2.2')
Exemplo n.º 5
0
    def test_deck_with_many_tests(self):
        os.remove(self.deck_file)
        deck_hash = sha256(self.dummy_deck_content_with_many_tests).hexdigest()
        self.deck_file = os.path.join(self.cwd, deck_hash)
        with open(self.deck_file, 'w+') as f:
            f.write(self.dummy_deck_content_with_many_tests)
        deck = NGDeck()
        deck.open(self.deck_file)

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].localOptions['backend'],
            '1.1.1.1'
        )
        self.assertEqual(
            deck.tasks[1].ooni['net_test_loader'].localOptions['backend'],
            '2.2.2.2'
        )
Exemplo n.º 6
0
 def _update_cache(self):
     new_cache = {}
     for deck_path in self.available_directory.listdir():
         if not deck_path.endswith('.yaml'):
             continue
         deck = NGDeck(
             deck_path=self.available_directory.child(deck_path).path)
         new_cache[deck.id] = deck
     self._cache = new_cache
     self._cache_stale = False
Exemplo n.º 7
0
    def test_lookup_test_helpers_and_collector(self):
        deck = NGDeck()
        deck.open(self.deck_file)

        self.assertEqual(
            len(deck.tasks[0].ooni['net_test_loader'].missingTestHelpers), 1)

        yield lookup_collector_and_test_helpers(
            net_test_loaders=[deck.tasks[0].ooni['net_test_loader']],
            preferred_backend='onion',
            bouncer=MockBouncerClient())

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].collector.
            settings['address'], 'httpo://thirteenchars123.onion')

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].localOptions['backend'],
            '127.0.0.1')
Exemplo n.º 8
0
    def test_lookup_test_helpers_and_collector(self):
        deck = NGDeck()
        deck.open(self.deck_file)

        self.assertEqual(
            len(deck.tasks[0].ooni['net_test_loader'].missingTestHelpers),
            1
        )

        yield lookup_collector_and_test_helpers(
            net_test_loaders=[deck.tasks[0].ooni['net_test_loader']],
            preferred_backend='onion',
            bouncer=MockBouncerClient()
        )

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].collector.settings['address'],
            'httpo://thirteenchars123.onion'
        )

        self.assertEqual(
            deck.tasks[0].ooni['net_test_loader'].localOptions['backend'],
            '127.0.0.1'
        )
Exemplo n.º 9
0
 def test_open_deck(self):
     deck = NGDeck()
     deck.open(self.deck_file)
     assert len(deck.tasks) == 1