diff --git a/BotSpec.Tests.Unit/BotSpec.Tests.Unit.csproj b/BotSpec.Tests.Unit/BotSpec.Tests.Unit.csproj index 78f9179..f399e41 100644 --- a/BotSpec.Tests.Unit/BotSpec.Tests.Unit.csproj +++ b/BotSpec.Tests.Unit/BotSpec.Tests.Unit.csproj @@ -35,9 +35,8 @@ ..\packages\FluentAssertions.4.18.0\lib\net45\FluentAssertions.Core.dll True - - ..\packages\Microsoft.Bot.Connector.DirectLine.3.0.0\lib\net45\Microsoft.Bot.Connector.DirectLine.dll - True + + ..\packages\Microsoft.Bot.Connector.DirectLine.3.0.2\lib\net45\Microsoft.Bot.Connector.DirectLine.dll ..\packages\Microsoft.Rest.ClientRuntime.2.3.4\lib\net45\Microsoft.Rest.ClientRuntime.dll diff --git a/BotSpec.Tests.Unit/packages.config b/BotSpec.Tests.Unit/packages.config index 731100d..0c1cc39 100644 --- a/BotSpec.Tests.Unit/packages.config +++ b/BotSpec.Tests.Unit/packages.config @@ -1,7 +1,7 @@  - + diff --git a/BotSpec/Assertions/Activities/ActivityAssertions.cs b/BotSpec/Assertions/Activities/ActivityAssertions.cs index 6e7b888..8918b36 100644 --- a/BotSpec/Assertions/Activities/ActivityAssertions.cs +++ b/BotSpec/Assertions/Activities/ActivityAssertions.cs @@ -3,6 +3,7 @@ using BotSpec.Assertions.Attachments; using BotSpec.Exceptions; using Microsoft.Bot.Connector.DirectLine; +using BotSpec.Assertions.Cards.CardComponents; namespace BotSpec.Assertions.Activities { @@ -83,6 +84,12 @@ public IActivityAttachmentAssertions WithAttachment() return new ActivityAttachmentAssertions(_activity); } + public ICardActionAssertions WithSuggestedActions() + { + var actions = _activity.SuggestedActions?.Actions; + return new CardActionSetAssertions(actions); + } + public Func CreateEx(string testedProperty, string regex) { var message = $"Expected activity to have property {testedProperty} to match {regex} but regex test failed."; diff --git a/BotSpec/Assertions/Activities/ActivitySetAssertions.cs b/BotSpec/Assertions/Activities/ActivitySetAssertions.cs index caf9633..71a9653 100644 --- a/BotSpec/Assertions/Activities/ActivitySetAssertions.cs +++ b/BotSpec/Assertions/Activities/ActivitySetAssertions.cs @@ -4,6 +4,7 @@ using BotSpec.Assertions.Attachments; using BotSpec.Exceptions; using Microsoft.Bot.Connector.DirectLine; +using BotSpec.Assertions.Cards.CardComponents; namespace BotSpec.Assertions.Activities { @@ -99,6 +100,12 @@ public IActivityAttachmentAssertions WithAttachment() return new ActivitySetAttachmentAssertions(_messageSet); } + public ICardActionAssertions WithSuggestedActions() + { + var actions = _messageSet.Where(message => message.SuggestedActions?.Actions != null).SelectMany(message => message.SuggestedActions.Actions).ToList(); + return new CardActionSetAssertions(actions); + } + public Func CreateEx(string testedProperty, string regex) { var message = $"Expected one message in set to have property {testedProperty} to match {regex} but none did."; diff --git a/BotSpec/Assertions/Activities/IActivityAssertions.cs b/BotSpec/Assertions/Activities/IActivityAssertions.cs index 2e895dc..38a73c4 100644 --- a/BotSpec/Assertions/Activities/IActivityAssertions.cs +++ b/BotSpec/Assertions/Activities/IActivityAssertions.cs @@ -1,3 +1,4 @@ +using BotSpec.Assertions.Cards.CardComponents; using System.Collections.Generic; namespace BotSpec.Assertions.Activities @@ -10,5 +11,6 @@ public interface IActivityAssertions : ICanAssertActivityAttachments IActivityAssertions IdMatching(string regex, string groupMatchRegex, out IList matchedGroups); IActivityAssertions FromMatching(string regex); IActivityAssertions FromMatching(string regex, string groupMatchRegex, out IList matchedGroups); + ICardActionAssertions WithSuggestedActions(); } } diff --git a/BotSpec/BotSpec.csproj b/BotSpec/BotSpec.csproj index c936d69..0c48875 100644 --- a/BotSpec/BotSpec.csproj +++ b/BotSpec/BotSpec.csproj @@ -27,9 +27,8 @@ false - - ..\packages\Microsoft.Bot.Connector.DirectLine.3.0.0\lib\net45\Microsoft.Bot.Connector.DirectLine.dll - True + + ..\packages\Microsoft.Bot.Connector.DirectLine.3.0.2\lib\net45\Microsoft.Bot.Connector.DirectLine.dll ..\packages\Microsoft.Rest.ClientRuntime.2.3.4\lib\net45\Microsoft.Rest.ClientRuntime.dll diff --git a/BotSpec/packages.config b/BotSpec/packages.config index 03a4b74..df79f3a 100644 --- a/BotSpec/packages.config +++ b/BotSpec/packages.config @@ -1,6 +1,6 @@  - + \ No newline at end of file