public void ShouldOperateOnInterface() { var harness = new StringHarness(); var proxy = ActionProxy<ITestAction>.Create("testActionName", "netsh unittest", harness); proxy.SimpleMethod(); Assert.AreEqual("netsh unittest testActionName SimpleMethod", harness.Value); }
public void VerifySSLCertOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Delete.SSLCert(ipPort:"testipport"); Assert.AreEqual("netsh http delete sslcert ipport=testipport", harness.Value); new NetSH(harness).Http.Delete.SSLCert(hostnamePort: "www.contoso.com:1414"); Assert.AreEqual("netsh http delete sslcert hostnameport=www.contoso.com:1414", harness.Value); }
public void ShouldSupportEnumerationParameters() { var harness = new StringHarness(); var proxy = ActionProxy<ITestAction>.Create("testActionName", "netsh unittest", harness); proxy.MethodWithNull(); Assert.AreEqual("netsh unittest testActionName MethodWithNull", harness.Value); proxy.MethodWithNull(1); Assert.AreEqual("netsh unittest testActionName MethodWithNull testInt=1", harness.Value); }
public void VerifySSLCertOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.SSLCert(); Assert.AreEqual("netsh http show sslcert", harness.Value); new NetSH(harness).Http.Show.SSLCert("testipport"); Assert.AreEqual("netsh http show sslcert ipport=testipport", harness.Value); }
public void ShouldSupportBooleanTypeDecoratedParameters() { var harness = new StringHarness(); var proxy = ActionProxy<ITestAction>.Create("testActionName", "netsh unittest", harness); proxy.MethodWithBooleanTypeYesNo(true, false, true); Assert.AreEqual("netsh unittest testActionName MethodWithBooleanTypeYesNo testBooleanYesNo=yes testBooleanEnabledDisabled=disabled testBooleanTrueFalse=true", harness.Value); proxy.MethodWithBooleanTypeYesNo(false, true, false); Assert.AreEqual("netsh unittest testActionName MethodWithBooleanTypeYesNo testBooleanYesNo=no testBooleanEnabledDisabled=enabled testBooleanTrueFalse=false", harness.Value); }
public void ShouldSupportBooleanValueDecoratedEnumerations() { var harness = new StringHarness(); var proxy = ActionProxy<ITestAction>.Create("testActionName", "netsh unittest", harness); proxy.MethodWithDecoratedEnum(DecoratedEnum.Value1); Assert.AreEqual("netsh unittest testActionName MethodWithDecoratedEnum testEnum=value1", harness.Value); proxy.MethodWithDecoratedEnum(DecoratedEnum.Value2); Assert.AreEqual("netsh unittest testActionName MethodWithDecoratedEnum testEnum=value2", harness.Value); }
public void VerifyCacheStateOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.CacheState("testurl"); Assert.AreEqual("netsh http show cachestate url=testurl", harness.Value); new NetSH(harness).Http.Show.CacheState(); Assert.AreEqual("netsh http show cachestate", harness.Value); }
public void VerifyTimeoutOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Delete.Timeout(Timeout.HeaderWaitTimeout); Assert.AreEqual("netsh http delete timeout timeouttype=headerwaittimeout", harness.Value); new NetSH(harness).Http.Delete.Timeout(Timeout.IdleConnectionTimeout); Assert.AreEqual("netsh http delete timeout timeouttype=idleconnectiontimeout", harness.Value); }
public void VerifyUrlAclOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.UrlAcl(); Assert.AreEqual("netsh http show urlacl", harness.Value); new NetSH(harness).Http.Show.UrlAcl("testurl"); Assert.AreEqual("netsh http show urlacl url=testurl", harness.Value); }
public void VerifyCacheOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Delete.Cache("testurl", false); Assert.AreEqual("netsh http delete cache url=testurl recursive=no", harness.Value); new NetSH(harness).Http.Delete.Cache("testurl", true); Assert.AreEqual("netsh http delete cache url=testurl recursive=yes", harness.Value); new NetSH(harness).Http.Delete.Cache("testurl"); Assert.AreEqual("netsh http delete cache url=testurl", harness.Value); }
public void VerifyServiceStateOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.ServiceStateRequestQueueView(); Assert.AreEqual("netsh http show servicestate view=requestq", harness.Value); new NetSH(harness).Http.Show.ServiceStateRequestQueueView(false); Assert.AreEqual("netsh http show servicestate view=requestq verbose=no", harness.Value); new NetSH(harness).Http.Show.ServiceStateRequestQueueView(true); Assert.AreEqual("netsh http show servicestate view=requestq verbose=yes", harness.Value); new NetSH(harness).Http.Show.ServiceStateSessionView(); Assert.AreEqual("netsh http show servicestate view=session", harness.Value); new NetSH(harness).Http.Show.ServiceStateSessionView(false); Assert.AreEqual("netsh http show servicestate view=session verbose=no", harness.Value); new NetSH(harness).Http.Show.ServiceStateSessionView(true); Assert.AreEqual("netsh http show servicestate view=session verbose=yes", harness.Value); }
public void VerifyLogBufferOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Flush.LogBuffer(); Assert.AreEqual("netsh http flush logbuffer", harness.Value); }
public void VerifyIpListenOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.IpListen(); Assert.AreEqual("netsh http show iplisten", harness.Value); }
public void ShouldSupportParameterNameDecoratedMethods() { var harness = new StringHarness(); var proxy = ActionProxy<ITestAction>.Create("testActionName", "netsh unittest", harness); proxy.MethodWithParameterNameDecoration("myParameterTest"); Assert.AreEqual("netsh unittest testActionName MethodWithParameterNameDecoration test=myParameterTest", harness.Value); }
public void VerifyIpListenOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Delete.IpListen("testaddress"); Assert.AreEqual("netsh http delete iplisten ipaddress=testaddress", harness.Value); }
public void VerifySSLCertOutput() { var harness = new StringHarness(); var tests = new[] { new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) true, (bool?) false, (bool?) true, (bool?) false, (bool?) true}, new object[] {null, "testhostnameport", null, "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {"testipport", null, "testcerthash", null, "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {null, "testhostnameport", "testcerthash", "testcertstorename", null, "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", null, (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {null, "testhostnameport", "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", null, (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), null, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {null, "testhostnameport", "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, null, (bool?) false, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, null, (bool?) true, (bool?) false, (bool?) true, (bool?) false}, new object[] {null, "testhostnameport", "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, null, (bool?) false, (bool?) true, (bool?) false}, new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, null, (bool?) true, (bool?) false}, new object[] {null, "testhostnameport", "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, null, (bool?) false}, new object[] {"testipport", null, "testcerthash", "testcertstorename", "testsslctlidentifier", "testsslctlstorename", (Guid?) new Guid("11111111-1111-1111-1111-111111111111"), (uint?) 1, (uint?) 1, (bool?) false, (bool?) true, (bool?) false, (bool?) true, null} }; foreach (var values in tests) { var nullValueIndices = values.Select((val, idx) => Tuple.Create(val, idx)).Where(t => t.Item1 == null).Select(t => t.Item2).ToArray(); new NetSH(harness).Http.Add.SSLCert(ipPort: (string)values[0], hostnamePort: (string)values[1], certHash: (string)values[2], certStoreName: (string)values[3], sslCtlIdentifier: (string)values[4], sslCtlStoreName: (string)values[5], appId: (Guid?) values[6], revocationFreshnessTime: (uint?) values[7], urlRetrievalTimeout: (uint?) values[8], verifyClientCertRevocation: (bool?) values[9], verifyRevocationWithCachedClientCertOnly: (bool?) values[10], usageCheck: (bool?) values[11], dsMapperUsage: (bool?) values[12], clientCertNegotiation: (bool?) values[13]); var value = harness.Value; var parameters = typeof (IAddAction).GetMethod("SSLCert").GetParameters(); var i = 0; parameters.ToList().ForEach(x => { var type = x.ParameterType; var name = x.Name.ToLower(); if (nullValueIndices.Contains(i)) { Assert.IsTrue(!value.Contains(name + "=")); i++; return; } if (type == typeof (string)) Assert.IsTrue(value.Contains(name + "=" + "test" + name)); else if (type == typeof (Guid)) Assert.IsTrue(value.Contains(name + "={11111111-1111-1111-1111-111111111111}")); else if (type == typeof(Guid?)) Assert.IsTrue(value.Contains(name + "={11111111-1111-1111-1111-111111111111}")); else if (type == typeof (bool)) Assert.IsTrue(value.Contains(name + "=enabled") || value.Contains(name + "=disabled")); i++; }); } }
public void VerifyUrlAclOutput() { var harness = new StringHarness(); var netsh = new NetSH(harness); netsh.Http.Add.UrlAcl("testurl", "testuser", false, false); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=no delegate=no", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", false, true); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=no delegate=yes", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", true, false); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=yes delegate=no", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", true, true); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=yes delegate=yes", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", null, true); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser delegate=yes", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", null, false); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser delegate=no", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", true); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=yes", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", false); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser listen=no", harness.Value); netsh.Http.Add.UrlAcl("testurl", "testuser", "testsddl"); Assert.AreEqual("netsh http add urlacl url=testurl user=testuser sddl=testsddl", harness.Value); }
public void VerifyTimeoutOutput() { var harness = new StringHarness(); new NetSH(harness).Http.Show.Timeout(); Assert.AreEqual("netsh http show timeout", harness.Value); }