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");
        }