public void MultipleDirectivesOfTheSameKindReturnsFirst() { var response = ResponseBuilder.Empty(); var hint1 = new HintDirective(); response.Response.Directives.Add(hint1); response.Response.Directives.Add(new HintDirective()); Assert.Equal(hint1, response.HasDirective <HintDirective>()); }
public void MessageActivityWithAlexaCardDirectiveAttachmentsConverted() { var skillRequest = SkillRequestHelper.CreateIntentRequest(); var mapper = new AlexaRequestMapper(); var activity = Activity.CreateMessageActivity() as Activity; activity.Text = "Hello world"; var hintDirective = new HintDirective("hint text"); var displayDirective = new DisplayRenderTemplateDirective() { Template = new BodyTemplate1() { BackgroundImage = new TemplateImage() { ContentDescription = "Test", Sources = new List <ImageSource>() { new ImageSource() { Url = "https://via.placeholder.com/576.png/09f/fff", } } }, Content = new TemplateContent() { Primary = new TemplateText() { Text = "Test", Type = "PlainText" } }, Title = "Test title", } }; var simpleCard = new SimpleCard() { Title = "This is a simple card", Content = "This is the simple card content" }; activity.Attachments.Add(hintDirective.ToAttachment()); activity.Attachments.Add(displayDirective.ToAttachment()); activity.Attachments.Add(simpleCard.ToAttachment()); var skillResponse = ExecuteActivityToResponse(mapper, new MergedActivityResult { MergedActivity = activity }, skillRequest); VerifyCardAttachmentAndDirectiveResponse(skillResponse, simpleCard, new List <IDirective>() { hintDirective, displayDirective }); }
public void HasDirectiveMatchingTypeReturnsDirective() { var directive = new HintDirective(); var response = ResponseBuilder.Empty(); response.Response.Directives.Add(directive); var output = response.HasDirective <HintDirective>(); Assert.Equal(directive, output); }
public void MultipleDirectivesWithFilterReturnCorrectOne() { var expectedHint = new HintDirective { Hint = new Hint { Text = "test" } }; var response = ResponseBuilder.Empty(); response.Response.Directives.Add(new HintDirective()); response.Response.Directives.Add(expectedHint); var result = response.HasDirective <HintDirective>(h => h.Hint?.Text == "test"); Assert.Equal(expectedHint, result); }
public void Create_HintDirective() { var actual = new HintDirective { Hint = new Hint { Text = "sample text", Type = TextType.Plain } }; var expected = JObject.Parse(@"{ ""type"": ""Hint"", ""hint"": { ""type"": ""PlainText"", ""text"": ""sample text"" } }"); Assert.True(CompareJson(actual, expected)); }
public void HintDirective() { const string TestDataFile = @"TestData\ResponseWithHintDirective.json"; var expectedJSONObject = JObject.Parse(File.ReadAllText(TestDataFile)); var hintDirective = new HintDirective(); hintDirective.Hint = new HintItem { Text = "your hint text" }; var testResponse = new SpeechletResponse(); testResponse.Directives.Add(hintDirective); var responseEnvelope = new SpeechletResponseEnvelope(); responseEnvelope.Response = testResponse; var jsonResponse = responseEnvelope.ToJson(); Assert.Equal(JsonConvert.SerializeObject(expectedJSONObject), jsonResponse); }
public void HintCreatesCorrectJson() { var hint = new HintDirective("test hint"); Assert.True(CompareJson(hint, "HintDirective.json")); }