microsoft/teams.net

Public

mirrored fromhttps://github.com/microsoft/teams.netAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
6594a29aa91c928c547a8821d305758bc8d340ed

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

Tests/Microsoft.Teams.Apps.Tests/Events/CustomEventTests.cs

70lines · modecode

1using Microsoft.Teams.Api.Activities;
2using Microsoft.Teams.Api.Auth;
3using Microsoft.Teams.Apps.Events;
4using Microsoft.Teams.Apps.Testing.Events;
5using Microsoft.Teams.Apps.Testing.Plugins;
6
7namespace Microsoft.Teams.Apps.Tests.Events;
8
9public class CustomEventTests
10{
11 private readonly App _app;
12 private readonly TestPlugin _plugin;
13 private readonly IToken _token;
14
15 public CustomEventTests()
16 {
17 _app = new App();
18 _plugin = new TestPlugin();
19 _app.AddPlugin(_plugin);
20 _token = Globals.Token;
21 }
22
23 [Fact]
24 public async Task Should_CallHandler_OnEvent()
25 {
26 var calls = 0;
27
28 _app.OnEvent("message", (sender, @event) =>
29 {
30 calls++;
31 Assert.True(@event is TestMessageEvent);
32 });
33
34 _app.OnTestMessage((sender, @event) =>
35 {
36 calls++;
37 Assert.True(@event is TestMessageEvent);
38 });
39
40 var res = await _plugin.Do(_token, new MessageActivity("hello world"));
41
42 Assert.Equal(System.Net.HttpStatusCode.OK, res.Status);
43 Assert.Equal(1, calls);
44 }
45
46 [Fact]
47 public async Task Should_CallHandler_OnEvent_Async()
48 {
49 var calls = 0;
50
51 _app.OnEvent("message", (sender, @event, _) =>
52 {
53 calls++;
54 Assert.True(@event is TestMessageEvent);
55 return Task.CompletedTask;
56 });
57
58 _app.OnTestMessage((sender, @event, _) =>
59 {
60 calls++;
61 Assert.True(@event is TestMessageEvent);
62 return Task.FromResult<object?>(null);
63 });
64
65 var res = await _plugin.Do(_token, new MessageActivity("hello world"));
66
67 Assert.Equal(System.Net.HttpStatusCode.OK, res.Status);
68 Assert.Equal(1, calls);
69 }
70}