Exemple #1
0
 def test__logs_to_server_log(self):
     self.patch(tftp_module, "send_node_event_mac_address")
     clock = Clock()
     mac_address = factory.make_mac_address()
     file_name = factory.make_name("file")
     with TwistedLoggerFixture() as logger:
         log_request(mac_address, file_name, clock)
         clock.advance(0.0)  # Don't leave anything in the reactor.
     self.assertThat(
         logger.output,
         Equals("%s requested by %s" % (file_name, mac_address)))
Exemple #2
0
 def test__sends_event_later(self):
     send_event = self.patch(tftp_module, "send_node_event_mac_address")
     clock = Clock()
     log_request(sentinel.macaddr, sentinel.filename, clock)
     self.assertThat(send_event, MockNotCalled())
     clock.advance(0.0)
     self.assertThat(
         send_event,
         MockCalledOnceWith(mac_address=sentinel.macaddr,
                            description=sentinel.filename,
                            event_type=EVENT_TYPES.NODE_TFTP_REQUEST))
Exemple #3
0
 def test__logs_to_server_log(self):
     self.patch(tftp_module, "send_node_event_ip_address")
     ip = factory.make_ip_address()
     self.patch(tftp_module.tftp,
                'get_remote_address').return_value = (ip, sentinel.port)
     clock = Clock()
     file_name = factory.make_name("file")
     with TwistedLoggerFixture() as logger:
         log_request(file_name, clock)
         clock.advance(0.0)  # Don't leave anything in the reactor.
     self.assertThat(logger.output,
                     Equals("%s requested by %s" % (file_name, ip)))
Exemple #4
0
 def test__sends_event_later(self):
     send_event = self.patch(tftp_module, "send_node_event_ip_address")
     ip = factory.make_ip_address()
     self.patch(tftp_module.tftp, 'get_remote_address').return_value = (
         ip, sentinel.port)
     clock = Clock()
     log_request(sentinel.filename, clock)
     self.assertThat(send_event, MockNotCalled())
     clock.advance(0.0)
     self.assertThat(send_event, MockCalledOnceWith(
         ip_address=ip, description=sentinel.filename,
         event_type=EVENT_TYPES.NODE_TFTP_REQUEST))
Exemple #5
0
 def test__logs_when_sending_event_errors(self):
     send_event = self.patch(tftp_module, "send_node_event_ip_address")
     send_event.side_effect = factory.make_exception()
     clock = Clock()
     log_request(sentinel.filename, clock)
     self.assertThat(send_event, MockNotCalled())
     with TwistedLoggerFixture() as logger:
         clock.advance(0.0)
     self.assertDocTestMatches(
         """\
         Logging TFTP request failed.
         Traceback (most recent call last):
         ...
         maastesting.factory.TestException#...
         """, logger.output)
Exemple #6
0
 def test_defers_log_call_later(self):
     clock = Clock()
     log_request(sentinel.filename, clock)
     self.expectThat(clock.calls, HasLength(1))
     [call] = clock.calls
     self.expectThat(call.getTime(), Equals(0.0))