Fixed doc typo #1514
GitHub Actions / windows - Test Report
succeeded
Jan 25, 2025 in 0s
574 passed, 0 failed and 24 skipped
Report | Passed | Failed | Skipped | Time |
---|---|---|---|---|
src/UnitTests/TestResults/runneradmin_fv-az653-281_2025-01-25_16_08_24.trx | 287✅ | 12⚪ | 8s | |
src/UnitTests/TestResults/runneradmin_fv-az653-281_2025-01-25_16_08_30.trx | 287✅ | 12⚪ | 17s |
✅ src/UnitTests/TestResults/runneradmin_fv-az653-281_2025-01-25_16_08_24.trx
299 tests were completed in 8s with 287 passed, 0 failed and 12 skipped.
✅ NanoByte.Common.Collections.ArrayUtilsTest
✅ TestAppend
✅ TestConcat
✅ TestConcatParams
✅ TestPrepend
✅ TestSequencedEquals
✅ NanoByte.Common.Collections.CollectionExtensionsTest
✅ TestAddIfNew
✅ NanoByte.Common.Collections.DictionaryExtensionsTest
✅ TestGetOrAdd
✅ TestGetOrAddAsync
✅ TestGetOrAddAsyncRace
✅ TestGetOrDefault
✅ TestGetUnsequencedHashCode
✅ TestUnsequencedEquals
✅ NanoByte.Common.Collections.EnumerableExtensionsTest
✅ TestAppend
✅ TestContainsAny
✅ TestDistinctBy
✅ TestGetSequencedHashCode
✅ TestGetUnsequencedHashCode
✅ TestMaxBy
✅ TestMinBy
✅ TestPermutate
✅ TestPermutateEmpty
✅ TestPrepend
✅ TestSequencedEquals
✅ TestTopologicalSort
✅ TestTrySelectCatchException
✅ TestTrySelectPassException
✅ TestUnsequencedEquals
✅ NanoByte.Common.Collections.LanguageSetTest
✅ TestContainsAny
✅ TestContainsAnyIgnoreCountry
✅ TestDuplicateDetection
✅ TestFromString
✅ TestInvalidCultureInSet
✅ TestToString
✅ NanoByte.Common.Collections.ListExtensionsTest
✅ TestAddOrReplace
✅ TestGetAddedElements
✅ TestRemoveLast
✅ NanoByte.Common.Collections.LocalizableStringCollectionTest
✅ TestContainsExactLanguage
✅ TestGetBestLanguage
✅ TestGetExactLanguage
✅ TestRemoveRange
✅ TestSaveLoad
✅ TestSet
✅ NanoByte.Common.Collections.MultiDictionaryTest
✅ TestAdd
✅ TestRemove
✅ TestValues
✅ NanoByte.Common.Collections.NamedCollectionTest
✅ TestRename
✅ TestSort
✅ NanoByte.Common.Collections.TransparentCacheTest
✅ Test
✅ NanoByte.Common.Collections.XmlDictionaryTest
✅ ShouldRejectDuplicateKeys
✅ TestContainsKey
✅ TestContainsValue
✅ TestGetValue
✅ TestSaveLoad
✅ NanoByte.Common.Dispatch.AggregateDispatcherTest
✅ Aggregate
✅ UnknownType
✅ NanoByte.Common.Dispatch.BucketizerTest
✅ TestPredicate
✅ TestValue
✅ NanoByte.Common.Dispatch.MergeTest
✅ TestMergeAddAndRemove
✅ TestMergeEquals
✅ TestMergeModify
✅ TestMergeSimple
✅ NanoByte.Common.Dispatch.ModelViewSyncTest
✅ Dispose
✅ Initialize
✅ Lookup
✅ MonitoringAdd
✅ MonitoringChanged
✅ MonitoringChangedRebuild
✅ MonitoringRemove
✅ Representations
✅ NanoByte.Common.Dispatch.PerTypeDispatcherTest
✅ TestDispatchAction
✅ TestDispatchActionExceptions
✅ TestDispatchFunc
✅ TestDispatchFuncExceptions
✅ NanoByte.Common.EncodingUtilsTest
✅ TestBase16Decode
✅ TestBase16Encode
✅ TestBase32Encode
✅ TestBase64Utf8Decode
✅ TestBase64Utf8Encode
✅ TestHash
✅ NanoByte.Common.ExceptionUtilsTest
✅ RethrowFirstInner
✅ TestGetMessageWithInner
✅ TestPreserveStack
✅ TestRetryAsyncDoubleFail
✅ TestRetryAsyncOtherExceptionType
✅ TestRetryAsyncPassOnLastAttempt
✅ TestRetryDoubleFail
✅ TestRetryOtherExceptionType
✅ TestRetryPassOnLastAttempt
✅ TestTryAnyAsyncFail
✅ TestTryAnyAsyncSucceed
✅ TestTryAnyFail
✅ TestTryAnySucceed
✅ NanoByte.Common.Info.AppInfoTest
✅ GetsForCurrentLibrary
✅ NanoByte.Common.LogTest
✅ TestBuffer
✅ TestHandler
✅ TestReadLastErrorFrom
✅ NanoByte.Common.MathUtilsTest
✅ TestEqualsTolerance
✅ TestModule(a: -1, b: 3, result: 2)
✅ TestModule(a: 3, b: 2, result: 1)
✅ TestModule(a: 3, b: 4, result: 3)
✅ TestSizeMultiply
✅ TestXOr
✅ NanoByte.Common.Native.AppMutexTest
✅ TestProbeCreateClose
✅ NanoByte.Common.Native.CygwinUtilsTest
✅ TestCreateSymlink
✅ TestIsSymlinkMatch
✅ TestIsSymlinkNoMatch
✅ NanoByte.Common.Native.OSUtilsTest
✅ TestExpandVariablesCaseInsensitive
✅ TestExpandVariablesCaseSensitive
✅ TestExpandVariablesEscaping
✅ NanoByte.Common.Native.ProcessLauncherTest
✅ Run
✅ RunAndCapture
✅ NanoByte.Common.Native.RegistryUtilsTest
✅ TestGetLastWriteTime
✅ NanoByte.Common.Native.UnixUtilsTest
⚪ TestCreateSymlinkDirectory
⚪ TestCreateSymlinkFile
⚪ TestIsNotExecutable
⚪ TestIsNotSymlink
⚪ TestSetExecutable
✅ NanoByte.Common.Native.WindowsRestartManagerTest
✅ TestListApps
✅ NanoByte.Common.Native.WindowsUtilsTest
✅ TestCreateSymlinkDirectory
✅ TestCreateSymlinkFile
✅ TestGetFolderPath
✅ TestIsNotSymlink
✅ TestSplitArgs
✅ NanoByte.Common.Net.DownloadFileTest
✅ TestCancel
✅ TestFileMissing
✅ TestIncorrectSize
✅ TestRun
✅ TestRunFile
✅ NanoByte.Common.Net.MicroServerTest
✅ Stress
✅ NanoByte.Common.Net.NetrcTest
✅ TestParse
✅ NanoByte.Common.Net.NetUtilsTest
✅ TestConfigureTls
✅ NanoByte.Common.Net.UriExtensionsTest
✅ TestEnsureTrailingSlashAbsolute
✅ TestEnsureTrailingSlashRelative
✅ TestGetLocalFilePath(uri: "file:///test/", path: "test")
✅ TestGetLocalFilePath(uri: "file:///test/my%20file.ext", path: "my file.ext")
✅ TestGetLocalFilePath(uri: "http://test/test/my%20file.ext", path: "my file.ext")
✅ TestGetRoot(uri: "./relative", root: "./relative")
✅ TestGetRoot(uri: "file:///test/", root: "file:///test/")
✅ TestGetRoot(uri: "http://example.com:80/test", root: "http://example.com:80/")
✅ TestGetRoot(uri: "http://example.com:8080/test", root: "http://example.com:8080/")
✅ TestGetRoot(uri: "http://example.com/", root: "http://example.com/")
✅ TestGetRoot(uri: "http://example.com/test", root: "http://example.com/")
✅ TestToStringRfc
✅ NanoByte.Common.ProcessUtilsTest
✅ TestAssembly
✅ TestEscapeArgument(unescaped: "", escaped: "\"\"", because: "Empty strings need to be escaped in order not to v"···)
✅ TestEscapeArgument(unescaped: "test", escaped: "test", because: "Simple strings shouldn't be modified")
✅ TestEscapeArgument(unescaped: "test1 test2", escaped: "\"test1 test2\"", because: "Strings with whitespaces should be encapsulated")
✅ TestEscapeArgument(unescaped: "test1 test2\\", escaped: "\"test1 test2\\\\\"", because: "Trailing backslashes should be escaped")
✅ TestEscapeArgument(unescaped: "test1\"test2", escaped: "test1\\\"test2", because: "Quotation marks should be escaped")
✅ TestEscapeArgument(unescaped: "test1\\\"test2", escaped: "test1\\\\\\\"test2", because: "Slashes with quotation marks should be escaped")
✅ TestEscapeArgument(unescaped: "test1\\\\test2", escaped: "test1\\\\test2", because: "Consecutive slashes without quotation marks should"···)
✅ TestFromCommandLine
✅ TestJoinEscapeArguments(parts: ["part1 \" part2", "part3"], result: "\"part1 \\\" part2\" part3")
✅ TestJoinEscapeArguments(parts: ["part1", "part2"], result: "part1 part2")
✅ TestJoinEscapeArguments(parts: ["part1"], result: "part1")
✅ TestToCommandLine(executable: "executable", args: "my args", commandLine: "executable my args")
✅ TestToCommandLine(executable: "my executable", args: "my args", commandLine: "\"my executable\" my args")
✅ NanoByte.Common.PropertyPointerTest
✅ Delegate
✅ DelegateNullable
✅ ExpressionTree
✅ ExpressionTreeNullable
✅ SetTemp
✅ NanoByte.Common.Storage.CopyDirectoryTest
✅ CopyHardlinks
⚪ CopySymlinks
✅ ErrorHandling
⚪ FollowSymlinks
✅ NoOverwrite
✅ Normal
✅ Overwrite
✅ NanoByte.Common.Storage.FileUtilsTest
✅ TestCreate
✅ TestCreateHardlink
✅ TestExistsCaseSensitive
✅ TestGetFilesRecursive
✅ TestIsBreakoutPath
✅ TestIsRegularFile
✅ TestIsUnixFS
✅ TestPathEqualsAbsolutePath
✅ TestPathEqualsCaseInsensitive
⚪ TestPathEqualsCaseSensitive
✅ TestPathEqualsDirectorySeparator
✅ TestPathEqualsFalse
✅ TestPathEqualsRelativePath
✅ TestPathEqualsWorkingDirectory
✅ TestReadExtendedMetadataExceptionOnMissingBaseFile
✅ TestReadFirstLine
✅ TestRelativeTo
✅ TestReplace
✅ TestReplaceMissing
✅ TestToNativePath
✅ TestTouchExisting
✅ TestTouchNew
✅ TestToUnixPath
✅ TestWalk
✅ TestWalkSingleFile
✅ TestWalkThroughPrefix
✅ TestWriteProtection
✅ TestWriteReadExtendedMetadata
✅ NanoByte.Common.Storage.JsonStorageTest
✅ TestFile
✅ TestFromJsonString
✅ TestToJsonString
✅ NanoByte.Common.Storage.MoveDirectoryTest
✅ Normal
✅ NanoByte.Common.Storage.PathsTest
✅ TestGetFilesAbsolute
✅ TestGetFilesRelative
✅ NanoByte.Common.Storage.ReadFileTest
✅ TestRun
✅ NanoByte.Common.Storage.TemporaryDirectoryTest
✅ CreatesDirectory
✅ CreatesEmptyDirectory
✅ NanoByte.Common.Storage.TemporaryFileTest
✅ CreatesEmptyFile
✅ CreatesFile
✅ NanoByte.Common.Storage.XmlStorageTest
✅ TestFile
✅ TestFromXmlString
✅ TestToXmlString
✅ NanoByte.Common.Streams.OffsetStreamTest
✅ TestPosition
✅ TestReadAll
✅ TestReadAllWithoutSeek
✅ TestSeekBegin
✅ TestSeekCurrent
✅ NanoByte.Common.Streams.ProgressStreamTest
✅ TestReadCancellation
✅ TestReadProgress
✅ TestWriteCancellation
✅ TestWriteProgress
✅ NanoByte.Common.Streams.SeekBufferStreamTest
✅ CannotSeekBackwardsTooFar
✅ CanSekForwardsBeyondBuffer
✅ CanSekForwardsWithZeroBuffer
✅ SeekBackwards
✅ SeekForwardsAndBackwards
✅ SmallBuffer
✅ NanoByte.Common.Streams.ShadowingStreamTest
✅ TestRead
✅ NanoByte.Common.Streams.StreamUtilsTest
✅ TestAsArrayCopy
✅ TestAsArrayNoCopy
✅ TestCopyToFile
✅ TestReadAll
✅ TestReadArray
✅ TestReadSegment
✅ TestSkipNonSeekable
✅ TestSkipSeekable
✅ TestString
✅ TestToMemory
✅ TestWriteArray
✅ TestWriteSegment
✅ NanoByte.Common.StringUtilsTest
✅ ContainsIgnoreCase(value: "This is a test.", searchFor: "test")
✅ ContainsIgnoreCase(value: "This is a test.", searchFor: "TEST")
✅ EqualsIgnoreCase(a: "abc", b: "abc")
✅ EqualsIgnoreCase(a: "abc", b: "ABC")
✅ NotContainsIgnoreCase(value: "test", searchFor: "This is a test.")
✅ NotContainsIgnoreCase(value: "This is a test.", searchFor: "123")
✅ NotEqualsIgnoreCase(a: "abc", b: "123")
✅ NotEqualsIgnoreCase(a: "abc", b: "abc ")
✅ TestEmptyAsNull
✅ TestEndsWith
✅ TestGeneratePassword
✅ TestGetLeftRightPartChar
✅ TestGetLeftRightPartString
✅ TestJoin(parts: ["part1", "part2"], result: "part1 part2")
✅ TestJoin(parts: ["part1"], result: "part1")
✅ TestJoin(parts: [], result: "")
✅ TestRemoveCharacters
✅ TestSplitMultilineText(value: "", result: [""], because: "Should work with empty strings")
✅ TestSplitMultilineText(value: "123", result: ["123"], because: "Should work with single lines")
✅ TestSplitMultilineText(value: "123\nabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestSplitMultilineText(value: "123\r\nabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestSplitMultilineText(value: "123\rabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestStartsWith
✅ TestTrimOverflow
✅ NanoByte.Common.Tasks.ActionTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Tasks.DeferredProgressTest
✅ ForwardsLastRecordedToTarget
✅ ForwardsToTarget
✅ NanoByte.Common.Tasks.ForEachTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ TestRollbackCancellation
✅ TestRollbackException
✅ NanoByte.Common.Tasks.PercentageTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Tasks.ResultTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Threading.JobQueueTest
✅ RunsWork
✅ NanoByte.Common.Threading.ResultRacerTest
⚪ Async
⚪ AsyncCancellation
⚪ Sync
⚪ SyncCancellation
✅ NanoByte.Common.Threading.WaitTaskTest
✅ TestCancel
✅ TestCancelNoHandle
✅ TestWait
✅ NanoByte.Common.Undo.CollectionTest
✅ TestAddToCollection
✅ TestRemoveFromCollection
✅ NanoByte.Common.Undo.CommandCollectorTest
✅ Test
✅ NanoByte.Common.Undo.CompositeCommandTest
✅ TestExecuteRollback
✅ TestExecuteUndo
✅ TestUndoRollback
✅ TestWrongOrder
✅ NanoByte.Common.Undo.PreExecutedCompositeCommandTest
✅ TestExecuteUndo
✅ NanoByte.Common.Undo.ReplaceInListTest
✅ TestExecute
✅ NanoByte.Common.Undo.SetLocalizableStringTest
✅ TestExecute
✅ NanoByte.Common.UnixTimeTest
✅ FromDateTimeLocal
✅ FromDateTimeOffset
✅ FromDateTimeUnspecified
✅ FromDateTimeUtc
✅ ToDateTime
✅ ToDateTimeOffset
✅ src/UnitTests/TestResults/runneradmin_fv-az653-281_2025-01-25_16_08_30.trx
299 tests were completed in 17s with 287 passed, 0 failed and 12 skipped.
✅ NanoByte.Common.Collections.ArrayUtilsTest
✅ TestAppend
✅ TestConcat
✅ TestConcatParams
✅ TestPrepend
✅ TestSequencedEquals
✅ NanoByte.Common.Collections.CollectionExtensionsTest
✅ TestAddIfNew
✅ NanoByte.Common.Collections.DictionaryExtensionsTest
✅ TestGetOrAdd
✅ TestGetOrAddAsync
✅ TestGetOrAddAsyncRace
✅ TestGetOrDefault
✅ TestGetUnsequencedHashCode
✅ TestUnsequencedEquals
✅ NanoByte.Common.Collections.EnumerableExtensionsTest
✅ TestAppend
✅ TestContainsAny
✅ TestDistinctBy
✅ TestGetSequencedHashCode
✅ TestGetUnsequencedHashCode
✅ TestMaxBy
✅ TestMinBy
✅ TestPermutate
✅ TestPermutateEmpty
✅ TestPrepend
✅ TestSequencedEquals
✅ TestTopologicalSort
✅ TestTrySelectCatchException
✅ TestTrySelectPassException
✅ TestUnsequencedEquals
✅ NanoByte.Common.Collections.LanguageSetTest
✅ TestContainsAny
✅ TestContainsAnyIgnoreCountry
✅ TestDuplicateDetection
✅ TestFromString
✅ TestInvalidCultureInSet
✅ TestToString
✅ NanoByte.Common.Collections.ListExtensionsTest
✅ TestAddOrReplace
✅ TestGetAddedElements
✅ TestRemoveLast
✅ NanoByte.Common.Collections.LocalizableStringCollectionTest
✅ TestContainsExactLanguage
✅ TestGetBestLanguage
✅ TestGetExactLanguage
✅ TestRemoveRange
✅ TestSaveLoad
✅ TestSet
✅ NanoByte.Common.Collections.MultiDictionaryTest
✅ TestAdd
✅ TestRemove
✅ TestValues
✅ NanoByte.Common.Collections.NamedCollectionTest
✅ TestRename
✅ TestSort
✅ NanoByte.Common.Collections.TransparentCacheTest
✅ Test
✅ NanoByte.Common.Collections.XmlDictionaryTest
✅ ShouldRejectDuplicateKeys
✅ TestContainsKey
✅ TestContainsValue
✅ TestGetValue
✅ TestSaveLoad
✅ NanoByte.Common.Dispatch.AggregateDispatcherTest
✅ Aggregate
✅ UnknownType
✅ NanoByte.Common.Dispatch.BucketizerTest
✅ TestPredicate
✅ TestValue
✅ NanoByte.Common.Dispatch.MergeTest
✅ TestMergeAddAndRemove
✅ TestMergeEquals
✅ TestMergeModify
✅ TestMergeSimple
✅ NanoByte.Common.Dispatch.ModelViewSyncTest
✅ Dispose
✅ Initialize
✅ Lookup
✅ MonitoringAdd
✅ MonitoringChanged
✅ MonitoringChangedRebuild
✅ MonitoringRemove
✅ Representations
✅ NanoByte.Common.Dispatch.PerTypeDispatcherTest
✅ TestDispatchAction
✅ TestDispatchActionExceptions
✅ TestDispatchFunc
✅ TestDispatchFuncExceptions
✅ NanoByte.Common.EncodingUtilsTest
✅ TestBase16Decode
✅ TestBase16Encode
✅ TestBase32Encode
✅ TestBase64Utf8Decode
✅ TestBase64Utf8Encode
✅ TestHash
✅ NanoByte.Common.ExceptionUtilsTest
✅ RethrowFirstInner
✅ TestGetMessageWithInner
✅ TestPreserveStack
✅ TestRetryAsyncDoubleFail
✅ TestRetryAsyncOtherExceptionType
✅ TestRetryAsyncPassOnLastAttempt
✅ TestRetryDoubleFail
✅ TestRetryOtherExceptionType
✅ TestRetryPassOnLastAttempt
✅ TestTryAnyAsyncFail
✅ TestTryAnyAsyncSucceed
✅ TestTryAnyFail
✅ TestTryAnySucceed
✅ NanoByte.Common.Info.AppInfoTest
✅ GetsForCurrentLibrary
✅ NanoByte.Common.LogTest
✅ TestBuffer
✅ TestHandler
✅ TestReadLastErrorFrom
✅ NanoByte.Common.MathUtilsTest
✅ TestEqualsTolerance
✅ TestModule(a: -1, b: 3, result: 2)
✅ TestModule(a: 3, b: 2, result: 1)
✅ TestModule(a: 3, b: 4, result: 3)
✅ TestSizeMultiply
✅ TestXOr
✅ NanoByte.Common.Native.AppMutexTest
✅ TestProbeCreateClose
✅ NanoByte.Common.Native.CygwinUtilsTest
✅ TestCreateSymlink
✅ TestIsSymlinkMatch
✅ TestIsSymlinkNoMatch
✅ NanoByte.Common.Native.OSUtilsTest
✅ TestExpandVariablesCaseInsensitive
✅ TestExpandVariablesCaseSensitive
✅ TestExpandVariablesEscaping
✅ NanoByte.Common.Native.ProcessLauncherTest
✅ Run
✅ RunAndCapture
✅ NanoByte.Common.Native.RegistryUtilsTest
✅ TestGetLastWriteTime
✅ NanoByte.Common.Native.UnixUtilsTest
⚪ TestCreateSymlinkDirectory
⚪ TestCreateSymlinkFile
⚪ TestIsNotExecutable
⚪ TestIsNotSymlink
⚪ TestSetExecutable
✅ NanoByte.Common.Native.WindowsRestartManagerTest
✅ TestListApps
✅ NanoByte.Common.Native.WindowsUtilsTest
✅ TestCreateSymlinkDirectory
✅ TestCreateSymlinkFile
✅ TestGetFolderPath
✅ TestIsNotSymlink
✅ TestSplitArgs
✅ NanoByte.Common.Net.DownloadFileTest
✅ TestCancel
✅ TestFileMissing
✅ TestIncorrectSize
✅ TestRun
✅ TestRunFile
✅ NanoByte.Common.Net.MicroServerTest
✅ Stress
✅ NanoByte.Common.Net.NetrcTest
✅ TestParse
✅ NanoByte.Common.Net.NetUtilsTest
✅ TestConfigureTls
✅ NanoByte.Common.Net.UriExtensionsTest
✅ TestEnsureTrailingSlashAbsolute
✅ TestEnsureTrailingSlashRelative
✅ TestGetLocalFilePath(uri: "file:///test/", path: "test")
✅ TestGetLocalFilePath(uri: "file:///test/my%20file.ext", path: "my file.ext")
✅ TestGetLocalFilePath(uri: "http://test/test/my%20file.ext", path: "my file.ext")
✅ TestGetRoot(uri: "./relative", root: "./relative")
✅ TestGetRoot(uri: "file:///test/", root: "file:///test/")
✅ TestGetRoot(uri: "http://example.com:80/test", root: "http://example.com:80/")
✅ TestGetRoot(uri: "http://example.com:8080/test", root: "http://example.com:8080/")
✅ TestGetRoot(uri: "http://example.com/", root: "http://example.com/")
✅ TestGetRoot(uri: "http://example.com/test", root: "http://example.com/")
✅ TestToStringRfc
✅ NanoByte.Common.ProcessUtilsTest
✅ TestAssembly
✅ TestEscapeArgument(unescaped: "", escaped: "\"\"", because: "Empty strings need to be escaped in order not to v"···)
✅ TestEscapeArgument(unescaped: "test", escaped: "test", because: "Simple strings shouldn't be modified")
✅ TestEscapeArgument(unescaped: "test1 test2", escaped: "\"test1 test2\"", because: "Strings with whitespaces should be encapsulated")
✅ TestEscapeArgument(unescaped: "test1 test2\\", escaped: "\"test1 test2\\\\\"", because: "Trailing backslashes should be escaped")
✅ TestEscapeArgument(unescaped: "test1\"test2", escaped: "test1\\\"test2", because: "Quotation marks should be escaped")
✅ TestEscapeArgument(unescaped: "test1\\\"test2", escaped: "test1\\\\\\\"test2", because: "Slashes with quotation marks should be escaped")
✅ TestEscapeArgument(unescaped: "test1\\\\test2", escaped: "test1\\\\test2", because: "Consecutive slashes without quotation marks should"···)
✅ TestFromCommandLine
✅ TestJoinEscapeArguments(parts: ["part1 \" part2", "part3"], result: "\"part1 \\\" part2\" part3")
✅ TestJoinEscapeArguments(parts: ["part1", "part2"], result: "part1 part2")
✅ TestJoinEscapeArguments(parts: ["part1"], result: "part1")
✅ TestToCommandLine(executable: "executable", args: "my args", commandLine: "executable my args")
✅ TestToCommandLine(executable: "my executable", args: "my args", commandLine: "\"my executable\" my args")
✅ NanoByte.Common.PropertyPointerTest
✅ Delegate
✅ DelegateNullable
✅ ExpressionTree
✅ ExpressionTreeNullable
✅ SetTemp
✅ NanoByte.Common.Storage.CopyDirectoryTest
✅ CopyHardlinks
⚪ CopySymlinks
✅ ErrorHandling
⚪ FollowSymlinks
✅ NoOverwrite
✅ Normal
✅ Overwrite
✅ NanoByte.Common.Storage.FileUtilsTest
✅ TestCreate
✅ TestCreateHardlink
✅ TestExistsCaseSensitive
✅ TestGetFilesRecursive
✅ TestIsBreakoutPath
✅ TestIsRegularFile
✅ TestIsUnixFS
✅ TestPathEqualsAbsolutePath
✅ TestPathEqualsCaseInsensitive
⚪ TestPathEqualsCaseSensitive
✅ TestPathEqualsDirectorySeparator
✅ TestPathEqualsFalse
✅ TestPathEqualsRelativePath
✅ TestPathEqualsWorkingDirectory
✅ TestReadExtendedMetadataExceptionOnMissingBaseFile
✅ TestReadFirstLine
✅ TestRelativeTo
✅ TestReplace
✅ TestReplaceMissing
✅ TestToNativePath
✅ TestTouchExisting
✅ TestTouchNew
✅ TestToUnixPath
✅ TestWalk
✅ TestWalkSingleFile
✅ TestWalkThroughPrefix
✅ TestWriteProtection
✅ TestWriteReadExtendedMetadata
✅ NanoByte.Common.Storage.JsonStorageTest
✅ TestFile
✅ TestFromJsonString
✅ TestToJsonString
✅ NanoByte.Common.Storage.MoveDirectoryTest
✅ Normal
✅ NanoByte.Common.Storage.PathsTest
✅ TestGetFilesAbsolute
✅ TestGetFilesRelative
✅ NanoByte.Common.Storage.ReadFileTest
✅ TestRun
✅ NanoByte.Common.Storage.TemporaryDirectoryTest
✅ CreatesDirectory
✅ CreatesEmptyDirectory
✅ NanoByte.Common.Storage.TemporaryFileTest
✅ CreatesEmptyFile
✅ CreatesFile
✅ NanoByte.Common.Storage.XmlStorageTest
✅ TestFile
✅ TestFromXmlString
✅ TestToXmlString
✅ NanoByte.Common.Streams.OffsetStreamTest
✅ TestPosition
✅ TestReadAll
✅ TestReadAllWithoutSeek
✅ TestSeekBegin
✅ TestSeekCurrent
✅ NanoByte.Common.Streams.ProgressStreamTest
✅ TestReadCancellation
✅ TestReadProgress
✅ TestWriteCancellation
✅ TestWriteProgress
✅ NanoByte.Common.Streams.SeekBufferStreamTest
✅ CannotSeekBackwardsTooFar
✅ CanSekForwardsBeyondBuffer
✅ CanSekForwardsWithZeroBuffer
✅ SeekBackwards
✅ SeekForwardsAndBackwards
✅ SmallBuffer
✅ NanoByte.Common.Streams.ShadowingStreamTest
✅ TestRead
✅ NanoByte.Common.Streams.StreamUtilsTest
✅ TestAsArrayCopy
✅ TestAsArrayNoCopy
✅ TestCopyToFile
✅ TestReadAll
✅ TestReadArray
✅ TestReadSegment
✅ TestSkipNonSeekable
✅ TestSkipSeekable
✅ TestString
✅ TestToMemory
✅ TestWriteArray
✅ TestWriteSegment
✅ NanoByte.Common.StringUtilsTest
✅ ContainsIgnoreCase(value: "This is a test.", searchFor: "test")
✅ ContainsIgnoreCase(value: "This is a test.", searchFor: "TEST")
✅ EqualsIgnoreCase(a: "abc", b: "abc")
✅ EqualsIgnoreCase(a: "abc", b: "ABC")
✅ NotContainsIgnoreCase(value: "test", searchFor: "This is a test.")
✅ NotContainsIgnoreCase(value: "This is a test.", searchFor: "123")
✅ NotEqualsIgnoreCase(a: "abc", b: "123")
✅ NotEqualsIgnoreCase(a: "abc", b: "abc ")
✅ TestEmptyAsNull
✅ TestEndsWith
✅ TestGeneratePassword
✅ TestGetLeftRightPartChar
✅ TestGetLeftRightPartString
✅ TestJoin(parts: ["part1", "part2"], result: "part1 part2")
✅ TestJoin(parts: ["part1"], result: "part1")
✅ TestJoin(parts: [], result: "")
✅ TestRemoveCharacters
✅ TestSplitMultilineText(value: "", result: [""], because: "Should work with empty strings")
✅ TestSplitMultilineText(value: "123", result: ["123"], because: "Should work with single lines")
✅ TestSplitMultilineText(value: "123\nabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestSplitMultilineText(value: "123\r\nabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestSplitMultilineText(value: "123\rabc", result: ["123", "abc"], because: "Should split Linux-style linebreaks")
✅ TestStartsWith
✅ TestTrimOverflow
✅ NanoByte.Common.Tasks.ActionTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Tasks.DeferredProgressTest
✅ ForwardsLastRecordedToTarget
✅ ForwardsToTarget
✅ NanoByte.Common.Tasks.ForEachTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ TestRollbackCancellation
✅ TestRollbackException
✅ NanoByte.Common.Tasks.PercentageTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Tasks.ResultTaskTest
✅ TestCallback
✅ TestExceptionPassing
✅ NanoByte.Common.Threading.JobQueueTest
✅ RunsWork
✅ NanoByte.Common.Threading.ResultRacerTest
⚪ Async
⚪ AsyncCancellation
⚪ Sync
⚪ SyncCancellation
✅ NanoByte.Common.Threading.WaitTaskTest
✅ TestCancel
✅ TestCancelNoHandle
✅ TestWait
✅ NanoByte.Common.Undo.CollectionTest
✅ TestAddToCollection
✅ TestRemoveFromCollection
✅ NanoByte.Common.Undo.CommandCollectorTest
✅ Test
✅ NanoByte.Common.Undo.CompositeCommandTest
✅ TestExecuteRollback
✅ TestExecuteUndo
✅ TestUndoRollback
✅ TestWrongOrder
✅ NanoByte.Common.Undo.PreExecutedCompositeCommandTest
✅ TestExecuteUndo
✅ NanoByte.Common.Undo.ReplaceInListTest
✅ TestExecute
✅ NanoByte.Common.Undo.SetLocalizableStringTest
✅ TestExecute
✅ NanoByte.Common.UnixTimeTest
✅ FromDateTimeLocal
✅ FromDateTimeOffset
✅ FromDateTimeUnspecified
✅ FromDateTimeUtc
✅ ToDateTime
✅ ToDateTimeOffset
Loading