public void startScanner(final String interval, final String timeUnit) { if (interval.trim().isEmpty()) { view.errorOnInterval(); return; } Long actualInterval = calculateInterval(Long.valueOf(checkNotEmpty("interval", interval)), timeUnit); view.disableActions(); ruleCapabilitiesService.call(new RemoteCallback<Void>() { @Override public void callback(final Void response) { scannerStatus = KieScannerStatus.STARTED; setScannerStatus(); updateViewState(); } }, new ErrorCallback<Object>() { @Override public boolean error(final Object o, final Throwable throwable) { notification.fire(new NotificationEvent(view.getStartScannerErrorMessage(), NotificationEvent.NotificationType.ERROR)); updateViewState(); return false; } }).startScanner(containerSpec, actualInterval); }
@Test public void testSetupScannerIntervalDays() { when(view.getIntervalTimeUnit()).thenReturn(ContainerRulesConfigPresenter.D); when(ruleConfig.getScannerStatus()).thenReturn(KieScannerStatus.STARTED); when(ruleConfig.getPollInterval()).thenReturn(TimeUnit.MILLISECONDS.convert(Long.valueOf(1), TimeUnit.DAYS)); releaseId.setVersion("1.x"); presenter.setup(containerSpec, ruleConfig); verify(view).setContent(eq("1"), eq("1.x"), eq(State.DISABLED), eq(State.ENABLED), eq(State.DISABLED), eq(State.DISABLED)); } }
@Test public void testScanNowError() { doThrow(new RuntimeException()).when(ruleCapabilitiesService).scanNow(eq(containerSpec)); when(view.getScanNowErrorMessage()).thenReturn("ERROR"); presenter.setup(containerSpec, ruleConfig); presenter.scanNow(); verify(notification).fire(new NotificationEvent("ERROR", NotificationEvent.NotificationType.ERROR)); verify(view).setStartScannerState(State.ENABLED); verify(view).setStopScannerState(State.DISABLED); verify(view).setScanNowState(State.ENABLED); verify(view).setUpgradeState(State.ENABLED); }
public void upgrade(final String version) { view.disableActions(); ruleCapabilitiesService.call(new RemoteCallback<Void>() { @Override public void callback(final Void response) { if (version != null && !version.isEmpty() && version.compareTo(containerSpec.getReleasedId().getVersion()) == 0) { notification.fire(new NotificationEvent(view.getUpgradeSuccessMessage(), NotificationEvent.NotificationType.SUCCESS)); } updateViewState(); } }, new ErrorCallback<Object>() { @Override public boolean error(final Object o, final Throwable throwable) { notification.fire(new NotificationEvent(view.getUpgradeErrorMessage(), NotificationEvent.NotificationType.ERROR)); updateViewState(); return false; } }).upgradeContainer(containerSpec, new ReleaseId(containerSpec.getReleasedId().getGroupId(), containerSpec.getReleasedId().getArtifactId(), version)); }
public void stopScanner() { view.disableActions(); ruleCapabilitiesService.call(new RemoteCallback<Void>() { @Override public void callback(final Void response) { scannerStatus = KieScannerStatus.STOPPED; setScannerStatus(); updateViewState(); } }, new ErrorCallback<Object>() { @Override public boolean error(final Object o, final Throwable throwable) { notification.fire(new NotificationEvent(view.getStopScannerErrorMessage(), NotificationEvent.NotificationType.ERROR)); updateViewState(); return false; } }).stopScanner(containerSpec); }
public void scanNow() { view.disableActions(); ruleCapabilitiesService.call(new RemoteCallback<Void>() { @Override public void callback(final Void response) { scannerStatus = KieScannerStatus.STOPPED; setScannerStatus(); updateViewState(); } }, new ErrorCallback<Object>() { @Override public boolean error(final Object o, final Throwable throwable) { notification.fire(new NotificationEvent(view.getScanNowErrorMessage(), NotificationEvent.NotificationType.ERROR)); updateViewState(); return false; } }).scanNow(containerSpec); }
private void setRuleConfig(final RuleConfig ruleConfig, final String version) { checkNotNull("ruleConfig", ruleConfig); checkNotEmpty("version", version); this.scannerStatus = ruleConfig.getScannerStatus(); if (ruleConfig.getPollInterval() != null) { this.pollInterval = String.valueOf(adjustInterval(ruleConfig.getPollInterval().longValue(), view.getIntervalTimeUnit())); } else { this.pollInterval = ""; } setScannerStatus(); view.setContent(pollInterval, version, startScannerState, stopScannerState, scanNowState, upgradeState); }
@Before public void init() { releaseId = new ReleaseId(); releaseId.setVersion("0.1"); doNothing().when(notification).fire(any(NotificationEvent.class)); ruleCapabilitiesServiceCaller = new CallerMock<RuleCapabilitiesService>(ruleCapabilitiesService); when(containerSpec.getReleasedId()).thenReturn(releaseId); when(view.getUpgradeSuccessMessage()).thenReturn(SUCCESS_UPGRADE); presenter = new ContainerRulesConfigPresenter(logger, view, ruleCapabilitiesServiceCaller, notification); doAnswer(new Answer() { @Override public Object answer(InvocationOnMock invocation) throws Throwable { releaseId.setVersion(invocation.getArgumentAt(1, ReleaseId.class).getVersion()); return null; } }).when(ruleCapabilitiesService).upgradeContainer(any(ContainerSpecKey.class), any(ReleaseId.class)); }
@Test public void testUpgrade() { final String version = "1.0"; presenter.setup(containerSpec, ruleConfig); presenter.upgrade(version); verify(view).disableActions(); final ArgumentCaptor<ReleaseId> releaseIdCaptor = ArgumentCaptor.forClass(ReleaseId.class); verify(ruleCapabilitiesService).upgradeContainer(eq(containerSpec), releaseIdCaptor.capture()); assertEquals(version, releaseIdCaptor.getValue().getVersion()); verify(view).setStartScannerState(State.ENABLED); verify(view).setStopScannerState(State.DISABLED); verify(view).setScanNowState(State.ENABLED); verify(view).setUpgradeState(State.ENABLED); verify(notification).fire(new NotificationEvent(SUCCESS_UPGRADE, NotificationEvent.NotificationType.SUCCESS)); }
@Test public void testStartScannerInDays() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; long expected = TimeUnit.MILLISECONDS.convert(Long.valueOf(interval), TimeUnit.DAYS); presenter.startScanner(interval, ContainerRulesConfigPresenter.D); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(expected)); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testUpgradeError() { doThrow(new RuntimeException()).when(ruleCapabilitiesService).upgradeContainer(eq(containerSpec), any(ReleaseId.class)); when(view.getUpgradeErrorMessage()).thenReturn("ERROR"); presenter.setup(containerSpec, ruleConfig); presenter.upgrade("LATEST"); verify(notification).fire(new NotificationEvent("ERROR", NotificationEvent.NotificationType.ERROR)); verify(notification, never()).fire(new NotificationEvent(SUCCESS_UPGRADE, NotificationEvent.NotificationType.SUCCESS)); verify(view).setStartScannerState(State.ENABLED); verify(view).setStopScannerState(State.DISABLED); verify(view).setScanNowState(State.ENABLED); verify(view).setUpgradeState(State.ENABLED); }
@Test public void testStartScannerInMinutes() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; long expected = TimeUnit.MILLISECONDS.convert(Long.valueOf(interval), TimeUnit.MINUTES); presenter.startScanner(interval, ContainerRulesConfigPresenter.M); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(expected)); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testStartScannerInSeconds() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; long expected = TimeUnit.MILLISECONDS.convert(Long.valueOf(interval), TimeUnit.SECONDS); presenter.startScanner(interval, ContainerRulesConfigPresenter.S); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(expected)); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testStartScannerInHours() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; long expected = TimeUnit.MILLISECONDS.convert(Long.valueOf(interval), TimeUnit.HOURS); presenter.startScanner(interval, ContainerRulesConfigPresenter.H); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(expected)); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testStartScannerError() { doThrow(new RuntimeException()).when(ruleCapabilitiesService).startScanner(eq(containerSpec), anyLong()); when(view.getStartScannerErrorMessage()).thenReturn("ERROR"); presenter.setup(containerSpec, ruleConfig); presenter.startScanner("1", ContainerRulesConfigPresenter.MS); verify(notification).fire(new NotificationEvent("ERROR", NotificationEvent.NotificationType.ERROR)); verify(view).setStartScannerState(State.ENABLED); verify(view).setStopScannerState(State.DISABLED); verify(view).setScanNowState(State.ENABLED); verify(view).setUpgradeState(State.ENABLED); }
@Test public void testSetupScannerIntervalSeconds() { when(view.getIntervalTimeUnit()).thenReturn(ContainerRulesConfigPresenter.S); when(ruleConfig.getScannerStatus()).thenReturn(KieScannerStatus.STARTED); when(ruleConfig.getPollInterval()).thenReturn(TimeUnit.MILLISECONDS.convert(Long.valueOf(1), TimeUnit.SECONDS)); releaseId.setVersion("1.x"); presenter.setup(containerSpec, ruleConfig); verify(view).setContent(eq("1"), eq("1.x"), eq(State.DISABLED), eq(State.ENABLED), eq(State.DISABLED), eq(State.DISABLED)); }
@Test public void testOnConfigUpdate() { final RuleConfigUpdated ruleConfigUpdated = new RuleConfigUpdated(); ruleConfigUpdated.setContainerSpecKey(containerSpec); ruleConfigUpdated.setRuleConfig(ruleConfig); presenter.setup(containerSpec, ruleConfig); presenter.onConfigUpdate(ruleConfigUpdated); verify(view, times(2)).setContent(anyString(), anyString(), any(State.class), any(State.class), any(State.class), any(State.class)); }
@Test public void testStartScannerEmptyTimeUnit() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; long expected = Long.valueOf(interval); presenter.startScanner(interval, null); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(expected)); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testStartScanner() { presenter.setup(containerSpec, ruleConfig); final String interval = "1"; presenter.startScanner(interval, ContainerRulesConfigPresenter.MS); verify(view).disableActions(); verify(ruleCapabilitiesService).startScanner(eq(containerSpec), eq(Long.valueOf(interval))); verify(view).setStartScannerState(State.DISABLED); verify(view).setStopScannerState(State.ENABLED); verify(view).setScanNowState(State.DISABLED); verify(view).setUpgradeState(State.DISABLED); }
@Test public void testSetupScannerIntervalHours() { when(view.getIntervalTimeUnit()).thenReturn(ContainerRulesConfigPresenter.H); when(ruleConfig.getScannerStatus()).thenReturn(KieScannerStatus.STARTED); when(ruleConfig.getPollInterval()).thenReturn(TimeUnit.MILLISECONDS.convert(Long.valueOf(1), TimeUnit.HOURS)); releaseId.setVersion("1.x"); presenter.setup(containerSpec, ruleConfig); verify(view).setContent(eq("1"), eq("1.x"), eq(State.DISABLED), eq(State.ENABLED), eq(State.DISABLED), eq(State.DISABLED)); }