Skip to content

Commit

Permalink
Fixes tests broken by former commits
Browse files Browse the repository at this point in the history
  • Loading branch information
Adrian Cole committed Feb 1, 2015
1 parent ee4fe40 commit e727b9d
Show file tree
Hide file tree
Showing 3 changed files with 62 additions and 50 deletions.
21 changes: 12 additions & 9 deletions cli/src/main/java/denominator/cli/Denominator.java
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,9 @@
import com.google.common.collect.FluentIterable;
import com.google.common.collect.ImmutableList;
import com.google.common.collect.ImmutableList.Builder;
import com.google.common.collect.ImmutableSortedSet;
import com.google.common.collect.Iterators;
import com.google.common.collect.Ordering;
import com.google.common.io.Files;
import com.google.common.net.InternetDomainName;
import com.google.gson.Gson;
Expand Down Expand Up @@ -56,7 +58,7 @@
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.HashMap;
import java.util.LinkedHashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
Expand Down Expand Up @@ -136,7 +138,7 @@ public static String providerAndCredentialsTable() {
StringBuilder builder = new StringBuilder();

builder.append(format(table, "provider", "url", "duplicateZones", "credentialType", "credentialArgs"));
for (Provider provider : Providers.list()) {
for (Provider provider : ImmutableSortedSet.copyOf(Ordering.usingToString(), Providers.list())) {
if (provider.credentialTypeToParameterNames().isEmpty())
builder.append(format("%-10s %-51s %-14s %n", provider.name(), provider.url(),
provider.supportsDuplicateZoneNames()));
Expand Down Expand Up @@ -265,13 +267,14 @@ String getFileContentsFromPath(String path) throws IOException {
}

Map<String, ?> getConfigFromEnv() {
Map<String, Object> env = new HashMap<String, Object>();
String provider = getEnvValue("PROVIDER");
env.put("provider", provider);
env.put("url", getEnvValue("URL"));

Map<String, String> credentialMap = new HashMap<String, String>();
Provider providerLoaded = Providers.getByName(provider);
Map<String, Object> env = new LinkedHashMap<String, Object>();
if (providerName == null) providerName = getEnvValue("PROVIDER");
env.put("provider", providerName);
if (url == null) url = getEnvValue("URL");
env.put("url", url);

Map<String, String> credentialMap = new LinkedHashMap<String, String>();
Provider providerLoaded = Providers.getByName(providerName);
if (providerLoaded != null) {
// merge the list of possible credentials
for (Entry<String, Collection<String>> entry :
Expand Down
62 changes: 46 additions & 16 deletions cli/src/test/java/denominator/cli/DenominatorTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,7 @@
import java.net.URL;
import java.util.Iterator;
import java.util.Map;
import org.testng.annotations.BeforeTest;
import org.testng.annotations.Test;

import static denominator.cli.Denominator.json;
Expand All @@ -41,18 +42,23 @@ public class DenominatorTest {
public void listsAllProvidersWithCredentials() {
assertEquals(ListProviders.providerAndCredentialsTable(), Joiner.on('\n').join(
"provider url duplicateZones credentialType credentialArgs",
"mock mem:mock false ",
"clouddns https://identity.api.rackspacecloud.com/v2.0 true password username password",
"clouddns https://identity.api.rackspacecloud.com/v2.0 true apiKey username apiKey",
"designate http://localhost:5000/v2.0 true password tenantId username password",
"dynect https://api2.dynect.net/REST false password customer username password",
"discoverydns https://api.reseller.discoverydns.com false clientCertificate certificatePem keyPem",
"dynect https://api2.dynect.net/REST false password customer username password",
"mock mem:mock false ",
"route53 https://route53.amazonaws.com true accessKey accessKey secretKey",
"route53 https://route53.amazonaws.com true session accessKey secretKey sessionToken",
"ultradns https://ultra-api.ultradns.com:8443/UltraDNS_WS/v01 false password username password", ""));
}

DNSApiManager mgr = denominator.Denominator.create(new MockProvider());

@BeforeTest public void reset() {
mgr = denominator.Denominator.create(new MockProvider());
}

@Test(description = "denominator -p mock zone list")
public void testZoneList() {
assertEquals(Joiner.on('\n').join(new ZoneList().doRun(mgr)), "denominator.io.");
Expand Down Expand Up @@ -83,13 +89,13 @@ public void testCredentialsFromYaml() {
}

private String getTestYaml() {
return "providerConfigurationName: blah1\n" +
return "name: blah1\n" +
"provider: route53\n" +
"credentials:\n" +
" accessKey: foo1\n" +
" secretKey: foo2\n" +
"---\n" +
"providerConfigurationName: blah2\n" +
"name: blah2\n" +
"provider: mock\n" +
"url: mem:mock2\n" +
"credentials:\n" +
Expand Down Expand Up @@ -240,8 +246,20 @@ public void testResourceRecordSetList() {
ResourceRecordSetList command = new ResourceRecordSetList();
command.zoneIdOrName = "denominator.io.";
assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
"denominator.io. MX 86400 1 mx1.denominator.io.",
"denominator.io. NS 86400 ns1.denominator.io.",
"denominator.io. SOA 3600 ns1.denominator.io. admin.denominator.io. 1 3600 600 604800 60",
"denominator.io. SPF 86400 v=spf1 a mx -all",
"denominator.io. TXT 86400 blah",
"phone.denominator.io. NAPTR 3600 1 1 U E2U+sip !^.*$!sip:customer-service@example.com! .",
"ptr.denominator.io. PTR 3600 www.denominator.io.",
"server1.denominator.io. CERT 3600 12345 1 1 B33F",
"server1.denominator.io. LOC 3600 37 48 48.892 S 144 57 57.502 E 26m",
"server1.denominator.io. SRV 3600 0 1 80 www.denominator.io.",
"server1.denominator.io. SSHFP 3600 1 1 B33F",
"server1.denominator.io. TLSA 3600 1 1 1 B33F",
"subdomain.denominator.io. DS 3600 12345 1 1 B33F",
"subdomain.denominator.io. NS 3600 ns1.denominator.io.",
"www.denominator.io. CNAME 3600 www1.denominator.io.",
"www.geo.denominator.io. CNAME alazona 300 a.denominator.io.",
"www.geo.denominator.io. CNAME antarctica 0 c.denominator.io.",
Expand Down Expand Up @@ -424,7 +442,7 @@ public void testResourceRecordSetReplaceRoute53AliasForgotZone() {
command.doRun(mgr);
}

@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "--alias-hosted-zone-id must be a hosted zone id, not a zone providerConfigurationName")
@Test(expectedExceptions = IllegalArgumentException.class, expectedExceptionsMessageRegExp = "--alias-hosted-zone-id must be a hosted zone id, not a zone name")
public void testResourceRecordSetReplaceRoute53AliasZoneNameInsteadOfZoneId() {
ResourceRecordSetReplace command = new ResourceRecordSetReplace();
command.zoneIdOrName = "denominator.io.";
Expand Down Expand Up @@ -527,10 +545,22 @@ public void testResourceRecordSetDelete() {
public void testGeoTypeList() {
GeoTypeList command = new GeoTypeList();
command.zoneIdOrName = "denominator.io.";
assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
"A",
"AAAA",
"CNAME"));
assertEquals(Joiner.on('\n').join(command.doRun(mgr)), ""
+ "A\n"
+ "AAAA\n"
+ "CNAME\n"
+ "NS\n"
+ "PTR\n"
+ "SPF\n"
+ "TXT\n"
+ "MX\n"
+ "SRV\n"
+ "DS\n"
+ "CERT\n"
+ "NAPTR\n"
+ "SSHFP\n"
+ "LOC\n"
+ "TLSA");
}

@Test(description = "denominator -p mock geo -z denominator.io. regions")
Expand Down Expand Up @@ -647,8 +677,8 @@ public void testGeoResourceRecordSetAddRegionsEntireRegion() {

assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
";; in zone denominator.io. adding regions {\"Mexico\":[\"Mexico\"]} to rrset www2.geo.denominator.io. A alazona",
";; current rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}]}",
";; revised rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"]}}]}",
";; current rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}}",
";; revised rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"]}}}",
";; ok"));

