FirmwareEventFactory extends AbstractEventFactory { public static FirmwareStatusInfoEvent createFirmwareStatusInfoEvent(FirmwareStatusInfo firmwareStatusInfo) { checkNotNull(firmwareStatusInfo, "firmwareStatusInfo"); String topic = FIRMWARE_STATUS_TOPIC.replace(THING_UID_TOPIC_KEY, firmwareStatusInfo.getThingUID().getAsString()); String payload = serializePayload(firmwareStatusInfo); return new FirmwareStatusInfoEvent(topic, payload, firmwareStatusInfo); } FirmwareEventFactory(); static FirmwareStatusInfoEvent createFirmwareStatusInfoEvent(FirmwareStatusInfo firmwareStatusInfo); static FirmwareUpdateProgressInfoEvent createFirmwareUpdateProgressInfoEvent(
            FirmwareUpdateProgressInfo progressInfo); static FirmwareUpdateResultInfoEvent createFirmwareUpdateResultInfoEvent(
            FirmwareUpdateResultInfo firmwareUpdateResultInfo);  }
@Test public void testNullStatusInfo() { assertThrows(IllegalArgumentException.class, () -> FirmwareEventFactory.createFirmwareStatusInfoEvent(null)); }