Files
sbox-public/engine/Sandbox.Test/System/CommandLineTest.cs
s&box team 71f266059a Open source release
This commit imports the C# engine code and game files, excluding C++ source code.

[Source-Commit: ceb3d758046e50faa6258bc3b658a30c97743268]
2025-11-24 09:05:18 +00:00

27 lines
1.1 KiB
C#

using System;
using Sandbox.Utility;
namespace TestSystem;
[TestClass]
public class CommandLineTest
{
[TestMethod]
public void TestCommandLineParser()
{
CommandLine.CommandLineString = @"+game facepunch.walker garry.scenemap +something ""hello there im a string"" test -value 35455 +somethingelse ""a -switch inside a string""";
CommandLine.Parse();
Assert.AreEqual( "facepunch.walker garry.scenemap", CommandLine.GetSwitch( "game", string.Empty ) );
Assert.AreEqual( @"""a -switch inside a string""", CommandLine.GetSwitch( "somethingelse", string.Empty ) );
Assert.AreEqual( "35455", CommandLine.GetSwitch( "value", string.Empty ) );
Assert.AreEqual( "35455", CommandLine.GetSwitch( "-value", string.Empty ) );
Assert.AreEqual( @"""hello there im a string"" test", CommandLine.GetSwitch( "something", string.Empty ) );
CommandLine.CommandLineString = @"D:\Facepunch\sbox\game\sbox-dev.dll -project D:\Facepunch\sbox\game\addons\sbox-deathmatch\sbdm.sbproj";
CommandLine.Parse();
Assert.AreEqual( @"D:\Facepunch\sbox\game\addons\sbox-deathmatch\sbdm.sbproj", CommandLine.GetSwitch( "project", string.Empty ) );
}
}