Example #1
0
  def test_mirror_mirror_on_the_wall_1(self):
    def tutorial_example():
      from stem.control import Controller

      with Controller.from_port(control_port = 9051) as controller:
        controller.authenticate()

        for desc in controller.get_network_statuses():
          print "found relay %s (%s)" % (desc.nickname, desc.fingerprint)

    controller = mocking.get_object(Controller, {
      'authenticate': mocking.no_op(),
      'close': mocking.no_op(),
      'get_network_statuses': mocking.return_value(
        [mocking.get_router_status_entry_v2()],
      ),
    })

    mocking.mock(
      Controller.from_port, mocking.return_value(controller),
      target_module = Controller,
      is_static = True,
    )

    tutorial_example()
    self.assertEqual("found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n", self.stdout.getvalue())
Example #2
0
    def test_mirror_mirror_on_the_wall_1(self):
        def tutorial_example():
            from stem.control import Controller

            with Controller.from_port(control_port=9051) as controller:
                controller.authenticate()

                for desc in controller.get_network_statuses():
                    print "found relay %s (%s)" % (desc.nickname,
                                                   desc.fingerprint)

        controller = mocking.get_object(
            Controller, {
                'authenticate':
                mocking.no_op(),
                'close':
                mocking.no_op(),
                'get_network_statuses':
                mocking.return_value([mocking.get_router_status_entry_v2()], ),
            })

        mocking.mock(
            Controller.from_port,
            mocking.return_value(controller),
            target_module=Controller,
            is_static=True,
        )

        tutorial_example()
        self.assertEqual(
            "found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n",
            self.stdout.getvalue())
Example #3
0
    def test_mirror_mirror_on_the_wall_1(self, downloader_mock, stdout_mock):
        downloader_mock().get_consensus().run.return_value = [
            mocking.get_router_status_entry_v2()
        ]

        exec_documentation_example('current_descriptors.py')
        self.assertEqual(
            'found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n',
            stdout_mock.getvalue())
Example #4
0
    def test_mirror_mirror_on_the_wall_2(self, from_port_mock, stdout_mock):
        controller = from_port_mock().__enter__()
        controller.get_network_statuses.return_value = [
            mocking.get_router_status_entry_v2()
        ]

        exec_documentation_example('descriptor_from_tor_control_socket.py')
        self.assertEqual(
            'found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n',
            stdout_mock.getvalue())
Example #5
0
  def test_mirror_mirror_on_the_wall_1(self, from_port_mock, stdout_mock):
    def tutorial_example():
      from stem.control import Controller

      with Controller.from_port(control_port = 9051) as controller:
        controller.authenticate()

        for desc in controller.get_network_statuses():
          print "found relay %s (%s)" % (desc.nickname, desc.fingerprint)

    controller = from_port_mock().__enter__()
    controller.get_network_statuses.return_value = [mocking.get_router_status_entry_v2()]

    tutorial_example()
    self.assertEqual("found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n", stdout_mock.getvalue())
Example #6
0
  def test_mirror_mirror_on_the_wall_2(self, from_port_mock, stdout_mock):
    def tutorial_example():
      from stem.control import Controller

      with Controller.from_port(control_port = 9051) as controller:
        controller.authenticate()

        for desc in controller.get_network_statuses():
          print('found relay %s (%s)' % (desc.nickname, desc.fingerprint))

    controller = from_port_mock().__enter__()
    controller.get_network_statuses.return_value = [mocking.get_router_status_entry_v2()]

    tutorial_example()
    self.assertEqual('found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n', stdout_mock.getvalue())
Example #7
0
  def test_mirror_mirror_on_the_wall_1(self, downloader_mock, stdout_mock):
    def tutorial_example():
      from stem.descriptor.remote import DescriptorDownloader

      downloader = DescriptorDownloader()

      try:
        for desc in downloader.get_consensus().run():
          print('found relay %s (%s)' % (desc.nickname, desc.fingerprint))
      except Exception as exc:
        print('Unable to retrieve the consensus: %s' % exc)

    downloader_mock().get_consensus().run.return_value = [mocking.get_router_status_entry_v2()]

    tutorial_example()
    self.assertEqual('found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n', stdout_mock.getvalue())
