public void ProbeAseManagement_NoChange() { var aseName = "testase"; var mockGetManagementIps = new Mock <IGetManagementIps>(); var mockPersist = new Mock <IPersist>(); var mockNotify = new Mock <INotify>(); // setup AseApi Object var record = new AseApiRecord() { description = "App Service management", endpoints = new List <string>() }; record.endpoints.Add("70.37.57.58/32"); record.endpoints.Add("157.55.208.185/32"); record.endpoints.Add("23.102.188.65/32"); mockGetManagementIps.Setup(m => m.GetManagementIps(aseName)).Returns(record); mockPersist.Setup(m => m.Get(aseName)).Returns(record); mockPersist.Setup(m => m.Save(aseName, record)); mockNotify.Setup(m => m.Notify(record)); var agent = new AseAgent(mockGetManagementIps.Object, mockPersist.Object, mockNotify.Object); var missing = agent.ProbeAseManagement(aseName); mockGetManagementIps.Verify(v => v.GetManagementIps(aseName)); mockPersist.Verify(v => v.Get(aseName)); Assert.IsTrue(missing.Count == 0); mockNotify.VerifyNoOtherCalls(); mockPersist.VerifyNoOtherCalls(); }
public void ProbeAseManagement_FirstTime() { var aseName = "testase"; var mockGetManagementIps = new Mock <IGetManagementIps>(); var mockPersist = new Mock <IPersist>(); var mockNotify = new Mock <INotify>(); // setup added 2 IPs var record2 = new AseApiRecord() { description = "App Service management", endpoints = new List <string>() }; record2.endpoints.Add("70.37.57.58/32"); record2.endpoints.Add("157.55.208.185/32"); record2.endpoints.Add("23.102.188.65/32"); record2.endpoints.Add("191.236.154.88/32"); record2.endpoints.Add("52.174.22.21/32"); mockPersist.Setup(m => m.Get(aseName)).Returns(null as AseApiRecord); mockPersist.Setup(m => m.Save(aseName, record2)); mockNotify.Setup(m => m.Notify(record2)); mockGetManagementIps.Setup(m => m.GetManagementIps(aseName)).Returns(record2); var agent = new AseAgent(mockGetManagementIps.Object, mockPersist.Object, mockNotify.Object); var missing = agent.ProbeAseManagement(aseName); mockGetManagementIps.Verify(v => v.GetManagementIps(aseName)); mockPersist.Verify(v => v.Get(aseName)); Assert.IsTrue(missing.Count == 5); mockNotify.Verify(v => v.Notify(record2)); mockPersist.Verify(v => v.Save(aseName, record2)); }
public AseApiRecord ParseIps() { string ips = "{\"value\":[{\"description\":\"App Service management\",\"endpoints\":[\"70.37.57.58/32\",\"157.55.208.185/32\",\"23.102.188.65/32\",\"191.236.154.88/32\",\"52.174.22.21/32\",\"13.94.149.179/32\",\"13.94.143.126/32\",\"13.94.141.115/32\",\"52.178.195.197/32\",\"52.178.190.65/32\",\"52.178.184.149/32\",\"52.178.177.147/32\",\"13.75.127.117/32\",\"40.83.125.161/32\",\"40.83.121.56/32\",\"40.83.120.64/32\",\"52.187.56.50/32\",\"52.187.63.37/32\",\"52.187.59.251/32\",\"52.187.63.19/32\",\"52.165.158.140/32\",\"52.165.152.214/32\",\"52.165.154.193/32\",\"52.165.153.122/32\",\"104.44.129.255/32\",\"104.44.134.255/32\",\"104.44.129.243/32\",\"104.44.129.141/32\",\"65.52.193.203/32\",\"70.37.89.222/32\",\"13.64.115.203/32\",\"52.225.177.153/32\",\"65.52.172.237/32\",\"23.102.135.246/32\",\"52.224.105.172/32\",\"52.151.25.45/32\",\"40.124.47.188/32\"],\"ports\":[\"454\",\"455\"]},{\"description\":\"App Service Environment VIP\",\"endpoints\":[\"52.165.238.66/32\"],\"ports\":[\"454\",\"455\",\"16001\"]},{\"description\":\"App Service Environment subnet\",\"endpoints\":[\"192.168.250.0/24\"],\"ports\":[\"All\"]}],\"nextLink\":null,\"id\":null}"; var r = JsonConvert.DeserializeObject <AseMgmtApiResult>(ips); AseApiRecord asmnode = r.value.Find(x => x.description.Equals("App Service management")); return(asmnode); }
public void ParseJson() { AseApiRecord asmnode = ParseIps(); Assert.IsNotNull(asmnode); Assert.IsTrue(asmnode.endpoints.Count > 0); Assert.IsTrue(asmnode.ports.Count > 0); }
public void WebHookInvoke() { var wh = new WebhookNotify(webhookurl); var record = new AseApiRecord() { description = "App Service management", endpoints = new List <string>() }; record.endpoints.Add("70.37.57.58/32"); record.endpoints.Add("157.55.208.185/32"); record.endpoints.Add("23.102.188.65/32"); // call webhook. fire and forget. wh.Notify(record); Assert.IsTrue(true); }