assertEquals(
Expand All @@ -673,7 +703,7 @@ public void testGeoResourceRecordSetAddRegionsSkipsWhenSame() {

assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
";; in zone denominator.io. adding regions {\"United States (US)\":[\"Arizona\"]} to rrset www2.geo.denominator.io. A alazona",
";; current rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}]}",
";; current rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}}",
";; ok"));

assertEquals(
Expand All @@ -695,8 +725,8 @@ public void testGeoResourceRecordSetAddRegionsEntireRegionAndTerritory() {

assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
";; in zone denominator.io. adding regions {\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]} to rrset www2.geo.denominator.io. A alazona",
";; current rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}]}",
";; revised rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]}}]}",
";; current rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}}",
";; revised rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]}}}",
";; ok"));

assertEquals(
Expand Down Expand Up @@ -724,8 +754,8 @@ public void testGeoResourceRecordSetAddRegionsEntireRegionAndTerritoryValidatedD
assertEquals(Joiner.on('\n').join(command.doRun(mgr)), Joiner.on('\n').join(
";; in zone denominator.io. adding regions {\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]} to rrset www2.geo.denominator.io. A alazona",
";; validated regions: {\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]}",
";; current rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}]}",
";; revised rrset: {\"providerConfigurationName\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"profiles\":[{\"type\":\"geo\",\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]}}]}",
";; current rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"]}}}",
";; revised rrset: {\"name\":\"www2.geo.denominator.io.\",\"type\":\"A\",\"qualifier\":\"alazona\",\"ttl\":300,\"records\":[{\"address\":\"192.0.2.1\"}],\"geo\":{\"regions\":{\"United States (US)\":[\"Alaska\",\"Arizona\"],\"Mexico\":[\"Mexico\"],\"South America\":[\"Ecuador\"]}}}",
";; ok"));

