public async Task CreatesPrivateChannel() { Mock <IDMChannel> dmChannelMock = new Mock <IDMChannel>(); Mock <IUser> userMock = new Mock <IUser>(); userMock .Setup(u => u.GetOrCreateDMChannelAsync(It.IsAny <RequestOptions>())) .Returns(() => Task.FromResult(dmChannelMock.Object)); Mock <IMessageChannel> channelMock = new Mock <IMessageChannel>(); Mock <IMessage> messageMock = new Mock <IMessage>(); messageMock .SetupGet(m => m.Channel) .Returns(channelMock.Object); messageMock .SetupGet(m => m.Author) .Returns(userMock.Object); //Act PrivateCommand command = new PrivateCommand(); await command.Execute(messageMock.Object); //Assert dmChannelMock.Verify(u => u.SendMessageAsync(It.IsAny <string>(), It.IsAny <bool>(), It.IsAny <Embed>(), It.IsAny <RequestOptions>()), Times.AtLeastOnce()); }
public void ExecutePrivateCommand() { ICommand command = new PrivateCommand(new string[] { "foo" }); ValueEnvironment parent = new ValueEnvironment(ValueEnvironmentType.Public); ValueEnvironment privateenv = new ValueEnvironment(parent); ValueEnvironment localenv = new ValueEnvironment(privateenv, ValueEnvironmentType.Local); command.Execute(null, localenv); Assert.IsFalse(localenv.ContainsValue("foo")); Assert.IsFalse(parent.ContainsValue("foo")); Assert.IsTrue(privateenv.ContainsValue("foo")); }
public void ParsePrivateVariables() { Parser parser = new Parser("private foo, bar"); ICommand command = parser.ParseCommand(); Assert.IsNotNull(command); Assert.IsInstanceOfType(command, typeof(PrivateCommand)); PrivateCommand privatecmd = (PrivateCommand)command; Assert.AreEqual(2, privatecmd.Names.Count); Assert.AreEqual("foo", privatecmd.Names.First()); Assert.AreEqual("bar", privatecmd.Names.Skip(1).First()); }