public async Task AcceptModifiedCommandFromDynamicPrefixAsync() { var trigger = new DynamicPrefixTrigger("test."); var mockContext = new Mock <IContext>(); mockContext.Setup(x => x.GetService( It.Is <Type>(y => y.IsAssignableFrom(typeof(DbContext))))) .Returns(NewDbContext()); mockContext.Setup(x => x.GetService( It.Is <Type>(y => y.IsAssignableFrom(typeof(ICacheClient))))) .Returns(new InMemoryCacheClient(new ProtobufSerializer())); var mockMessage = new Mock <ITestDiscordMessage>(); mockMessage.Setup(x => x.Id).Returns(1L); mockContext.Setup(x => x.GetContext( It.Is <string>(y => y == CorePipelineStage.MessageContextKey))) .Returns(mockMessage.Object); mockContext.Setup(x => x.GetContext( It.Is <string>(y => y == CorePipelineStage.QueryContextKey))) .Returns("test.command"); var result = await trigger.CheckTriggerAsync(mockContext.Object) .ConfigureAwait(false); Assert.Equal("test.", result); }
public async Task AcceptDefaultCommandFromDynamicPrefixAsync() { var trigger = new DynamicPrefixTrigger("test."); var mockContext = new TestContextObject(); mockContext.SetService(typeof(DbContext), NewDbContext()); mockContext.SetService( typeof(ICacheClient), new InMemoryCacheClient(new ProtobufSerializer())); var mockMessage = new Mock <ITestDiscordMessage>(); mockMessage.Setup(x => x.Id).Returns(0L); mockContext.SetContext(CorePipelineStage.MessageContextKey, mockMessage.Object); mockContext.SetContext(CorePipelineStage.QueryContextKey, "test.command"); var result = await trigger.CheckTriggerAsync(mockContext) .ConfigureAwait(false); Assert.Equal("test.", result); }