@Test public void restartInstances () { String instanceId1 = UUID.randomUUID().toString(); String instanceId2 = UUID.randomUUID().toString(); Experiment experiment = mock(Experiment.class); Set<String> members = new HashSet<>(Arrays.asList(instanceId1, instanceId2)); doReturn(members).when(awsRDSClusterContainer).getSomeMembers(); awsRDSClusterContainer.restartInstances(experiment); verify(experiment, times(1)).setCheckContainerHealth(any()); verify(awsRDSPlatform, times(1)).restartInstance(members.toArray(new String[0])); }
@ChaosExperiment(experimentType = ExperimentType.STATE) public void restartInstances (Experiment experiment) { final String[] dbInstanceIdentifiers = getSomeMembers().toArray(new String[0]); experiment.setCheckContainerHealth(() -> awsRDSPlatform.getInstanceStatus(dbInstanceIdentifiers)); awsRDSPlatform.restartInstance(dbInstanceIdentifiers); }
AwsRDSClusterContainer extends AwsContainer { @ChaosExperiment(experimentType = ExperimentType.STATE) public void restartInstances (Experiment experiment) { final String[] dbInstanceIdentifiers = getSomeMembers().toArray(new String[0]); experiment.setCheckContainerHealth(() -> awsRDSPlatform.getInstanceStatus(dbInstanceIdentifiers)); awsRDSPlatform.restartInstance(dbInstanceIdentifiers); } }
AwsRDSClusterContainer extends AwsContainer { @ChaosExperiment(experimentType = ExperimentType.STATE) public void restartInstances (Experiment experiment) { final String[] dbInstanceIdentifiers = getSomeMembers().toArray(new String[0]); experiment.setCheckContainerHealth(() -> awsRDSPlatform.getInstanceStatus(dbInstanceIdentifiers)); awsRDSPlatform.restartInstance(dbInstanceIdentifiers); }  }
AwsRDSClusterContainer extends AwsContainer { @ChaosExperiment(experimentType = ExperimentType.STATE) public void restartInstances (Experiment experiment) { final String[] dbInstanceIdentifiers = getSomeMembers().toArray(new String[0]); experiment.setCheckContainerHealth(() -> awsRDSPlatform.getInstanceStatus(dbInstanceIdentifiers)); awsRDSPlatform.restartInstance(dbInstanceIdentifiers); }  static AwsRDSClusterContainerBuilder builder(); String getEngine(); @Override Platform getPlatform(); @Override String getSimpleName(); @Override String getAggregationIdentifier(); @Override DataDogIdentifier getDataDogIdentifier(); String getDbClusterIdentifier(); @JsonIgnore Set<String> getMembers(); @ChaosExperiment(experimentType = ExperimentType.STATE) void restartInstances(Experiment experiment); @ChaosExperiment(experimentType = ExperimentType.STATE) void startSnapshot(Experiment experiment); @ChaosExperiment(experimentType = ExperimentType.STATE) void initiateFailover(Experiment experiment); }
AwsRDSClusterContainer extends AwsContainer { @ChaosExperiment(experimentType = ExperimentType.STATE) public void restartInstances (Experiment experiment) { final String[] dbInstanceIdentifiers = getSomeMembers().toArray(new String[0]); experiment.setCheckContainerHealth(() -> awsRDSPlatform.getInstanceStatus(dbInstanceIdentifiers)); awsRDSPlatform.restartInstance(dbInstanceIdentifiers); }  static AwsRDSClusterContainerBuilder builder(); String getEngine(); @Override Platform getPlatform(); @Override String getSimpleName(); @Override String getAggregationIdentifier(); @Override DataDogIdentifier getDataDogIdentifier(); String getDbClusterIdentifier(); @JsonIgnore Set<String> getMembers(); @ChaosExperiment(experimentType = ExperimentType.STATE) void restartInstances(Experiment experiment); @ChaosExperiment(experimentType = ExperimentType.STATE) void startSnapshot(Experiment experiment); @ChaosExperiment(experimentType = ExperimentType.STATE) void initiateFailover(Experiment experiment);  }