public void Test_Discovery() { // Arrange AlexaResponse ar = new AlexaResponse("Alexa.Discovery", "Discover.Response", "endpoint-001"); JObject capabilityAlexa = JObject.Parse(ar.CreatePayloadEndpointCapability()); JObject propertyPowerstate = new JObject(); propertyPowerstate.Add("name", "powerState"); JObject capabilityAlexaPowerController = JObject.Parse(ar.CreatePayloadEndpointCapability("AlexaInterface", "Alexa.PowerController", "3", propertyPowerstate.ToString())); JArray capabilities = new JArray(); capabilities.Add(capabilityAlexa); capabilities.Add(capabilityAlexaPowerController); ar.AddPayloadEndpoint("test", capabilities.ToString()); // Act JObject response = JObject.Parse(ar.ToString()); System.Console.WriteLine(response); // Assert Assert.AreEqual(response["event"]["header"]["namespace"].ToString(), "Alexa.Discovery"); Assert.AreEqual(response["event"]["header"]["name"].ToString(), "Discover.Response"); Assert.AreEqual(response["event"]["payload"]["endpoints"][0]["friendlyName"].ToString(), "Sample Endpoint"); Assert.AreEqual(response["event"]["payload"]["endpoints"][0]["capabilities"][0]["type"].ToString(), "AlexaInterface"); Assert.AreEqual(response["event"]["payload"]["endpoints"][0]["capabilities"][0]["interface"].ToString(), "Alexa"); Assert.AreEqual(response["event"]["payload"]["endpoints"][0]["capabilities"][1]["interface"].ToString(), "Alexa.PowerController"); }