mirror of
https://github.com/space-wizards/RobustToolbox.git
synced 2026-09-16 15:22:27 +02:00
Caught numerous cases of expected/actual being mixed and even a few broken test cases in content.
39 lines
1.3 KiB
C#
39 lines
1.3 KiB
C#
using System.Collections.Generic;
|
|
using NUnit.Framework;
|
|
using Robust.Shared.Utility;
|
|
|
|
namespace Robust.UnitTesting.Shared.Utility
|
|
{
|
|
[Parallelizable(ParallelScope.All | ParallelScope.Fixtures)]
|
|
[TestFixture]
|
|
[TestOf(typeof(CommandParsing))]
|
|
public class CommandParsing_Test
|
|
{
|
|
[TestCase("foo bar", new[] {"foo", "bar"})]
|
|
[TestCase("foo bar", new[] {"foo", "bar"})]
|
|
[TestCase("foo \"bar baz\"", new[] {"foo", "bar baz"})]
|
|
[TestCase("foo \"bar baz\"", new[] {"foo", "bar baz"})]
|
|
[TestCase("foo bar baz", new[] {"foo", "bar", "baz"})]
|
|
[TestCase(@"foo \""bar\""", new[] {"foo", "\"bar\""})]
|
|
[TestCase(@"foo \""b\ar\""", new[] {"foo", "\"bar\""})]
|
|
[TestCase("", new string[0])]
|
|
public void TestParse(string command, string[] expected)
|
|
{
|
|
var list = new List<string>();
|
|
CommandParsing.ParseArguments(command, list);
|
|
|
|
Assert.That(list, Is.EqualTo(expected));
|
|
}
|
|
|
|
[TestCase("foo", "foo")]
|
|
[TestCase(@"f\oo", @"f\\oo")]
|
|
[TestCase(@"f""oo", @"f\""oo")]
|
|
public void TestEscape(string source, string expected)
|
|
{
|
|
var escaped = CommandParsing.Escape(source);
|
|
|
|
Assert.That(escaped, Is.EqualTo(expected));
|
|
}
|
|
}
|
|
}
|