assertEquals(
Expand Down
Original file line number Diff line number Diff line change
@@ -1,18 +1,15 @@
package denominator.discoverydns.crypto;

import java.io.File;
import com.google.common.base.Charsets;
import com.google.common.io.ByteStreams;
import java.io.IOException;
import java.security.PrivateKey;
import java.security.cert.Certificate;

import org.testng.annotations.Test;

import static org.testng.Assert.assertEquals;
import static org.testng.Assert.assertTrue;
import static org.testng.Assert.assertNotNull;

import com.google.common.base.Charsets;
import com.google.common.io.Files;
import static org.testng.Assert.assertTrue;

public class PemsTest {
@Test
Expand All @@ -35,15 +32,6 @@ public void readPrivateKeyRsaUnencrypted() throws IOException {
assertNotNull(key);
assertEquals(key.getAlgorithm(), "RSA");
assertEquals(key.getFormat(), "PKCS#8");
assertTrue(key.toString().contains("13027056791347954860993705134784360"
+ "90604656096917973695562883321428489"
+ "98948407504753182462366967344028665"
+ "37344247877657226225006174465507621"
+ "39437947285863531387544470171256920"
+ "21960122274296762437642683683205703"
+ "96222695213071318030195835255388795"
+ "63345001588010191621586917319925054"
+ "12412889441923662748528114071"));
}

@Test(expectedExceptions = IOException.class,
Expand All @@ -58,15 +46,6 @@ public void readPrivateKeyRsaUnencryptedPkcs8() throws IOException {
assertNotNull(key);
assertEquals(key.getAlgorithm(), "RSA");
assertEquals(key.getFormat(), "PKCS#8");
assertTrue(key.toString().contains("13027056791347954860993705134784360"
+ "90604656096917973695562883321428489"
+ "98948407504753182462366967344028665"
+ "37344247877657226225006174465507621"
+ "39437947285863531387544470171256920"
+ "21960122274296762437642683683205703"
+ "96222695213071318030195835255388795"
+ "63345001588010191621586917319925054"
+ "12412889441923662748528114071"));
}

@Test(expectedExceptions = IOException.class,
Expand All @@ -76,6 +55,6 @@ public void readPrivateKeyRsaEncryptedPkcs8() throws IOException {
}

private String readPemtoString(String file) throws IOException {
return Files.toString(new File("src/test/resources/" + file), Charsets.US_ASCII);
return new String(ByteStreams.toByteArray(PemsTest.class.getResourceAsStream("/" + file)), Charsets.US_ASCII);
}
}

0 comments on commit e727b9d

Please sign in to comment.