@Before public void setUp() { super.setUp(); when(entityResolverMock.resolveEntities(apiMock, EXTERNAL_SERVICE_CONDITION)).thenReturn(Collections.singletonList(APPLICATION_ENTITY_ID)); testee = new ExternalServiceConditionConfigurator(apiMock, entityResolverMock); }
/** * Synchronizes configurations (see {@link Configurator#setApplicationConfigurations(Collection)} * and {@link Configurator#setPolicyConfigurations(Collection)}) */ public void sync() { for (ApplicationConfiguration applicationConfiguration : applicationConfigurations) { applicationConfigurator.sync(applicationConfiguration); } for (PolicyConfiguration configuration : policyConfigurations) { policyConfigurator.sync(configuration); conditionConfigurator.sync(configuration); externalServiceConditionConfigurator.sync(configuration); nrqlConditionConfigurator.sync(configuration); syntheticsConditionConfigurator.sync(configuration); channelConfigurator.sync(configuration); } }
@Test public void shouldSynchronizeAllConfigurationsForPolicy_whenFullPolicyConfiguration() { // given testee.setPolicyConfigurations(ImmutableList.of(policyConfigurationMock)); // when testee.sync(); // then InOrder order = inOrder(applicationConfiguratorMock, policyConfiguratorMock, conditionConfiguratorMock, externalServiceConditionConfiguratorMock, nrqlConditionConfiguratorMock, syntheticsConditionConfiguratorMock, channelConfiguratorMock); order.verify(policyConfiguratorMock).sync(policyConfigurationMock); order.verify(conditionConfiguratorMock).sync(policyConfigurationMock); order.verify(externalServiceConditionConfiguratorMock).sync(policyConfigurationMock); order.verify(nrqlConditionConfiguratorMock).sync(policyConfigurationMock); order.verify(syntheticsConditionConfiguratorMock).sync(policyConfigurationMock); order.verify(channelConfiguratorMock).sync(policyConfigurationMock); order.verifyNoMoreInteractions(); } }
/** * NewRelic Alerts configurator constructor * * @param apiKey API Key for given NewRelic account */ public Configurator(@NonNull String apiKey) { NewRelicApi api = new NewRelicApi(apiKey); applicationConfigurator = new ApplicationConfigurator(api); policyConfigurator = new PolicyConfigurator(api); conditionConfigurator = new ConditionConfigurator(api, EntityResolver.defaultInstance()); externalServiceConditionConfigurator = new ExternalServiceConditionConfigurator(api, EntityResolver.defaultInstance()); nrqlConditionConfigurator = new NrqlConditionConfigurator(api); syntheticsConditionConfigurator = new SyntheticsConditionConfigurator(api, EntityResolver.defaultInstance()); channelConfigurator = new ChannelConfigurator(api); }