Exemplo n.º 1
0
        // When invoked with and unknown command it should not launch the GUI.
        public async Task InvokedWithUnknownCommandAsync()
        {
            var ms     = new MemoryStream();
            var output = new StreamWriter(ms, Encoding.ASCII, 1024, true);

            CommandInterpreter.Configure(CreateMixCommand(), CreateFindPasswordCommand(), output, output);
            // unknown command
            var runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "unknowncommand" });

            output.Flush();
            var consoleOutput = Encoding.ASCII.GetString(ms.ToArray());

            Assert.Contains("Unknown command:", consoleOutput);
            Assert.False(runGui);

            ms     = new MemoryStream();
            output = new StreamWriter(ms, Encoding.ASCII, 1024, true);
            // Unknown option
            CommandInterpreter.Configure(CreateMixCommand(), CreateFindPasswordCommand(), output, output);
            runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "--unknownoption" });

            output.Flush();
            consoleOutput = Encoding.ASCII.GetString(ms.ToArray());
            Assert.Contains("Unknown command:", consoleOutput);
            Assert.False(runGui);
        }
Exemplo n.º 2
0
        // When invoked with "--datadir" only it should set the DataDir and launch the GUI
        public async Task InvokedWithDataDirAsync()
        {
            var ms     = new MemoryStream();
            var output = new StreamWriter(ms, Encoding.ASCII, 1024, true);

            CommandInterpreter.Configure(CreateMixCommand(), CreateFindPasswordCommand(), output, output);
            var runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "--datadir", "expected/passed/datadir" });

            output.Flush();
            Assert.Equal("expected/passed/datadir", WalletWasabi.Gui.Global.DataDir);
            Assert.True(runGui);
        }
Exemplo n.º 3
0
        // When invoked with "--version" it should NOT in GUI mode
        public async Task InvokedWithVersionAsync()
        {
            var ms     = new MemoryStream();
            var output = new StreamWriter(ms, Encoding.ASCII, 1024, true);

            CommandInterpreter.Configure(CreateMixCommand(), CreateFindPasswordCommand(), output, output);
            var runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "--version" });

            output.Flush();
            var consoleOutput = Encoding.ASCII.GetString(ms.ToArray());

            Assert.Contains("Wasabi Client Version:", consoleOutput);
            Assert.False(runGui);
        }
Exemplo n.º 4
0
        // When invoked with "findpassword" it should NOT launch the GUI
        public async Task InvokedWithPasswordFinderAsync()
        {
            var ms                  = new MemoryStream();
            var output              = new StreamWriter(ms, Encoding.ASCII, 1024, true);
            var invoked             = false;
            var findPasswordCommand = CreateFindPasswordCommand();

            findPasswordCommand.Run = (s) => invoked = true;
            CommandInterpreter.Configure(CreateMixCommand(), findPasswordCommand, output, output);
            var runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "findpassword" });

            Assert.True(invoked);
            Assert.False(runGui);
        }
Exemplo n.º 5
0
        // When invoked with "--datadir" only it should set the DataDir and launch the GUI
        public async Task InvokedWithMixAsync()
        {
            var ms         = new MemoryStream();
            var output     = new StreamWriter(ms, Encoding.ASCII, 1024, true);
            var invoked    = false;
            var mixCommand = CreateMixCommand();

            mixCommand.Run = (s) => invoked = true;
            CommandInterpreter.Configure(mixCommand, CreateFindPasswordCommand(), output, output);
            var runGui = await CommandInterpreter.ExecuteCommandsAsync(new[] { "mix" });

            Assert.True(invoked);
            Assert.False(runGui);

            // Ensure backward compatibility with --mix
            mixCommand     = CreateMixCommand();
            mixCommand.Run = (s) => invoked = true;
            CommandInterpreter.Configure(mixCommand, CreateFindPasswordCommand(), output, output);
            invoked = false;
            runGui  = await CommandInterpreter.ExecuteCommandsAsync(new[] { "--mix" });

            Assert.True(invoked);
            Assert.False(runGui);
        }