public void CommandMatch4() { Create(string.Empty); var count1 = 0; _runner.Add(VimUtil.CreateNormalBinding("ab", data => { count1++; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); var count2 = 0; _runner.Add(VimUtil.CreateNormalBinding("b", data => { count2++; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("ab"); Assert.Equal(1, count1); Assert.Equal(0, count2); }
public void CommandMatch7() { Create("foo bar"); var count1 = 0; _runner.Add(VimUtil.CreateMotionBinding("aa", data => { count1++; return(NormalCommand.NewYank(data)); })); var count2 = 0; _runner.Add(VimUtil.CreateNormalBinding("aab", data => { count2++; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("aaw"); Assert.Equal(1, count1); Assert.Equal(0, count2); }
public void Register3() { Create(string.Empty); var didRun = false; _runner.Add(VimUtil.CreateNormalBinding("a", data => { Assert.Same(_registerMap.GetRegister('d'), data.GetRegister(_registerMap)); didRun = true; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("\"da"); Assert.True(didRun); }
public void Register1() { Create(string.Empty); var didRun = false; _runner.Add(VimUtil.CreateNormalBinding("a", data => { Assert.Equal(RegisterName.Unnamed, data.GetRegisterNameOrDefault()); didRun = true; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("a"); Assert.True(didRun); }
public void Count1() { Create(string.Empty); var didRun = false; _runner.Add(VimUtil.CreateNormalBinding("a", data => { Assert.True(data.Count.IsNone()); didRun = true; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("a"); Assert.True(didRun); }
public void CommandRan3() { Create("hello world"); var didSee = false; var command1 = VimUtil.CreateNormalBinding("cat", data => CommandResult.NewCompleted(ModeSwitch.NoSwitch)); _runner.Add(command1); _runner.CommandRan += (notUsed, tuple) => { didSee = true; }; _runner.Run('c'); _runner.Run(KeyInputUtil.EscapeKey); Assert.False(didSee); }
public void Run_Count3() { Create(String.Empty); var didRun = false; _runner.Add(VimUtil.CreateNormalBinding("a", data => { Assert.True(data.Count.IsSome()); Assert.Equal(42, data.Count.Value); didRun = true; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("42a"); Assert.True(didRun); }
public void CommandRan2() { Create("hello world"); var didSee = false; var command1 = VimUtil.CreateNormalBinding("c", data => CommandResult.NewCompleted(ModeSwitch.NoSwitch)); _runner.Add(command1); _runner.CommandRan += (notUsed, args) => { Assert.Same(command1, args.CommandRunData.CommandBinding); didSee = true; }; _runner.Run('2'); _runner.Run('c'); Assert.True(didSee); }
public void NestedRun_DontAllowRunDuringBind() { Create("hello world"); _runner.Add(VimUtil.CreateNormalBinding("b")); _runner.Add(VimUtil.CreateComplexNormalBinding( "a", _ => { var res = _runner.Run(KeyInputUtil.CharToKeyInput('b')); Assert.True(res.IsError); })); var res2 = _runner.Run("ab"); Assert.True(res2.IsComplete); }
public void Run_CountAndRegister2() { Create(String.Empty); var didRun = false; _runner.Add(VimUtil.CreateNormalBinding("a", data => { Assert.True(data.Count.IsSome()); Assert.Equal(2, data.Count.Value); Assert.Same(_registerMap.GetRegister('d'), data.GetRegister(_registerMap)); didRun = true; return(CommandResult.NewCompleted(ModeSwitch.NoSwitch)); })); Run("2\"da"); Assert.True(didRun); }
public void NestedRun_AllowMultipleRuns() { Create(""); var ran1 = false; var ran2 = false; _runner.Add(VimUtil.CreateNormalBinding("a", command: VimUtil.CreatePing( _ => { ran1 = true; Assert.True(_runner.Run('b').IsComplete); }))); _runner.Add(VimUtil.CreateNormalBinding("b", command: VimUtil.CreatePing( _ => { ran2 = true; }))); Assert.True(_runner.Run('a').IsComplete); Assert.True(ran1); Assert.True(ran2); }
public void NoMatchingCommand1() { Create("hello world"); _runner.Add(VimUtil.CreateNormalBinding("cat", data => CommandResult.NewCompleted(ModeSwitch.NoSwitch))); Assert.True(_runner.Run('b').IsError); }
public RegisterTest() { Create(""); _runner.Add(VimUtil.CreateNormalBinding("dd")); }
public CountTest() { Create(""); _runner.Add(VimUtil.CreateNormalBinding("dd")); }