### Question:
ActionUiProductionPanelRemoveFromQueue implements Sc2ApiSerializable<Ui.ActionProductionPanelRemoveFromQueue> { public static ActionUiProductionPanelRemoveFromQueue from( Ui.ActionProductionPanelRemoveFromQueue sc2ApiActionProductionPanelRemoveFromQueue) { require("sc2api action ui production panel remove from queue", sc2ApiActionProductionPanelRemoveFromQueue); return new ActionUiProductionPanelRemoveFromQueue(sc2ApiActionProductionPanelRemoveFromQueue); } private  ActionUiProductionPanelRemoveFromQueue(Builder builder); private  ActionUiProductionPanelRemoveFromQueue(
            Ui.ActionProductionPanelRemoveFromQueue sc2ApiActionProductionPanelRemoveFromQueue); static ActionUiProductionPanelRemoveFromQueue from(
            Ui.ActionProductionPanelRemoveFromQueue sc2ApiActionProductionPanelRemoveFromQueue); static ActionUiProductionPanelRemoveFromQueueSyntax removeFromQueue(); int getUnitIndex(); @Override Ui.ActionProductionPanelRemoveFromQueue toSc2Api(); @Override boolean equals(Object o); @Override int hashCode(); @Override String toString();  }### Answer:
@Test void throwsExceptionWhenSc2ApiActionUiProductionPanelRemoveFromQueueIsNull() { assertThatExceptionOfType(IllegalArgumentException.class) .isThrownBy(() -> ActionUiProductionPanelRemoveFromQueue.from(nothing())) .withMessage("sc2api action ui production panel remove from queue is required"); }
@Test void convertsSc2ApiActionUiProductionPanelRemoveFromQueueToActionUiProductionPanelRemoveFromQueue() { assertThatAllFieldsAreConverted(ActionUiProductionPanelRemoveFromQueue.from( sc2ApiActionUiProductionPanelRemoveFromQueue())); }