package net.pterodactylus.sone.fcp;
+import static net.pterodactylus.sone.fcp.FcpInterface.FullAccessRequired.ALWAYS;
+import static net.pterodactylus.sone.fcp.FcpInterface.FullAccessRequired.NO;
+import static net.pterodactylus.sone.fcp.FcpInterface.FullAccessRequired.WRITING;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.hamcrest.Matchers.is;
-import net.pterodactylus.sone.fcp.FcpInterface.SetActive;
+import net.pterodactylus.sone.fcp.event.FcpInterfaceActivatedEvent;
+import net.pterodactylus.sone.fcp.event.FcpInterfaceDeactivatedEvent;
+import net.pterodactylus.sone.fcp.event.FullAccessRequiredChanged;
import org.junit.Test;
public class FcpInterfaceTest {
private final FcpInterface fcpInterface = new FcpInterface(null);
- private final SetActive setActive = fcpInterface.new SetActive();
@Test
- public void setActiveCanActivateFcpInterface() {
- setActive.optionChanged(null, null, true);
+ public void fcpInterfaceCanBeActivated() {
+ fcpInterface.fcpInterfaceActivated(new FcpInterfaceActivatedEvent());
assertThat(fcpInterface.isActive(), is(true));
}
@Test
- public void setActiveCanDeactivateFcpInterface() {
- setActive.optionChanged(null, null, false);
+ public void fcpInterfaceCanBeDeactivated() {
+ fcpInterface.fcpInterfaceDeactivated(new FcpInterfaceDeactivatedEvent());
assertThat(fcpInterface.isActive(), is(false));
}
+ @Test
+ public void setFullAccessRequiredCanSetAccessToNo() {
+ fcpInterface.fullAccessRequiredChanged(
+ new FullAccessRequiredChanged(NO));
+ assertThat(fcpInterface.getFullAccessRequired(), is(NO));
+ }
+
+ @Test
+ public void setFullAccessRequiredCanSetAccessToWriting() {
+ fcpInterface.fullAccessRequiredChanged(
+ new FullAccessRequiredChanged(WRITING));
+ assertThat(fcpInterface.getFullAccessRequired(), is(WRITING));
+ }
+
+ @Test
+ public void setFullAccessRequiredCanSetAccessToAlways() {
+ fcpInterface.fullAccessRequiredChanged(
+ new FullAccessRequiredChanged(ALWAYS));
+ assertThat(fcpInterface.getFullAccessRequired(), is(ALWAYS));
+ }
+
}