### Question:
MultiLangProtocol { boolean leaseLost(LeaseLostInput leaseLostInput) { return waitForStatusMessage(LeaseLostMessage.ACTION, null, messageWriter.writeLeaseLossMessage(leaseLostInput)); } MultiLangProtocol(MessageReader messageReader, MessageWriter messageWriter,
            InitializationInput initializationInput, MultiLangDaemonConfiguration configuration);   }### Answer:
@Test public void leaseLostTest() { when(messageWriter.writeLeaseLossMessage(any(LeaseLostInput.class))).thenReturn(buildFuture(true)); when(messageReader.getNextMessageFromSTDOUT()).thenReturn(buildFuture(new StatusMessage(LeaseLostMessage.ACTION), Message.class)); assertThat(protocol.leaseLost(LeaseLostInput.builder().build()), equalTo(true)); }