Skip to content

Commit 541d75e

Browse files
author
lou_young
committed
Making a better test.
1 parent 7961bcf commit 541d75e

File tree

2 files changed

+30
-36
lines changed

2 files changed

+30
-36
lines changed

src/main/java/com/netflix/simianarmy/aws/conformity/crawler/AWSClusterCrawler.java

+1-1
Original file line numberDiff line numberDiff line change
@@ -111,7 +111,7 @@ public List<Cluster> clusters(String... clusterNames) {
111111
}
112112
}
113113
}
114-
114+
115115
updateCluster(cluster);
116116
list.add(cluster);
117117
}

src/test/java/com/netflix/simianarmy/aws/conformity/TestASGOwnerEmailTag.java

+29-35
Original file line numberDiff line numberDiff line change
@@ -4,58 +4,51 @@
44
import static org.mockito.Mockito.mock;
55
import static org.mockito.Mockito.when;
66

7-
import com.google.common.collect.Lists;
87
import com.amazonaws.services.autoscaling.model.AutoScalingGroup;
8+
import com.amazonaws.services.autoscaling.model.SuspendedProcess;
99
import com.amazonaws.services.autoscaling.model.TagDescription;
10+
11+
import com.google.common.collect.Maps;
12+
13+
import com.netflix.simianarmy.aws.conformity.crawler.AWSClusterCrawler;
14+
import com.netflix.simianarmy.basic.BasicConfiguration;
15+
import com.netflix.simianarmy.basic.conformity.BasicConformityMonkeyContext;
1016
import com.netflix.simianarmy.conformity.Cluster;
1117
import com.netflix.simianarmy.client.aws.AWSClient;
1218

1319
import junit.framework.Assert;
1420
import org.testng.annotations.Test;
1521

22+
import java.util.Map;
1623
import java.util.List;
1724
import java.util.LinkedList;
25+
import java.util.Properties;
1826

1927
public class TestASGOwnerEmailTag {
28+
2029
private static final String ASG1 = "asg1";
2130
private static final String ASG2 = "asg2";
22-
private static final String INSTANCE_ID = "i-01234567890";
2331
private static final String OWNER_TAG_KEY = "owner";
2432
private static final String OWNER_TAG_VALUE = "tyler@paperstreet.com";
2533
private static final String REGION = "eu-west-1";
2634

2735
@Test
2836
public void testForOwnerTag() {
37+
Properties properties = new Properties();
38+
BasicConformityMonkeyContext ctx = new BasicConformityMonkeyContext();
39+
2940
List<AutoScalingGroup> asgList = createASGList();
3041
String[] asgNames = {ASG1, ASG2};
42+
3143
AWSClient awsMock = createMockAWSClient(asgList, asgNames);
32-
List<Cluster> list = Lists.newArrayList();
33-
34-
for (AutoScalingGroup asg : asgList) {
35-
List<String> instances = Lists.newArrayList();
36-
instances.add(INSTANCE_ID);
37-
com.netflix.simianarmy.conformity.AutoScalingGroup conformityAsg =
38-
new com.netflix.simianarmy.conformity.AutoScalingGroup(
39-
asg.getAutoScalingGroupName(),
40-
instances.toArray(new String[instances.size()]));
41-
Cluster cluster = new Cluster(asg.getAutoScalingGroupName(), REGION, conformityAsg);
42-
List<TagDescription> tagDescriptions = asg.getTags();
43-
for (TagDescription tagDescription : tagDescriptions) {
44-
if ( tagDescription.getKey() != null) {
45-
if ( OWNER_TAG_KEY.equalsIgnoreCase(tagDescription.getKey()) ) {
46-
String value = tagDescription.getValue();
47-
if (value != null) {
48-
cluster.setOwnerEmail(value);
49-
}
50-
}
51-
}
52-
}
53-
list.add(cluster);
54-
}
44+
Map<String, AWSClient> regionToAwsClient = Maps.newHashMap();
45+
regionToAwsClient.put("us-east-1", awsMock);
46+
AWSClusterCrawler clusterCrawler = new AWSClusterCrawler(regionToAwsClient, new BasicConfiguration(properties));
47+
48+
List<Cluster> clusters = clusterCrawler.clusters(asgNames);
5549

56-
Assert.assertNotNull(list.get(0).getOwnerEmail());
57-
Assert.assertTrue(list.get(0).getOwnerEmail().equalsIgnoreCase(OWNER_TAG_VALUE));
58-
Assert.assertEquals(list.get(1).getOwnerEmail(), null);
50+
Assert.assertTrue(OWNER_TAG_VALUE.equalsIgnoreCase(clusters.get(0).getOwnerEmail()));
51+
Assert.assertNull(clusters.get(1).getOwnerEmail());
5952
}
6053

6154
private List<AutoScalingGroup> createASGList() {
@@ -64,17 +57,18 @@ private List<AutoScalingGroup> createASGList() {
6457
asgList.add(makeASG(ASG2, null));
6558
return asgList;
6659
}
60+
61+
private AutoScalingGroup makeASG(String asgName, String ownerEmail) {
62+
TagDescription tag = new TagDescription().withKey(OWNER_TAG_KEY).withValue(ownerEmail);
63+
AutoScalingGroup asg = new AutoScalingGroup()
64+
.withAutoScalingGroupName(asgName)
65+
.withTags(tag);
66+
return asg;
67+
}
6768

6869
private AWSClient createMockAWSClient(List<AutoScalingGroup> asgList, String... asgNames) {
6970
AWSClient awsMock = mock(AWSClient.class);
7071
when(awsMock.describeAutoScalingGroups(asgNames)).thenReturn(asgList);
7172
return awsMock;
7273
}
73-
74-
private AutoScalingGroup makeASG(String asgName, String ownerEmail) {
75-
TagDescription tag = new TagDescription().withKey(OWNER_TAG_KEY).withValue(ownerEmail);
76-
AutoScalingGroup asg = new AutoScalingGroup().withAutoScalingGroupName(asgName).withTags(tag);
77-
return asg;
78-
}
79-
8074
}

0 commit comments

Comments
 (0)