def test_remoteStartBuild(self): conn = pb.Connection(self.master, self.buildslave, self.mind) builders = {'builder': mock.Mock()} self.mind.callRemote.return_value = defer.succeed(builders) conn = pb.Connection(self.master, self.buildslave, self.mind) conn.remoteSetBuilderList(builders) conn.remoteStartBuild('builder') builders['builder'].callRemote.assert_called_with('startBuild')
def test_remoteShutdown(self): self.mind.callRemote.return_value = defer.succeed(None) conn = pb.Connection(self.master, self.buildslave, self.mind) # note that we do not test the "old way", as it is now *very* old. conn.remoteShutdown() self.mind.callRemote.assert_called_with('shutdown')
def test_remoteGetSlaveInfo(self): def side_effect(*args, **kwargs): if 'getSlaveInfo' in args: return defer.succeed({'info': 'test'}) if 'getCommands' in args: return defer.succeed({'x': 1, 'y': 2}) if 'getVersion' in args: return defer.succeed('TheVersion') self.mind.callRemote.side_effect = side_effect conn = pb.Connection(self.master, self.buildslave, self.mind) info = yield conn.remoteGetSlaveInfo() r = { 'info': 'test', 'slave_commands': { 'y': 2, 'x': 1 }, 'version': 'TheVersion' } self.assertEqual(info, r) calls = [ mock.call('getSlaveInfo'), mock.call('getCommands'), mock.call('getVersion') ] self.mind.callRemote.assert_has_calls(calls)
def test_detached(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.attached(self.mind) conn.detached(self.mind) self.assertEqual(conn.keepalive_timer, None) self.assertEqual(conn.mind, None)
def test_startStopKeepaliveTimer(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.startKeepaliveTimer() self.assertNotEqual(conn.keepalive_timer, None) conn.stopKeepaliveTimer() self.assertEqual(conn.keepalive_timer, None)
def test_remoteSetBuilderList(self): builders = ['builder1', 'builder2'] self.mind.callRemote.return_value = defer.succeed(builders) conn = pb.Connection(self.master, self.buildslave, self.mind) r = yield conn.remoteSetBuilderList(builders) self.assertEqual(r, builders) self.assertEqual(conn.builders, builders) self.mind.callRemote.assert_called_with('setBuilderList', builders)
def test_attached(self): conn = pb.Connection(self.master, self.buildslave, self.mind) att = yield conn.attached(self.mind) self.assertNotEqual(conn.keepalive_timer, None) self.buildslave.attached.assert_called_with(conn) self.assertEqual(att, conn) conn.detached(self.mind)
def test_remoteStartCommand(self): builders = ['builder'] ret_val = {'builder': mock.Mock()} self.mind.callRemote.return_value = defer.succeed(ret_val) conn = pb.Connection(self.master, self.buildslave, self.mind) conn.remoteSetBuilderList(builders) RCInstance, builder_name, commandID = None, "builder", None remote_command, args = "command", "args" conn.remoteStartCommand(RCInstance, builder_name, commandID, remote_command, args) ret_val['builder'].callRemote.assert_called_with( 'startCommand', RCInstance, commandID, remote_command, args)
def test_remoteStartCommand(self): builders = ['builder'] ret_val = {'builder': mock.Mock()} self.mind.callRemote.return_value = defer.succeed(ret_val) conn = pb.Connection(self.master, self.buildslave, self.mind) conn.remoteSetBuilderList(builders) RCInstance, builder_name, commandID = base.RemoteCommandImpl( ), "builder", None remote_command, args = "command", {"args": 'args'} conn.remoteStartCommand(RCInstance, builder_name, commandID, remote_command, args) callargs = ret_val['builder'].callRemote.call_args_list[0][0] callargs_without_rc = (callargs[0], callargs[2], callargs[3], callargs[4]) self.assertEqual(callargs_without_rc, ('startCommand', commandID, remote_command, args)) self.assertIsInstance(callargs[1], pb.RemoteCommand) self.assertEqual(callargs[1].impl, RCInstance)
def test_constructor(self): conn = pb.Connection(self.master, self.buildslave, self.mind) self.assertEqual(conn.mind, self.mind) self.assertEqual(conn.master, self.master) self.assertEqual(conn.buildslave, self.buildslave)
def setUp(self): self.master = fakemaster.make_master() self.conn = pb.Connection(self.master, mock.Mock(), mock.Mock())
def test_perspective_keepalive(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.perspective_keepalive() conn.buildslave.messageReceivedFromSlave.assert_called_with()
def test_perspective_shutdown(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.perspective_shutdown() conn.buildslave.shutdownRequested.assert_called_with() conn.buildslave.messageReceivedFromSlave.assert_called_with()
def test_doKeepalive(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.doKeepalive() self.mind.callRemote.assert_called_with('print', message="keepalive")
def test_remotePrint(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.remotePrint(message='test') conn.mind.callRemote.assert_called_with('print', message='test')
def test_loseConnection(self): conn = pb.Connection(self.master, self.buildslave, self.mind) conn.loseConnection() self.assertEqual(conn.keepalive_timer, None) conn.mind.broker.transport.loseConnection.assert_called_with()