Example #8
0
  def test_mirror_mirror_on_the_wall_1(self, downloader_mock, stdout_mock):
    def tutorial_example():
      from stem.descriptor.remote import DescriptorDownloader

      downloader = DescriptorDownloader()

      try:
        for desc in downloader.get_consensus().run():
          print('found relay %s (%s)' % (desc.nickname, desc.fingerprint))
      except Exception as exc:
        print('Unable to retrieve the consensus: %s' % exc)

    downloader_mock().get_consensus().run.return_value = [mocking.get_router_status_entry_v2()]

    tutorial_example()
    self.assertEqual('found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n', stdout_mock.getvalue())
  def test_minimal_v2(self):
    """
    Parses a minimal v2 router status entry.
    """

    entry = get_router_status_entry_v2()

    self.assertEqual(None, entry.document)
    self.assertEqual("caerSidi", entry.nickname)
    self.assertEqual("A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB", entry.fingerprint)
    self.assertEqual("A106452D87BD7B803B6CE916291ED368DC5BD091", entry.digest)
    self.assertEqual(datetime.datetime(2012, 8, 6, 11, 19, 31), entry.published)
    self.assertEqual("71.35.150.29", entry.address)
    self.assertEqual(9001, entry.or_port)
    self.assertEqual(None, entry.dir_port)
    self.assertEqual(None, entry.flags)
    self.assertEqual(None, entry.version_line)
    self.assertEqual(None, entry.version)
    self.assertEqual([], entry.get_unrecognized_lines())
Example #10
0
  def test_minimal_v2(self):
    """
    Parses a minimal v2 router status entry.
    """

    entry = get_router_status_entry_v2()

    self.assertEqual(None, entry.document)
    self.assertEqual("caerSidi", entry.nickname)
    self.assertEqual("A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB", entry.fingerprint)
    self.assertEqual("oQZFLYe9e4A7bOkWKR7TaNxb0JE", entry.digest)
    self.assertEqual(datetime.datetime(2012, 8, 6, 11, 19, 31), entry.published)
    self.assertEqual("71.35.150.29", entry.address)
    self.assertEqual(9001, entry.or_port)
    self.assertEqual(None, entry.dir_port)
    self.assertEqual(None, entry.flags)
    self.assertEqual(None, entry.version_line)
    self.assertEqual(None, entry.version)
    self.assertEqual([], entry.get_unrecognized_lines())
Example #11
0
  def test_minimal_v2(self):
    """
    Parses a minimal v2 router status entry.
    """

    entry = get_router_status_entry_v2()

    self.assertEqual(None, entry.document)
    self.assertEqual('caerSidi', entry.nickname)
    self.assertEqual('A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB', entry.fingerprint)
    self.assertEqual('A106452D87BD7B803B6CE916291ED368DC5BD091', entry.digest)
    self.assertEqual(datetime.datetime(2012, 8, 6, 11, 19, 31), entry.published)
    self.assertEqual('71.35.150.29', entry.address)
    self.assertEqual(9001, entry.or_port)
    self.assertEqual(None, entry.dir_port)
    self.assertEqual(None, entry.flags)
    self.assertEqual(None, entry.version_line)
    self.assertEqual(None, entry.version)
    self.assertEqual([], entry.get_unrecognized_lines())
Example #12
0
  def test_mirror_mirror_on_the_wall_2(self, from_port_mock, stdout_mock):
    controller = from_port_mock().__enter__()
    controller.get_network_statuses.return_value = [mocking.get_router_status_entry_v2()]

    exec_documentation_example('descriptor_from_tor_control_socket.py')
    self.assertEqual('found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n', stdout_mock.getvalue())
Example #13
0
  def test_mirror_mirror_on_the_wall_1(self, downloader_mock, stdout_mock):
    downloader_mock().get_consensus().run.return_value = [mocking.get_router_status_entry_v2()]

    exec_documentation_example('current_descriptors.py')
    self.assertEqual('found relay caerSidi (A7569A83B5706AB1B1A9CB52EFF7D2D32E4553EB)\n', stdout_mock.getvalue())