public async Task SelectMainTeamReceiverUnitTest(string text, string teamTag) { var message = new Message { From = UnitTestBuilder.GetUserNode(), To = UnitTestBuilder.GetBotNode(), Content = PlainText.Parse(text + teamTag) }; var context = new UserContext { MainTeam = "" }; bool success = false; try { success = await flowService.SendSelectMainTeamFlowAsync(message, context, CancellationToken.None); context = await contextManager.GetUserContextAsync(message.From, CancellationToken.None); } catch (Exception ex) { ex.ShouldBeNull(); } finally { success.ShouldBeTrue(); context.MainTeam.ShouldBe(teamTag); } }
public async Task ReceiveAsync(Message message, CancellationToken cancellationToken = default(CancellationToken)) { try { var userContext = await _contextManager.GetUserContextAsync(message.From, cancellationToken); var contact = await GetContact(message, cancellationToken); if (message.Content.ToString().Trim().Contains("#DEVACTION#")) { await _devActionHandler.HandleAsync(message, cancellationToken); } else { if (message.Content.ToString().Trim().Contains("Main Menu")) { message.Content = PlainText.Parse("#MainMenu_"); } await _sender.SendDelayedComposingAsync(message.From, 2000, cancellationToken); await ReceiveMessageAsync(message, contact, userContext, cancellationToken); } } catch (Exception ex) { await _sender.SendMessageAsync("Oops, something went wrong...", message.From, cancellationToken); } }
public async Task GetUserContextAsync() { var context = await _contextManager.GetUserContextAsync(node, cancellationToken); context.FirstInteraction.ShouldNotBeNull(); context.TeamDivision.ShouldNotBeNull(); context.MainTeam.ShouldNotBeNull(); }