From 8d912dfdfb06287ce71898aaad3dc0923a4ee82b Mon Sep 17 00:00:00 2001 From: localhorst Date: Fri, 24 May 2019 16:53:55 +0200 Subject: [PATCH] added ViereckTest Projekt --- .../.vs/ConsoleAppViereckTest/v16/.suo | Bin 0 -> 119808 bytes .../v16/Server/sqlite3/db.lock | 0 .../v16/Server/sqlite3/storage.ide | Bin 0 -> 606208 bytes .../ConsoleAppViereckTest.sln | 31 + ...ConsoleAppViereckTest.sln.DotSettings.user | 2 + .../ConsoleAppViereckTest/App.config | 6 + .../ConsoleAppViereckTest.csproj | 53 + .../ConsoleAppViereckTest/Program.cs | 43 + .../Properties/AssemblyInfo.cs | 36 + .../bin/Debug/ConsoleAppViereckTest.exe | Bin 0 -> 5632 bytes .../Debug/ConsoleAppViereckTest.exe.config | 6 + .../bin/Debug/ConsoleAppViereckTest.pdb | Bin 0 -> 15872 bytes ...ViereckTest.csproj.CoreCompileInputs.cache | 1 + ...AppViereckTest.csproj.FileListAbsolute.txt | 7 + ...pViereckTest.csprojAssemblyReference.cache | Bin 0 -> 1905 bytes .../obj/Debug/ConsoleAppViereckTest.exe | Bin 0 -> 5632 bytes .../obj/Debug/ConsoleAppViereckTest.pdb | Bin 0 -> 15872 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 6885 bytes .../My Project/Application.Designer.vb | 13 + .../My Project/Application.myapp | 10 + .../My Project/AssemblyInfo.vb | 18 + .../My Project/Resources.Designer.vb | 62 + .../My Project/Resources.resx | 117 + .../My Project/Settings.Designer.vb | 73 + .../My Project/Settings.settings | 7 + .../UnitTestProject1/UnitTest1.vb | 9 + .../UnitTestProject1/UnitTestProject1.vbproj | 128 + ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 21254 bytes ...estProject1.vbproj.CoreCompileInputs.cache | 1 + ...TestProject1.vbprojAssemblyReference.cache | Bin 0 -> 424 bytes .../UnitTestProject1/packages.config | 5 + .../Properties/AssemblyInfo.cs | 20 + .../UnitTestProject2/UnitTest1.cs | 22 + .../UnitTestProject2/UnitTestProject2.csproj | 74 + .../bin/Debug/ConsoleAppViereckTest.exe | Bin 0 -> 5632 bytes .../Debug/ConsoleAppViereckTest.exe.config | 6 + .../bin/Debug/ConsoleAppViereckTest.pdb | Bin 0 -> 15872 bytes ...Studio.TestPlatform.MSTest.TestAdapter.dll | Bin 0 -> 130192 bytes ...TestAdapter.PlatformServices.Interface.dll | Bin 0 -> 24720 bytes ...latform.MSTestAdapter.PlatformServices.dll | Bin 0 -> 113296 bytes ....TestPlatform.TestFramework.Extensions.dll | Bin 0 -> 40080 bytes ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ...isualStudio.TestPlatform.TestFramework.xml | 4391 +++++++++++++++++ .../bin/Debug/UnitTestProject2.dll | Bin 0 -> 4608 bytes .../bin/Debug/UnitTestProject2.pdb | Bin 0 -> 11776 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 0 -> 20809 bytes .../UnitTestProject2.csproj.CopyComplete | 0 ...estProject2.csproj.CoreCompileInputs.cache | 1 + ...itTestProject2.csproj.FileListAbsolute.txt | 17 + ...TestProject2.csprojAssemblyReference.cache | Bin 0 -> 28792 bytes .../obj/Debug/UnitTestProject2.dll | Bin 0 -> 4608 bytes .../obj/Debug/UnitTestProject2.pdb | Bin 0 -> 11776 bytes .../UnitTestProject2/packages.config | 5 + .../MSTest.TestAdapter.1.3.2/.signature.p7s | Bin 0 -> 9355 bytes .../MSTest.TestAdapter.1.3.2.nupkg | Bin 0 -> 781518 bytes ...Studio.TestPlatform.MSTest.TestAdapter.dll | Bin 0 -> 130192 bytes ...TestAdapter.PlatformServices.Interface.dll | Bin 0 -> 24720 bytes ...latform.MSTestAdapter.PlatformServices.dll | Bin 0 -> 113296 bytes ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 30864 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24208 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 31888 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27816 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 30864 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 31376 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 31376 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27304 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 32936 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 25232 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 28816 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 31888 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27792 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 31376 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 30864 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24720 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 34960 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 26256 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 29840 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 30864 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 24208 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 27280 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 29840 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 23696 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 26768 bytes ...tPlatform.MSTest.TestAdapter.resources.dll | Bin 0 -> 29840 bytes ...TestAdapter.PlatformServices.resources.dll | Bin 0 -> 23696 bytes ...o.TestPlatform.TestFramework.resources.dll | Bin 0 -> 26768 bytes .../build/net45/MSTest.TestAdapter.props | 20 + .../build/net45/MSTest.TestAdapter.targets | 35 + .../netcoreapp1.0/MSTest.TestAdapter.props | 20 + ...latform.MSTestAdapter.PlatformServices.dll | Bin 0 -> 31376 bytes .../build/uap10.0/MSTest.TestAdapter.props | 20 + .../build/uap10.0/MSTest.TestAdapter.targets | 42 + ...latform.MSTestAdapter.PlatformServices.dll | Bin 0 -> 34960 bytes .../MSTest.TestFramework.1.3.2/.signature.p7s | Bin 0 -> 9355 bytes .../MSTest.TestFramework.1.3.2.nupkg | Bin 0 -> 1003364 bytes ....TestPlatform.TestFramework.Extensions.XML | 1097 ++++ ....TestPlatform.TestFramework.Extensions.dll | Bin 0 -> 40080 bytes ...isualStudio.TestPlatform.TestFramework.XML | 4391 +++++++++++++++++ ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4197 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4199 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4202 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 1097 ++++ ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.XML | 93 + ....TestPlatform.TestFramework.Extensions.dll | Bin 0 -> 22672 bytes ...isualStudio.TestPlatform.TestFramework.XML | 4391 +++++++++++++++++ ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4197 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4199 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4202 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 93 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.XML | 113 + ....TestPlatform.TestFramework.Extensions.dll | Bin 0 -> 25744 bytes ...isualStudio.TestPlatform.TestFramework.XML | 4391 +++++++++++++++++ ...isualStudio.TestPlatform.TestFramework.dll | Bin 0 -> 73384 bytes ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4197 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4199 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4202 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ ....TestPlatform.TestFramework.Extensions.xml | 113 + ...isualStudio.TestPlatform.TestFramework.xml | 4201 ++++++++++++++++ 198 files changed, 201637 insertions(+) create mode 100644 ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/.suo create mode 100644 ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/db.lock create mode 100644 ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/storage.ide create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest.sln create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest.sln.DotSettings.user create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/App.config create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/ConsoleAppViereckTest.csproj create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/Program.cs create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/Properties/AssemblyInfo.cs create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe.config create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.pdb create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.CoreCompileInputs.cache create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.FileListAbsolute.txt create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csprojAssemblyReference.cache create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.exe create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.pdb create mode 100644 ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Application.Designer.vb create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Application.myapp create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/AssemblyInfo.vb create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.Designer.vb create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.resx create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.Designer.vb create mode 100644 ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.settings create mode 100644 ConsoleAppViereckTest/UnitTestProject1/UnitTest1.vb create mode 100644 ConsoleAppViereckTest/UnitTestProject1/UnitTestProject1.vbproj create mode 100644 ConsoleAppViereckTest/UnitTestProject1/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbproj.CoreCompileInputs.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbprojAssemblyReference.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject1/packages.config create mode 100644 ConsoleAppViereckTest/UnitTestProject2/Properties/AssemblyInfo.cs create mode 100644 ConsoleAppViereckTest/UnitTestProject2/UnitTest1.cs create mode 100644 ConsoleAppViereckTest/UnitTestProject2/UnitTestProject2.csproj create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe.config create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.pdb create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/UnitTestProject2.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/bin/Debug/UnitTestProject2.pdb create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CopyComplete create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CoreCompileInputs.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.FileListAbsolute.txt create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csprojAssemblyReference.cache create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.dll create mode 100644 ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.pdb create mode 100644 ConsoleAppViereckTest/UnitTestProject2/packages.config create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/.signature.p7s create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/MSTest.TestAdapter.1.3.2.nupkg create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/cs/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/cs/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/de/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/de/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/de/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/es/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/es/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/es/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ko/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ko/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.props create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.targets create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/MSTest.TestAdapter.props create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.props create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.targets create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/.signature.p7s create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/MSTest.TestFramework.1.3.2.nupkg create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml create mode 100644 ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml diff --git a/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/.suo b/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/.suo new file mode 100644 index 0000000000000000000000000000000000000000..e9ddf9f79c4c13190cc2ba808a89d5e841ccfcb9 GIT binary patch literal 119808 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/db.lock b/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/db.lock new file mode 100644 index 0000000..e69de29 diff --git a/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/storage.ide b/ConsoleAppViereckTest/.vs/ConsoleAppViereckTest/v16/Server/sqlite3/storage.ide new file mode 100644 index 0000000000000000000000000000000000000000..ea643cda3428fe54b3fad2646182663c4232942c GIT binary patch literal 606208 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
gI}!QV@+-nSye(s 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 z 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 uLaPkKX2zR$NK + 2 \ No newline at end of file diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/App.config b/ConsoleAppViereckTest/ConsoleAppViereckTest/App.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/App.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/ConsoleAppViereckTest.csproj b/ConsoleAppViereckTest/ConsoleAppViereckTest/ConsoleAppViereckTest.csproj new file mode 100644 index 0000000..2590e25 --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/ConsoleAppViereckTest.csproj @@ -0,0 +1,53 @@ + + + + + Debug + AnyCPU + {0800118D-D24B-4FE2-92D1-ED28CB9C336D} + Exe + ConsoleAppViereckTest + ConsoleAppViereckTest + v4.7.2 + 512 + true + true + + + AnyCPU + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + AnyCPU + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/Program.cs b/ConsoleAppViereckTest/ConsoleAppViereckTest/Program.cs new file mode 100644 index 0000000..32ada9a --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/Program.cs @@ -0,0 +1,43 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace ConsoleAppViereckTest +{ + public class Viereck + { + private double a; + private double b; + private double tolerance = 0.5; + + static void Main(string[] args) + { + } + + public Viereck(double a, double b) + { + this.a = a; + this.b = b; + } + + public override bool Equals(object obj) + { + + Viereck tmp = (Viereck) obj; + + if ((this.a == tmp.a) && (this.b == tmp.b) || (this.a == tmp.b) && (this.b == tmp.a)) + { + return true; + } + + if ((Math.Abs(this.a -tmp.a ) < tolerance) && (Math.Abs(this.b - tmp.b) < tolerance) || (Math.Abs(this.a - tmp.b) < tolerance) && (Math.Abs(this.b - tmp.a) < tolerance)) + { + return true; + } + + return false; + } + } +} diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/Properties/AssemblyInfo.cs b/ConsoleAppViereckTest/ConsoleAppViereckTest/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..8d02995 --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/Properties/AssemblyInfo.cs @@ -0,0 +1,36 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +// General Information about an assembly is controlled through the following +// set of attributes. Change these attribute values to modify the information +// associated with an assembly. +[assembly: AssemblyTitle("ConsoleAppViereckTest")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("ConsoleAppViereckTest")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2019")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +// Setting ComVisible to false makes the types in this assembly not visible +// to COM components. If you need to access a type in this assembly from +// COM, set the ComVisible attribute to true on that type. +[assembly: ComVisible(false)] + +// The following GUID is for the ID of the typelib if this project is exposed to COM +[assembly: Guid("0800118d-d24b-4fe2-92d1-ed28cb9c336d")] + +// Version information for an assembly consists of the following four values: +// +// Major Version +// Minor Version +// Build Number +// Revision +// +// You can specify all the values or you can default the Build and Revision Numbers +// by using the '*' as shown below: +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe b/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe new file mode 100644 index 0000000000000000000000000000000000000000..88329b4bb8892bf7a5632e8b12cf07c836d9bd15 GIT binary patch literal 5632 zcmeHLU2Ggz6+U;o-q=p;CL~VVG|99eD}`I zdi@hH@K$;@_sqTLoO}N6--&0RyFo2P6hnLPfan&!62=w&*XSD9T~GeFi+_Zjxw*wa{;aWA8=Q z?oonvvm{XmD6#?GJ`SX#jiX7V6)KABH02Lhm`* zA16vSl+>B>bAf0NKHoh?G$hA61)Zp^Nwy8+&o_;YfUgA@|6B@zr{b*pjgbN!)(znc z3nS&*I66{ZI@AQ?@ZJ#I@gS&J7r>Od4xlx`IML~*q3XVVJfuk9G-{>%5u!Qdp#>w> zl-AAj9yacv6W`H#Lhik>t1Va|?f4@qJgwy_G{&^pRrnS=L9{=q(Jvqh>ON`-K-D_5 zD^ez|@L-pAMT*81HjYF*NgLc7@ud8H*2@m|vPXCCdb*V!-P3y|5|zwnk7El!vGgT< zD4HgfG;>nJ(VWek^x6*a&TZ+ zQd-FYZiAJcuMo+oUy}V?AZ)kfONkG080C5FS;)~}(1H8Z^UT6@7T;K_JTDlZcDw?{ z5-^>e@7AbY4*t#t>7dFfk{WIU1djC#bxK`bXwti=5q*t?-p1)~)T6~|nMvG7e`b%+ z1k}fAfquo}bXVcq3ePf0d0gR?!j7V6u*7kCQsJA5@=baTlFw^*fN!xo%2a4iW{Dxb zpE9mxRG;A>B+=Wia5wOr4p-^h^h*TBD5pl>c@aO1N^d}Vk41Ev%oT7h8VT;}YQlz1?O>z`ltniu3-^6wJX5JG+FWq!VxIef!PhwDYJR}WMt!dqd4(6LKBX=Sy6rZm@nwfwGHf!ez!Q`y_z^E_nv0opdea5r{Ov#H`&&zyPd`CtEa z_m#sw#dOBnT6AKq=DuxQ*4H&`-%*BCj1hFU-nW&z)SexY`Bz72#d>8RT}U`{WR#?uYo;ssy?iwa?m? z@O*C>udmMNiN^BlZ@-~8czP-+Z|kQR9Ze1;lLG@o#lB)HUFb_M^Hkq(syNWci>V>2 zFl-GDex`_f9zG1}0-i4xX;B_$Z!&&l)KN({-T1%-Vj%F>7aWW)8?% zdV`}YX_eqtuK(_3*})Y+ub|yUJ#trF_>vleyxW^$K9|j1{?^qyfB3yK@%`#=-b?@B zkRj7BadK(F#~EA_o);|nUR79pDTj<)HU*z_OSa3oe2h{{+a~iNRBYlUwS~6l8# zUaeOf(#tnxUzfeD5LG21=Ys;|su(G>_gi zD)h4$PXkYd)jHjdeQ-Z~A46TyTRB$O1J%mc`cQqcinfRsQb3Q5cbY?|OUvXb{!x;% z^5B}F`rw-sK+eM`gg0ZdkU|v#x&X(e(l(mz;*c^_F3~Sd1@sATy3EG}^p)}Bm>s}M z2x-(T5wD``*AOkz-Tg*6K{JVu!WH8QqVcJ$S-s2fe-6-?;dwY(ypkkQ0KeyVRM zq5Fa97EQ-<`DmiX{lwU*&W_HG5wl)l>QLeOqlv0;Px{shs!G4F96i*1mRCM$`ekEv zAfcB{*Iq_l6}_m+9+c^NL)mnZqf85G8+?*4b3%9V$c`pvYpBs2+fucnVOA=M{!l|8 zs(vu-E_*xlCzVk1VB6H+=Y+kAs<*`b9cmqnwCaF$J$M4Gs;mNM z_$qgFN8-_h=})_>-bF4FdezQYDD;rVWfX0^9+Xnjzl}GM>-`&iAL(x-0Rkia(F&cy bVt))Dy$tB#-za|eAN_IbqnC#N*NFZJo-kWt literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe.config b/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.exe.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.pdb b/ConsoleAppViereckTest/ConsoleAppViereckTest/bin/Debug/ConsoleAppViereckTest.pdb new file mode 100644 index 0000000000000000000000000000000000000000..d730f0afb51c50281e5333233cb792854affdcd4 GIT binary patch literal 15872 zcmeHMYiv|S6rNpb>4R-q(4{U9SEUB1?rwP~5R(GiiUc*griYkRj|2DfV@I@01tq7F%Oz$ zgZeK951e?>8d6lU9#|~Y^q1`9W8hb}tZzCx@sz*6O&nhPvG=1REvw%ZKwPMx5+VAGR{-uBFir3!kt9j+!PXi%m5B%|`s+!;TE-Tg_oK+XTSp1wOaex&)Y!46Qk{_j|c>R`-zV5Ir4Rr5b)=WDbL8@x1liD$DT>^QbG zzQNQCGj8a5E^g|*MpBEn;c~DqVQ4LxZK;f=8L7;+`SF;ZG4-^zJez$sr5ReXyInJL z*O9I>^le6>C!92K{979D{f7o#KT?BMs3B=^jp(__W}7W2{Nl52pRgF zgMJ%i-#$@?wspgL_MwjL6OZ%{vT|JSGXV;sJ?)zTtN@~KYbEgFr9tZ%AiiN)tAQcl zTHwRLLqL{)1H?G3Z-KDIItqj?>o{;OkYn{B<&(D<98(SaFcbI%Y82*!(%vhO(FWQ> zsso3>3&Cr^9pD|{e(>ES#`?j^$Ysv`3`}AINSohw@IeP#9bDw#P6t`{-{?l=Y#S=< zz+0C>sY_8I`;sLDaQ6laye8#y~@L75itZ3|eV3w$H-!0g(V{2O*Hn(JQ#?H;_ z^i(FtcXGWf=R4Hn8~_4hZhsD)v~%m* za;N@+yXHr3;fj<8iq-=myl=U-Mm@d94=MuK_sh)1!>(*-$WE~@rrf+Ot&-0U(;afJx25j?h!;s==Tb>D zN1K-~TGF^gh{wJPUv{6pYmSJrE0$4S7{|FfST+ZI(iIe-7p;78n3;(x}D_|`7tf8GhYw=cYP;hw_#0XP2V_x?ICZ*B0MUd8|L Q!C0V~W5Ebz!(H>hUp9@~jsO4v literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.CoreCompileInputs.cache b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..4d932da --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +4c87c8d4e13aec5fa9208d4abe824a00142ee0bc diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.FileListAbsolute.txt b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..434d3c8 --- /dev/null +++ b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csproj.FileListAbsolute.txt @@ -0,0 +1,7 @@ +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\obj\Debug\ConsoleAppViereckTest.csprojAssemblyReference.cache +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\obj\Debug\ConsoleAppViereckTest.csproj.CoreCompileInputs.cache +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\bin\Debug\ConsoleAppViereckTest.exe.config +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\bin\Debug\ConsoleAppViereckTest.exe +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\bin\Debug\ConsoleAppViereckTest.pdb +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\obj\Debug\ConsoleAppViereckTest.exe +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\ConsoleAppViereckTest\obj\Debug\ConsoleAppViereckTest.pdb diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csprojAssemblyReference.cache b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..e3216c9bf8780dbe0b2cf3b24994d4a3aa502655 GIT binary patch literal 1905 zcmcIk+iuf96kI29noEIlE4Kpf0}`m!k`PJ@QiLG1szfP;M1_ZlYGWTaR@Qde-Gr7G zK7w!Kkw4%c;2bAvk!5(ZC6CveS^ENYq-(x_@aaw9s#wRq;V;L5^mtF` zk>;IP!K$+lN(XV&Zm#hrZ}7&d(-})MR?v=MY?P3z&fa(+1NSwY^x_dj?LnjEulehK zv+1ohL`&Etww$feJ<$fjt`P=^RrLc2$y;%0`V&?mCAbDl(0p6yp%DWKRCTq8P$Kv* zwTy(?PAt4F;hI>@&HAZhxt%yX5(-p>zS|AHLJ22zd0)seXvT`nw(FI}Ssibc7eqpy zuKD$Dql9pg1~vi7m1yc8>!{26L2wwMxgDW_S=K_b5a-Kt2$RmU{+@~tl?a_J zbVED$k2jt?=)VUa6htmKFSLdb9S7Y%HMPHmeE1TpQJ?Q__RiiWkNG-()Sor+N*KWj zx?nbs4MeoHntM`~E2urpQ~P5m`A!ghPSmQX=H{(NZPidH$VKSXd*0~|g*r<5s-v99 zMK08CtYk1qWad%kAQze0K_TnTp-8SLViyeGHfHMFc~tZAY>DD5G4Dd&O3A+r9bBL= zpp#x*AV@;u5{)hsTp_qhut;!?;5vd$-vscP9zR6$*!BM5$2>W3Pnws34+} z2S>WBDN41i%mh@yj~FWy3KpwYEXq#y?dOMk-+xpnjcT=8`35~PDjK}iXf>ZQi)y7h z(!`r-BK4C+yp<+W&soH!G?9GCBHm6D$-6A#oivgB%_81S6KM~!h)$YF`;99eD}`I zdi@hH@K$;@_sqTLoO}N6--&0RyFo2P6hnLPfan&!62=w&*XSD9T~GeFi+_Zjxw*wa{;aWA8=Q z?oonvvm{XmD6#?GJ`SX#jiX7V6)KABH02Lhm`* zA16vSl+>B>bAf0NKHoh?G$hA61)Zp^Nwy8+&o_;YfUgA@|6B@zr{b*pjgbN!)(znc z3nS&*I66{ZI@AQ?@ZJ#I@gS&J7r>Od4xlx`IML~*q3XVVJfuk9G-{>%5u!Qdp#>w> zl-AAj9yacv6W`H#Lhik>t1Va|?f4@qJgwy_G{&^pRrnS=L9{=q(Jvqh>ON`-K-D_5 zD^ez|@L-pAMT*81HjYF*NgLc7@ud8H*2@m|vPXCCdb*V!-P3y|5|zwnk7El!vGgT< zD4HgfG;>nJ(VWek^x6*a&TZ+ zQd-FYZiAJcuMo+oUy}V?AZ)kfONkG080C5FS;)~}(1H8Z^UT6@7T;K_JTDlZcDw?{ z5-^>e@7AbY4*t#t>7dFfk{WIU1djC#bxK`bXwti=5q*t?-p1)~)T6~|nMvG7e`b%+ z1k}fAfquo}bXVcq3ePf0d0gR?!j7V6u*7kCQsJA5@=baTlFw^*fN!xo%2a4iW{Dxb zpE9mxRG;A>B+=Wia5wOr4p-^h^h*TBD5pl>c@aO1N^d}Vk41Ev%oT7h8VT;}YQlz1?O>z`ltniu3-^6wJX5JG+FWq!VxIef!PhwDYJR}WMt!dqd4(6LKBX=Sy6rZm@nwfwGHf!ez!Q`y_z^E_nv0opdea5r{Ov#H`&&zyPd`CtEa z_m#sw#dOBnT6AKq=DuxQ*4H&`-%*BCj1hFU-nW&z)SexY`Bz72#d>8RT}U`{WR#?uYo;ssy?iwa?m? z@O*C>udmMNiN^BlZ@-~8czP-+Z|kQR9Ze1;lLG@o#lB)HUFb_M^Hkq(syNWci>V>2 zFl-GDex`_f9zG1}0-i4xX;B_$Z!&&l)KN({-T1%-Vj%F>7aWW)8?% zdV`}YX_eqtuK(_3*})Y+ub|yUJ#trF_>vleyxW^$K9|j1{?^qyfB3yK@%`#=-b?@B zkRj7BadK(F#~EA_o);|nUR79pDTj<)HU*z_OSa3oe2h{{+a~iNRBYlUwS~6l8# zUaeOf(#tnxUzfeD5LG21=Ys;|su(G>_gi zD)h4$PXkYd)jHjdeQ-Z~A46TyTRB$O1J%mc`cQqcinfRsQb3Q5cbY?|OUvXb{!x;% z^5B}F`rw-sK+eM`gg0ZdkU|v#x&X(e(l(mz;*c^_F3~Sd1@sATy3EG}^p)}Bm>s}M z2x-(T5wD``*AOkz-Tg*6K{JVu!WH8QqVcJ$S-s2fe-6-?;dwY(ypkkQ0KeyVRM zq5Fa97EQ-<`DmiX{lwU*&W_HG5wl)l>QLeOqlv0;Px{shs!G4F96i*1mRCM$`ekEv zAfcB{*Iq_l6}_m+9+c^NL)mnZqf85G8+?*4b3%9V$c`pvYpBs2+fucnVOA=M{!l|8 zs(vu-E_*xlCzVk1VB6H+=Y+kAs<*`b9cmqnwCaF$J$M4Gs;mNM z_$qgFN8-_h=})_>-bF4FdezQYDD;rVWfX0^9+Xnjzl}GM>-`&iAL(x-0Rkia(F&cy bVt))Dy$tB#-za|eAN_IbqnC#N*NFZJo-kWt literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.pdb b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/ConsoleAppViereckTest.pdb new file mode 100644 index 0000000000000000000000000000000000000000..d730f0afb51c50281e5333233cb792854affdcd4 GIT binary patch literal 15872 zcmeHMYiv|S6rNpb>4R-q(4{U9SEUB1?rwP~5R(GiiUc*griYkRj|2DfV@I@01tq7F%Oz$ zgZeK951e?>8d6lU9#|~Y^q1`9W8hb}tZzCx@sz*6O&nhPvG=1REvw%ZKwPMx5+VAGR{-uBFir3!kt9j+!PXi%m5B%|`s+!;TE-Tg_oK+XTSp1wOaex&)Y!46Qk{_j|c>R`-zV5Ir4Rr5b)=WDbL8@x1liD$DT>^QbG zzQNQCGj8a5E^g|*MpBEn;c~DqVQ4LxZK;f=8L7;+`SF;ZG4-^zJez$sr5ReXyInJL z*O9I>^le6>C!92K{979D{f7o#KT?BMs3B=^jp(__W}7W2{Nl52pRgF zgMJ%i-#$@?wspgL_MwjL6OZ%{vT|JSGXV;sJ?)zTtN@~KYbEgFr9tZ%AiiN)tAQcl zTHwRLLqL{)1H?G3Z-KDIItqj?>o{;OkYn{B<&(D<98(SaFcbI%Y82*!(%vhO(FWQ> zsso3>3&Cr^9pD|{e(>ES#`?j^$Ysv`3`}AINSohw@IeP#9bDw#P6t`{-{?l=Y#S=< zz+0C>sY_8I`;sLDaQ6laye8#y~@L75itZ3|eV3w$H-!0g(V{2O*Hn(JQ#?H;_ z^i(FtcXGWf=R4Hn8~_4hZhsD)v~%m* za;N@+yXHr3;fj<8iq-=myl=U-Mm@d94=MuK_sh)1!>(*-$WE~@rrf+Ot&-0U(;afJx25j?h!;s==Tb>D zN1K-~TGF^gh{wJPUv{6pYmSJrE0$4S7{|FfST+ZI(iIe-7p;78n3;(x}D_|`7tf8GhYw=cYP;hw_#0XP2V_x?ICZ*B0MUd8|L Q!C0V~W5Ebz!(H>hUp9@~jsO4v literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ConsoleAppViereckTest/ConsoleAppViereckTest/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..c8a976d10fc809ceea7399ef6d54e890b922982c GIT binary patch literal 6885 zcmeHMZBH9V5VpZwFoYCSN(dyW)23>Yx+j}=BJqJ@oS-HM*$%CQEm+@;&4#;McXtnP z5kH{6qQ9W(Pi$w-Z@jl3d=ejgmdERTnP+EqcKz%)5{*P6|KLNP^gJ9uVSnV76iQUJ zxyzN$oPzdkF3b(#y29JaZl;pEAQczhT4u>i(<_zS@Ez?-So6Twk~yj5j$d)O^)obz z;t0I8N_xJ!SY57WGWKGc&9fnbT)745C!aeu;ca;uq^SQQS-lR@%rm*=)qSm=;NU0B zal{GO>q>!JaT=Sa8a$en8pGZj!mILHjyo`AG0)~U)6niowQ9ENJ5EkA7fyscYBv>G z1=}VswdI6kqrK0mvdCl&bZ1z>uPD&ls6@TwHBU&$LY1K_wmhYAe%;wM6~DQ=Q&U~D z>tlYiif7mAFOEt&Xs6OwrkUjuEG;AlHD0$hlLcVXI^1FUP>t8FRE*Z8sG^6+stE}- zuC#1)2gK1Z4dlWZRCLi97f`0IG<_5vKLYvU=ISh0b%!+w@an);pv^W1?nq&QQbMld z?72ppFyvZ8z|Q-g<}S2`T-DU{lA87v@@JXDpF!bPQ@QPU&Yt_|E`3>brk5s3_< z9Ee7v2EI{72L2o>G?WGx!xPun(iCv!JMchq%lv@OI>_wp-O&Yi#4dAu*kN2A%yqgJ zwB%kbm2{OQq{A!SJ+|<_x7hMBTeKFJGOP0okX~6Wr|z1^J)LS8ekk|Wt@m7AG};f* zFruilo5E0j&ts~`8>kn&eehia{lNcc} ziekigh%#b~p~#-)Tg>Tg0g3bplThlA-IBSzS?qAg)bWD3Y|f?H6tqP*H&4%vN2uwK z=*HX9CxryGB!$o=C46Z?sjYR>t8ovIe0a6F5|Ume99XZ{cR4Z~>!^ra@RnLp`CQ6E z#jl}MNK1=Io$`Rgk2^fM%acrtS%(n+g3KF7@$|93w ztzKVZIp!+v7?W5U!P>MrpPtXG#=pYvk&y(spWen43G;+|u5CQVa?G?H$CwUEa0&@p zAzB54t_26-xC?!1TEU&dm_ZbdC`cS@cz;L+*NNn-)0L&yrH;#zt>r|@ePQ7{{AOCGR;g91<>7FVSxQS zY%2q73eT?*X+KOW2_%Uihhc(jgErr5-HgN+h-QU}_N(gztMpCSW)aW_?)^q+F*@7( zjHJ&BG@w|MHcp9C>mO2`^7QG5#Jh))o44lusMLM(^L)F_eYfLULhOq5vlwb}#` zJbDsDwQ0V__b8^%Hg3%Bo*S>Qb>i$j_cZ16DABito9EnkjrB8U#hX)?jdSA-w)cj; z|A3mt&hqSp2qGmn&y5sTg+x#*+-vdq1krT5z!*QG2xm176IGW(36vbOn2oGC5nKZh c=0Ol06gu<_{?$M1{_DS%{$bb2ftN@B1yg_Xm;e9( literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.Designer.vb b/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.Designer.vb new file mode 100644 index 0000000..88dd01c --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.Designer.vb @@ -0,0 +1,13 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.myapp b/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.myapp new file mode 100644 index 0000000..758895d --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Application.myapp @@ -0,0 +1,10 @@ + + + false + false + 0 + true + 0 + 1 + true + diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/AssemblyInfo.vb b/ConsoleAppViereckTest/UnitTestProject1/My Project/AssemblyInfo.vb new file mode 100644 index 0000000..1918277 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/AssemblyInfo.vb @@ -0,0 +1,18 @@ +Imports System +Imports System.Reflection +Imports System.Runtime.InteropServices + + + + + + + + + + + + +' + + diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.Designer.vb b/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.Designer.vb new file mode 100644 index 0000000..34b745d --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.Designer.vb @@ -0,0 +1,62 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My.Resources + + 'This class was auto-generated by the StronglyTypedResourceBuilder + 'class via a tool like ResGen or Visual Studio. + 'To add or remove a member, edit your .ResX file then rerun ResGen + 'with the /str option, or rebuild your VS project. + '''

+ ''' A strongly-typed resource class, for looking up localized strings, etc. + ''' + _ + Friend Module Resources + + Private resourceMan As Global.System.Resources.ResourceManager + + Private resourceCulture As Global.System.Globalization.CultureInfo + + ''' + ''' Returns the cached ResourceManager instance used by this class. + ''' + _ + Friend ReadOnly Property ResourceManager() As Global.System.Resources.ResourceManager + Get + If Object.ReferenceEquals(resourceMan, Nothing) Then + Dim temp As Global.System.Resources.ResourceManager = New Global.System.Resources.ResourceManager("UnitTestProject1.Resources", GetType(Resources).Assembly) + resourceMan = temp + End If + Return resourceMan + End Get + End Property + + ''' + ''' Overrides the current thread's CurrentUICulture property for all + ''' resource lookups using this strongly typed resource class. + ''' + _ + Friend Property Culture() As Global.System.Globalization.CultureInfo + Get + Return resourceCulture + End Get + Set(ByVal value As Global.System.Globalization.CultureInfo) + resourceCulture = value + End Set + End Property + End Module +End Namespace diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.resx b/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.resx new file mode 100644 index 0000000..af7dbeb --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Resources.resx @@ -0,0 +1,117 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + text/microsoft-resx + + + 2.0 + + + System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + + System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.Designer.vb b/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.Designer.vb new file mode 100644 index 0000000..98ea5b9 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.Designer.vb @@ -0,0 +1,73 @@ +'------------------------------------------------------------------------------ +' +' This code was generated by a tool. +' Runtime Version:4.0.30319.42000 +' +' Changes to this file may cause incorrect behavior and will be lost if +' the code is regenerated. +' +'------------------------------------------------------------------------------ + +Option Strict On +Option Explicit On + + +Namespace My + + _ + Partial Friend NotInheritable Class MySettings + Inherits Global.System.Configuration.ApplicationSettingsBase + + Private Shared defaultInstance As MySettings = CType(Global.System.Configuration.ApplicationSettingsBase.Synchronized(New MySettings), MySettings) + +#Region "My.Settings Auto-Save Functionality" +#If _MyType = "WindowsForms" Then + Private Shared addedHandler As Boolean + + Private Shared addedHandlerLockObject As New Object + + _ + Private Shared Sub AutoSaveSettings(ByVal sender As Global.System.Object, ByVal e As Global.System.EventArgs) + If My.Application.SaveMySettingsOnExit Then + My.Settings.Save() + End If + End Sub +#End If +#End Region + + Public Shared ReadOnly Property [Default]() As MySettings + Get + +#If _MyType = "WindowsForms" Then + If Not addedHandler Then + SyncLock addedHandlerLockObject + If Not addedHandler Then + AddHandler My.Application.Shutdown, AddressOf AutoSaveSettings + addedHandler = True + End If + End SyncLock + End If +#End If + Return defaultInstance + End Get + End Property + End Class +End Namespace + +Namespace My + + _ + Friend Module MySettingsProperty + + _ + Friend ReadOnly Property Settings() As Global.UnitTestProject1.My.MySettings + Get + Return Global.UnitTestProject1.My.MySettings.Default + End Get + End Property + End Module +End Namespace diff --git a/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.settings b/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.settings new file mode 100644 index 0000000..85b890b --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/My Project/Settings.settings @@ -0,0 +1,7 @@ + + + + + + + diff --git a/ConsoleAppViereckTest/UnitTestProject1/UnitTest1.vb b/ConsoleAppViereckTest/UnitTestProject1/UnitTest1.vb new file mode 100644 index 0000000..9dd9a08 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/UnitTest1.vb @@ -0,0 +1,9 @@ +Imports System.Text +Imports Microsoft.VisualStudio.TestTools.UnitTesting + + Public Class UnitTest1 + + Public Sub TestMethod1() + End Sub + +End Class \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject1/UnitTestProject1.vbproj b/ConsoleAppViereckTest/UnitTestProject1/UnitTestProject1.vbproj new file mode 100644 index 0000000..362e153 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/UnitTestProject1.vbproj @@ -0,0 +1,128 @@ + + + + + + Debug + AnyCPU + {C0A42750-462A-4235-98C9-978E34A05F84} + Library + UnitTestProject1 + UnitTestProject1 + 512 + Windows + v4.7.2 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{F184B08F-C81C-45F6-A57F-5ABD9991F28F} + 10.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + $(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages + False + UnitTest + + + + + true + full + true + true + bin\Debug\ + UnitTestProject1.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + pdbonly + false + true + true + bin\Release\ + UnitTestProject1.xml + 42016,41999,42017,42018,42019,42032,42036,42020,42021,42022 + + + On + + + Binary + + + Off + + + On + + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll + + + + + + + + + + + + + + + + + + + + + + + + + True + Application.myapp + + + True + True + Resources.resx + + + True + Settings.settings + True + + + + + VbMyResourcesResXFileCodeGenerator + Resources.Designer.vb + My.Resources + Designer + + + + + MyApplicationCodeGenerator + Application.Designer.vb + + + SettingsSingleFileGenerator + My + Settings.Designer.vb + + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..45124e84944e888cc7b3d38ef6d493f02619e0b8 GIT binary patch literal 21254 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 ZKw3|qgMZz(q5tVH#(f)_9g??l^xtGp3UL4c literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbproj.CoreCompileInputs.cache b/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbproj.CoreCompileInputs.cache new file mode 100644 index 0000000..b5cda4e --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +0c0e954424ccc6f246c2c7d6a785ce922ed288ff diff --git a/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbprojAssemblyReference.cache b/ConsoleAppViereckTest/UnitTestProject1/obj/Debug/UnitTestProject1.vbprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..ab32277a1cc14b996c2607e3fa3ed1b1f6fff9dc GIT binary patch literal 424 zcmaKoK~ID*5QU4t3gTf;o;={4G>{F^3o((zn5a?1W{;Wy25q)WOn3- zcX&;w^EzM4JjU3E6Ro7fJ!g-%qSMN#!Sahq$eu63tPQV~#w=Z-HbRY6QSyT4JkQd4 zl6KNqjW}5iGE48LR*LQ#w@bCgv1;?hP!6X + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject2/Properties/AssemblyInfo.cs b/ConsoleAppViereckTest/UnitTestProject2/Properties/AssemblyInfo.cs new file mode 100644 index 0000000..b7143ba --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/Properties/AssemblyInfo.cs @@ -0,0 +1,20 @@ +using System.Reflection; +using System.Runtime.CompilerServices; +using System.Runtime.InteropServices; + +[assembly: AssemblyTitle("UnitTestProject2")] +[assembly: AssemblyDescription("")] +[assembly: AssemblyConfiguration("")] +[assembly: AssemblyCompany("Microsoft")] +[assembly: AssemblyProduct("UnitTestProject2")] +[assembly: AssemblyCopyright("Copyright © Microsoft 2019")] +[assembly: AssemblyTrademark("")] +[assembly: AssemblyCulture("")] + +[assembly: ComVisible(false)] + +[assembly: Guid("55cb18de-bd6d-435c-a2d1-66d5e27218ac")] + +// [assembly: AssemblyVersion("1.0.*")] +[assembly: AssemblyVersion("1.0.0.0")] +[assembly: AssemblyFileVersion("1.0.0.0")] diff --git a/ConsoleAppViereckTest/UnitTestProject2/UnitTest1.cs b/ConsoleAppViereckTest/UnitTestProject2/UnitTest1.cs new file mode 100644 index 0000000..9892ba0 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/UnitTest1.cs @@ -0,0 +1,22 @@ +using System; +using ConsoleAppViereckTest; +using Microsoft.VisualStudio.TestTools.UnitTesting; + +namespace UnitTestProject2 +{ + [TestClass] + public class UnitTest1 + { + [TestMethod] + public void TestMethod1() + { + + Viereck testee1 = new Viereck(24, 42); + + Viereck testee2 = new Viereck(42, 24.0015); + + Assert.AreEqual(testee1, testee2); + + } + } +} diff --git a/ConsoleAppViereckTest/UnitTestProject2/UnitTestProject2.csproj b/ConsoleAppViereckTest/UnitTestProject2/UnitTestProject2.csproj new file mode 100644 index 0000000..d03034e --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/UnitTestProject2.csproj @@ -0,0 +1,74 @@ + + + + + + Debug + AnyCPU + {55CB18DE-BD6D-435C-A2D1-66D5E27218AC} + Library + Properties + UnitTestProject2 + UnitTestProject2 + v4.7.2 + 512 + {3AC096D0-A1C2-E12C-1390-A8335801FDAB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} + 15.0 + $(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion) + $(ProgramFiles)\Common Files\microsoft shared\VSTT\$(VisualStudioVersion)\UITestExtensionPackages + False + UnitTest + + + + + true + full + false + bin\Debug\ + DEBUG;TRACE + prompt + 4 + + + pdbonly + true + bin\Release\ + TRACE + prompt + 4 + + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.dll + + + ..\packages\MSTest.TestFramework.1.3.2\lib\net45\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll + + + + + + + + + + + + + + {0800118d-d24b-4fe2-92d1-ed28cb9c336d} + ConsoleAppViereckTest + + + + + + + This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}. + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe new file mode 100644 index 0000000000000000000000000000000000000000..88329b4bb8892bf7a5632e8b12cf07c836d9bd15 GIT binary patch literal 5632 zcmeHLU2Ggz6+U;o-q=p;CL~VVG|99eD}`I zdi@hH@K$;@_sqTLoO}N6--&0RyFo2P6hnLPfan&!62=w&*XSD9T~GeFi+_Zjxw*wa{;aWA8=Q z?oonvvm{XmD6#?GJ`SX#jiX7V6)KABH02Lhm`* zA16vSl+>B>bAf0NKHoh?G$hA61)Zp^Nwy8+&o_;YfUgA@|6B@zr{b*pjgbN!)(znc z3nS&*I66{ZI@AQ?@ZJ#I@gS&J7r>Od4xlx`IML~*q3XVVJfuk9G-{>%5u!Qdp#>w> zl-AAj9yacv6W`H#Lhik>t1Va|?f4@qJgwy_G{&^pRrnS=L9{=q(Jvqh>ON`-K-D_5 zD^ez|@L-pAMT*81HjYF*NgLc7@ud8H*2@m|vPXCCdb*V!-P3y|5|zwnk7El!vGgT< zD4HgfG;>nJ(VWek^x6*a&TZ+ zQd-FYZiAJcuMo+oUy}V?AZ)kfONkG080C5FS;)~}(1H8Z^UT6@7T;K_JTDlZcDw?{ z5-^>e@7AbY4*t#t>7dFfk{WIU1djC#bxK`bXwti=5q*t?-p1)~)T6~|nMvG7e`b%+ z1k}fAfquo}bXVcq3ePf0d0gR?!j7V6u*7kCQsJA5@=baTlFw^*fN!xo%2a4iW{Dxb zpE9mxRG;A>B+=Wia5wOr4p-^h^h*TBD5pl>c@aO1N^d}Vk41Ev%oT7h8VT;}YQlz1?O>z`ltniu3-^6wJX5JG+FWq!VxIef!PhwDYJR}WMt!dqd4(6LKBX=Sy6rZm@nwfwGHf!ez!Q`y_z^E_nv0opdea5r{Ov#H`&&zyPd`CtEa z_m#sw#dOBnT6AKq=DuxQ*4H&`-%*BCj1hFU-nW&z)SexY`Bz72#d>8RT}U`{WR#?uYo;ssy?iwa?m? z@O*C>udmMNiN^BlZ@-~8czP-+Z|kQR9Ze1;lLG@o#lB)HUFb_M^Hkq(syNWci>V>2 zFl-GDex`_f9zG1}0-i4xX;B_$Z!&&l)KN({-T1%-Vj%F>7aWW)8?% zdV`}YX_eqtuK(_3*})Y+ub|yUJ#trF_>vleyxW^$K9|j1{?^qyfB3yK@%`#=-b?@B zkRj7BadK(F#~EA_o);|nUR79pDTj<)HU*z_OSa3oe2h{{+a~iNRBYlUwS~6l8# zUaeOf(#tnxUzfeD5LG21=Ys;|su(G>_gi zD)h4$PXkYd)jHjdeQ-Z~A46TyTRB$O1J%mc`cQqcinfRsQb3Q5cbY?|OUvXb{!x;% z^5B}F`rw-sK+eM`gg0ZdkU|v#x&X(e(l(mz;*c^_F3~Sd1@sATy3EG}^p)}Bm>s}M z2x-(T5wD``*AOkz-Tg*6K{JVu!WH8QqVcJ$S-s2fe-6-?;dwY(ypkkQ0KeyVRM zq5Fa97EQ-<`DmiX{lwU*&W_HG5wl)l>QLeOqlv0;Px{shs!G4F96i*1mRCM$`ekEv zAfcB{*Iq_l6}_m+9+c^NL)mnZqf85G8+?*4b3%9V$c`pvYpBs2+fucnVOA=M{!l|8 zs(vu-E_*xlCzVk1VB6H+=Y+kAs<*`b9cmqnwCaF$J$M4Gs;mNM z_$qgFN8-_h=})_>-bF4FdezQYDD;rVWfX0^9+Xnjzl}GM>-`&iAL(x-0Rkia(F&cy bVt))Dy$tB#-za|eAN_IbqnC#N*NFZJo-kWt literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe.config b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe.config new file mode 100644 index 0000000..56efbc7 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.exe.config @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.pdb b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/ConsoleAppViereckTest.pdb new file mode 100644 index 0000000000000000000000000000000000000000..d730f0afb51c50281e5333233cb792854affdcd4 GIT binary patch literal 15872 zcmeHMYiv|S6rNpb>4R-q(4{U9SEUB1?rwP~5R(GiiUc*griYkRj|2DfV@I@01tq7F%Oz$ zgZeK951e?>8d6lU9#|~Y^q1`9W8hb}tZzCx@sz*6O&nhPvG=1REvw%ZKwPMx5+VAGR{-uBFir3!kt9j+!PXi%m5B%|`s+!;TE-Tg_oK+XTSp1wOaex&)Y!46Qk{_j|c>R`-zV5Ir4Rr5b)=WDbL8@x1liD$DT>^QbG zzQNQCGj8a5E^g|*MpBEn;c~DqVQ4LxZK;f=8L7;+`SF;ZG4-^zJez$sr5ReXyInJL z*O9I>^le6>C!92K{979D{f7o#KT?BMs3B=^jp(__W}7W2{Nl52pRgF zgMJ%i-#$@?wspgL_MwjL6OZ%{vT|JSGXV;sJ?)zTtN@~KYbEgFr9tZ%AiiN)tAQcl zTHwRLLqL{)1H?G3Z-KDIItqj?>o{;OkYn{B<&(D<98(SaFcbI%Y82*!(%vhO(FWQ> zsso3>3&Cr^9pD|{e(>ES#`?j^$Ysv`3`}AINSohw@IeP#9bDw#P6t`{-{?l=Y#S=< zz+0C>sY_8I`;sLDaQ6laye8#y~@L75itZ3|eV3w$H-!0g(V{2O*Hn(JQ#?H;_ z^i(FtcXGWf=R4Hn8~_4hZhsD)v~%m* za;N@+yXHr3;fj<8iq-=myl=U-Mm@d94=MuK_sh)1!>(*-$WE~@rrf+Ot&-0U(;afJx25j?h!;s==Tb>D zN1K-~TGF^gh{wJPUv{6pYmSJrE0$4S7{|FfST+ZI(iIe-7p;78n3;(x}D_|`7tf8GhYw=cYP;hw_#0XP2V_x?ICZ*B0MUd8|L Q!C0V~W5Ebz!(H>hUp9@~jsO4v literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll new file mode 100644 index 0000000000000000000000000000000000000000..3e0f61b08bcba36e23386b0e0dc91b8196f2a6a4 GIT binary patch literal 130192 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 g4%iKB_;$yv2Mn{*lF;E%@sKeUNDYXATM literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll new file mode 100644 index 0000000000000000000000000000000000000000..ae7bcd58ae5ba63aeb1efe42d1ae16d4b81c8c85 GIT binary patch literal 113296 zcmcG%33!y%^*?^z_nmoXO~_;>GuacCgqK-DAZ!UB`zitvL|jlrQL*ZaGoWY;1VP*Y zMO+X!#HH@F)~(hZL|ZqsYOU2&t@>4KwYIjd#oyL@xY(_<`slJo#_Dgg+g0A-TBj;bOYa_d?%?v{^6ooqyu8O#Sk- zeM0(}Q|gaB=G0T|74=J&)~8pVTEFbn`pI+V)t_P?x3sCK$UnegJ$DMxEX|;|&x;O$=WJiQ=a(~705RscTx zG}ISq(pJ>F@UNa|aZ@^zJ{Cx+8|o+xU4du8-*^mHQ+nyiHVC<{TxaeBI_pPt6FIr? zZz1<9{s>%@(Gq`cb7)D789L}_IEkBpL*2l9SubOIG&CCT%cP6@zjk@ zM(eIl!4id=4H^wbC_QAXgalUk&E#OqVj|&SN@x!PA{n#dg6F)Z@U;_&#-s69>dRl6 zqty>OD?aP zDnsg9NG1()j784pBUF~CO^*qYZjE6E{)oea#~h;_GE!RHu*V|JpNN!_g{kHb=p9^D zk39|maO3ev{iVCOl=ej-f>m}U5GYNR6`;OJ0-7kU8?KmDjw;1D8dXsxW9SpsZ6V#T zQA0C12obcy^hX1UnCaObba`!bo?rL6EHE=Yv4sJTxp~>pzr;mG=W+q~(>pLDT&ZbB za%{HK@?D8p)k{}SVz&Ftd{<6pM68n;#cK^~3P65Nb)M6lC#Is{XYjMC*-fk>Fr1;x zY7G@PU7crwgN*)6kfiiT+>CUd1)OPia8l+#pas$0npuN9Xi?|cNC6+r1ZOV&t*g-GCso0p+tOt5jYy{he!3hs<$^ zg-sS-2JK70Ug?ba5XwU21Q2Es(Aj1((j!yI6iuQk8#3*sAlE~fo7@3TwG$OiD|vdH z*P}fZT&skLhj^fy#peG5o6{N`$Q0{xU~$?T=yJQNaho= zM62GxOH40WPb$n>T1cj{VnDhVWX|V~#9T5v*MSY@tS98{#ME}_Ax{URek4U9D4Pp< zG`5?Vm*1N-J=V`q>RTaKoF-ra zw}dhmq71)jbgoAwq5)U3EZcfUxb2gXEszLj+f{({Br7p4jDVnC)T5>`SQ}|W=0PfK zq)&m)vJv=GrprDRPbdqXPcGC8bqZxRN*!FC=Ykp5oKnb1$^+f{0V-)&Hdn#zv7%Y@ zi$E8ASyPX$sR;bO8r}KQtYIZP6WktC#BMY*2 z6RS^6bY~HDUPz_6#SU}z#$iRT*h_oGzSk>ugu6Gsn|sB+*(r3nq&{KGRx*hq1B^l5BS&+8Cc&h=LOH$4@tGC`{~ln3LqzJD8JV zF~Wit^&2h=3dtWIVPT3hgsICAW-ddRjVR2iRtA=v*;xY)@ix7KpN7l+js^aJEaky9|py~p9dWjfbKH(nXJ(=nBe}*g$Vp+%)SUuGkrJu$;M3bo7N_T_GS()W|-GY z*bnv=Jd%1Wj>Qveqrcl|?53!)*@>o-cQzT5(Ir*Q8bQ&?pCJmgJ78@^hRkIM&Wf{* z&wpMo1*U+0sw?R+#K4Ig)^w0S3D}qOGryM%vfkasv)$-K#h}oxVy$!qs3I2Dio{Bo z3{^LCz}t%}foCHP(QU#g3|o5|$}D0&+mV&m5H!w}egn+SedHzu0Zs z*CNs$pPHrB8{^h>K%u!<>vS57XCJQTHBLRz{jC45|g>O zXOj*#Sp13jte5b#7LhDmX;e8YBa19vZ<`cF{{jYZA7T!=Qv^c{Zn)4$FE<=*t$IiP={)zsM_FcTwm`!*1l zYS!&|BnO%vo7<77?TPOLJU26ee0P9Qx9>z4Yg)%$D|H@)C+vn$)UPYMBdKTZ0*!Sy z2fsiN@TAB3FeC3lJX!2f<&u=!Xv!YqXyyeT(uv@+6eY^GJCJBb4Iv8tpzh_#YZ}%` z2#b8GtWwkGdAnvC9OAvy7JRYfMuvgLwx8$g?+LM>k*g0xX&imGeEM~u}1n) zgw}n)`9&pShhyCj2rdT0dO%3Ky&|suZZcJCs#R9A*K8>IXDB+U8*yQnzSNImtOvo$ zdPp&LWc?)auOM#&8UxY&HIm@BG3g0307@m)L(E003?)!)nBg?)LImkInYBn)mGv+f zq$V5b&w#Uk1Hf;jD+5kE;88W7Yo-SPr>LX*w4fS8k2gOqiKO)ia$BuvMAnm~%3v+k zgxovD$&`5%RA)JLGL*QDJ_#EO!+s1YkQb90G$I(KA=wQ<|JfKhzl|39?I$_FnEErj z5Lml8c$#q&7`F#OV`e_oPe3=Kwu!kO-Ok>yQdg;)jVrTTJBvJCpJ~qn5nGiZY*=O? zZa<5>yp!0R@^LjfCWr9T`Dc|*Pi z?CX8lfdsej1ilLR)StV9p+M3DuoB=~E^Ni7b7{W=6!M1s-D5*0lAY~wxF}R)l_0%Q zbtYzpnN@zFB1iiT=B!1T=kPcyB)V7|hRV_ysyGA!4!O|j25Q)&+^{+=p>-dqIMJcB z{ROHsxF2}1|w%?z}w7xjDT%;GiOm5 zo&BJ<;UGpIxO8{t0DeT+YwU_xE19x#bt3?_!{vFZ-oZHx^}x0c<7&EXj14PL?!!}g zXz*vP04{mFICovV;Wv|qiTRYCkGYW@WTCPfAptwZsM0&Q3VE#k1v08^+kPS&tUNBR zA!Rg1;?^LrlX>+Y)T12ZsoJ8;(j$!%`_VMuDC|VG%-iTN%Y(_|$6Pm$PQpIXJGe_+ zHu~I@o-oC=6v+G;v_WGv!~(vWSmWv~i0m_WpvcTSNNVWf6w3={tGD)~xq)fk6B{VWpiDQP zR8_Y2UWI{82!X+r)#>Ln;_d7lX{Q}usBJv&;VYqkBCLNtLNTi$CQ$O+pQ%318VIK| z=7!(juzEDtT+$3Pp{Qi|>`##1uzE}{$vhlRGG@w;a>G@WO~&;9QF1(=Jg%4Ig52YK zNoL7%%7()H5%YqoP3$E(S2m0#H66}zkaluNI$B6BvT0GgF#_Ibicei6NCj*H54G0#&Sln-5V}WgX zrXEGG!I-mMW+6ZSIToGKnLwj3yOaEIcc%DJ?COL>7N2eVBM(9H~HoY`ps0zY{ut}JQRW~9Y4nEg1QaEh}pWcp^%d-M)|@LFzq_Cj(C z90~U2oSk{t|3Hwf>O~-hC!Q6ynf?G3%dXj~DOj^T_CGvs`e|Mhc^t~55*ss77N{-tBh|9&Wu>H6V z@&jE0M<@>o3kE-JA1JUgs9|F6oWjp+iYk%$CFiKlQrzvn$k{#IpPt_*FB)j-*QkKr z!6KQ&2_QdX_BX(#Yf3PkzD2B?P@r@)Z+lJWP)qGm$540<4R3&I4|o*_ z81GSadJgr58qe8%dCSg~8kWAT6dkb-`7HQ1ahzoRfOyJ-9So}v%ME1En?UO9&+>}1`61|O=wDb4rtV_@i|nz1ReNlS zKri9)Aj-A_BY}@m^1M3ID1S#H4G;INdWmgVakvAilN^-bC+!MeyWIE8O?2~ zj1d_9U!tL%GCY7*9*mMZWpEfeks%o}*xNi*DYq-q&PFK%@GknfCpI`~0bT4iB?MWD z08?z&rTZ*DEKNSKc0h=3LPhOjCWAb1_sGo%xf21ML^ZMo2p;DI*zH7dFo%d8LeLn0 zSf7I3rrcoSrx(8bv1SeVmO zImVKlKAmGM#_1g#8_%(OIK~2;ewAY^z3ERm#x+V0h#|%mKy%O@7p=pyj{8Zj+w^`S zvgt)0Oh^*UIVG4%6H8CrqHF?#c|*kQp$v+1>?KsvPE%fe_dCwtYy zciDALB;>lziyYo)^YeVFLf zg6h!@!+H#vR!>KY9YYnOLk8}JepCxWdIXwpm2-8?h*g1S(r4;M#K!Ic%9H&VFQY&D zf{)m3ezU@^LXz5i>ar4u`K4RXvHsTUK^zIBj{?_-DMw6L;=V*m-k1t1^ErPowf~}o zp~7*i+MLL$=<#N)DW9^Y8a;daLo8(*9T7Wc1;e_He#Ze_cfYV(e6H9-xvgqcx7+XG zbI}Yqza?9tIG>K96R;>iu4(O^RN4SgM||sJY7fQh+p9?JCw({vS=*qCNg2g8>FdzM z+-ij-!mw&kkYf%zx~&$N{o7dwoVuTYLGY&!EJy#>1D9&;jZ)lZreO-5na{^F4DKP1 z-4|KATY{>&k@O<4%XXI6S+B};xlCY-wbGA^=XyEk0;6f^4yxt0hnszLJQ|3egs&uL zio%^-_?>$xUy(b~^+D*VkY@D0=b2p#fl_WNwuqtzVSzitWZx^?><3L21 zON6-?-YN?kPfmPt3_iqp51;RpAx|TZiyU`1#{AvhM&~?8_K8Z4apn{t1I1_{r$8|o z%Ms@}jET+V;_j9;1Z7yepb?TjK)Vr1)rs_^ThJj{*)i1lgiKW&6G82Wm-%Tt{elcw zPavy36x{3<1i?{PqfFd983v%p^ofMX#jMtIkf0hHc16SP#3_7izC8>tIg3*IQxuDf z9uNb+H5`br$AtS)<;M!@$8`v=60s&7F{yF2sxj>BT#Z8z_w^u8cyW0`)JDh+PbRLX zgrI|mUWBTR0Qa`T)D0zlUvvQMbmdR+pwC2BbUK3W_NhBb+;4mb!9u?&pTJ*HocIJB zRjB$Uzb!Rgq6!u95!Ly+nKn;5(Te+5Uw%}Xw;$DzKY>2q419H7WX)H-BJODg0uStMU3VHwlu zdTM@2=|`RB)46}-?oo2R0?$F*SGmcOm6VZa{QmB4mMG~t?B8XyOm9SdI_l<=J&N6UKvGlYr(?IpJ!mPaw%UnGmn%N$MO{Vi17{RT?y5tp5%e}bG z(R~I?L$Tjk4$$UMW&$dNm0%(sfy5k-JqZzc))QIl54IwB$8{cnS;1Q!zr<^Q=&H+ zgPjV42_b9*Gcy}hHZJz~ojUxXM;)vnBwOqV9p0tXG*u6l`AH~qh?MCvHgjVgVc^bf z^muQCd{p6fBJL%&gE<}t#~J-CcU;wd@FPI!PxNuFwd!z$;;b-xn-!u| zc$+o5_64Y_QH>$5eOPFz1@%-*)4}P@s6bXVz&!Xn3Mf`08%)%DMP!T8q53?LPb5iE zdewA&qwo}?*gdx)6=B30)$)@8oHemM()ny>J7-Eb@#9$orwxw^ zeCcn2iQBZ^!~@s=0;n4cdvu=;#iY*E`%`jGwtXJDQYV6547rqbqkJq74#TuQ01r6h zP3t{GWR3(A5vPf|5+xrW7h;--ZhF74S!(^m@vT3g=2vi31VyRr5Sx$-wR|6$TlwZC zK$nSQ-9H1tC%LU3DWvqB%lZqWak47swWFRy8XwVa5Bp=8Lr_9E5DJ9Uu`z@U+XxtQ zdI!&fkY6l4TP(eR9`c6*ru8xSm$mwG5QuRWE)Eq} z*$Yro8&WCcPU5a7OJArcCi#RY@qUoPl056js(?i9#IZ5SP?5voSFeQIvEz zxGTFn)u3)Pd{H2jp(0c}OSV(4lc7WBqv~xp?vsn~!NQC1A)g$r`$FE$%f<}@ffAp# zcmD%gzPalh??F4YTpY;TF(PxW~6p2Uw|_HQW$BmiJJp5yT3Jsi`2jo)#=9SNWq zasFfc68stwIUm0)AKv3m10I%yv;JZ4Z@R5+^nqy~fyQHZg3BsLBF67`@X{db8*qz& zlXpsRfu$MxT&=;``ztZ(J4zMLzI+H2!L)#F#jQIiukzsyd>qAWeEU!Fw> zRt@CVkD(~?VH}1&1howP=^-c%f^`)t#xWWyXuXRH9$f62hV8G2ycy+FFLm@4eEV)t zW5>%K;zDPSqr~2mS%M5_ z#hh0>JUfHkW5c-O_6RD^&gR_QF?i~@a#P1uFm+_8ie1rzBf)O+q7Ze?LUi@jG?wLM zi5qPdCDX1N>7L8y8Dg{WxbZq3;dviv&o)-5{jeq-D_o)CjY9S&)nFw*z5>-&t?KQQYA1^w0vn5$ znR3595}dnNgw*<4S!>E90G;|BVCoy2@E1-jQ%X8E&C~(!fFJ{a}Tf z9B@6d5oAJV^3sJeSW%_6;tHCtP)o@>OX1>P8dj_trbH04HYb97L=q~_iD0qZ{&BQ7 zF9ITmZ{H4K3YYZ4x8x`JmgM-B6!OKsJ|uj*4+)p{!nE`!nU?05mKHLFyCAHXLLhl* zZ#zzOGkXuSdyEM%H24q6gt3#mF|~NE#C*Ubhu?@eSgj{|Y(!9(o7Y)x(+|=eriQYXSprj)O>8NxTccm2} zA|{r0kJIrLo`QZ4y1mlt(W35grmM<67Md^BqBvozncuo9ixNhlRKSri7d$*FJI*HX zu0#p9M5pRnn!q}aZCT7mK3Br}!&AVJH3Mr9@8(ioToIN-D3$1>#$?jSOmP;i0;MyS zwdP02j0<{v?Ujj^vi+a`$ubM8zd!vH6k5S3m~x+E5%`P-AM1FK;4Rwpn@n{Ab2|}% zU)2(&<)&|1?=PLG&HT-J-o$l6_qgH{)vKG>ky|IB=*IZn*3a-XR$qlwxrnt5k$vXv;F38R zDGgnmV)cQAfVO(*NR*G3;9jqpa=8MDLDs3DN|&HL*^L9=FUM-mc*{oMw9QZ+Mx3?7 z{_&^$Uh!3?bZ^{@E%cjZEq7yxVd?T+P7h&D5>A@1SAd?zQHe4o;q&Lr$v&pa>@ig{ z_#IkUWqz!hYGMSs+k(!@jgHMv3{(x(EB9vSgtuT$w2P1ix`~~W*>$_EjoOq3)sPq<~#rqD~ z7MZTe+TU0A%)qv@8IQ>8;W6ub^e#suE*0hbWT+dB=XOS{Gr*l?5BE-2Ar2h;(hw;IUod$wbk0ILGFTR3WnSZe^czJUG-x%n=Q^5Ke0S0&xcNiN^e8%N!W zn7ef|LRE6@_;WbE@=z`t_o`LdUK~W^%l6n^T%Iq4w@TL{mK=$_@i~adffwTI5EuVW z$X9^(sY*O`u=w6C+3rlo@H*YMv zJjZk#BOJO$nK^t{<8H{%M6>}uvV4`KWNRz(2Qrr-3`#4Cbo+7u_7w>5j{RHU2y@^{ zhTQP0Y~wVpvSbXKUffc@3LqZa@sI;+kX?=VO6X=8p9>)OjP@v3MsIt2Z*+bU0Tk^SUs)@LmYN657>q9SFFhas(zYKj*Y;gVZ$u4jitd3&V+G#@Jj)XdJ+2St#I0zbU#7Wf--dX=l^TLGNV`vdCk(rH#8ajw)!xb7^${M7d9NO%)`(OD=|HF zRHxFk9|CA&#+vCr@G8PalhEN#R<|eC#aZ84%^Bevss>|tshdZV!HQT%yrqrZ)KDet>XqSb|^l;A3HIdbf-48dNR-ujQc++%yY$rf?aC9gtjR`UK`41OSu6D#9~p zdihYnDn>kWFF4@@-2N4wKKnj|{9=Co%$3hlMdvk9Xq*~5?rX>=`}jhc`;o)%>;hEX z=Aa=d%g8){lz=B{KZvI%!X592>zKdYsE-eQ@;@8>#s7y#v^dJf0yKEEqr-u}R&G z!`*HF29W&-qYTr26i>YH23pS3isy7`dwN~A&3JcpE8@Zg_dj$`To*+8SBzyoY={XT zIad!idkNk-ngKqpR3QB?kf{&sM6jA*M~WsTr=wMmA#3^Jna8;%(Xg2qWLl>pp6)X+ zZ?eD@zGdTwker?N6G&?e!CGgxxs!e9^Dg^I;N{jEYOLd z)YI)f5_n-s;}b#4)rV5-r@#>Jlmdy1%eedA1g3%n=4xQP0{EbrrO|r&j-KpbvZS8_ z%B?cF)9(Vn@dWe5S65Unbq)ppBhBRgPMKo<$93`ML5J@GG2b__b|d24d3hR9#3jj- zdY^B4W_WXDl|l^hUb1s1wetv>do0UrHy_C3kU0*GXy+p+PBiSVkZ_ zT6~WX-nftlB*b@D>;Wj)o&XLo`n|5XRt)8NK1NuYaFqq@rEPk)78vi6{)?%Le-rWdWeC}giUk?JXRhePy>mtu7k zQELU_E$V&~+eR;;RtKRDlEv>BM7$&fMqQ62y!MHB(A#<`0I#f@4XL8WQun^HF;Ivh zcfxN!1B%SE2-rf!$>nbm4Y`_)Xu<>NcYucc`e7WHlJv}2w2n=7JV~!*7{y_(?u96916dLbbt3~xJ@5H!4@1RIfn*> zd@oY5LqY5Yq&hwrC_hNDiKMr8qwnx(p4b7u;RrrP6dd()#6qTbJ6q89%OK)AJ#|g? zD;$O0936r;52G-ae($6ib{%5!og(M-F91G!8jy@rPfR?2yWb2JLi z9#=Z)PF-j8iI=Zum$9o901gnehI!QYZMtd4k z!A1vs0Q~)#ZZO0vmk5KIcMuk3-bDy)^Bx|xEsY+v>?h)RU2lqgr^eL&3&;`!9IANY zC#XF3`=IsVj=%?80z3j9`$NRs(V>(D&798ApB}CwHq5ke=i$C zFkxjciV`B}PnD!wQAK>u&ErJigA}W1EYP{*bM~EuJbZGFgR8+{V1J6tUg+q*;hFgi zfn1~Hoc8CE2@jZyTEi806 zvR;5t*R2*jQdo>jRMh?gjkGdAcK(bf;85LK2w=r!7%~P9WdK@L23dW&xJ8~e7*DaTKUajI=Iev|b-^TH4 zC7!#d_&9JFwe)lR?7U7ABb~59TwZ?x`wuwl|DApIxH$bq0oz=e-#KL(DK1mW3Y2f+ zhBQRYo8%eu$TL1$w}ztKhSQDzKsWA>`zPa+{%0MHUr5h<2_&|x|H30Z2*oJZmafOm z^aOzRzmXvCg*aZ~B$D9%pNq1vpAIT2ul*IsO#5qu&LB?&L2i)80B{DGqxLtTQ-gdm z`Y$)gu;TKAd>T&DQZ;PTj>iZ&d=V~Y=#%GhcJW2>cSp!RBPwRC=LwRC=LwOl_- z=VNSTjMdm`YHU6JSdaeZJ{^rFpr55Btf%(JeakrRXI=a!3#6aF0}?&-Js!RGqz9Kt z{)0rP6DP_{nVRcF7IzVECD;EywEb9-F_G*4)^^npRMbC7LXZVm6WdGN(=0UKZZ0&CDPm-;->i1e8(jyf`86)iH;SF<>NM_5a=XvP4# zi;2678w(*)9R3C})_ckx3=%HX7Q_DGZ?9ov;E$i=yi#AHr=JAdN;$#gZ#PBbQx!^H zX^=w#=EM8_6?noc0^h}K3`_Dvu)q`kcU~nirql4?-L;XNpuQj)Ow{2L`)r^Kj$X5b zE>BVSKqO-p`crSf{fZ0jeNd3&epLrN%o)CWbw;YgYnEJ~e6F?D43ym%AAxT`a4*Vy z6q$30j|D!Q(CRc244j&}&{s)(&;*YAdC0{ceCu$I+?{bFsUiIrbV243U~E(1Nlkzs z%femE$B}2uH~E7Fs>~$IgB+b_fC452KWr}}PA@?C7_kxv=XFnfFPM{EVi%~mEc6RR+7I2P(Er>IJw(vR#w(E1XRz6R zLYG8((IXMHK47Z+mM8JKqopWQp~PzEGzeoy=EpRQ5*mr1eymRh;u#Sc zf>u&%yHw-$pCH@vK4_-T&15u`YM=L2KhkTkHf^c}4ucn421unpu!hOx(*iAlnn(pZxxVqP~#X6vFfgxm$289e@kRs&W1hE`I@8GM2Y^m^pABpxEo0o|-iMM|m%7+ZZ{=kFJ?gX~G_z2!qrXpOCJSZ|43KRQZD0v97c@0lb zW@1+2Jqd?t5lA~(TC#{@Mu=#PP$Y)k2Pk~{LTZ6;J~PDYB>V8;M+&9O2GeqQfb8Q@ z%dFjD?u^h@7!tSE{S4F*2H6-H{% zTh>&q+#OAR!z(#_O*rvaxS@Z5Cld!$Ts?LHmNgmh)OzGh?R?muN9W{Hx7j2N=zKwv z50^)wo#gf1$W}wx6@ie-=aKMDP&V9b-2TPhqq`=1m24pT4KF;E0WBZJdb<+Y;XR20 zAsf1|XVf3jSjc28WN`&HR9YCHbMi%T`sC_hJ2KgdgCiBSW5~9;96{57o=7pXK*b8h zIt^8A#Ws)c54$?pMlHzL+!HAoc?y7%jYP?uni2AOl$Jy_m{pW-(kJzIun_RmD56S#Hw8HlTWtBZCb zz8HO@V|~LJrj5#1s*9KE($dZ#E+)#LroYDM;hrukRwR}2C6~yKJPe0Tegxf#MvQ2F z_(Wf%z0EK=c)XMkS^C1QHiR#uBiyPZpvuq@&V92GJ_p?Gk&;-OK~HMDS;E&0BF$uA zeM5U^QcGvPncKIM!R=ywItY}7de_B{xn}4@7T|=(1XzC9_I5W%Vu-|_a^5s5)w46& zwKJ-8bnX=^_EqJuYAx-La*jd&8Od6M-)Jnw8;!cNq{0fyz0dej6t7{)sw^HNiP=@? zkk~#g{-R?bk_&Mi(t=)Gegd`Et_LJS zU)0?vze$E|LsOMya$8oy*WG1Is&E$a4C;C;*VQ_VtI=1gq~iS$hl;e8AR(wO zU|8uvL-H;PLtS1@-}Ymi$Ej(5@Nj%1Wkd6qO5lh(16(n5&V4j#3cU6MKrapgT(Zr% z2XK1zceJ$8XV?u$=Pye~@;-q4yCZypuigtRr)~GB_UhR2-~F(Pv(Fv27vZ!4XZc2Q zv8;Mn*2^*fgNdZ$w>k&niktT(C^9<4=gE3cJn&WX5~0>K$Cvf|fAM9>lyZy~9Qm-< zB>xVuj;}wCnyGwN4=8gm2@frsg*NWQ;~0c3MMm*cp_FA`;K9SJ*libyJ5rrPrN=^s9Ugga)mcMA2#+|5~orD?QF)3h2+z)90N67Xm5o ztzukh8Ow49qcG(+;(<3%Of%Lr5XTi|__#Xk;b`Y3JQDCrb#SB;XJRgVT87hNIU-47 zOVcaViqz8qt>zlKC(1ib&IU)6JU6}wF=Ajdkg~65;9>xo79MZ_7!Gw+G~SfC9&@E@ z3+Km&nTIjK2*VzZr;!=KP`+)KF%jFwaB9&>(l$n+ZCBvow5>_n#(1>tN<0!R_+Lw= zFxC_WV?hY|7lmwco}Ga17KPtxh=l z;lp-kA^|;P!6q}~j7V?<_q^uKgmX`(ocM}QAJ){|)Y9BCgfAc9e{12kRnNqCDKKl! z$CD4=`p;XDUUupU*slP06}|^K0=Prw(Tq;L>2eJuvpTs)7$ zuL!>h_%RonS64 ze_)VFdL@T{so?NYi60^1W(m86W_9_Q;B#G!!}UUWgM{CdUteR=x)_%-cVfQ=lbWNY zhz~6r=+TWaQy zv+34hT<2rPGXD>f94;y4Tnon@9X4sBxO)T@S)Uq7U~>*y`P`vlyevy zS~|Rx{xjqjze%qRy$3IGO-8(w4j0UAmHiq@>C$nWx;OQ}pi){c@fGGw^ipw>!)Fne z(m8@}()%?O(`Gl($s0DyOQpV^{?wk^CofXlF3~9t)>&5{0?c+$!_NM33}V4uO@N)^C?{Vn-YIW z@_NfT^}$*W{~BhweMV&X9M`99QF?LGhW=67h|r{x0r$9~v<?H8)K%DT%pIOD)ab zR4oN&a=6dOVX}pLuOH;FmO3Yz?kKe;xejNFd}_^H|Nhb^j}GDZBFG75w3{V=jr7Un zgSdZM`f#|kFNbsW2O&`(51WaP$30iXMRkl{i++fbFT!G9rPx@;Tn&s#vj=nC z9-qYF^c0u4G07!f(YIeiCH-q6OX;N+hu03`a7?^^U7Q9FS!TtlBF^D6W0v6!%^5?f z)udkyV-Dw`6q8<%R!3xx&mY61^FPfTt{%!|t&+a_bK7^8NoC`>&a)=6w4XZUh?-*h zwBHeE%fB&~F$zsw&*v4l(GLvD&|BERn)IQ_)prLl&qJqk&kUHrJ#$(g?yIOs$m_K% zA;-0Fd%uV5)zYVfSRT$O!%N}xJ!)%`ujxChmR8Fs|8^vg>~F>~<-$1A%;?WFC!@Bt zbY#?Y`)U2;*D-^h6+TJ47F$cF1x+_=@Y7u!%Blskc@0#2yFeQLH-Oh#Mhrg&THgbT z5?VB2#PD{k3Dp8E9Li8RPSAG%e!OACaQ>EYUrBqxQfd7KIx@&m1y&yBxeWO}#%eTP zpeaK*tqL~=Iqe96YH+uYp{?UMtp>Ne7&=X$S}d6it#hD*1^Q$#Q`W-Y%4vhfGE_&4 z1$r#NP(PfBaoWns3Q7w!RcbbnRtwZImD2{&Ii%H>(7?Xj_91k!q}_xTZNUP28FitT zt{=mcqv<|r--puLDRjT2?P+amZKtX7e`c0YbT&gX=?S5{;UI=)(QgI%LZI37nm`u_ zG@m|}{wza2_Pc*AX)j3HA@nV+Md^Q(5)L5)OK=I@DbV5M*SKb>aa#{)M?YZyiL~2? zL?#~tD5UYgoEV8r9kfeew| zbLf15U`iq1db&`c-2$CU8wGk+@@>HRJ#(p$eCOlFHbXxX=t8qVH$XX@Kw>8%I!U>oP#;XuC`&(Kal zeQB)sWQf9S?{aGInpOIOTcdBL99fR96OK9#;gXR*LpVXgyZWv`{7cUn&b>!qfz(RU`2b^DX4RM*XhL^-hk1`_KfP2#@W@N=diu&QIyi& zbsTy{j(3c^hZfSD5A_t~D6(^yC2*3%b4ua(MZ44hO^rfLpip z&z(M|U+W!EF|TU@`fy&?`zU>07fomUI;6IDl|(t5i*d&oNzcF2pL> z27zaC{Bfv5sF~@XAI$jJ_#wc*AuT#n!jqdv19QCewl#A+;>^>ecC-bncAqH~CM}pY z6XC7;9E3yA&n7)*a6CPBKEe)@F@FpmhIp285#ly_CL1o8wgi}4^%HV5&lxA6tV^P6 zQ1hiz)|8uc{n(R%8EkNTz0~2TAamgO2uiz_SHQ;8RwDdZ@A^^R>zuqyxf3*F=;tVF zYY}rO!DyOfN!TLcOKo1H8pFNl=O5hM!U9!cDscT1UrL{}#1>$$?G-UTk>`SY#qfou1;nbx|pe^OQhE>5YeuqFGYWFrID;wy32fER0t+aaN z6Nccj$IWSZi1Wqi(Od~`cro8`xZFH!d}R}TF3`K$hG7G72Tj#w9Y#z8^p&J-^;Qj; z0m}XfuIE-_+BN%$#f&MI9-g6+oP=4(|gC(svscLrYc+NM#f#&vSsLg?{sbXlZ z11*($9`8V3&*HSR9q7zS3|;C#UDFx5)q$!~3_a#RQ$q~B>Ok+;GW3Z9J&GfO!6YBN zLk}h=FceL3J$ZIKq7SAzfz*6xrhyLh*w9^iGY!sBE~sp#!<@9+&Bc{N>0}4`TlM0~ z7Fz8u;=_M!Ow|=jL<@qT9HhcMP0TJcAZH&<^))l{4vj2fB3N3fCOE&w;+Ii|KRe z?*eV1&Z7G&+k2Egk7hM9&nvtSk9o3k9vvsphuU@K#ld;R|KS3cH>GV)CBEV)&{n!> zVwG`74=#t$CP`DhbO_z8An#$G(Xg{05NNH}_LKp7+)3LR9Zd`987J-aXc?fr0uh0}Ix%i3c4Q8ZqlwRBDW#lfQ~2tNk5c8~kh%Eh!oY{#|qnDt%d z61vQRQf=O<<9f7x87+l3E~~Sa(OQ96YgAM%qdNrJ>OEsr|EiPeUV*lFFB~-p(8B_K zs09vat~!O@aG*<@U|G?@BUN3lJ@9@&$2rhlGp1E7r;VdHZ7VffhgD_h-c|+isH~ue z1wxBvjKGE9dxIHyuWL>v1$$7=Ww|YHwf3z8DmrlS4VC`+BOH`HEu1<;-h$! z{vPgStR>e04DB+`7<+HkTKba%b=So7b@Ug3*3yVzOkYobcc6V!OXyrWdmQImOFnFh zHqbT)x~=7rstxqLKwRrxRp(Rbc&6OoHTvF97ZRo?{?>ZSu(!C7`U|wd`}WAubP*+- zw68{%0UD;#z~#498|egr_IPg%zgcxL*$#9?{M_P;=?n)NIqe;!t#Ke<+lPQQI?z96 z-j6-+RStA6#`a>m#eu>C{mOwXfu3-n$pXFLKn=q<-?LhyCuW(&SaR)lK>YJ)UHFS*wojC$~2ihgj7P`pg1?86lL8hu=`n6O(iA!Hg<=8}DM{@;I z7Q}V5TOgJRH`3;@>mT*xwf}nfTp3bp|Mhf|KwG_6wuY*&r*jSHQyRLY3~%~vXwqBuC2b2o|vkjIf2INn`ziI1(nqft-h6R5=hnTHhNY;-ult4 z)welT*N570SY5YKB_B7So|l;KRoqSk1X@RX8)xZv&_V|qIb)W7Cv6jGm$7B!#Ok|f z?+nhj%eZyqfz@}@_cIwR-~?2QsAe^)G3MKs=`xBJB|c(UW73s=k*ZvsAvo z0jE{pM{^zM%mEv#AEfsk=8(6%t`UBeQK+Q9E)_g?u zhpM!RqwlQwEA2j9K`#UjG(V%a9H`Ozbj{ys+Yu_wUGz%LKWWU73R-mFUuynM>mBIR z17rGE^mhmP)r3!KzNY#`OsV?iTWS$#m+|`vCGcuZR%vwc_?Z43EqBtcFFnxwp5Abv zrr5u0_R+~l2^aF3`)V}p#G@J7WjsIg-YU2DzCi2f`Kkj=k5;`{r41ZaLOxCHEp{2a zxA1FfH?hlLizT3)=urN9bf7k596ZT*rgw63yJn|>@qTj;1j zZEdx-Z7D-od&Uf`t#--%_Db3n-eL7gvq2kw0_VHJ z`vL6o25puDtsKeFLIu$^!B6xCZMg$=2Ip!G+75xX(ER#ujYjPy1<5{Vp!TXj>*%z^ z!Lch**{XdL?D))t+gYy9V(4(9eGvlD9zc667NOZwCbNRmvz_!$MiOB zhd^tobjFR9qqU7EbJ|+k*>H31814O26!dN1hik`c8&743ODLhq+V&hYho)#Z=b#sB zr)f_q$a`bm{WMeioj_~7_tupF`n{8O>#Y0fK7(4+$< zR^uYfX_Aj_EBdr{o_3;~VebL-RqX;TBan<=-9qhV1$k?lgLOw}_d3w3cqyRAv-!qq zbcFVd1O3Z&KcII6+D(VM%R%|#3NCLqbqG{%^Xfqv%OFvdy zERZVwIPF@2RNIf&?iNV#T&6wb zl-@eeCpxY?%HJM0k4hfmQOQF*4yR~eO1?efx3RVF1=>o_HqF&+Ew+l;Y^BSld}}P% zk`B~eUsrdU_J}~2Q^W8t-5G7SKJH5v&K2y`rWS+`qI8$pD zh+Cx9ovCdRXpfg$bhdVtKn_labfAxYcHKqUao1P|H)(H3nwo!`w1?I( zmp#NIy-B;Ii=p+@T(Yumv-Y$DHB3Ly+@gIg&=wjueRbVdZQxp_+(1|3zZ|<llLmbe&swm3FH@dx&>S z+qKsPVwr!XV!QT{lg9FSjW%Yz;=;AQM%(K^ET7kEUkkLB&YZZh?)o0Gv|~T${d1Yi zIyyzuX#cdx29;I{f9L*bGn_P!InSZosa*vwM>xVBu%yNChhMElJ?!yqkT7NUpr~s zzMC}n1>6&=F5nVpNOUsNLXx%)U&DF0?k0^>*pgdd-cPsWpbyKQsQY;i8j5}DtvTrY z`uhpj!<>Az1MjEXbI{n*I?o+B=$mAn=dK)73H|wt9Q5$iJ$1j#L7SS~bYBj-2_trY z4*DSca$O#JX!y%@59HGRGyV^C59Xlf>ff$=NFbv`wf14HT3WjY+Vp_BhqVTQRNA9j zsvzyr9%)a2i$;e8`3~66Cvg1SDh|IK#o+;cIee#?Q`2MjkDr889jA(nf3}uG#$-cR zeLk-67lMP1(;U8I#{YehhBF<;{0U*tQr>9DmYAiqag|L+E**Ifle`Kua1iJHH_Fm+ z%EO$Qr_14gw&ZGSV*GrBd=8iof1Em{pay$Ft+BD6f*%^`FL+ zXZX23>qQ2hz-uG;TGk{Uuhq3&w{fU}TWI(MlPQhaT=UBj&r03(!a?;<*BHj%g%Q!| zpXd_<=edkgZD;?6CL@k_7o<0qj9|9M~dZ&3DEtzmqmc?H6>+>!P9Dcx;FDzzTN4}--u%+( z44H%cU)N;gijpyWs?MP*{V7PbPWx&Y^JX1~zY@$b(pN0)O1cc%D!JB(RPcP!=od0) z&z7E4GgRT#Y`Pq;*kSg`DEwK*NcEV)sFCW%jLy=0jM8;_XBOw$E%o_j8JEH%sL^XE z1^*Wh>Z8%^qdBhlJfw5{PX^-^JyU9QubV?9CyleY6eTB09(cqJkqQ^Nhw!c2dt^jd zPBdzlab$e96sFHf5%4amh5t62i{sEs!qbELyXX{Y^$zr*PPbr&X4}X#I$aLDAsnD* zgp%8p<TId~4_nmj3e(jMeK86{dSOUam(LQ`0};+Dy!4SBsb5J;XIRX00pc$DJiwHP^yOSHj^nt}12w}q z?h^UoT4j4%r5=ruRk^ZZpdl>pBtMUHty0J^-;SVA?TM-(fGhK8J;`kPVl*`;S z+9?wCv`EzBGM8_WImn}yT_gV9$ZcF9bAj<19c*&yX82I?Km5roQbz!RBcy!Tj_cJXdeCt(vh-4iR5sfpu#`G^K8;6JEwZa z4O%PfMWOyt@$DEdjaJIIC=8FjPRa3%A1A%Rp-!_!eu^e$@d~5S3Fs>w8k_5>a$S%4 zqLB(2pXK)dg|d)O?{&+rGO7=ibX_N{+a`6mM_Qy(e_WIQ3#PF5RL`h!zZUvRr&Y0h ztMfeo36XgbpT;yl!>rdx#UGxM?MciC(cxRLA{$Ph?{+c0D&=3$iaH%6qu(i#$*F2| zvZKJGqgIe?Z|^^LxW@&(#J5&B+$*JTZ^~m%0!F7R>j*Oye?J*&^|(6dRW$p@i;$+# zqZ9Rdot~P=E!t%=&7%|l8&6I>wl5*q|27H+-br)gKB)(HWjo_YO1bL%0K`Teza^$VVJ;MZWt>Dlq&nNM< zaX)@b@p}@y`P@8&(2ZNF9Pf+JkGr4jV{4Ugf`l_9Y?tsb36GI*nS`eyEW<5E&b3y; z3nbhk;Z+E+jv=h1UrYQ3xmoj##C_WTWA9x6^>C6u5yV zZ9`JpkcK4Oq$%8#B;1CkB%%4gZ|$?^oEgc+q~yQ%{{J;-&)#dl)?RDvwbx#IpK~5; z4dXWC-MH0p67g2t5tUO&+0`vjdwY5@GVTect-Z2)d$4r?I}o<{1j60wWr;8IJ=nTW zJ%O+m_jGyNuU>BZoswQIRF8MQ3tuSx;>P3n?j7T+C4M11ji(T2cuLXFSm(R6^Gm8* zYCSCBHkIvpN-g%YVvR$j)kPgN}GLY#ZnA@#|!E-Px?Ds>-681a|a*H|6?f9cqP@R9Yqtv-oA zuevUJll8n>i*QKriD1;Vst@5W&<@+bLE5kL-MW2;6|vqvk7HTd`A%!6|C#ykMBVHA z--|NrH)7p<(MM6{hbvB5NxYZj;|Os_%4)ZMhFTGSuadW*V>A$^iId0clOL~C`DKn(5uK6DB^JdWFKEbwIt+=q&^SpXr z8AtI42&4WlbS}2KRojv-ywLqU%eHy?tmzsHxDAKi;yG?D48GN~*V@){%oD|(q7w-3 zDm&%*gqPeuZhdv@pLp)Y*zZAj_tN`3Pa^&$&$OSC^Q3hP?xNi6KhgUH!nLgoKi>Oy z2)DNWo#(iJ{pNr0ob-RP>^lfwsQ-cIY4H%A@>j#Zc*=i%!%q^%VBae|!c{`YD1_np1qSJjHG-unc;({rak?(OhIFMCRLc>3Ux z-s$1!z9hMis_B|uwaPlD=6?0C|82`}^`?aKQO~ElE>}@cyo{lifrc(hLZ<(2Z`5-V zzO5(x&n)~D;Wqn_?A zOHF!yZ_U-d3eTQ-JAHe7duD!XabyL^$dZ?C<@*Iw3e;RhtQR&|u!e8q=-r#zc6 zuloSM)3>wi8hA5ymJxEwvlMktc}6PlS4rRZ7k(VAEy5}MNhyEQ!&88h$o-7(J3@2H z`Hy|ig8P>Gp$%!+I?w;Fc6?9gZvW2(!(Yp+@mai+=(BiFu^QMy)A~NN{crr$7U#k# z|GA*p-m=cVuj4*=9p+Aj_m9DyA=S6_C;n6ZfySTv4@s>fkT%$mRT*Oo=CB^NJ3nSsWa zyved(RqlWeY237;%qm-g8)Q~l)3%o&Kh$!|FuyFpc2n6l;r_h>sq_6?<<(`+TD)Jd zz~Y=;V12Tz6?6Y^&)%}6|GAz7%6l%u{Pq4_(+y>Ny_scCslDD8>SxN@y^n+D3uM&o zUdm)t+KhU?*n4|f(mS>0E_iMKW&0<~4tcNdzZYTGlD{ZBWYwajx21TMrH z)Qi5ZUGYxqLRq1nS3lW$Kl=J8&XcOGKiRsXY_)K0wZuPB_9tupHn3X8zS?TI@E_5p zck^?=>UiG^fmSJb1zP^L)h#V=llYLt_gUo8KH$@3o%DVfXKp9GCvb+vTHjOmmW?i% zF5hR7YjJ5Og|O9=m-0z}-`2k>Pg!?v?NuqOZpp*`2g;V${JQ)Glvx{~miB`tU)*?I z#VU(Zbc0}fgN*$K!Lt>ZM68d)bx+l~0tN*LYs#1KwMghAXYIzrfAI4*!>~y0~(u|HoH8 z7kDr5`GrdQ%NDJ#e84&ny5i}wTbEv2+2_BnFNH_LKil)1_es$VPnLZIx6u0h|9<)L z$`1cc8+KdNLO=IccryKuS01-A{okmp@H}$)cO?Apl_!KI6`uDlc(L+noJRiwWfo$j z$F1v8@&V7gFTL9L06z5VtE%v<2fRYGWwq6LMX>6G#r5li#hLiL8pCa^k4kH7XG7IT zCHJF3pFa}%JnjAK)`6fr0O=$3E{#Y3Ef^Ud*t%n$h~*LA6I?aZs)BX_gCE~ zy#A83@VxhN;P7dwb==yy^>X#Rw{FSR>P3;&7rmb>dlD@?fHE(7`?mfA+97Vot#7w} zuj<9J>6+)Op7!qV_-WOn(&pEs&6mAjTT@m2vUkany6V3d_;&=J^#7=HV|9hEXWr$i z0u*?>vLbL^$53@eU}WAKtLp+>YpC-XQde|;!jn4s@e*?b=mFE43xdS-itcFULCRS zTl1ajcHi`Q16a!@S3h5El|4CsHD>qH&YxCOr@iF;SCQ}^f^J>b4=t{eKeV`F{v1-e zqvqEVK97(7U0)Lst@u1{z0K4_eH_JJpI!l1Hr!l84eZD)9TJWz;uIcwEAh67~gtUjIT(hj;f< ztT^5~F0#~d-;I$MYfk#!b;-*$I|Ju6s^B4!YL4B)*e|Xu3o@(;KI{7`?#kWlTU5Cq zct~119`lHl{c?&TK*KjGVr8)K)?+S=eL-z^C5MVVT4uW#=fj4se{VNY;xV8w;C zWqSi$(WZU(Ty{TtzXiQNASEC0eXQz!^?>hBt7_H50(sb1GaojC?*k1B5ncd&Zk2t$ z=9k`2Lnm}uJ`Z)fPu4h}hZ;T_Xt?Ta!KZz@FMS8XJvgy^(wD%kHq8Aik0ZVl@h5#e zk$lp}v&Sca?Kz$&fx|hl>pt1}K#;ob5rmgEd?VQ5{ju*?h%fE*%sb@sb(YUN?%^mV z18-jvoHwK%>X|=}Wi}vOv8WH>AS@-;eZ#y%W#3mSN3Ra z5N|(SUWX?<)w>ZksrwPOs_!6NuPQ=8b%nYFVYli>xK&+)aGM%NxI?`K;gI?~!Z)Y| z^Mlx1G$1_Jx&q;Ps~_PN);@%rtwZxeu=jt4_>jdm-++foQQmqRAP20^%rD1Rdwz!S zsPz)U8?0X!PK1wIrw~qg z)Hy+Qlcx^hyFKA^mZ^`Z@2zOW9`vR8jc~WVFWiVH7f&KwuD*cqQuVNeJr^+k(DFun zb9nVdjkuA06~ZnFuaIhTc1bxte0`i$8ed1T|SOw%J)_E zlZ!AH5dVRnp|?!RNVr_W4hg#?j7fM*!n-7VM8ZeQ=A*|SNZcD>3%&p$%O&0=VYfhH z5Pq;Kgx{A? zT_`O`_>hF(*N{t=TYtaerbf22xtSciPQp7Sd`QCYOSrjJawWV|!iOaMzJ&eWUFQyX zhtA!J-$DHC#@`vop;cZ&& z=j7GL)l#buJMR#z| zt1oLRJ6!gAWxro`N7*A~KPr2rY*FCCz+hlc;Ddob4m=U~Zs6Yn{~35wd8+)~<=-y< zdAYA*S;c{hcUFA1;>#5;S9mL{EB92!D|3}^t2|kGUe&>>bE>yjUsrv!`h(T?RXd(thJgP#xnb?{rkrSrPx z4a`f=d;h$T&HK{4Z_WGey#JV2fpa8FmBSM?4>OYt{?B9&-MJs zPY`Zc_;Z9?g1+hsf4iDtT*B27UMJzI zR>G?!{8bC%->qZV8e+I|O9#SFw{Jn%ba_9*^TL+ewy^HkB;0h_ zO^C0M@V4%EBmRx<_ab!Slo>BPqCA7-J3#{oFNRmpf;3bhehDT*b4dcK+cvST!(eSgYPn5gm69j@j${>A>4qr zJ&?gQ2(LhU9=roEf^ZYsfM*!BJ$Qz@4Pg{D;N3;&!Mbrd;&FsHXGaY@9f^?d;=K~_ z354*~s}6)WVeRqYu6z&R#}RsPH=a+}e*hs)tW+Pu52~vXeh3opQMW_pJ?bQ$8TR1D z`yj%PsND!Zigz1()E)Txi3c~+--PgEczdQt-HG=}dSF3D5&j|Y@?aH8Ap8Q}w`IZC zxgYU|@V+8=h^>PNebyL4zr}YU*IS2BrU4<|#c$;hKOdn-g{=w1mm&1171j~NS0V&o ztVx8ctm_e8V%>;vwe@y{&DJ!+7V8+o%dK}Hyux}H!mZZL2>Yz}Alzf!g76L2tqAv8 z#}V$s>S(EJ5#prSx()GRgdTOB^&x~&>mikh@83NA4PM zD~6|0PO8s=UjI$~t$JGh576ln>vHSu);D4CzhoWqT;|>29q?woH+kRd-Q#=K=l8Go z|DOL3{GapxH~-GEw+4Pc@WsH2^2YME^3COa<-5vHmETi-fBD{u8!IlW{BdP-Rd3Zj zRexFac-6~Q9=y%6wR(Ncl{H&yuBn*_{$`$U%K0*{rJ%=Z`9239V&-3MEgt5?zhc-0 z7ZHYokHWvjwePxsiC_Vu)Z*Gd#u<2N-FGf0thn5tEt_3Vzo(+O+%-4_DQ)jZIQc4u zEv`-C+>-yo67mf}{zB>i-rT|z&m-`zBis?V41C3_D8W-NX0aFZ&x;w%Z-RI+d%c*0 zIIG29J2<}qm|u>+EAY1w>&zy|!IhZvo6%PX{yOp3g}-j-j2`^;g3DX*w-tZ<=Tkp` z=aIkv*2whd)fat_smnZ{Q|r8+Q*XfEq_@Yq-FvIG-}j*P8{Z>V#Qzm*+`rf}>0N@q zQ=YGv_gG6R9z^_~Ji97Sc@kB-y;oJUEp^4F*zj<7GB=)zPIjfDxmb3f!&Gm zRAzG1$nbEaMGCbK4@+bhGNQ3WU;1z~m5lc$Q;F@-u|(H_Xf_(lC$c$K(KSjsn-kdF zIwuBe=Yp=A3)tL7=umcYTP7Os&1S~BqOk)BA_4H0M80<-l_HWmqWJ?hbRfMek;|kG zV+=qz9ZlKru52Qj$7l{G_eb-|OnNYp%i+h)?am}}Y^djGGMBeugNbN1cAz62XXhQc zTw-h_B{W0dc3v@X4hBTP0MHgxMy!bH%qgKE$Tb(VjnFxV1^8)^bn;wCMpW-aI(A(| zZ3p3^BdG+UeLd-ku|(ER?VLzV2(&AcN+n{X6w34*PNef&qv?1mk!6*x%-DD|tK&U~ zCLk;M$s(9;GM|ys+dxy)%1@3bBC2cf!YekdA0AF+V$oDCqT(WoV`#rGpBQ7&h}sR_ zwKUH`pvW+xnxKdk5p=Hdtx~>}%x#1wH?1A!@0^4M{IrBc9wg5u8b-J&F70d@9UksT zXVQ~nnTgyGhT3#pv!-^l>f4gdOpN1=Zvb7Ln7k&Mnt;eAvq<)JCxyt->?BeoQF952 zn&%+V>F{pRJ+`Q8k~wf?Fh3DbW_D#V`CWQ_;jTE?2z5n&CO(l$Y*JggRBzw5o}s?}9yOHNJ=ClAC-TEo z9=UNSl-;}f6sQKFnixyx26t{#gOfS%yRmNoJ^(12iNx@*%2NmjF~i5AYF8o}f5TYH zPW9z>=Mq^vfrgw|cVaX;kum_g)$V9Ms``_$Y$lf(%{RKK(KwXI<#%8(qnYejWB(wN z9r5TmltrTf4<@pQld(juQQ9eV*PqBo1=2N<%V)+q@_38i$V5INuxL@LI~jFUjcKI> zQY`s7Q%ZgZ6M6aFlT61mM{>I+()r|Af(XPpG}ka22U3ad5jA)yr6awl0iC6%#*X-i z8q38p*;I0b)2X;(e53$yW_zx2OCp`fCSxj|iIHc0>0CaV#+ncpo(NyNCbC(~*r5YZ zs&R$2Msy>&J(QugRDHQ!iBVgB45U+{zt!$^ig_Jz<{O2IatX8*OT^W9ERo9hCh`z~ zxOCH(yC#tx$>b6}X-b9x?ulm8m`ugMzVv9O7}Ar?X0mQj&(VA$9Z$r;oc-xcE}x9$ zOm^b*S^FW!nwnHnrb2E`D26pY-klkXCeyOsV4`3}*0?9nkjFlD4|NO+%4EDV^?IXN zmf|WWZ;afNO+rq&$b%?x6*rN?IpI<&#f7kk(+QK6RA!pn+^^ScSd6e!3ev`KsLEQnWpNSo!6a6 zB`{G6y1vkV$0!EG&LHA_Ij$irIJ*Ijpse$=IxaLecXnSomYRqs1}8>L!DJ#gM-Q^x zpRovVJaaxMJ;xYl_q8hl1(ZCTC}GB|f{-RiY}bJ#STdANj`gJDiW9sq4pB^wCKHhF zxRQwv(v4w(R@%-nDT?VJXdi>>)%m(fOyxrppn9TU*l_apM>+R$y_pF##HxKcvUopM zF92jBKsGyKP>nh0q5~O-U@4%F%(OG}PIOEce;stP*ma{=Q!oZGRw2|hX9lu+4q$c+ za=Ag4*noxgM`0;(5xz-=Rd3Rauqs;|Ic8!&1ZZl}=$i*x5>s^sPprw+1TM%NWhr!#r# z7y)U%OVp7EM`F}=kv10qJ-Sk{f^3x-vC<-CIGL8+nA5-1n8-R%P8Hpx8wxR>4cw2S z&hTV0)ywBlMk_7phU`t`U^7Z;lp{w|&=;Bl9jR32NI$ZZSc-%u+Q!vUtn7BumNi!< z6^!s-M}+$lC0<5gc5=4_%^fe~a1%RO49*(uEQLm?ekG>0XrU$}VqO;@B3P0l*_@P6 z#)zQg4~}Eg<`l?N#0t%jGP)I+_k|?5J2*Kul1a&CSxNv@$To&x0WfOXVgLQuyC>7S z-K#RmG_2H}6EIDrnZ!}2cSjL|%aD-$Qer5YMJok~7Z{r*`Q|E6P}YS4EUkASQhtkV z+hQk7El_BX3I%hmkOrfv*0Tag!ZU(-n$8zN$K6GCWRr(se%TC%tZXwbn;_#_DD&LNPdO4g}Me)I&}o~LJr$86{%?8Ig;eI%>Mm} ztdUq#q9~0n3pT$R%_gB*Q@V0S%)n^MSV|g7)L>*|1=CZzICsayNGch#I{?Lsb5XY# zK;J{U6qe15C$f3n8z~C@L*TkQDU4||GiL$Kl5Bw86n8eBEMJ*fm&z(U=Q?0&eUY(SocF=R5`u%Ro1xTa(( zKY=*4T^DpV<5}BUF=>`7$i5qBv!MtCDw1H*IP54$r6>o1v6E7mFalmi>MUmyU1(w; z8^;Ql>cf6Bo9JT0GItrtgZl!p_qb+kt|hrOtC}QMzHvkamF-_ zRmcAQ*#sP%0LBTpV_ z2n4b^|@NmxVihDZg`!((Zg|Dx*4*Bg!saOF(nCr+O2A;yQM|m2bq+%F=5qX50 zY8yMc#W|`X+ku7mB=ZNH!u`?7k%TN>YE-Y@SjR+2(Pma0DCjC)Sc24+iKHt_jgx8gRL*7-EMnuZwB=SXqGRHy#Bxr)85RtQ_(Ux4 zWKa(jTA>OkBuo`f9oPd0Tv;4xHFUV8uv8PRxrxY)5u<4m>y zw#Ngj-xzkruU4wqUV*zt{K~J=ba8g!;6xEC!|)O`O2M-SP+DS6{7Vb%l0gbx2jRR? zgA?Q9SoX0i!IUPzb`kfD!o@S1!H+0({BDcpu!6=DM+ZjL?77yPitab-uy$@^)i|qz zgn^N_z{y5$N2-zLGwab_*pbPk7`Hw4#(uQtJ#$dn##SBCj%^v2-l*7?nixyP`yaan zEvK-+AqOr`j}3+(m#9a(8a)EVEl@_?>paatZC1G!e*yL;kIpI>D=h@ylz6P^34^k8 z@Udf2d;ef3;hfFs^4h0uI`7WMG2iG}B7`{7P2OEtD}e}{SGHpS{1kT%^(IR9$uV4C z`T$leuKs7@;}F=CYc#ex3&TsGj{wcqgBv+e4IG4?koLrrlfmu|4g*%97YN)`&=z8p z!HiY01A;Z@u@+a^P)m~Hp{)Q(#tY7Iu0O5}8j7xD&S?ScDfl|lzB?s}jMM-mzq%q~}24xu$7ztH0g(t`-Q+x=AixQ6~ zvj*ncEC>iPXR=H~k~U%_2@cM13-&T7P7)VGcF`!vK`9r5aT+og7#Qhe5^3$oTjgim z@N!!sy&s)`GIk6bO#)!qWb-*%jB0l_sWKyP!7QK)AUBlhI*^DRRJqA?3~V@fCXqCU zk&WCj6x<%FpmxoQ&i=8uU;_@j)g}&PwUAxB@Z`2dM-r*C>i1R7Mhli&qf7UlRm1M` zwqA6$PPwAy3fW`h*!iZlf>or5?X=yNIQ;qyC!R{-XazxcCr=Y(vKEuBWX;x|($0jG z-k!SS3J*1`{n*(f=j%1Ir3@?BbTn+FWsZJ~*3H$;b?aso5iy@o{ zq`|@gOiyz-A*XrpU)fuBeOj#g3Wqi_R40`q4YN)J4z9;qvHLgVQi;&9KakyPf)e7gVFuC42AP@?r;ChiJ$#9*fyDJ?6O&9Qj+iJ438iqiz`j|gZ0C)0>%(MdU(IZIy7Y3Iu$ap= zmrJ#KJPxM<_#+;@40)ihjf85_UAs0O97$&$ehp+blZ=pe0tU5YTbP9#FC}0S zx@g3v{47$K3>$Sv4><>gn3VPf8XA-noTMhL^*^stxqxz_&HHn_zT<)ep@Q>{_Pber zTtysv+V;ej`G`uk4C`gsxWQW|p|v9H4Ql z(^7GuAhnaQkHE2(V$(K|b~3c>&ogeVjhq|`fY>(<$cUH&fg#a1h9yNe?7$654n%Le zJ4P@}2Z-q+t~>{lFo*YAkrg~%Mm>?~jc^-{fdRy@UvCN>3jr~0orr4}OAqX|91830 zj6QEj62RKsxwJ^OzWp_LU?PuOd1?3EC38Z77dK0Ha@~b$Rs8(=K8z%{=wlCwv!s3c zAZctK3vhjYBFQm1N|7i;5&L8~;WAlCW0-P2rRgf5?GrqBaRJy%;rv6_GTRzSPTt_bBnr?Rniv-X$OTwcuwoz}$S9aHI++t7 zw^-W~i8y>YM^VOBkT?Z9RJf(~mf_(ccoEGdHIrn2S=Etp4h9El6h}cTUSJo#=qnk3 z^BB?v?}E5sX(-OH-HU_p9oyCWlWCsEX%efkqLdaKTK$Qvxg4WoLs;)@IIMAIlO>?E z94o7+@tPJOn39D!S60~~6d-zEHVfRRSzagx%~yzvpy>->ofEiB1{B}bO7jOQ7MuD^mf$=V zfZ0%vo=y;6VS=R&HI&74bvcdi4>+q0X>s6`;9%A^vo}6(f~E{wAMr!Qd}co z>r*?CbKPQ93Et1OGk}X7gC@rPR6F4e1gte<0tJBZYxOiV+FaCv&*i}Yw1~SQxGhgR zN{^!(*EtY{b{fXKv^kZ9V-NF4@4E~`3whj%<9>qd#%5*CP+!{dFTz_i zt8&zKn-;nvrD^tH>ENvip}d$ug}pDKSzb(a=OPZ1MM}#?pI&GkfnL!Owp>t`T8&D1 zM^)NDb6*Ym)Dc=^tL7R_HqHidwcPdKgreDvn=+`@$OR3d{IFx!I!8HmC;Kz7t5BNv z4F>aZAPXOVen*}^IDbjTHPShQi|e+x60vdv{_FQqO*h7~FK#jCW=Ltana1Yki1-oA z;+oSBE=qktr!K(IiMweAw9T)tcv6rzmB%m3U(U2NK%>x!ceC4#t^B3U6lPO zfjw_nyrZ+;d)I7qv8ZPI9hm?_i!>#J3GV)Ap>B4rzBTC?AP~CK0c=sSVM0 zgQzJ>K$O=KP<}QDq;a=n>*a!Qxbvt)Cr08fM9yX=yByDryYoCu<`B-N=BvyXr!l<{ zI%!G>mJJ7BuOklNs5`e{Av^ikm;)N|YdCN&MuoGeoC9Z%kRUA8GCJpqy9)?PJBC*= z+?5)4T4AH&F3hQ(qd20E&v9{CraZT!62Szruh{0qEOV#Py}mY^Q&*?4krG=J9T%=y z;*;Uj?CGg#)FR4<(xZcT6Nfs2!4flOt&n+!i3GqPQ7r` zAg4w#E>{u{`r)t;PAV5{q7;yWM>7@2U~#3`RW4qTXnNFL8RQBs0=S+m%i;EW34qO+ z4Ff1ql)|jQjX_s7=bg<^=h}qSDzblhe?n78JWWuVbU5Y2*oL0xsd&zHPMvdI=C+Tn zbLQ;YCUn6~qUS?Sj%?5;tvG{_$=VOu!Z>7;L%V!VZg$ZY4Q6j`b>shwoa4 zhw}%LQlrT1Ry}-xR?8%B^2&*pUi-|c3&h~GIk?GES{Ncy3M!U4Oee4cM+Jsk@>Hfa zv~)D4AJjZ6-AExTINuw4%%Q>SqF7z6k-4H3wBh5*DVa2`92jGG1QflHhtA_@u;L+ z7K9z1rlUpsOJMzvv(Q#jLu@61VO zZ9 z@nNl(;*#{Yj`)J6(h_Ef@X7#|LV{&6| zKa&AUm0Zu*cz)7=T=o=)jTX8yF_9jaK1C)#k@S^j((WmU=2>a)qUCUoC*TXliuSoV z^It(5lKw6TH@9+4g91;2&Q^Bj>2kMRTwxc3wr*+O)M!uNxhfl90)^=e#q1~8&(H@s zaE1ol{kV%>v8j1@IHr|}NNN|3UGgen);ykKZ-WrQXzI@7$w+f`a|bkl(o2S150YyL zItI;xyg?jzKmaj86ErEQq8FL4J-!OXC0ynyL+FfM za5H4nW;1GQ9mNI;Do3=9(yBo2HrmJCbjs#C_S1sMYq`)$Y%89sr%gIBE-{jBU?Oi^ zHH;#YKeXF3`0dACRX!JFm`#VD>^&h$W7uX$S~#F>M==Ar>aZNFKodo?CMq;E3Gow~ zL>|&=;%sw!=7?4|&;n4G#Eny)(YXDaI4UK?V8b1o(d1FV&YeC)Pp_Q^rsIi7F^1^b z)eF1HE6gOl^x9w|BFzm>j21O-r=@v2?o745!j5}#RvzeEV4$5T$1k0eN^5>uHK<0A z2`@$WSzO={`1Wf-DFdDu1YL_Y4RPfa#ann!$+C^;_DQBNPwJaE?njdmhWePdhOhodr z25J{l;r$eavwoG62RivS3&GH3-4T>5dE*7Vk#XKK?nq7lRQEa^$JOZ(Asn|nK;}zeP*c#X_BNcHAls%M25Sh3CcxJ;En<#SjQybC4qF9 zlx~ju{376f%1heykf&3gS#l_DOc^y2#SwWSRbuGS+7LeiIpvhn9TcZY1Z)f)VA4@u zHkW7?lmP8o&=jZ1E6o5cq)sV3D*&f=qUey-fusIhU>4`wIp)gCogoj+ovvEEpkLuJfjDg$NT1P-1`xINo=Mx5 zmr?A(9WK3@^sxJW>p)hFRmpbxCC0MTly?T`o3N&&c_)XihY5|n7c6kl2f|yBFPbc* zEDmt>_3J{Z;$HZAi9+o{oKv!pP*+}$w>wZ$sE6C%$T9uyKu#1nqtgBuat82b&$rlp_5&J696fdP zqXko|TiT5w_b_saA&$!Mj=_W)N7)R%J~W1S8twMsFM(7JFOYq;{50?zL+@;D02sM3 zLH(&uyx)E#pXum@$xbR52;mG~K% zp!S@(g$hzejuk_bov*D8Qg9qp*@OCd zbpRM@Q9J_N2mzG`Ut5dr(mGBNj-#bCs9;aMVRtDb>r9M@m_-$J{Vi{X**lXUZi-Ib|sWxLby)n+8p(I+CD57ib&> zZKI%to-3G=b5hv!c4nD5oy^ZIqi5G}HaZ!p+hgHc; zoKxNnj*dj0an7_9)0cV%n^2pxIedU%4EXopkLpt^Q`JTd2zS0+YOWD!m|Jo&KX?9i z^~^}9>);6h7E$y~DN*MPAw^p6LS7mgD=Jv3!QIdt9nfjrLeXf^;-@8S6xi=aEy@zd z%l0^W%9TzPW2-JVZ94P7w60rB7u9ypLA7cR`e6_IMXR1+d0BP(Re{U&0kp&M$FUII z>@GUjTDSqjPogk~rP)OkHeg*R!c^{Y#P#A3#=v#coK|7v%&r->*XOX1-z+@%i0|S? z)NnIqgKb-=fVMGIjX^tsUKGCKFo^$p@P_S9eDz{4>h>T#fH;ZVhuC(!(7YSa9e@p> zL_gx&k;kw@YV}}r3W~4?CGcuZ{LNLq8?CYRE|eHRY%gl}O6gq^(wf+XUbmy%AW99O zC-$jZRLeA7qp$}!1v;SY$I%a$O|78RwPXq@#*!SRv63c*(vFQq#YOvyHV#!~Mjb&7 zibNP~Qap4YV|G1SU~1}{Y@V|%Y=?$jT&u%qazvPslDR=NaC;OId;k`Le)aN*bZb~z zj360#0391qpwVNHp{)@|nj)gjvaqzPaiJj?79%N)+Bv(N9$*wX?8mM5+<2)iXG^j; zdZFk#LP|4}7|^U#^JkM>T}qP1&^L`tJpYW}ky)%U2CSi#s({Z7C9zsVG&xnM?Z}Qv z2nR7B%cy;{X3&-f1;S`bPMFzdr=CWoG`FWj2X&-wLsR)Rx3I;n0D8m#j|rBv!}K(# zl&~LT5F05Pg;d}nJLG_lRgFkdu#ZCE?q%_uI*6gsv@r^H5Gga`w<4}tK+QsXejIP| z*07857JuC}hpknsmT?M)o3L6)G-@-JFhuSX<0&oC2U+*^6)W=^R zR4IDJg2kQ7c%eIPdo?=6C8^Nr4mm&rfl7so02KqbPu#v~_2uwHO(*~B1KExa+4LxA z=b)<>MT0h{Zt)ghuO<{69phYZN^@1>aLsC@_kSGxTq_n~R1=zrM?eIlu_Qp>JsgponBq8AfI3;z*}G7D9^8ZHvfWm?qK4;z)5*8wwR2MisW zN;-ZL=@EC)bZCcM7;;yB||A*oy{&PSD0#ALb<3EPbvKh&TB&hJiKGo>TLW|}Ii9W3#k>)DTxs_Rst4_9 zHrxE+%yw@)OefSk?umBx=&iI7Tq(Ll^U8W{TB8G^7?%NX=N52 z5WJKdl+`;sJ$z$rVMKVg0t^F(q!8qY#At<)RM{d8M(!BGIjaF} zLbrKhOcx{S?&&eN`VHHQo?eA2(ON(H=UAd5MI3ja?3RBxTtW6nWMyI#eKbM`BhGNj_nLB&od=;uWGrIJ{|7P zzMpCfZ{x8sR&Bk~6M3`~G3_-n(q!80l9h<`F3_~jnOIbH9REu#y%fpcN|IQ6OB5ONBmL4nhS8a0ouwHdz~sG7=L`_nQ(N}U%pO0}pM zrBXcmX{8%o?G{qUm}QT8(Jj^2+Avjh5tyir5IysU?ZVm4E}A6q!Z1c8=A^UenkoKr z1I=Yc>&Md}SjLm z^Q-$_v`R6?Kp1U0XCWM_?j>xynw@gwog-$B=B8Q1&8;CR<%(_4US}zCcO{gP6=(%# z@u{n+KQGm-rzg;C?{9HkO->Hntc|$!CtP;)yu&|@5H;gU)X=^LW8!kor159gT1O}A zojP_-^C>@W;pKtN^Th~F!rOB?ZlC>NsP1V@&^=O$Na-Nx#-@3}eUCO1Sc8j;w$L2M zIn7pW$Wjuub@dvCpD7)wR{zCr*j|uTA1LskNlSTYIb4VYc3k|l8^mFv9tq7Qn6y*3 z6&IVdeGRW?ho@71j?7TD9ASqPL`sJflQo;_(G0wJyQQYy^}8QP7v`Jxh-ev@t%XR@ z{}&K(ZxEeXX-q;Y2O@Io@17#=-KtsN=AufYAoQ{ST@Z5b^2kd5fnxLc`C?~rRtxn| z8b#roC0k8RpUKYG_Pe85s512yncb8ca#WC99(k_K>7X^bTm3nf0F4>#ZBbpXhQXld zHhojTY^I3W8vN<)iq)XEQrcv5eBN45s2g9c2lu3&dt`27fa9XkZT5|)8>wxjOns9} zEGe%2ZrU%vjjjs)K-7Yy}^s7*yT>&zhx zcRSI7h?E{Z5N8K>?YWryBz<;oyJppO`o#4;@pV7t8EF%0_`cG z7|_o$f?p$(ZfSPbdS@ji!=1&70%z~3r(SujQo94IZD)b6+WAU(BU>hrFZ(}#uIQd(-%OSthart-GCKyv0Sgi{2qNV!BZ|Qt@es zT0*62mN_b0wr(Gn&C{y|)8wo=pX$gxCpwWsRm*Tct{AaCPpa{JAI8lUjy2ZcxAb<| z8d-EX)mef!#|~pZV=XT2p|D}E;q>1CpLjDi8EPJ<3oUNqi~D8E_55`V*iuUvPL*Y) zZTA6lt@tS+C{e*}ij1^@mz4}Ru12Xzaa|ph@@gKB>$os*yrfIjI1&Hc|8|+NAgULs1DTEyMDcM zgcSMv(5eayp!K{`mpVGI3y!F3fVn;y;4yu%t*EA6p=#iDN`3a9#YqHj!IWO;Ij7Tj+A6$v-ylwnjGE=G)~^jAoc51xwL@)b<&tPgwlERDK(63855U zE;2;Y={+1*dX24?Xp)htXrsCSt&$OW)Y%Gbb^*2*wFi;z#dwC0)(Z*Mkv5^@sHLWU zb#}wQ3e9u>>mEKmC;vwezD|3G=p)nylJZ`HkARc(lx{lZOpdWxC|Sk`zFzCo8cM4^ zMuF=E*R#xBoner_3+&*XAGOd8=Y1aD?kR>2fn_@gt#Zn$#e;zIl!UGDI+ST$Rq>87 zwIF(}xCR2$gR>G9$jN+D7xlr_+bj2f`ccQ+FmmJ60c?#cldC$tBpf%|3(&$lgj-Hd zeqUbLPrVKSKRWEmUFu4;{B&gp zgkRm@m0EWCGUR1UsX9t2zT}HmM`Zz1Q-5c=HSR&PJ27y#Xm^Mfa)geC<80+0#t9_X z$TV{G&W_H!tgMg}GUjoDX&0ha$21$vskfttxre0F-nj|IeGrdbwV6g|u$ch*0*;zT zVdAZ&G4#*L$jfcKVAl^Z9LAqL?dk?`R>DhmMwhF38nPXP--fBA7UzTwcoPtMX%Rhd zU;OuCQM;&EMdRxfkjJPab}tv!zp zX)9Brc?3(#k#-e{rtLBP+{0;5d^^{DnlKKd$<{bvdO3?rKQv3oP%biDz*uHKNKO67 za$5Vj`*gGtid6Q7@M)cU`#>Cav%3^M44BXV#yHdCHpml+p9;Md9 zu~O5F17e{RDQ}S4wO&jkR6Ou zh48r4ph1PA_l{;*Jd6PfJwx{JXRkpHsrW1r)fCz8s46N(eQ8r2Ih%24X*`{X829yT zmYqQ?I?kqFH(O}WJLAImUo&Ip_Wrorgt(p+J?5Gyr>8=352u+XxI^%h@volu;w5$c z@A=5LZm3@Q{a-0>SXsWXWtIC8)GcH*$iO4%-DQMMP5Z+tH1%-V!qC)XRykpzsV7j= zL&zzs+!t2!*;2hf?6HDDUFli*nW-sX7%KP7SMx1z848unw<-gc0R zbu19}u&}aoETB<7UsVQt1kShSTgXLELC<`vLV1IsnVW+R^(cJE6AVoNo$06*M1Hw{ zVQ9<>RsvN)dcHzl(h3dv6-II|@vJ{r1~PLT2+rJw5#3RxSX#$@h}TyIJPYflZb7xs z5bBR1QV~`HB8EDPghKNHZ$q#=h-#joUs(-7hM|dIL!c@&^`+3%L!qhLLK9LY7@B&N zWd&ijfuf#ZFc?rCPiP`E5kOP^20y9V;3ws$@2_Ci^!@lBI5SoO%t-oRuvU3xglItj zk|&Q@K_bc$GIEv_z|1{BinQhL;y^`c>hXH%G&J=!p;&0@>!GRJAOT>b0+DJxRke@? zX>+OaRe}Uy5n7#Zl?6PZslWG>3&(2bQ;a;pa|7j}sc(g*PI4rnsqciQJ`tMwKAJ28 zIi^kq%NrKfP4C5U%b9+nZsvhnqy; zR1Zx(BkY@cQDpN);p>aKv?ON!2KnWonTIu(AI1$DPe6HrVne+@V1=e@bjDMxIbDNR z>SmrM2tOQ2IVxCEWa_qZNNnA7gGG6tzR2=;D;d=g65(G-t6&gJmHg23DnAH?ko_zJ zz6c=@NKO4rHxWb=K@hMWlmR=?=u+ibs>*9EgiBRW>PH|{q0N*h4_ZeTo?tEJB@lfc zRncgKxX-*)r5F#*yo`7#;M0Oy5Zs_Q00{#_8@y$hF~RzJ$~GmHGKz-l5mIUc$n=ye zFC??>m|qC`%q0Ox6(&+>>a!5Ay6K+K)TbLl(|rx~7%If99w8I}cz&Bm>a`4K)?i4O zEXV2sO_tSwk;!oS%OKFG3+h_+APQT(O-QtpogG`uy2lzo^U(B8poYXnOdMOqsR2qo zfng}%aA}~7qdydyx?Q@bHUXN`6VL(EiQ-fR;FBnv@XQBojT{Tm;FTzp2`;O(i%4rr z!4w%Kf6xjzW0h61u^`3`fRviu=Xs`;rCRy8sxPiQU8VWbQ!(;{of2i~3=c8)Xnjz< z7Gw(guijG@tX9xilvL36WNiQ$!n_A$dOw$^@ zGz+RjOfVmyc9ja&P$Gr7LttJtI0+i874?p)RAQ12)>CU}5m~Bg5oetOHHGQ-5P|7? zWOm$BUJfa(uL$@<)AyF+A7rGwT#7va5hxFd;tNeb5Y(FR0Yn2~uT@{)P`@Bh20Z~C zfzfDuff*-m-LZ{YAKX?6tfx*kK+lMjPMySntOma?0F38{%j+Tcb;mkF$9ftdWzRsi zF{!C-9|Rh~a@1}B7&88h2xXsMRgU$`!eue9?$}OD9JGdsgMoM!1uFEs0W+QeXQ&!L zoGR+%>BodzB-CTbB8-KoQL&^*@p+(w8B(YkYY90)4(svxFf}I7{voIy40#f2<%BO_ z0dMHk>E{8&@Ud2^3a+#|Td4*wMqS?E#qw)(@JcNps4jvA!N&h4Q-h{XAXiW4sS}!^ zD8tAp^d*tU*uM>t2-aXgY6G$cBL>7m(|;3Oz)=V`uBL%0XnxPRIuGOL+ThBs;*f1H z$;0ewkS=O~H4rYS7*u%-0#;FJ;ESmUr8hI6a??z}4_<(%koCG_(cmJMi`5`K03jL|Bo&HJ zVp2+T0Gtb5Wsj)%r;@m%TlC>6^KQ_{u~p%Rv8FF*;t;G(AOo4V z;P2)jrkWt?36=+Z8fVxYRPhvY9fpo2fIl*4ZszKJEGg^TKYN4T;Nn`3x1ik^nf_;_ zsUUro9xvCD3b6xOSK0-_Sbd;OJe7emq61ulAzMM|aSIut=`A4fY-6Ab6d2wz^}7s+FD?Y)sdfz81~O z{5&=xbMYK4zV(_%EQtSK6k8K~oPGhuqQPRqX5{n>RB6X1=RpZmpirJR&=a!yy|^JT zk9crU_K#jX>!x4A{{V%i9t=&t3_H7?X{=+IVs+E6;D1sdtDij$pAbuK5_vD_328@I z`XwsP`f{$C)2LFx$Rsori2+?%sQHSiDG}*M)G_T%v@&0&1ZTKC?$C^1*8s$x>eDY& zW9k)V9t;|7SCxyBe20+YW+;Ks%;L~YgZ#g&!B52;I(7>+Ea6<>F$s@ru&8aCHL#Rs z#1NQi;50=71|!BYvkL!9U1=~7zyi_$LAKj(D6a~80Sd{kfEd6^gp!BwNrEEC89ETxnO6A3bn|DiR+8k#yOKQn8{Hz;UK$MTARPh+Aj#uJ2kz2{-DGwp&j zL?kq`krJYj7gFD`EWnxC5t``<&Gdz4`Z>vF+DVP6hl8O6;#k1T?Fro>1fS^;UVQ=y zl=JEz*}kE^ln^T$R&;w+z*{$cuKwR{V>c#tXl8FP2;A#IKaZVD=(SL<{EcGKqkgf~ z5E(o5Sx}AJwW-fiu4l$*)rF={F`P-FEpIs&vtVtYQU(aq0RPH^<=k&f-vg@vCOmdC z(7p{&t=JKHu&R{@0)8)wVjm0Bz5D{(ZVfg7sdD_06jQg6a?^c5>a+w$JJT*EaJ^VO z#~$#Ng^oRFukH_nkxL*7=mfJ4BLFhRG_D~~~!mZSI~3T-*{KGYcj zH_PA-ab2I8U_Q~AX%{HAHJB39r{rhmP&E~^VVYF9(I$gk;TShIh?g&f;WKk1Vg=+V z6oSZ;GJ|e}enkm%b|V*r8E6E~u)1SUVe8>757n1fKz_B=EP(6E%m4hX`>t8s`u&^B zKYQiy+v}dH+%R>gx=<8HN)@G~F&#=7~-JnyT@Uh(qOZEt_{ z*(0^L{mQ)X9sl9a;U!#Oj7${=>%n zwV5^l{Nmf*{F!-=esJT8`riw6CC&|xJ@kRr{x^Q(18<(|wDKBpKD{2VpNSWrEBtQG zZ&$yT=fqafSN-abDXcEN&f&hyu?-G8eW6KT*9gDb4U!9ZOv>|ly0hoLKvGUWJw4Kh z(EXQCm5sKy@u=F$NB#K_{vMn`@ZtP@IFl$nW!{IQYB~*P^KBo_n)Pw(b+a4d6H-Ui zIuzhR1t0w4NyBg3LAmK^DG!WGFSGT@@Ok^Pw)DY>VDV+p1#{g6t#-HBRLY@OyKuAl zzj{XoQx=oiV!)Z~!;+vDnFC4f3N=sd_;{nBOkXIN`sM$B56P!~eRgC2|K|OO@T;9e z|CZYK)sLa|G4b!Ld3~}~TY3%}EItN3_jISA)8{l=Q#X~oFs>0V0UqP0_3+a2M)MXq z2UhqL!Rqi>4&UfXB}Z0=?RUs-Y;A1ff2+gxrx-S-6BGDCRcdv(`1`pVN7~w=Yh!EI zMcP|h6HV*ev4tGk{r1;}3BO_Rx+3A%Uqz^eMKIr5VwGD9;o`%lmM-@){K8Nz#}CcE z2~Qb3RUX({Q}=kv%K7^=gJ&4L=q(G~fWOVQXJQEP6#mBXmuG?78QhChH6qjRU@(T% zx$FcxXm$dBRIuJxRyTbcb5An3gTW~VecrML_Bnk&f~lL>4fmIT2Iol}CcfN8-N0{-;7bgSqv8-Fk2ClLgKq%@v_exquOyP< zlngfLXu%9CcJ86Zb*%Ag_KF=gHr}w0J>1{P<`Y)1_N;}5XpT-`e|a2+v86o{-2aO2 z4!a5Ni}a2s=+QgmlfW5PD!ngvR4|v7v0H{0%Tp^(c5aOBt_*WCg4jttc^a)# z_m19Y${pN5y~2@fs#df6uf9eA|v zwhx%@MkRF3gD411W!R5RMzFTLHi&JfhyGXk%!63aLYrZ-BTcqrmk3u7cGyD!>@7B9 zF9{N9Krk5A+j4ZgF*My#Z6~oi=qay7^P%bf+MxUg2uNauQlarso?E1;+x5t9Uj)P< z2=qe1Um&u=6Q??m4f}O&`QbuKLMAKe9?&R(2J{(gQo+rnhj|kCpa}g=I;=#GX!ISZ zTpjkAXy{x&_C+MLc)+=Z7rzJ`DI{vB8oMXZ)>BJ-r|*Eg+ufoXW&kTs_eprSgtF5{ z1}ft;0d9DZi}OZd_j(&EaI`n+(cTnLWA(81bJ&pq4p{iuM7;+fI(g;x%w z!Je~L+5^+9&PDnDoXtt%zy&75@^??>|#z&Cc|d?flz)?*k52N*aDtDSqnL!7h>vmq~U1?A)d53 zh{ARuyJ?o44>sCKp$mB(B$o-)K^-|QQE}n{JTL6Sj&tgS&acJv@M2P&0A0=v>ytk1 z?gL>=Ay8h5NV61#q6Q&;M6HURJR2KOnw$d5ur((XjHFnK=dDuaqs&c61$|i4FD%CN zkh;?^peHCua-P$wUJJJ$QppVb4~0RG437HfNPv?EXA*D(!0!Qf&nk!#y*ZL-2r5iE z?H!Wh3W(BE1JOAObRkVzm==IY)Lw>Y5+iXnjhqZ-UL_V*$bh z!)6&>JXj8N?WoK;w1a%kkC~kk?xt4;UIVB~lE-AqM4IW)>K8!Kh@WDaEir^6L(rt6DN~q)4WtvX5^~+h13nxb3T!&Dm~+8>-UETx8+K_B9wSvZ zvyg)*uMJJBTKXYE(>@6m8=QuUyckF43@m>+Cil}4KI1J%4$_;w7sE$!v8^>F?{-O2 zTKyMO_n-u0)DB3)Q^T-N!n-9rF4b--FSm69fMf!Sfu0O^ODI)lI?%I6(n$%&(7YFa z<@l>Fw-huB{w<|vVaT(HpVZvWuhqm7@-Y~EGytFUfPta7e^F|B#!}Nayy|BgatHI7 z@kV^4O5R+Za~V||o0^(ioA|GFz5KN6R8!Nsre*=y`D>fkwzNiCA}lFz#`xD3kBmmw zw#8bbiFo^HQ?#WyvA#7LZ5oXxM&nKKM0;ZWXnb8X5nDgHzHM}*sike*y4d=b)>wOc zdvhc)(%dqVXlswg+v98Fu~;M?N4&XZU8JQs($w7E)HKr8+!7mYU*FWewrw=lnuxTu zMVi)+#@02pwY9a5HlzKP=B7k@b0XTbHW5p-Ce}AcVolMtczgT$(a5^iwXxP%Q>?uu z7Kx6a%k^vH>zbQm(dfFh&FF448ei8EZ)*i~v^kzwI~r+AtW88mo6uJ~a+=pgV(X)k z=GK;VYa{EMo7Tl+P3rs3u+kDHhu{)uuUic0M-%$L2 zN&oti{w*MVyn8Yo9ZSaW_UEIM_}Yhg&2{tZDdw@Yt!=SrtfehF5^ryht&fj1H$%dj zMHfh6)o)}?JXmtZR^)I zkG93zo7b&dhlba-#A40uZHcycb0R*PXc~#eBC$AxezYyp*4!FdyS6FO6m1)cv_~TC zYez7F+D1lNN7uEE#75R9nj_7Tmi0}e@d)Nn>pDm!8b%OV3p60B?ai&R7$mx_HP*U* zT_iC&x~@4oGP(|^G`B|*aZK6PrbHxyc^HW#) z2{|6Xpi@PiW2q3oV}P%*9>|CP>J#B`b5jH_S6F4K3r8@c60L2mYa&21j=bPals zu8Fp`U^+F&nlKNQsznfd&a}9jccJLg9{2- z_6IEZIg1eMgbO)gl+9Zz^E!OraS(5J$M!%9o}yL&o!Z^3bgFa>Ggz|Pi4>$;Y%mNo0wuUogKwWV|In$E74mNm_tP3zj$ z^|tl4Hup%Mx>xdi9ptjJtG9PeYoxnnO>1X!&zkiNI(yf5tXm&x>RR8rUN_#_yuP)i zEz-WGyR)@xP3yX@<~8ek+Pc=PYweA!kF4wI?OxldOG5wmHg&ajtci57&F-GIH61O@ zU2EDR-JPAC?Y$i>>$)k6r-DlT?O*@&%f#k5{!+6DU`DII68O401eVY4On;x!^oh^Q za0Oq4KmOa%(arxW{_|rqUwrhkTmNOrr%qmTSJfX}dBsEby!g=eC)<|QeCIQVpL+ho zKVI-Z{`&fZFKxW3#{1^`|Fq`I={H_-?ea&P9{iiXy5joxt?b(PPuJ~x?!d?2{FZ48x5KyYV3r_CSzHc3cTis7>p6x5w>rrvD+gWTL zkL`gUUO%?1pS_!_jB!$LMI+bDRlsS)eb1CmxwC!o`u{}Joxg3<&b!x-fv7uPTQj8Q znP0#D1RCA-+8TA2)^T3=kK+JNl;J=Zf^hk#n_R7pM2x31R4o zIcI~x)V$C9%!D|AW}12K;yhK(#};1g zNEvXe_!aHfqEXkW5+8UqPjTFhtX<}%>gFLU_w#33`1o>;{b<+yL^&yOx)-&74$W>b z%{p_%bf6n8e#Fi_RsRFkFFxDXwc{GGvd+V|?o#n^I+G8N;_I6TQi<@&>zi&|*=Sud zbRZEfe9<$kKYT1jM-t)mL@E`|WWx!5@37JOxW!#j7+-A)J0GkG;|yUUu_4?UjTb@j zg_#YylMUgFeA6df_%sjTksDWr99_B5--n0%#)lEn$xXl*}ZbqCQ|4aqpo zWHF!RYP5RK*q#h`3|}%0+hYnx^Wjt?3IM(s>Wr(=YMhg<;fv?M1Ji$%l__$Cg&|@5 zCMUk)7Y~Ee6Y0cJe*YP%g#N6nP4r|Mx*`|GC&%Q&<65{I!~FK~;RJXEWnd~`9~RDM zC&SVG_~2!uwd)MBMLlS~u|>X)W#SV?O@@y|wSpN1f^l{g&1KSB=zCwEHmxei=rCrw zO!RJk%`&X_e)gyxArK_OpaS(oo^uh5!54@p^yjP#gt6Y`;h^wwdrUYMv%i!c9*tts zfG`||qDz7dB>jL)Q}a$r)^jaH9* zGaA!}ABhfUM#J{!p+%kH^JK;=&=?*(AZsP&+J1~3!icdz7~h)6X7G%iDvupr@|$mX zR*a5+c+Zyy;=g|4vG+gzvG;a>#Gaz9eU;H z8y7~q8~3$sdEXBYF8%VS+9C%@ zxYJT^hIMZKz1i1_DBlq=jIak6;Rcod^35=Q_4_JV_CeoI|C6^X@yHFrC-8iv{=Jf! z_{SzGtL}f@NLXl37gTorjthULT;}P{nNqU+Js=UEs>&)B0&VeQdS_b`kht7NeBu zkDC>~AApw*ov#?M><$}qj*G8V;J$z_Dd1&7*3n-BbiQW7IvZ4ttL@@6ANUoa&{=r7SPC**6J@YTFou(0|BCSMri=eXgrR+pd^cRN~g;%Jwzcj6}u40o0K zGocap#O4Kvq>UA9|)#(=t~*--3qZ{EOF}`r&BLm6vQ<^p#DSkAI=2{mz+%$C_q* zk2KAAKXs=U&t`k(<6uxd5$|90Pv_nE`GrEmCz@&sh*@}AyXlBvItcwzp!ADhGC(N!x53kHP*PPK-u5OO)vjH?w)Krj;;up=*);w6-w9?l zO;yCKYQC?3V8^b=%BG8Sa%s9NIeq|}jPAjnaL?fO4V{tBwl%%$+IrXY_H;EzE^1n? zM^r!Oi0tbNO*7U7ZVFp|<(;wSK_IM3&x~cMKYVJ>9WQ_J<|R*jK6>)n+aCVbhhI5w z`X9fO+q~gpk#l~rvb_I$k7s{&*Y2K|n|6HZN8jxK(xJnTUGOJ&-1NvpU%e&M@P|7d zeB&qo?hC)U=GLtht%2xA%a-5&fyo=EFFyA@fwF%({@sBSk8b?n3%ft|-k*Ilmio%| zzrW~je)iMLMn81f{^xFg+b;rt9(m#2-~7#IfAW)`-=Plw_=RN+%a`5!qp!U8;Ey&o zg|`0SYm2>KfBzkk4=nnRZTnVKeDS8YUi&xy;q7Qxdf~slebKu6dfxw@;GWO?;7|VS zAJ>PcfB4yd8oTcCrus|2eBUQeoM^w~hg-TE8#esp!T0{<4{kf&=k3fs^VA#Op8Cz_ z{_dGuE)9OOL4B+3FaIOb^zS#`wfl2FKKO(O5^dczV^x46{-y?yv?1tQFTDwJGb1~^UkjSr@F6>t7_ZYX44@d2qN7nur}SD5+W@j-Q6Jydm{)4 zf=Gi(BO)z=(xr5lpp+nuq!J46+IUco$8+!bzI)H_ysv*KbGi3ii?zml#u(3d#$3N8 zt>$hHKV_{h_O@K$Q7#uZkWDc6aOe8|7!h`PY?h!^a)KWL^w2TERfz^RLqSkgfJ=bl z$rwNm5&i81-rnB7Isy1{?mwT|10X_NFC*$10Q+Q06wK4+0xn3;npYg)Wr<=zjv}${0^8{vY@4WoX;2-L6*PB62 zi0oXFgd>LNqg3EB5YFteU0^(9*G>y9$$8H)Xrg%I!JZXs*&;ug!?+Zc<~Sv97_{`I zdhr*A`L|pn9{0-?HydX^W_3FZ4dT%;k~~E@I}+k9L?gMTNJ2k{8kLxQAt<$n;IKa6 z+1ge2Mh)a?(R?PK(o&qTzf_9Anq~5_3|W??tGZx809D3 zPYjjv_|r$(zOxpw_Bz~hZZp>iutp(k`IJVGd-$HEpe(5bVkckO=^SP$;O` zfI|7c0ojis01NtCuI(ov`wfv%{sfW#EigT1Jsc!xJ<`U0n1qC)5%spXZZCiL%AsL| zRwHw_3VZzWIEeYh;dohzB$(8w|RE+3NpF1#LZ&NSqnNEp*>fV z(vfcQr}PT-v*B`mK%J>0iVqFSyCOg;6*jXM{NS!7nHY*iXUl}Ti_s=da9&i2+=BN} z&;zV0x2X?0m~k)Ig9yW*U*`4PC~NkD=ud#j6ueVLzgnm$r_gG5_GTo7xj)jAPIshB z1DlS5Pr6`$24ZoaMFpWKO97CB{`7o!0d9mTp%JljbAzHh9(GVwXC(yc<~YnjDG>)R zw;VcA>rh8HpaGO@Nb!gye-vGB!1!gE%QQ>SX}L zz%&p8L*)LS5D+wG(3C+dHU zbdLegS=s((2<|8jle)cdXsdqSr_v?1q}(}lURlUT_k#kiudBO5fp&ZpyswGQlwY$D zb+?b$bRMv+?H0jL*+X*^rIepuNEPQVapud*QP&EX9@G^Rq4G0~f=GBvTytmE-OmN) z2i=P9OuEv24WHVd;+Qnvoba}o90Qw)vGV1kGj|SQAs6qnd%il$GBOuFL&2P%5Ru$G zgK=SC)8c#y`@1bnKOgmAbZ!bE^~|n2E)$qT*PT@)k{3K3XFG^=DOj%x8rRC@=Onl9 zu|Dh)?0M0O_VVIEGh>|%?j-(oX|lN2Q8oJZ(KuK3M=Iu{O3Qdy+))ezGUef^1<(1t zy>0_=v}zFWvc3TxwkZ!2*>SiA{pn@_#>WvFHdYK%*!|6m7LW@hC?F>by?_WDPaVW^ zJfUo%902<_3}g6#VH$|aoeb!#Y^`j~L28vo%G1Nf+0E9&_c$yA06`uoH#gWS#0{bu zC}%w$f}%}s{eKc@|6OcV>UP!e0$@=`nQTHsBc0@>=^#!%?A+P0v1EUkKteDzDeMtM zR>76Vy>c|sD6K|69bVRXH-d##h-jMFC^%E92w?&(NMH?y>3JS8|PzZzw*Vpr44%-Q+dk;1q+h&x*MRqwAP5s zF16(vyMS{T7ZOZouhzdS@=53gL z{$XUt*(e>+hNoD@C<7-Db`69ueE=VU3`7vf5h@yh0{(LfzJ7@$h_ILv9~BkM96|s> zbgbVJ6JiJ|+VR9-{QLbFG9qOA+6Pq|U8g-;0F!*tva@6f zce&j%9+%T&rO(U8o~tS%93wIXIENjJ9MDYqPJi{pKw6`xVq7XOGal=tzIUmre75Ub zuH^Pvd`T*xefrFK+m7s18jgJ&^=6$ej`x@Pt6kr7RKE9-8?NvCdXeO!AV zLd`2$sgt~}NgvFX1*f<_6N^E)Iit24k>0*QlzmUFmApU7Eso9AF@-_t0K=F$)56bK3|5|7kLIQ{F;X#Hm5 zq?m1+?nlM7MUJM>7UCMFu4fd6*aV%i}l&5*q|z z4;F>~3H$~??J)oXI3Eunguri5N(~Nq0L1X0%lH2sdOu2cD485rjA8S)=e#goGxNSB z=?cAiLH9dSH3s~(zT7^Q0uO-Z>@voXRvfWXEV*<{VWJ_xG=^lqaJ^hD7r$Je52ak1SIbOqpx11V+?VUY>b+LfTP%&5v6tg;-+F}Qt-NM& zNbekrJSX$hkjvT{XJ%0@9@s@k15UTMt^yDCZw@DvEzl<1-0dgY!mQAA)OaQr{YVk% zl7iJ)W>%}m39|#}uuBM*?7p2yCTCg+&9f$iQ>Ig5PxWEYrU|ynqw<7LcT0O3N-#ao5|%AmX(AKZE*z zDR&3&H9WP`zE@NsC7d3v299Tl^1ExVM^$nT5@tj=npNr|cc{@2 zsVBYjlbq45D$+})n5Kk;JgxHCywkfP0$H1>jlxE2jZ~aj*Cc*-IX`B0KGJR|u;D}O zCOTIz%HlmX20E96PhVzzk~nccW6Zczld3(qYme;~SD7x9YR%Dd1#ijBP=X}!4voYN z1{wEWC-jmRRE*sXr*+9i>?jzUXtEL8^zQmd<@sf`I{__x?AJ2umaA{zNM9e+bfaAZ z+N*pl4GkdYvCrZ4kDW{05q)8$SH{6LzZV?Rc|~X8flI8zQz4bXPrh|eNd3%MKW3z` z@}hf_nYD>gIa0&dab91n>X9j%+grI&{yyum2VbRHiz_`LlNXMtMue-ryv(`kva(`T z>()ooM}fYyfe(oRs|9JoYh1cap7TFi8wiP=s4vumMsxYxBG8pSG>3qzYNP5sN z>|6t5_CP`lyVB2PLl?#Gx;X$BFD zb!i`OwbKqSQ(bOLUQ?R-46$?$!@1FF+xo$2DL0`T%6f#?VqiF`N}fKt&-GA(Q=7!T zjVSXg6wVR?z**oR*$aTn?Vlqij_Kb&@FqXl=QLObB3%28rN%;mo;k%mqk;tQ4{jO< ziU*wjUt&Zsc=AP5C>RX3RVY05yplYJMatc6gtoBfo+DxcNS~Sl>`no=)6NAF{;`;s zP8LY|XTjKM{|S<*sBj395uFVu(yLpQX*V%+03oUR97`p0Lfuj7n1BYdehwqH{P2r9 z;-7ZdTxh0ghIZv*xg64J}p@0;-_ zR|!wdC!Te+W#rz+S{5CBfS2RqIDfskrE0cY`jyb73Cxy_L4PI99tIYjp77C?nMW@Y zC7N4fP(H*qnDDyZ@Mv|8>FPl*JhVq(812 z1&Z^1fB^yR?Yl*xLGh2P0bm~%7{%}cQ2jsHn~nYl{PP&u&+Z6QzQDa47kEv$UG=oB zfJ`dFR`}DHFB%f0E%%D<3;Q9LP2py`Cj~HETp*HpP#qM$T5L~T%LXUTfvI)f3z{_P z8oVoMP-D7EI^%vx+#}d$j=S~I9oJfdIwmPAA)g#(y<*iZpmH*&mPaWa&+IDsc87ZY zwdGYk%s52~v(__q6Jcw;W!R{4`xtlGuF+FdqH;jS2o`-wB3GTGo@K79QdTlP4;6+q zMLc|^%xU8H{FZ6FcCiu@w4&}cGDa%OL0tomIJMr)7cA2v#X@^2(T(Ur+-!9fsX4-y zv+fQ>IV9$T_Ds1tode{pFD&9x7|lKSQar{g(JwW0zr8$K6?u=#ZfI%u1!ZOcoo&?; zrh+mUm(uV3ScIq$D4c!~JT~|JUL%TA^uyqxe$aNH_=sC*5~2vPL_tLcmm6UC4mmBQyJw^8(4*`$A<@)|pdN(w@lA#GBDml=X_zRQC7q`%h``eibq4Dw+nH|Pq zT*5q@RQG)L{qv~dkaE8cvTBre`Q?_R&j+ZKo59#ebWZ7;)?zKpq;o9PJE*Zz<}2@C z5=X2OCG$-Px@b9ztQ5#$0ZI+EQ9#m}4zIS)?r|jEeRry2Ut&?w>E(q|Nfz8nzyh3KYAl1tw$RWtX&&^>W$Ora- zgAK8~V4o|ZV0u#QQgpJIQ%4(sKRGWTKv(YgxZM*u?$3)|zpO<$ySN|MyFhdPPQ)VY z*BJ2^2Oz)!2p&@;rYFBONRem*n!uHlF-Vb|aLIpuf|GjJzc_^l7&)9UQOKb5>s0+2 zT+S$9oP>lqbQ2Bq_lIMN&j4;?jC zCh%h&ik)jnJeOA=()khIkgv@kLt3sF>=V+v*Z)A`!kcqp^O28i7(#7C@?Hn3G0kJr zs+fOGy-%#lQ?6rjdF0Xy!MjJC?@ElbWbE5~dP=J7qkp5drOFk6?jw^Obj~C;;T5B+y4@Gtg-38D~b$TugR_(;L-=^3M zw1ZrJP7ZS~8!(`g5Y{7|3|+HsR?6ji%XmlZTJH+4>^;irduP1h;vbtwInq&)?<($n ze23hFk^#Um{6GfW?1VkRi|#+hew3e#1%QSAE#L|=+~2^T^#}O>IYs`%4M0Jr1>D+z zPv{%Z0`9B;4xylk0pwZ!X*UH&{-Y2986iYK289UVn#*6`cO#(SEEsiq0w+-AeYyEu zkM@x?Ih*~WzWS3&bU`vyrI!IsXQZ|qpPbj_k!MBFTEZ@{zkkc!e}Av@-4E>bgrwj(IOm$ zJbEn^;)mP=Whi1LrA0AW_Z&%mTdN3N3vOMo(W)Wme6uQLU<6ja}NI{>QXSHHVZ8y!L^uRcDhS6w%R#{x5 zxm;I*0cE|<&wy)){=JJ4{uO!evR$O<>ZizXIBZvNfL6@y1bU)~j4%`_yyuCETSD$gsi<`S{w zWnK9%F9qV`q2m#JPdaP6JQ})K12rvy=X_6qM^&I&$La{>A(r0PGRs z;%QJ}2>>h>fZhAf!*Qa3G5|p01Q2qp{$KKa^GbB54O3Rmwb70iN znl1$={_M1QOpkz>J;)aw`|AF>*)Bh6O1fx zMc=q1udY3MCdR*?OqpU!RQiraZ}C_A_u?3wtSKMF$g>B_DZOKbW)>~lWW{{^=(mV& z;fzaTlVG#gQ!=NCAcyN4LSlXG%iYudo|m6%@{u zz8NPDy&|V4$nDBZ7ErRyygPAGn8r4-^lF%mlXGr`N0THPdJcq*MI0_cq-upzU#7Y< z9Th;~OngHw*K1Ca%`&seNW(0oiPD@uA!KrFYj=|*J(+pBD?6cg&B$Epy#Yq*ZE^uKKZ-P*E?;wXD|Z9T{rW|SIbR(&||FB}Sfy|EX{a3RzN zhY(w&&ppT1Yi_MeZ9PWbh^5&k>CVGV)jX?5HCvZM1=>;zjPD%jTea$w^+mUf!dgQD za=GH4pOHd}VvAn)!P|U;Xa2-y^fr&>Wu2znPmaI3H1_$f|7etiG~oIem5 zvYiHdkp+AHkLy=?pfY?MJb<(mhky*Y|IuI5ucpEAdO`8s7)Z%9o}y&Z$P#_Ttwx`W z9Eas;KY0 z!ZQ$UPmI^+qO?>tOJ^55=V(s&p~q(Mh7G@Ws883`=kl+rTQ3O(Y}?<03cKcSV@}vp zR4}Yj-!ZzP`GC;0@2XzpUKXLc*L*X@mW#Eaq!bxd8;b{eF} z_r1U3pS>2g@f`D7rY56CZJebH(sqr=6X9pd4yYQoY#fie1p}xAB!q8Amr$8g>7C5`Ngi~qmGv_^p=GbFD@P7&BPu*X6IdmZ)))0(~tFn{Ek~0G8Z-shemJ7T=$nJZ{e}g z4|df4Pi1tVS%L~;gp3Yhk;m)`^f=)BFUaWrWbU77m48>BJmy+JX)ytoFGd3XeNLAe zrD6VcEul@xPf-&6Se_JH`tvqUM#4jaY((~SML+>DwbWpzrre9&x_Oo!bz^qE4@*=B zTgC*Rn2Ty?eEansYGp9hSSI!@CK9tJ4471#Y?YWrE{PVW)vMgUA^(60E?UhAyYZ?V z&W*#EXEbFuH9j+a{Ry2}2U-QXn3G)XW<%1=Vw~QKg>a;^75U8hg>+|bVe#~OLPW5O zJD$*S&7!L27Dn$_c6Vb?OuWJR2I!LCuEzt|A_TW%GfT`Oox4# zx^{+b`E0$OZ59jX4J6CW8l|TFI-XZa3gYBeVO=_Q`6A2KJ!$^=ygo3*%A{55pE^o&}Uc~Sp#@~O3RC$!R)!t{rg=tp4 z5GCyF2iV5iduS01Wn&}3gAZ2yZImw>w=~U}HhNWvTd^Cg6KgV~LaC+5$>J!xv54;a zn*vu$09pJElh9jQGG|6qD+Mvjq~G0tI_wVUGQl(DaC?__6kuI-3?|%qCi0tl3L)IL zs60%q?-|3iN_y_A#56SL81+&wmT_{$y@2!%jQSuo1FG zSR4S00bo(TOR`~r*!LV6LIVBMBwJls>05>^qprziVQFRR>EQ7fQf$PVH%?x8Y<%4C z{FhQ}j1Qq#aA#gkB}%|tQN$i(rqeo?E$4LZKx=!@X7UdAbsaANWsNOXZFZA8^Xon} zuOB~Te7{${YOke>$$kYcOL*`?Goo|bgfQHzQ&LhY<*niQBg4IG=lK#Dbd)_lN)xme z)djo?*c7;-FF~=HlrC`>SFM^}7+pn^*<3qA)9+DNJN(WVz2d2;o(v&mK zS*(2CuDfY|l@Z^MQ%KhO&WP5 z(qWp86{}M@*KAB9P0m9xvhE9iwp8$0*nO;+|9Qggrm4NNcOI-G7wf4|)yk`mQTQ{r zF3Ro7Uq8 z$Cu_xXSDTPkW!rr*<(x2JZl9ERC#bKPnuufNebs8e@$C-wY>1HtZ0I|>qvTki}ril z3EhUi384OK=LgjT+&ZJniw~$S2y#{T=%I0b#7$G@8~cdGOfgh;laC7X zN2n5EIvm9pWL`}XSt{&(`v2hsA%hVc{2hLj^ihbBZV_Lxq`MQmd|g|zPY;Cxx5dr5 zJ`L6g!0NJK)d1|p-;x~s)Lrq%Ha;~i&EqycaHC5h4nT%aj)O-I5Q4G;tlyFfy5A=i zG@8e|d(xY>P{sj2ImLL7^2l&BWM#KTY z8-$^6@)12O2r>5g*_`^>t(@ zSe^c^zd6ob)35`t zrPjVk@5cOJSx^`=tEm}3R5-jLpK9&ZMpZ_@z&Nk|e4yM{)ht0=qW->ey@wl}lFEIu zGeg2(6)cdo?>(+*o*GuUbvT$x|KSx!8;SsAn zZ3sbqw%dQt%YI1#XKnRv=|eg}Up?71eQjy?M-Eh=IA#Z2d>hA$@BTjaDPW>06)`J&&oT_Kjp(5NYZf?d*UY)&*#fERNOnQXZ?=8iD*u5 z6@bm0ngIC>6xI*GdH`4_04qT~_p9X#>O}!qVAjq5jW-Jvn+0KgRIlHY6^WCs8CRuA zDUCgnXgzKDV6KA@|C}4Y&HbP*lRyG@qJbAO7KSw&VY_AOai?jdw#i5ey_z+M7^rl9 z^U)WE5pgx&ByUy8V1%TMhoWXwlul$T5Dy#3Cy)9Uli>H10MAlM7nBRRddGfID z>|@%CH@J#|-CYV|t}ZRBhO`sTv?3YYxFHyBG1Vw%Ap^BqF7$zkntowqD~z$@Ssvgi zZgD4hP%izE=KkR0_+-k`1%{eJUp@BjYq=l_exJUg?yv$M0aGrRk2a&hg)A~r&Z1ApJX zA+!;m_|t^IzXm0cEppy0Lca-)xol*`9&<_Rnyr-pa1%m=g=o0YBGRGWGjIL z?r1XnnS7eSaQSLfxoRkgWyLaM9iUYBGx;<@DBJ`k$%|O8@WHZCh>Kp-L+CU72?(_k zJW(4|UrGB}stYBnhLDhA_hmunsD8G9^aWWsp2<~nI1IHW)f*S|geNH_k#o>)J!1{z z6r5Bb#FE(o8^X&`YY)j1A=J^B{g`dfWJ3-|m{rw$OsUMr%&O*N zN@YH7yJ|kB=<{n*GO!og(}9Q$N|x2c&H7U^XL!n_7^zFKWiF7=f%Q`at7XKxKpw`t zd60001jXj4-QelzPO)uewQ;HwWVu7a*590Bt3f@q%mdSF0i7hERT(BYXki}Gp8jmo z5-I7~o?R_KKymb}fV+%vcj#vco$v%ZkjPoc7oK1WVoeSVnXC@*((yo6A?;(OS@AuI z)`Fb0C++Er`%0G(MyEAz@o00Q7BM9oW~4zL{YZ-;)sFy7GY%d`80F%sphjE-s}V#K zdP?M6R06Vr;fg7l7m(N*3l=IMhAQ(0oFfC@LbD6OiD7YhY%NGn3psY9f}u;bZJm8* zs(qlGnXS23O`69qmj>D(WFvzf3)Klwlqt`*YirKujn4MJLeagU0H-eokcO$o>5GA< zFX+yOiwA-Rxp*iJ&*!?8XGaIgrtS+Wew5%2G9rOW)1)=>U?mF05WZS3cMusj!sE z=4h(Q11^eak)v)4Y#A+r7s52p@oY`UD*ZDQW~;$B3XO${>hr1I;N>_z<`hK+LF84GMEGEf=q*$51PO9q?4<0;U#o&w_wd|*o8I$S2dK9dhw&@}BC&e#v(M+niF zALLe2z)`?x7%GtVL>v(e58(|XQbSIoUGU_94SX*xH)Jx-aSrTkrB@SXW}|KZ9T3ts zvWB?-ViE0aL9w|anqwnN1hI@c&azP4QwYdHJG~j}O;~R^w7N0o;7E&TbrVQ2>f_j8 z3DsdhFuUdjgMvr53egq}4f-X;4yH3MEW^{zlZSl|V`l{@WC>$u`QLYns1Qp=duo1~ z$HfxUp1Xg{lwvJ$Ix|z9w5fxlEUr2nWc57!&nt*H>Iht=+mBV817*;2+VdB3Lrb*h zW}9Y~XUhxa0L%*qf4KI0o@hKG*}qfFJGJJBFF{V9wZ{BVjDC)k0r| z-hXGcdV_=^gzgJLPOwApZD5Bsj2Yr7#|0Z^q{4Dc0y*fP$RXl*x2O~Z82m3u!iCAw z6pJF_`mk-iU^wrfi!oEguSJ6FW@7Kpe!I~iybuLYz?3gUt*XNDbQ!!fZCo)DnL zlqRRD6IH{SOXy=J1C{GNKJ|Sh6xy131<|~6b3Q5T?ZB_j#LAPfHsi=zKut9ai?Eun zDI1<$TQeRF0dgOnw>3ad5Z&WJ|L;Lg+#Dk0*q!4W`kVdlIQa`0s4JVb)3 zA^m5Ofb^S6U2yj>z`tSvezX~GpnHH!aQVFe* z8bXKA$6gD*4+0*ZQTi-eodhI6+Q7rzxE@#mv7RRF3URx{V}lEWvUF{AG87%<0!~Fp z+p1Fl;ds~OjP~&d4cmc+Y1?vHPbla^Yasv%dl_|jn>OczE@j1#S%~XRzOk2) zR0G!Od=^5mSQRtk+L$o{v#nW7Hz;tU>UO}|Ja{i?#+s6~2gJfo!m*KX1!~yt32h|M z5ZG9gd02H4o|vbGJ&RDn6$6n2^btT8fti7OPV+9ZmGH$}iNIDO^lBp(h=t`6Gme;F z+pevIUoN4=X6lYmSq;k&p|^tpO9MTpoBX0<=?)2yC$-xzS_cir-nKmXjf=YY&#TkK^NX55y*{v zrGcD;~#`RI3N0#>&;^hBQobNmC z`BQO7^#7GO5a+?pWg6TDm?xwmv_p)dVfzghF4bGOk-~>*3@YHtw73k|DvrB3@Z|o~ zW}^)@3kLh2uK>V4e-iwO;*G(dNT!!#JUo99|C^Z#@}I8&U}^uq82p)0|GT)0eUf2f z<88!W$6bk>jUu407T8~spde(EhZ#f+*b4hnww{nOx3%zcq6Ou|^Yipi#;-#Gfn8e* z0pI_+ohOVTg&cq%IA*b}kTRp~+6sB&;lWpG9!VR?SGsH{+^GTv&dPanC)YxDTb90V#Wyz;Gbh#R4qi`;kh=xr6$9yY_J=%w|@wBzD6$TFhY1mMR1V)IEBrpaP zKon0F^LR|pAujTnxF>-Gj&&T!Au-R#D@e=-jKm8cXEFa|HE5h{KpB!b$yS4b3%!M8 z5rBo5&jT1BWD6j=T0rxRc%sGyA=(bB{cL)Af{=0 zma#`K?Sx(mwwO~crfq;1Kv>}R24zYFVu26WPQrx%EU*s{(1aC0QdQu8M9lTpFHdlF zGCq6+izFmA+663nh;Fc>7ttb~tPe02(%!KAptxj(gAS5;nZ*#oK4Z$fWhSP*<2H6Y|YQnPB);xG22qxlri$t)}>j$er zVS}+iF|ZM_`4cHvPq*{ua4fvcC_tIfvoP`$i#Ys=c+K6;pB8apU19+f#ZXMb5s1ld zUFg$LKt|gqP|RTxpmC0f=9kO*Vy(jRDGC-Q_+SbLT5^W&#fMV_p%-Px7^w&*PvZm_ zN}3noLHpDK!Ju7V2N2&D(jqXk0Lso2XiU-`v_tz4HIX^86WGGS2G*QgK3A)^1Pr9>vq_!PRj;7|;wm*qWkqOQm@@XOR3475CFxfLav3WQPuj=3fYf;oA&{yso zAP-Q$c;N_#_b@ZSRlD{Bv#E~I4VVb7i8@Voeinp7gdTvl?topnwn;=sVQmSq61g^Q z6B7x~D}YO31LPW>iii}8si9E6EII2DS3}AXmpFfCiFrJOH>0|r%_kh!i+{f zJPbty9wM-mz;XinlQK#4QQ+V};1NQ3Kwvq2oKK^2%cepa$!H9#@iF|y#VtMux)23e zm-mwBGh7TH+f@>9(*eJO#Pfxj*C6k$3d6dkGMF2-eI zEU^YYQaIffN{V1~a9=hO$)6GWNi&=qi7>PV4tUgdVE|>}A8eo2(SCwBf|UT425q&0 z6J;*sA>?A^CuoO+1hYcUW`2S^h|*$I3MD5BaY;+$L`t3otUFky6gXL-2bMU`8o3ed z9_XPBvLmn1tdIbD*#>N|Cn|-KXQ2g*!K{P!4uf16n}{TUK~Mo%9RPDdJy}wKqW~tB zcyTbaBv4A=bvCBFBycH#2LUQjBmQBI0yQHrh(Kq6Vw5C04)Ce)G~{+NQd*U4?`wK|nOvzMq8^2;a?!z2s1+gu(df zg4Zk#8mh-Gi7_^oVB_ouTD;?MP$w4zpTYdbY@Ao1$C|ONVD9zPV-NVRSzI($k9~pF zG8fI#V>+luqt$wBFw~>bc0CqNy=L*yNj=tqvVt?BYXlp>_Xb(`=pMoL@}oqbIDGV! zDG5EI!3(^tf>E^?IfK9)_{hqL(OdzlsmB@#&ACDp%wVVuOTslr;d*QqU&6IO?Twff ztP3;r*m!dqEGdUzdr>p1>Rd~t(PM$)nt(Ap_o7xTH?9@xug`16>IT+0nP8LoTZEom z37SK&aj1-7ml=%cT7vFX!D_fNJu(ydK|LRWF`AH|Kqil9LV_9^u|Oz!(1_LNRzqiv zSUA@n`M43DP%n<_h?*I(Hr$$MuMz79wtU-&b>`MWqS}lsUoEq^Zpc=T39S0T9BQD) zMBI1alOqUL%3n(5aBHJ9g6&6>sn3v?tH+Lr_^jG!2~!W^78?jB?5aeaV_Hjc|h!H!*4MVX;>;^X)d3!Ki z23fu0#-e6=Y?9RnZah*M^H_8%G})LZq?6DgJ+_i%L$^hD^wa-G#GUhqc8EBm`&z)AG+j?xjb#HE0^vsBr zal4^UdhE2dFP(>Yb(q#qTi2xvkgXouZ@rqULvBWF6SpUtWh@y+_eRT&SPQy8O27*c zG!9t{+R_8jS%Q_K&*uBMgOC*BJ_0Y9ChUiXp=Nq4k=v0Tj&|y?V^jt`0tI_BC5MQ5 z&|^`m55^e(G6{7h81_;xIg`+8Bi50gg3d4)e?R9Pnu`8lFyzhZ&7F!K8?iEOIr?P8 zMsjB&OIUSa&3m(^aVt;_BQ}paANd%u)!fCXkrCU(U4{~j*gozm)X9jQ;;uslM(hT6 zBf_sraSQFhUbdr1J*EbG*@=|KJQlqNjW^~A>HTP*ArI{3FuI|~x`MqNL7$Cz&h#-< zOU|^=73}2%O44KbU@xbUT8|9@dpUzf81tOzb7+k*&z-)2ZtJl?u$Rl|xgLuK3%P>6 z7_rgxb!4ev+6x2=xsBY6*e32hG+mEHTZhq)&~hWzf_{c#@zM;eAcVD#`x;Fp*aXyy zy`6f89_X>jf@$;zWEFr*PCx~M+4M)$)__q<>Cb3&Ad@Gcw$X6l9>idXb(ZF{0_!r^ z8qQPNiiP0aC}^JXd@P(sXun02=pBt?GK1Z)`eK6hGGp^3EIz5XUyu%QMZ&74$955{ zmLBU#Fh4yul3)$>*kXdk=&|+|m`k!AizHZv9t$K`fgTIv;F5jyn37<__1IXB03_2( z&0WN?BI^p$2f!?OHpV;!#7$cx_R`#n>`0lC4*;`gjU_xw(SB=N9;}=RHjrq^0qU_( zj=%sZ^i+(~1NlFPy*ZdJBxNw9^d%QqVLAhuGNu%!BtuyYZ9y$dTs|MTQK*8A?*Z%= zeNWK3o)E=u0ei=j^#1bWzwc~zo&4}4kBA+EjBt%c>Y+@ zl)l(R9;PHiG3|vZ9ruM(h4c62x&I)St|IMT3*2|66+D7$WJ+Q9|46|lIVL4dIT+Ho zu4$UBA9viAfzH@WWgiW6rd`uqW*nK4KaK?>`Hy87IZf#d=N~D*()q7AFmzmttGBTU zCN@yniebDMyShefJ{zo;LQF5P%!&v`gwtaFNI9Y=KS2F7lCzQM~}gOW&%8B$pVOX zd>D2IxPV^-u$64j|rNy+mKch_wXa-PKFf zm$G3Apsok24r>c=zQo!I9Ku-TW(uH7sUTJu@M*+)$sye>CLQH=oQJ#u_2`41AtgT}2;QR^kOfX(3((wPu=cVwsa3y+oTV9sy^63R;{uJsh3DbxWx;vK-xp_8sHi}=GlwTheKM)3KD*!F0qDjuc8pbM+7IM zTi7Bv5&8_!21Rg0$R4!^=!h}^O5rxP2=>AYIDEJ_y%S(6+Q)H0BTzfOFWiX8|caEF=)>G^C7?{F~W z@CZdf(n1U~3A{s~n+2xaA#kq#2j(E$RXFCq;ob;efy4 z!s###`sKm+@ZrQp0RF@bPWBM$B5>j%bXAOD4-SSbLK)7+=`;$%MkF^zM4 z)D|q1f>Y1h085Yuz*6we6e@!n6pWD%z=3e1ib8|HUsJFX4gfd=1pyoin-2<31VR7~ zM-2duK%oFfqQ>Y73sJcghyA%bKIi9@khiZeS~xlYg?*aDEkYoG$9_ki5IBqQDw$vYjyGPm6Xm3 z69OO^3RIwkFR_GaG|J+n;sTWdfkBWN7F7>5j8kV8=BgT@h6$SN9!i}mCa)k@m8Z(btkwCEDxESr zSKA0)CM6bYb*enyNTp7R^0XOhO>TBNiq6i@j8kiMi3O^R>@L|EhEfsg+*}pukk+@U zDqp36teE^B>Kqj#vmR-t$}Lc7^rTp|G82U>wW_epOw?4RW606js@zPJSQTxUpwxA3 zl#`YguFS}RcS=m5hAj(q1%y{L zRI5@VTBFWma+sk*F_GEY0<~6|o~uHw3-fi^c`BmDX3G4`N)k3hJq0*o3^USGU~F5f zw1v4a5Ktov`WUawQz6`0l88{}!HiKc{YuQv3d_$VbVg2+#FemOlCT`c+EpoCfIG?3 zLGvW>y(+_W@HR5NP*<5t_*Et2npG(<_W6uqGjB7i=7z&`@lRy(jjblC3pHR`rev%+ z4Jm*-6J3~_TimKpnF}*Wm6@c{>LPNLTCFi3QwRb?FwWd!g5+bpwZYRKvcd8*)PQ4l z5rrBJ%wJP-iY8m90#~K_VZ!3!A+=hox~QO91_)pv;kif<{R|=LWMyt4LnY&&%E(pX zx4OnktyRigf~YmwS=sq|1ea}-5AH6v7z#74#8@Q(yGWHzr6H8?!tC74Dt1V0Fj~!I zH)Tu;+jtb?sEmBTN-nNN4B_&eUWp^K}tme1)1Ssxpu=^jVDc;qDXF zfWO5ZiOI@WYg7@K%FF{5!qy6wrXk|O49ql|18Q2BZGsu;ZSZ6?VklCTUYM1I4Y`sA zOp~*<*;Qy^`jJn{)|nPHk~PXqRi09lQ^_SssR5-&W6kzdn`T6+3UbxO*u%$wKd-D{ z;DskvI}s0smzR2by0%) z8Sh(3W;9F~wN~XSi%3danQxF920arz@{bu2>Vjgh#I7b;#NJ5M{8@4EKl#O#8G1j5 z<$$)+vvad`Cb?C5YB0RY%HKO3GIT!zPj#=gfaz!#Ao(r^?4uN9&uJn~Ng4sxoqn?hO_T z@!;y2F@U*86o@CGUhybK3+9}im5==aj+x+J^eYX5=~rMttejm4ubQe-ur{kw^c9=J zeHs{@UStj#hP0BEK0u)#>KigLOdB>3LDz<)z8Nqr{o0RMI%B|kUtPH_#C@x5`){%h zGs~npwn#jYfQ>#NqsVj<1m}OZ&H@*c4e=622ZiOOgM(5RYU8kxMHOX$l@Pins}Q?J zJWiEV#+TwnPzKRmWlosBd?iI6gdj}lDv5f{V0nGPljMN}*e@li5ff^#TSfXPMAD2K zBuS(BFog^jq1G_D`d~*89I+yDRZ0yQ9sn$G4lJecdKSe%0EHO^n(UDcahObgcvKmM zIAuOWCk-+-37Z4FCeffM@DzB>g2Gi0)R`p1o>{^hmV-DJ>nSnBWon=f;{=Q-9vN(7 zvFa=>tksDjV!SdiRiQ!&u(7Co7#9dAY7Gj5eFf}PAmxjf-~h=33PEQK3v-kX&JDZ> z_QeLj7MZPt5UzzSlNPgNRIf$2Ags>}r3~H=wq+_%ZlX%l<7e5pJ2>D7?nWhVe^@9*ee;0l62Pu%OeJ!q-G)xQj&cfG6rF0@{&sWRi$ClGTN)e@bqCq zW|$5!(*-fh9i(3Yw@mK_i+d7V!GIXc1?52!Z(x{~kdC1w7Qj;BM-NzaO!a;bF&j7t zX9fbWXZF8jonoLu%>M}$%6?y}3a(<-$&ANmHU~@^Hn=(jJF-}CRwxdZ3i0^YB=r8D z{IUdejTm)nbx%^oG^*=8U1Bi|QxTp;sv>YX;9qf!Q4tA99f)f9_=BWdsEWyKW+cLx zVF3qK$qFSbzZmZ`4TmA57M2L6rEz0Vh|D$;dk`2B*zKE^{B<7Ldwy4`isLb1_T6y; zQdd1*K7XHP-Q-@%6hB6U^WZ;tl+|-bxMqMDs7xe&| z7QP9p1a2^0A(cs5_JuU&p@V;F_=j^*)BlV^cRk;1;8ASK$Ic*YB5*DQi5PhiPYu0- zH)-PDNRIl#38)nHhLcRVD_>m+?Q21zJksyt%6^M6?*hm%YC>S3APcM~h<`*2$U_D5xP-jF3kp;02%sHDGwO@*(dh*9a}(WLre!$cat&A!sjh$CgO_-rYBjUEzW zF-AogPy~;n;M*aHWnC;TIV6;FSR(6UM{&t9o|H|JxQum2fR5H3X(tYc_^C(B_l2KwQ2g5?^l7~*##ZKaqnQ;710SW$tcd8<2$kEBs z5^)`&6QmT>n#7SJ>tg6NpN9(bAG%dC2$~Z~ zxsHyNTuED`qmE8|E_AD8nvIkO$nXO3OeLHK8K4bE5RZo&o(50QE5WfYOFr;v9vjpl zf*xU1T#5&Y@5E;FSdNxb+L2)k^`S@BJWe(1l2S&nl0keB(4v}kUrJ=4g3wMt6c<7d zM0_blNstxX`Z8qmph*c_uQHRes#%u`a2lCG^H7BkpaSPRNf2MoGdEN*KE)*qaJ%py z1x1&DKAB2OK#C;-DXNAGKwa{LJkY)bais{4RF9^X0WdR2+kIm=vg*=+VRe?;= zU~&{iv4zCa9UZBfh`*s%YI60!8^idk8>jUbpA*(EnFDVt5vK&f^>w%gKmh=}bz+zT zzgNMR?|G*_rtDpL>BT(XflDn{ezAD?;7hkBV}^WU_sAU(J8gW;wGHl0Cr;y$_az-8xx=MP?HrpB62*tKk$tYf`Wx029sJr8E>j;&-G;imGz_|9OCp7ubB7jcsDJo+~^nb?S zS0Tjq=MjXT4-N^tXX)R?QmKK#ufnB+p}>!^mV@s_a_~0|*tB&=_*254Bbx>@r(u55 zRi*%t1G!+wA`!lAfqj4yY{c3MI|*wmy@#>_1TdW24w8-pf*XTT2R8*&8_WWn750JP zj)+?n;h7E77v?EEg^m=2DJ61t>$tGrN)u z2p^Xg7dknb;lhx>6%A=z8oML|9Z)gjCP*q{zNK3DLq5jgq^++$22p57Mmu^({4^O|{(s`fy}E&$UjpTHAh2yp@6 z6kr@n))2U!z)b+fCEM_D;SeKdv1%d_TLwR*Aj4K7BUXYTAFeKd9RSq^vPq)YQdV_j zxsVIoFl-r>XLDfraH{v(O9P0=U|;??=avy-H*8g)-C3(8@CgYb=3vGJ76 z7mkv1boiTXT>LH=UvRZH9{5UkFOf?9)LSFV89^(^Gz8y}Tq+`xP5&qYJwOK(9S zv&hDnh2IP0D#`m9Yg|Wa%#lJ_4tZbAf@K%>mPwRFSZ=PmXB?b*XTv*JxM71hP*8{)qlIk}D~S@uXj{Vu1GYPvELZqO671ruyotgbP0Iii3pj|aJZb*EfIBe3 z1(-b@a~c9=TAAyQ;>qbUTwj4Z1Gt#sTmuci(U^9)=C^;-ruw1bwdXADZgcGYVRnaV z>STNOugOhA(b4;LtqOw!Uz`Z}?Nssp;UQP{+%X#|49mExon{tyc1ClDL+2hX6e`XH$oGCwL}ZLDVXhiCzcHA~I)xOVT#f>m}F(N?Ke z%^vI_W?=Z8M~pavT8DxO3~h~rQDox7Q)>>yAD$FGGO&3+W$qA>I@BAYjmum)pZA%bx=U|NaxRb?9GMqD{p=1;V-`P(@G4M;P@qotw zjAnjy6>Z}@|B9U|z8l0shv2>r^K7i=gIO~1Lr;K5B>b^}E8c@g!`=~}SH!^1xeM$y z@y89XYGF62ffD(!_r$wN!?_13fL3z`lRK)WryxIaN+)IH&~N5nAe<3^4&Ym$SRWD4 zTAp#w4yPF8Q_Cc;fV6LNrl2nq3%9jcM#=FB0Gugn>pFiB!lEWXyAUeWlE(!xVu;y?p8hGOU zc;yZ|4qE;GTqhZ5hI1XPy~=YP!wx+`uWvjW8qklgabF(|IJ1oIN%C?a@5erBftm?C z@Hf%1ZDC!-f_zy-I;`~qI6c7H%7QZ%9hCWzCWTwFQuyaj`ik#3!!LVP;lo%*Ch*1Q zH5#~WX&6C-mJ+?R)VG1p$go}vIyP(t5S)Vj`}&C_`bhv;@mX9UIa{h6L5QFKz=j$T z8>-6VdrSH&JE~9aDu#guO;6IKFhi?aVZf8QVlndA_G>0>nDnW7=lX@JR?I|DnZdmfAftSO=7d7ASP)+T4S2w4u z+5mYOXOFy$y=)GfV!=6H0Ca!fk}Cj9jvG=cV&9y_|qQg z-+#-?ShY+w%;F+;8Ost3f+eKNSSycAVL{g0{tXTlQEj8UHxPU-FH9L6yqDOJlPkwwZd+pG8u*xaE(Dnp&;SCEs9seT2_4LPl! zaTu{(60-!W^o1hwwlp7RB^OSfS)5pTb9plZE~f@J)Hl$xXV0HC02eNQ%~>axV0mkE z%;iD@OE%xsTwp?ixv&t|`r1WniG0c7Cv`8lO=RWlpL|xaxzC6M_tE`R()u=~|0s6| zQJ>#f8nZ4&{o?cH_&v)ucTjvAkT`balohLvuAcrv8(??&#Pb7->tA{LU=7vqUd5gs zv-yhf{pDM?&z*NJ{_&9~wlm(vM=q_HQvG^T#@6*WQiN@*4g2HB?U{RDyr{kP`O>zp zV@^*$82+ul`ArEO*u1x_i{ilK&ei)Ko6qf(V88fjPsh~m{!iRSO)LIA<>0(tH>Y`A zIOyLjot3_~&%8N%yY#wtTvJ0ByCIYFZQiRhy$5~hJHT<}$35K>${gkfb;$a}ndmDg8iE^p3U2INr5j@v_wh}MZ+-Ldd02QN zR`GXQlNbM2oQ130g_-mYMr#2#m#LD%mF#?Qjz&jTPadpLz#*GL5yUvMN>pAt;J+f< zcaBW&k=eiS$bajY7T5WD*6QH5Ho{rc5WDr5E30>WSoXfv*VK_oyFHG_dQE=(N2%kH z!Cu9O3;S)%8sI*7+j&37MhDt19iyJ~sr~0g`)lml^B~qPzE%VV}pLcTBhVugnH58M7wpLCjq`|WQGI;$wPudx~Sx;Djx8N_`%`RzuC5B9jfOWU~9W6wp{2ePsWWpb6U#5 z2hIT>I5_G*@_=B>V9Mb5(&WKD0SX^5VL9=E?F|kJd|1%%kUc?Z}?nKdv&d6=Jm^~X(U({J$ByPucd>%CwLX^7t1c(9e&Hv zW7(9E<$G`Os-Jn4X}8Af>T7w9je^8ir=ZGZ5u}-_- zwCz#L7M36WP-oV$;1in;ayNT_+FN@^SBvYGy~7B%ea=|3Rv#~HxIbp?x&WD$ zo!Wn1blHp*zt`>AV~D(ryA>SXe8%Akl>zSf=QZKL;X7r?)5r=ZZPY{Dz=OjdPU zHbgf?b-ZviAqtGaPvIkn|1APuin&$#u-0n$UkOD(u)<$ff?LYcutNC$3w%4Gm@LcW z^56i4zrO;$A_d;eUyu4@^xt%}f48<;t7(^7U7oqasl2mP8a}N@Vs4`v=ha7#ynK}N zb&9RkjqCMw0~|K^&GCQo?b`0}c-M0p^hZ#NaM1lK;uhVfH|1Ua zQv3SM!l5UYY9sq!DE;I0wpVrMA4-k7vT8->4O!PI4vQ9Ow8<~+Cf@lHG*L6>e2=u6 zJ);H;3bs9|?ZDlf)q2!|wb_1`tDAitud8#bhhNfF8+p6;r$?oKIdUj1T9L5HLvp8y z{Dh{Cm8{l*dhwxi{6ohcs|cnCrN$?h$vnCK8(LgwnQ{NLPx{NK(EH2z=+EeiS*JRT zbWeQHYiaXW(I@IP44(B{&(sBWvql{ek4bL0Yq=neea7IzI)MvoFSo>=LBe8v<8b9{ zc$m1apL!C!EOxTwaA4;!SZ+-V^c$0EEDo12hV`$J2LF#4j?I@-iug0`!zbOG+PT4E zg?eGbtrvad)s2O0D2{neAskc|!a-jI3ajGFM9a%MH%a!Ga<{hRv*%4=;-q$W=F1Zp zUlt<=_c<_1zwe{PGvaynCEh_%ybG&xME;W?zpy^ij-nJ=!N> zYKcq7<)MDDo98Z0o^iWi%f{c{7q5@eyleC*tpDMg=62af7R-?Pd^Ahgn|#dYcJtF) z3+^wrn9E*}d}HJA7AdbLh0l2T`uVflgPj8#ZcHwJk?1}>xcGxLPLI({^6Z{B-Qm6Ci^TI;M{9jcbvib8v8QjMPW$J@Cdt=$Ex;E6ALIXB;O>SpqT zlSPy5Qx65%rd^%j6f@dq`-;Fw$7fd698kxrK^$-p>9Flr#^mm2k&X>S-(-QX_!^^q4nBP0k*1| zqTyGqu4TSaACEqJ#_nP9Ue0f4K6zhv9zJWi@RP)&$%;E4ZZ7E`y@l7gsj736_|@T0 z;-9YTQG8JtD9CdxQ8?ccC0)H+@#$_;s}-43za`lE_SwO8>2+&Tm`C=W31cQ58g+5H z%SwyX887Cp9Ncw)c{iUeJ#vuK)OBcg^)bnvM7DljB?c=C)h6_f2c%ny}*d zRr`21%V(z+or+zdlS{>qdFPTQRg0NeBYgbIsi|`J%P8kT?`=nKbZPUs9|kTGH?DveHp50RT1!HDsybQeeqQCOqKivse z@!nQOCk);j{5g`BPQ|{}l~X!aUOKA8=4bA=B4fVtzrMUEvnpO;ThV;Zf)%mawr_Y6 zU)BFLUjHBM-9gt@Q-<$JWk=S%`tY|EJ^wgf+$xT>##h(9L!P;0+41eY$87XHYdv>l zUi!uq>PWm)k}&ORuO_!rwybJf?s(IQHF)`!qE{nMK54*uc5C|>A@|^@X187>R=e7A z+4wv6M|C?_vg_W&SG3`yroE$+JR*!v=N=YY%}$3!%bbQI;^6H^0)j7 z$-*5=o4&ACe;MwdyY}n#RtHDA9_q4frqdAXOe)l8Rl6}8@3`Duzxr^-Z$(Mmvthmo z%O|d0P_%5_oXLd_m&Ol~6xQ#l??)vl{!hvCTOonfFCeCWGa?Yyceg%3-?wdj}Kb z`1gl%lgiWQIi+*)a!r3qEnq9mP0pS!B%w|?cQSD zp!tW(+ddQz?7z_e-JDQ)xCslmP9*oAV^d=NNOI4Dk8xW+cc0&;m)*HPzMboNw652fRT;j#j;~dr*`X=tM~>^T zII)Z)qb?i`dGMV{+!2$>r5Zv_;}(V=MGZA!8E6M zYS7!`ZXr!-Jen<=*PoMKv{dP(8Wz`dr0s%5HaD+(cYWq?YGLee?D5iszO&vhJyyQ2 zd_#8djO~sA^)1I&>u7O2ey{cJ`MbEcJ8a1@>ucV)qes8qO%?{IFE(8rd!Fqc^!lB0 ze$1VzQ#*JSJsi7q(XPw=4*x!K>bU-=ANxd<+->oG)4nmN zD6YbiybY);55lV$g`)ir_U4{@zyHe~0gsAAHSb1B-JE(hjib_@+w%wN+;Y%ydj~(;jC(F z>vg5gVoxLtzdPkr$J(83I(eiw+H_T{K0Psbk)ve&?pb#b5h{BY3CK$$z|$@}~VYdW_bU+vhbu^}!`4qZ(CQktwfK78P^2Di7}e>bgR zR_R;rCV83b$I3~_VJXU79|7&2QP=q8lHJGYjf$(Yekkvw#;? zGz%8a4=Yc4(cXu{-uEg^c=(N+fb2CLRWlH&-+$#aRVH_b6%w41I9HyMe1Fo5Z&519 z0g3*&*I(`*XmZ?3P`U2EBH#b+@$S&!8{PKs#*~*7SNrVV`LkxI_s2K$rVO1NyzlZLIRjX!aU!sG}V(0OK?zXe|(r3oOd+l!zdV9Xy(s}g4I|J=@oj*L=iFM#h zvqh5e0aIL>`M=-oHW#hko_Kgbew_}b&x7+zUT=9KF?(!SU6;V>x({;{Q5(NlGTL`6 zpJg~4V4EKG9yy;r@I>d3N8hq`r=C8zW!Z*3lBxgvs5d|^SNMBn1j_@{gH%eNz>xGn zIO+`u_6ZKC>+h2p9Hi)?^!E=6?2=LCc%)f==G_GDnX;vJ_3G7HpSSpMAvNjOFS~yF zE=paXCGWeyoQ(&u*nZP6@R8T^kq46_5~ZQna75BZo+xi+z~P9*aF+b*1`O}J{-OyT ztQ-s{Q50PLGI{?D)0tfcOJ>^E`Hz&{2?t$U&TUn6;pzJ?$F`l@`SL@JJn4Ye~zOJ!4 zF#ImRTC06t?G+tDx=mg@e`wBRnfm44m5;VX*&R)fFI}JH&~)_F1$jI3J@&u%a6b4{ zy2NbF%j0I{6K{2!nLVJQ?u9(**FopL?b$e`uHb8^&9137OLh)E`n+t{vNmoJ_UoGs zDjIz9!|9ogt6#Dic7N3Du5LrSHdu0?B;Nf#-z7HV%Zv%t;sVwucW!y1`KI8}-+ZsG zNt+*$bExRVnk_kF2ILOWEPb@#)9kAb=R-bc9?EOPzuRZPniX5;ZSH+ya`OCMZI4(t zO+W4O{By&-3bS{9jWQS1Q+G~iydiRI%QJAEfU zUGwK^dES$5F^eBg?s0G%fA7}@Z&zyT(QA`WR6o1r?Zm@F9AA}mW3~LfMyYn)nGUrY z*Kccoedx2Sy)ldYuGAh8+Uewzz{qh&xm#l`%kWma*4n_vCj)@62h4bPm1?Gu)6 zq=OweF`N7EF|T>GUe12&i)Jr^cTb~N9}GFivQdPe8D>$OIi%mj&ThG@X2r~S*tOH? z>(dk03cdHNy0pY=WiP?13zOR&?(D#Q*rmq<|JLr-e)pI06Hcs)+|cpjUSD?MvaYX> zcva!o?#|c-J}U#- z?%UAltN)pG?9er9SB($ucY0=t_uKg7aV|l%_k`qU_D|eA!*WG+*MUdgY-SH0^)Btj z$<{kYP8_mzr;Dz3n!W7zqaL#0+EYWC*FDi^&G?m$u8Wp*d7^agc2gEJGi~Ut+8xih zv}n|N@A{O+ZtNGQdUfzS=X$%Kqh+h;p6lMDn_HJtWoduxthR1jjk9f9+z+X+eCQgp z)qZ1SpQt;#_Go(D(A;;sz9V|tzUR9gQ~nq*>PcLTe9^Me*PnElz3TJT)m?7wno`>P z>G`KE?#I+wB#|v#)Hkc--thFIw6%T%FQm*!-O*Dfd-*hPk8F(hm?rgF?z%ZBa@bx$ z?7p)LBK&ld-sQh9lD74hbnHB-yiv=5ftObgwYxSe{>|joTchXXPCb3&{Lqoc<0g2| z&Uz^S@x-X|YQ|54(O;bNS2>FM;VlHd7i758q4B9tDaJ-@vf;+xe6;9*;*{&KKzVyy zz?lP)NZxWz+?*DJWB&PD0GPfoZ{eUG-e(zuU79=~&EKB{yH1AS2EneiJV73Bz#-U$ z|7r`$Tpck)y1(GBlb6oM!b>@&Q{<%+<)!0{=WxDkxCS6^Y-o;R*#`Vob2xZssx!23 zTO}KQ&#E}1K)VZccb@vG^g?g zeBIvof$(sH9Zi?ad!7A9#*SJ+3#N2b4IJBdM07%%i{|6|oOWp8__|^Eh}I`pf62Ms zi04~p`n}K^3(l^0>Nzpw*2Bz0k)cJsTwhE2E*z^HFzU?_cPiR*_i(E%^OtbVr$6ob zv8(T-Ii8I@bK1saI194#+fSW*XTY1CV_rvlUHjbNKA+9RIYz< zWq%FM_UmB>M6zesRDMsU{8^DY`64=B5xuS5>nRHaEt*+PD{(%F>g-!HeL>@>o;8E^ zpPoB+cCTKwJ~o@=yzEm`*OIrh-tWlS&|=E1$Av`>Paf5qR&3wm+xc~_T?_B6`uKUo zW3!S+*$q~GmOtghj=p}qFfU_V=&6~>@hx|hq|~Y?68pRKdLAZR)A-Zkqw_oNsu(&w zrF(LGv#6cnho<-FAS`K?^QCz9u5EdF-43O!~J27juU2 zlRcox)^bkiF1V&BG#o%x=P2NioAtkbnB`~O4huMnS{&(#&{5~r;Wd{PeJCHP(xlY0DAUXk0e=?-183VQ7`-J!#l^8y}cIREx>cvxak#Tk~n#pB*wTWW3%DFLJ|VB zAma$(0}Bb9e@SXlEcTBF7Gs>w)crY!+N~se0PM zk(&9~JPbW`Hl*Wvw|@R_=1gyVu0e~ZpQ5+b7>=&3+4gEUMR(vt6i2(*OCY)g%Z=w# zzHpJXy_^RPlu)cUb4oYOFa7;rzrY$E92EfL~&P|KSDJIc1`ga3<3oZs4^u zEXM_#wcUgWa|wpl%Spga_YTC1@Z<<$eAu8wYo}8?$k6s@ynK zz2=NJ3vw{N9~a}Mw}O{AS#0eo9$sJi zp1aE3JvKDz;??0rwL}k&!a1yl!z8EU0?Ft;N_o3A@<_{$5X6!)@uQ5Gj3y=_{0Y=>KC|F)f@U$t#I*neP6oib}&T4~an6BA;`@7lYt<0+*i zU$)=j!{CxF*Oi~6cX>FuWm#(+T!yb|kvS|OeND$NJ)J{eq!cdSHatA8Nvl(qGw4QH z{oi)k$(|h9@A=6VU-IvkA6~QgRWDDW;>G27dfe|r`9Tkg99KV_cC6ujzsSvt-dxGt zHlMXiDwt4o?DN*0hax+6vYo-=wyYIrIGwo%n!5Fui_vo#^;3r{#=ef|-6y)nzJRXn z2j#W-t4k;Ud@*|N&*URx9?VTm?|Le9;@A!sj+fi-{olP_XIw1eQy009ysnRb09lCs zAGluk3*N8@okJF(_~uXPBzft0dFhxc>(EkpsBsy|vQ_+Y9h%T0hFOG0BqaJ}GQUgu z4_2WGRaT++TW$Yn70SCew3WrJ{WqpIF73_^ojI?@E%8-Gzpu2CDra* z>W5BtK~vq5Tj-vLTOC}rqyPT?uj=(}-`MfhwBqLDTBB9LmUeIbic3|OmaNaYbKv-& zhkGG)3wfklt%fI_vKLGq)2`0e-@kBf7R>f*=|-Y z5+5nQC~8_>vhU=vMJJ#49q{62gYJUs9d%P{@s*cXC)8ALdwCOGzpvoUpHTmus%g=K z_luh?dv{IKPno0cxuo>SBEj;IEl>6zxmfm_=9tr)je}SY=9v_-w!`Iv7Hy{W z8lr8$zc-q)NO(c6ppDsAK+Oa*Ok01|F~tNuTv;jfLyLxwqx- zP8TMaow;=KGxlGbCSEerde@*!wWmF1eH3*Kt?~bC#Y}q%gI^iv z_*vrgSA1yS_$^La|6HTbT17!)BaZs?P6=jPZpVoi#N1CxCtcs7r9b5s*VF!|VA^?*4HPWE|Gx%K=WX0Pw-a_?bacs4OjDqvdb zPDB3Go|PX&22wUUvhrax8x}ercP3yY^K~_ zZuLOZvbL|k`bG$Ih}-{|^FLp0`RuM3@S*j#`R3L?dgm|CzSMT^bwfe48qT( zd(z{hXI3(Y?k?WXC|Wg>ZQZfb=(mMC%=n$dzOx+M!@b{qVH0yDaOgD=)J<)Cyl@D2 z5EiL&0sVlO(`OcC$hoY}@#*Ky6{mkn-kap@wf45;;)4qs4;eJ>U(&e8pm8Tnn%-#J zD=_!*`Go|7_wkvUyP4@a8@d|knwpw88)_S9LYnMKs7-bS$iXfOzQ993fx7^mbMlk3 zk!u{_f&wO1hIl1MF)8=iT*ztv@cP z0l?9BARBm+50m;ECg8$sV80Q_mihuwa46siNP!uWb|ypM^fY_{4!HBWfXjdbq>WkZ zal%3vn|+}Inv=nsD{2|ndF7w6*gSK`xuRQ4;a?`KWVT#r;C+8*tL(fYw!p=C?Hif- zG7Qfx+P&*b=knq!Z-UgsizYlYj%xI4iVf)x4|NP*H^snL+am41X#e#2Clllfgn1la zE^U&|UBTjLm1&Y<%<)M*oHPI9lCPyb%mV%1#b5hh*~UqCEv=V2|1CS2xv@^E*~REvWzEx)cXR@$pAP`2diOw&~sGuWEe)>PUZ zE4yc~;m3^pZzYMVSYOB;{$+097cR9+XragV#hkY5K)|H^df9tuMa0W0MGQb<9^_=KBcFe3J*ZD+n3h!qT!q9^PtVG%}Ea zk9YuAX7QqoX&9i7S9Pzy{WGcj$`e~pYx4$9MW>le`cD_iNV)G4t(Y0kc|Xpe@ez^% zOgx5-mkb)u8#JCVXxzvmf-U<37mOM-HY}+djDZDQZ6>a>tHyL5U!j`yX>;Z&vfXS~ z@7p4$d|fk; zCbbqd3(9tXH$5^X!nEP+{Dcmz8GCx2!(Y#z|JYJgvMBvcO5e|Ac`prYEvL_1QJMa{ zdinb&Yx%aS@OSLjO5E{f^)8!^P5X@IEe*1q%vf{4Lg>TVwG3*fqw_CpVPDFpD{L+F zQPpS1midSLSBiM0U%Om$OZmm2WhRD3dyJPaet4=aHtZpn$kP8QEfLeNT=>U(RAHMa zi@c-p)uW4c?iN|Q$9%Hzzx~3^w-0sPi7|S&fn!ClO>xD}y?56XhdGKx8a!Yx->z7= ac!lU>D_?23+?%nV{(YOUS16N1gaH8SIPtsy literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..f91d621 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Used to specify deployment item (file or directory) for per-test deployment. + Can be specified on test class or test method. + Can have multiple instances of the attribute to specify more than one item. + The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Initializes a new instance of the class. + + The file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + + + + Initializes a new instance of the class + + The relative or absolute path to the file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + The path of the directory to which the items are to be copied. It can be either absolute or relative to the deployment directory. All files and directories identified by will be copied to this directory. + + + + Gets the path of the source file or folder to be copied. + + + + + Gets the path of the directory to which the item is copied. + + + + + Contains literals for names of sections, properties, attributes. + + + + + The configuration section name. + + + + + The configuration section name for Beta2. Left around for compat. + + + + + Section name for Data source. + + + + + Attribute name for 'Name' + + + + + Attribute name for 'ConnectionString' + + + + + Attrbiute name for 'DataAccessMethod' + + + + + Attribute name for 'DataTable' + + + + + The Data Source element. + + + + + Gets or sets the name of this configuration. + + + + + Gets or sets the ConnectionStringSettings element in <connectionStrings> section in the .config file. + + + + + Gets or sets the name of the data table. + + + + + Gets or sets the type of data access. + + + + + Gets the key name. + + + + + Gets the configuration properties. + + + + + The Data source element collection. + + + + + Initializes a new instance of the class. + + + + + Returns the configuration element with the specified key. + + The key of the element to return. + The System.Configuration.ConfigurationElement with the specified key; otherwise, null. + + + + Gets the configuration element at the specified index location. + + The index location of the System.Configuration.ConfigurationElement to return. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The . + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The key of the System.Configuration.ConfigurationElement to remove. + + + + Removes all configuration element objects from the collection. + + + + + Creates a new . + + A new . + + + + Gets the element key for a specified configuration element. + + The System.Configuration.ConfigurationElement to return the key for. + An System.Object that acts as the key for the specified System.Configuration.ConfigurationElement. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Adds a configuration element to the configuration element collection. + + The index location at which to add the specified System.Configuration.ConfigurationElement. + The System.Configuration.ConfigurationElement to add. + + + + Support for configuration settings for Tests. + + + + + Gets the configuration section for tests. + + + + + The configuration section for tests. + + + + + Gets the data sources for this configuration section. + + + + + Gets the collection of properties. + + + The of properties for the element. + + + + + This class represents the live NON public INTERNAL object in the system + + + + + Initializes a new instance of the class that contains + the already existing object of the private class + + object that serves as starting point to reach the private members + the derefrencing string using . that points to the object to be retrived as in m_X.m_Y.m_Z + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + PrivateType object + + + + Gets or sets the target + + + + + Gets the type of underlying object + + + + + returns the hash code of the target object + + int representing hashcode of the target object + + + + Equals + + Object with whom to compare + returns true if the objects are equal. + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + Value to set + the indices of array + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + Value to set + the indices of array + + + + Get the field + + Name of the field + The field. + + + + Sets the field + + Name of the field + value to set + + + + Gets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + The field. + + + + Sets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Get the field or property + + Name of the field or property + The field or property. + + + + Sets the field or property + + Name of the field or property + value to set + + + + Gets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + The field or property. + + + + Sets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Gets the property + + Name of the property + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Set the property + + Name of the property + value to set + Arguments to pass to the member to invoke. + + + + Set the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + value to set + Arguments to pass to the member to invoke. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + Arguments to pass to the member to invoke. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Validate access string + + access string + + + + Invokes the memeber + + Name of the member + Additional attributes + Arguments for the invocation + Culture + Result of the invocation + + + + Extracts the most appropriate generic method signature from the current private type. + + The name of the method in which to search the signature cache. + An array of types corresponding to the types of the parameters in which to search. + An array of types corresponding to the types of the generic arguments. + to further filter the method signatures. + Modifiers for parameters. + A methodinfo instance. + + + + This class represents a private class for the Private Accessor functionality. + + + + + Binds to everything + + + + + The wrapped type. + + + + + Initializes a new instance of the class that contains the private type. + + Assembly name + fully qualified name of the + + + + Initializes a new instance of the class that contains + the private type from the type object + + The wrapped Type to create. + + + + Gets the referenced type + + + + + Invokes static member + + Name of the member to InvokeHelper + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Invokes the static method + + Name of the member + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture info + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Gets the element in static array + + Name of the array + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the indices would be {10,11} + + element at the specified location + + + + Sets the memeber of the static array + + Name of the array + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the element in satatic array + + Name of the array + Additional InvokeHelper attributes + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the array would be {10,11} + + element at the spcified location + + + + Sets the memeber of the static array + + Name of the array + Additional InvokeHelper attributes + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the static field + + Name of the field + The static field. + + + + Sets the static field + + Name of the field + Arguement to the invocation + + + + Gets the static field using specified InvokeHelper attributes + + Name of the field + Additional invocation attributes + The static field. + + + + Sets the static field using binding attributes + + Name of the field + Additional InvokeHelper attributes + Arguement to the invocation + + + + Gets the static field or property + + Name of the field or property + The static field or property. + + + + Sets the static field or property + + Name of the field or property + Value to be set to field or property + + + + Gets the static field or property using specified InvokeHelper attributes + + Name of the field or property + Additional invocation attributes + The static field or property. + + + + Sets the static field or property using binding attributes + + Name of the field or property + Additional invocation attributes + Value to be set to field or property + + + + Gets the static property + + Name of the field or property + Arguements to the invocation + The static property. + + + + Sets the static property + + Name of the property + Value to be set to field or property + Arguments to pass to the member to invoke. + + + + Sets the static property + + Name of the property + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + Arguments to pass to the member to invoke. + The static property. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The static property. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + Optional index values for indexed properties. The indexes of indexed properties are zero-based. This value should be null for non-indexed properties. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Provides method signature discovery for generic methods. + + + + + Compares the method signatures of these two methods. + + Method1 + Method2 + True if they are similiar. + + + + Gets the hierarchy depth from the base type of the provided type. + + The type. + The depth. + + + + Finds most dervied type with the provided information. + + Candidate matches. + Number of matches. + The most derived method. + + + + Given a set of methods that match the base criteria, select a method based + upon an array of types. This method should return null if no method matches + the criteria. + + Binding specification. + Candidate matches + Types + Parameter modifiers. + Matching method. Null if none matches. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific type in the two provided. + + Type 1 + Type 2 + The defining type + An int representing the match. + + + + Used to store information that is provided to unit tests. + + + + + Gets test properties for a test. + + + + + Gets the current data row when test is used for data driven testing. + + + + + Gets current data connection row when test is used for data driven testing. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + + + + + Gets base directory for results from the test run. Typically a subdirectory of . + + + + + Gets directory for test run result files. Typically a subdirectory of . + + + + + Gets directory for test result files. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + Same as . Use that property instead. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + Same as . Use that property instead. + + + + + Gets directory for test run result files. Typically a subdirectory of . + Same as . Use that property for test run result files, or + for test-specific result files instead. + + + + + Gets the Fully-qualified name of the class containing the test method currently being executed + + + + + Gets the name of the test method currently being executed + + + + + Gets the current test outcome. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + + Adds a file name to the list in TestResult.ResultFileNames + + + The file Name. + + + + + Begins a timer with the specified name + + Name of the timer. + + + + Ends a timer with the specified name + + Name of the timer. + + + diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..740d01fd3857259353f56a8c44745531ec2ebd99 GIT binary patch literal 73384 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 LZzAJ}Rd)Ul&m9{B literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..a71d66c --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4391 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Specification to disable parallelization. + + + + + Enum to specify whether the data is stored as property or in method. + + + + + Data is declared as property. + + + + + Data is declared in method. + + + + + Attribute to define dynamic data for a test method. + + + + + Initializes a new instance of the class. + + + The name of method or property having test data. + + + Specifies whether the data is stored as property or in method. + + + + + Initializes a new instance of the class when the test data is present in a class different + from test method's class. + + + The name of method or property having test data. + + + The declaring type of property or method having data. Useful in cases when declaring type is present in a class different from + test method's class. If null, declaring type defaults to test method's class type. + + + Specifies whether the data is stored as property or in method. + + + + + Gets or sets the name of method used to customize the display name in test results. + + + + + Gets or sets the declaring type used to customize the display name in test results. + + + + + + + + + + + Specification for parallelization level for a test run. + + + + + The default scope for the parallel run. Although method level gives maximum parallelization, the default is set to + class level to enable maximum number of customers to easily convert their tests to run in parallel. In most cases within + a class tests aren't thread safe. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the number of workers to be used for the parallel run. + + + + + Gets or sets the scope of the parallel run. + + + To enable all classes to run in parallel set this to . + To get the maximum parallelization level set this to . + + + + + Parallel execution mode. + + + + + Each thread of execution will be handed a TestClass worth of tests to execute. + Within the TestClass, the test methods will execute serially. + + + + + Each thread of execution will be handed TestMethods to execute. + + + + + Test data source for data driven tests. + + + + + Gets the test data from custom test data source. + + + The method info of test method. + + + Test data for calling test method. + + + + + Gets the display name corresponding to test data row for displaying in TestResults. + + + The method info of test method. + + + The test data which is passed to test method. + + + The . + + + + + TestMethod for execution. + + + + + Gets the name of test method. + + + + + Gets the name of test class. + + + + + Gets the return type of test method. + + + + + Gets the arguments with which test method is invoked. + + + + + Gets the parameters of test method. + + + + + Gets the methodInfo for test method. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invokes the test method. + + + Arguments to pass to test method. (E.g. For data driven) + + + Result of test method invocation. + + + This call handles asynchronous test methods as well. + + + + + Get all attributes of the test method. + + + Whether attribute defined in parent class is valid. + + + All attributes. + + + + + Get attribute of specific type. + + System.Attribute type. + + Whether attribute defined in parent class is valid. + + + The attributes of the specified type. + + + + + The helper. + + + + + The check parameter not null. + + + The parameter. + + + The parameter name. + + + The message. + + Throws argument null exception when parameter is null. + + + + The check parameter not null or empty. + + + The parameter. + + + The parameter name. + + + The message. + + Throws ArgumentException when parameter is null. + + + + Enumeration for how how we access data rows in data driven testing. + + + + + Rows are returned in sequential order. + + + + + Rows are returned in random order. + + + + + Attribute to define inline data for a test method. + + + + + Initializes a new instance of the class. + + The data object. + + + + Initializes a new instance of the class which takes in an array of arguments. + + A data object. + More data. + + + + Gets data for calling test method. + + + + + Gets or sets display name in test results for customization. + + + + + + + + + + + The assert inconclusive exception. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + InternalTestFailureException class. Used to indicate internal failure for a test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initializes a new instance of the class. + + The exception message. + The exception. + + + + Initializes a new instance of the class. + + The exception message. + + + + Initializes a new instance of the class. + + + + + Attribute that specifies to expect an exception of the specified type + + + + + Initializes a new instance of the class with the expected type + + Type of the expected exception + + + + Initializes a new instance of the class with + the expected type and the message to include when no exception is thrown by the test. + + Type of the expected exception + + Message to include in the test result if the test fails due to not throwing an exception + + + + + Gets a value indicating the Type of the expected exception + + + + + Gets or sets a value indicating whether to allow types derived from the type of the expected exception to + qualify as expected + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Verifies that the type of the exception thrown by the unit test is expected + + The exception thrown by the unit test + + + + Base class for attributes that specify to expect an exception from a unit test + + + + + Initializes a new instance of the class with a default no-exception message + + + + + Initializes a new instance of the class with a no-exception message + + + Message to include in the test result if the test fails due to not throwing an + exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the default no-exception message + + The ExpectedException attribute type name + The default no-exception message + + + + Determines whether the exception is expected. If the method returns, then it is + understood that the exception was expected. If the method throws an exception, then it + is understood that the exception was not expected, and the thrown exception's message + is included in the test result. The class can be used for + convenience. If is used and the assertion fails, + then the test outcome is set to Inconclusive. + + The exception thrown by the unit test + + + + Rethrow the exception if it is an AssertFailedException or an AssertInconclusiveException + + The exception to rethrow if it is an assertion exception + + + + This class is designed to help user doing unit testing for types which uses generic types. + GenericParameterHelper satisfies some common generic type constraints + such as: + 1. public default constructor + 2. implements common interface: IComparable, IEnumerable + + + + + Initializes a new instance of the class that + satisfies the 'newable' constraint in C# generics. + + + This constructor initializes the Data property to a random value. + + + + + Initializes a new instance of the class that + initializes the Data property to a user-supplied value. + + Any integer value + + + + Gets or sets the Data + + + + + Do the value comparison for two GenericParameterHelper object + + object to do comparison with + true if obj has the same value as 'this' GenericParameterHelper object. + false otherwise. + + + + Returns a hashcode for this object. + + The hash code. + + + + Compares the data of the two objects. + + The object to compare with. + + A signed number indicating the relative values of this instance and value. + + + Thrown when the object passed in is not an instance of . + + + + + Returns an IEnumerator object whose length is derived from + the Data property. + + The IEnumerator object + + + + Returns a GenericParameterHelper object that is equal to + the current object. + + The cloned object. + + + + Enables users to log/write traces from unit tests for diagnostics. + + + + + Handler for LogMessage. + + Message to log. + + + + Event to listen. Raised when unit test writer writes some message. + Mainly to consume by adapter. + + + + + API for test writer to call to Log messages. + + String format with placeholders. + Parameters for placeholders. + + + + TestCategory attribute; used to specify the category of a unit test. + + + + + Initializes a new instance of the class and applies the category to the test. + + + The test Category. + + + + + Gets the test categories that has been applied to the test. + + + + + Base class for the "Category" attribute + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initializes a new instance of the class. + Applies the category to the test. The strings returned by TestCategories + are used with the /category command to filter tests + + + + + Gets the test category that has been applied to the test. + + + + + AssertFailedException class. Used to indicate failure for a test case + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + A collection of helper classes to test various conditions within + unit tests. If the condition being tested is not met, an exception + is thrown. + + + + + Gets the singleton instance of the Assert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is false. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is true. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null. + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is not equal to . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Throws an AssertFailedException. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Static equals overloads are used for comparing instances of two types for reference + equality. This method should not be used for comparison of two instances for + equality. This object will always throw with Assert.Fail. Please use + Assert.AreEqual and associated overloads in your unit tests. + + Object A + Object B + False, always. + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Replaces null characters ('\0') with "\\0". + + + The string to search. + + + The converted string with null characters replaced by "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Helper function that creates and throws an AssertionFailedException + + + name of the assertion throwing an exception + + + message describing conditions for assertion failure + + + The parameters. + + + + + Checks the parameter for valid conditions + + + The parameter. + + + The assertion Name. + + + parameter name + + + message for the invalid parameter exception + + + The parameters. + + + + + Safely converts an object to a string, handling null values and null characters. + Null values are converted to "(null)". Null characters are converted to "\\0". + + + The object to convert to a string. + + + The converted string. + + + + + The string assert. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert customAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not end with + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if does not match + . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if matches . + + + + + A collection of helper classes to test various conditions associated + with collections within unit tests. If the condition being tested is not + met, an exception is thrown. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if is found in + . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if every element in is also found in + . + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Determines whether the first collection is a subset of the second + collection. If either set contains duplicate elements, the number + of occurrences of the element in the subset must be less than or + equal to the number of occurrences in the superset. + + + The collection the test expects to be contained in . + + + The collection the test expects to contain . + + + True if is a subset of + , false otherwise. + + + + + Constructs a dictionary containing the number of occurrences of each + element in the specified collection. + + + The collection to process. + + + The number of null elements in the collection. + + + A dictionary containing the number of occurrences of each element + in the specified collection. + + + + + Finds a mismatched element between the two collections. A mismatched + element is one that appears a different number of times in the + expected collection than it does in the actual collection. The + collections are assumed to be different non-null references with the + same number of elements. The caller is responsible for this level of + verification. If there is no mismatched element, the function returns + false and the out parameters should not be used. + + + The first collection to compare. + + + The second collection to compare. + + + The expected number of occurrences of + or 0 if there is no mismatched + element. + + + The actual number of occurrences of + or 0 if there is no mismatched + element. + + + The mismatched element (may be null) or null if there is no + mismatched element. + + + true if a mismatched element was found; false otherwise. + + + + + compares the objects using object.Equals + + + + + Base class for Framework Exceptions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access string has invalid syntax.. + + + + + Looks up a localized string similar to The expected collection contains {1} occurrence(s) of <{2}>. The actual collection contains {3} occurrence(s). {0}. + + + + + Looks up a localized string similar to Duplicate item found:<{1}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Case is different for actual value:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference no greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1} ({2})>. Actual:<{3} ({4})>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected any value except:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Do not pass value types to AreSame(). Values converted to Object will never be the same. Consider using AreEqual(). {0}. + + + + + Looks up a localized string similar to {0} failed. {1}. + + + + + Looks up a localized string similar to async TestMethod with UITestMethodAttribute are not supported. Either remove async or use TestMethodAttribute.. + + + + + Looks up a localized string similar to Both collections are empty. {0}. + + + + + Looks up a localized string similar to Both collection contain same elements.. + + + + + Looks up a localized string similar to Both collection references point to the same collection object. {0}. + + + + + Looks up a localized string similar to Both collections contain the same elements. {0}. + + + + + Looks up a localized string similar to {0}({1}). + + + + + Looks up a localized string similar to (null). + + + + + Looks up a localized string similar to (object). + + + + + Looks up a localized string similar to String '{0}' does not contain string '{1}'. {2}.. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Assert.Equals should not be used for Assertions. Please use Assert.AreEqual & overloads instead.. + + + + + Looks up a localized string similar to Method {0} must match the expected signature: public static {1} {0}({2}).. + + + + + Looks up a localized string similar to Property or method {0} on {1} does not return IEnumerable<object[]>.. + + + + + Looks up a localized string similar to Value returned by property or method {0} shouldn't be null.. + + + + + Looks up a localized string similar to The number of elements in the collections do not match. Expected:<{1}>. Actual:<{2}>.{0}. + + + + + Looks up a localized string similar to Element at index {0} do not match.. + + + + + Looks up a localized string similar to Element at index {1} is not of expected type. Expected type:<{2}>. Actual type:<{3}>.{0}. + + + + + Looks up a localized string similar to Element at index {1} is (null). Expected type:<{2}>.{0}. + + + + + Looks up a localized string similar to String '{0}' does not end with string '{1}'. {2}.. + + + + + Looks up a localized string similar to Invalid argument- EqualsTester can't use nulls.. + + + + + Looks up a localized string similar to Cannot convert object of type {0} to {1}.. + + + + + Looks up a localized string similar to The internal object referenced is no longer valid.. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. {1}.. + + + + + Looks up a localized string similar to The property {0} has type {1}; expected type {2}.. + + + + + Looks up a localized string similar to {0} Expected type:<{1}>. Actual type:<{2}>.. + + + + + Looks up a localized string similar to String '{0}' does not match pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to Wrong Type:<{1}>. Actual type:<{2}>. {0}. + + + + + Looks up a localized string similar to String '{0}' matches pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to No test data source specified. Atleast one TestDataSource is required with DataTestMethodAttribute.. + + + + + Looks up a localized string similar to No exception thrown. {1} exception was expected. {0}. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. The value cannot be null. {1}.. + + + + + Looks up a localized string similar to Different number of elements.. + + + + + Looks up a localized string similar to + The constructor with the specified signature could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to + The member specified ({0}) could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to String '{0}' does not start with string '{1}'. {2}.. + + + + + Looks up a localized string similar to The expected exception type must be System.Exception or a type derived from System.Exception.. + + + + + Looks up a localized string similar to (Failed to get the message for an exception of type {0} due to an exception.). + + + + + Looks up a localized string similar to Test method did not throw expected exception {0}. {1}. + + + + + Looks up a localized string similar to Test method did not throw an exception. An exception was expected by attribute {0} defined on the test method.. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} or a type derived from it was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Threw exception {2}, but exception {1} was expected. {0} + Exception Message: {3} + Stack Trace: {4}. + + + + + unit test outcomes + + + + + Test was executed, but there were issues. + Issues may involve exceptions or failed assertions. + + + + + Test has completed, but we can't say if it passed or failed. + May be used for aborted tests. + + + + + Test was executed without any issues. + + + + + Test is currently executing. + + + + + There was a system error while we were trying to execute a test. + + + + + The test timed out. + + + + + Test was aborted by the user. + + + + + Test is in an unknown state + + + + + Test cannot be executed. + + + + + Provides helper functionality for the unit test framework + + + + + Gets the exception messages, including the messages for all inner exceptions + recursively + + Exception to get messages for + string with error message information + + + + Enumeration for timeouts, that can be used with the class. + The type of the enumeration must match + + + + + The infinite. + + + + + The test class attribute. + + + + + Gets a test method attribute that enables running this test. + + The test method attribute instance defined on this method. + The to be used to run this test. + Extensions can override this method to customize how all methods in a class are run. + + + + The test method attribute. + + + + + Executes a test method. + + The test method to execute. + An array of TestResult objects that represent the outcome(s) of the test. + Extensions can override this method to customize running a TestMethod. + + + + Attribute for data driven test where data can be specified inline. + + + + + The test initialize attribute. + + + + + The test cleanup attribute. + + + + + The ignore attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + Message specifies reason for ignoring. + + + + + Gets the owner. + + + + + The test property attribute. + + + + + Initializes a new instance of the class. + + + The name. + + + The value. + + + + + Gets the name. + + + + + Gets the value. + + + + + The class initialize attribute. + + + + + The class cleanup attribute. + + + + + The assembly initialize attribute. + + + + + The assembly cleanup attribute. + + + + + Test Owner + + + + + Initializes a new instance of the class. + + + The owner. + + + + + Gets the owner. + + + + + Priority attribute; used to specify the priority of a unit test. + + + + + Initializes a new instance of the class. + + + The priority. + + + + + Gets the priority. + + + + + Description of the test + + + + + Initializes a new instance of the class to describe a test. + + The description. + + + + Gets the description of a test. + + + + + CSS Project Structure URI + + + + + Initializes a new instance of the class for CSS Project Structure URI. + + The CSS Project Structure URI. + + + + Gets the CSS Project Structure URI. + + + + + CSS Iteration URI + + + + + Initializes a new instance of the class for CSS Iteration URI. + + The CSS Iteration URI. + + + + Gets the CSS Iteration URI. + + + + + WorkItem attribute; used to specify a work item associated with this test. + + + + + Initializes a new instance of the class for the WorkItem Attribute. + + The Id to a work item. + + + + Gets the Id to a workitem associated. + + + + + Timeout attribute; used to specify the timeout of a unit test. + + + + + Initializes a new instance of the class. + + + The timeout. + + + + + Initializes a new instance of the class with a preset timeout + + + The timeout + + + + + Gets the timeout. + + + + + TestResult object to be returned to adapter. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the display name of the result. Useful when returning multiple results. + If null then Method name is used as DisplayName. + + + + + Gets or sets the outcome of the test execution. + + + + + Gets or sets the exception thrown when test is failed. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the execution id of the result. + + + + + Gets or sets the parent execution id of the result. + + + + + Gets or sets the inner results count of the result. + + + + + Gets or sets the duration of test execution. + + + + + Gets or sets the data row index in data source. Set only for results of individual + run of data row of a data driven test. + + + + + Gets or sets the return value of the test method. (Currently null always). + + + + + Gets or sets the result files attached by the test. + + + + + Specifies connection string, table name and row access method for data driven testing. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + The default provider name for DataSource. + + + + + The default data access method. + + + + + Initializes a new instance of the class. This instance will be initialized with a data provider, connection string, data table and data access method to access the data source. + + Invariant data provider name, such as System.Data.SqlClient + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + Specifies the order to access data. + + + + Initializes a new instance of the class.This instance will be initialized with a connection string and table name. + Specify connection string and data table to access OLEDB data source. + + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + + + + Initializes a new instance of the class. This instance will be initialized with a data provider and connection string associated with the setting name. + + The name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + Gets a value representing the data provider of the data source. + + + The data provider name. If a data provider was not designated at object initialization, the default provider of System.Data.OleDb will be returned. + + + + + Gets a value representing the connection string for the data source. + + + + + Gets a value indicating the table name providing data. + + + + + Gets the method used to access the data source. + + + + One of the values. If the is not initialized, this will return the default value . + + + + + Gets the name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + diff --git a/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/UnitTestProject2.dll b/ConsoleAppViereckTest/UnitTestProject2/bin/Debug/UnitTestProject2.dll new file mode 100644 index 0000000000000000000000000000000000000000..3cbb0c45ce810d115d4dcf517c66ae6a029af9d6 GIT binary patch literal 4608 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 T{kWn$Q3xmm6aor?HALWF+yB9` literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache new file mode 100644 index 0000000000000000000000000000000000000000..85f5297e0b3de7f47e9e3b65298a251520d77151 GIT binary patch literal 20809 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CopyComplete b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CopyComplete new file mode 100644 index 0000000..e69de29 diff --git a/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CoreCompileInputs.cache b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CoreCompileInputs.cache new file mode 100644 index 0000000..4f3fd93 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.CoreCompileInputs.cache @@ -0,0 +1 @@ +bc6cd7363901aaa0946a31ad65753c9000a2d79b diff --git a/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.FileListAbsolute.txt b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.FileListAbsolute.txt new file mode 100644 index 0000000..b055fc4 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csproj.FileListAbsolute.txt @@ -0,0 +1,17 @@ +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\UnitTestProject2.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\UnitTestProject2.pdb +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\ConsoleAppViereckTest.exe +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\ConsoleAppViereckTest.pdb +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\ConsoleAppViereckTest.exe.config +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.xml +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\bin\Debug\Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\obj\Debug\UnitTestProject2.csprojAssemblyReference.cache +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\obj\Debug\UnitTestProject2.csproj.CoreCompileInputs.cache +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\obj\Debug\UnitTestProject2.csproj.CopyComplete +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\obj\Debug\UnitTestProject2.dll +C:\Users\root\source\SoftwareEngineering2\ConsoleAppViereckTest\UnitTestProject2\obj\Debug\UnitTestProject2.pdb diff --git a/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csprojAssemblyReference.cache b/ConsoleAppViereckTest/UnitTestProject2/obj/Debug/UnitTestProject2.csprojAssemblyReference.cache new file mode 100644 index 0000000000000000000000000000000000000000..0f7725480b9fec0b764160b42c7dc065d3692dfb GIT binary patch literal 28792 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 T{kWn$Q3xmm6aor?HALWF+yB9` literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/UnitTestProject2/packages.config b/ConsoleAppViereckTest/UnitTestProject2/packages.config new file mode 100644 index 0000000..2f7c5a1 --- /dev/null +++ b/ConsoleAppViereckTest/UnitTestProject2/packages.config @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/.signature.p7s b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..fc2a454cc14de617dc31af6aa163c9bfd712011c GIT binary patch literal 9355 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 Yh{#;Ec6d2?AR3h~QwH%EmuzPH7g-ZJV*mgE literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/MSTest.TestAdapter.1.3.2.nupkg b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/MSTest.TestAdapter.1.3.2.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..5a48e2394f9987b5b3e426f962a7387fc55b8921 GIT binary patch literal 781518 zcmV)pK%2i%O9KQH00008017e1Od)`F{SyHI0006201E&B0AF%tY;!Lza%F6Dm66M8 z!!Qs<_l5q0&_0&z*sT-ngf6@2CiM@Dq>&>UJ&=^p{(TjiLP9CDn}K=U!@bO~eYXd4 z!kCPABdse=2|DSOaq~!zSuc9J-Q3>|J3K%xH)(G|B1PoVNcTC1HDgKc(L$>Mab^MJ8_dWW&L3F3X3#<<jR_>SrN=ly9NOvpQ$xf(Ntq@zGdrH_}-TW&fvzS3a1}1&P zMTkWmv%z%b^;?}Vo{YrbHLT~*Ahb$1O?S2~blcUc1L$fkgzBr1tdil9QE0`RB`yU3 zwCzfNWgOVeBR8K=O9KQH00008017e1O#Gd+oQeVf02~DX02u%P08LX=Wpi{cRAqB? zL1bZYbY*fbZgq2TWn+C*!A=`75WOSu52HPS5OxxvP0?miR9dMLRFx9oh#Y&e>#}RR zwwFylso&5;rT$QVq29zB7D{`tCC@xR&%7DW?;k(Yi&a&^BU&f5nj}LqNB|YrLaKa{ z)P8w9PA;)(WW$*BOr#D4ao@^rL;Rnua~~WR~fdR z2xGM`v~}5a7j8;BQ$*-S;d4N=M8CyvwX}F8IVy)!&e3?LIA-3~n9_f`OU3g?bGx+GQlgx@1(Lzc1y&GP}NS4fm*OQur#RJ+eq|tp1AJcl0js=h7GTVne)p zhWen;a+T5^zN-V*sux|ZUj(;oN~s>`#Z}lpT~0>h@%Zdrs8hTaSp+(6rSWZr<^=-V zRs*~SAsyGDdcc$bTp_PL!nSbm(Xt8~Z69F4913W|bOiSITH0A{jJ7_QP09RH+sd88 z=DlMepFhmul$?>l(KFL~Z4rj8_25Rywr5xgcTx%6IG7saU^qBBgo9h@>fo9AT1X9{ zY2O}pJk!~imsGEyQ`%2Cs=&2bTbUO=`}G}m9n~_0L|BU?FfB{iU>sOA1&rd}j-c1n8@^q!3@Q;my~NHIthv>-0ncoXPp?gq zR*P1OAYMBwcKANe8l;#c0XPf2FPIhNYTLg_f6%-k!vyGm2xe>Nu_Bj}@6aWAK2mo?s z#Z0ine21Rj005Bu0RTt<003fjX>4RKUt@1=ZEtQbO=)9tZ*y;EbS_qDb9G^CQ*?D? zX>Tr6Wpi{;Y+-a}Z*pxeO;c25b963LWpi{vWMOc0WpXZLY;3H32b@*K_5Zo$-Pg9g zvhVG_ZIs>R^2)+ecVX$hv-ED4B6?vLP+1liQA7m9u2_TJs2D?3)L5}3HZ*8rVS`-{()_y!oD)JLSyGnKNg~PMWs^Gyu@?zavKg9s==iDE!a= z+VH=;iih)HkN2g{4=EF0>O5n~(&kPpnykf5C!F5tq!Z3K!&=qp#8Wyotv;jE(la`Z zoHD)B>DI}o)a2&+DrFi|M*&P!H0X6fWWJs5A?VV{uk-}iqX2jWt>0_t??izL!2Z%@-#PKyv%}pnvpUXydH}LlXr9-@-`2U)w zQhzzUB7UKxJgoeJDh4Uok8xBY@@m#ZyR z0KPc>R@3h+)$E49s@6(mRc~b~K&Yn%12I149?(`}4=nK+$sVRjkvIi|U8_4f$*37; zdNtF@wGxy}B>q~bqF1IUox0DQdFwpK$5s-ZIg*_D)=CjM9_s0a&4NpTa1)kbMbWkp z7Nsg8zV-zns2natPM5g1lA8*zq#u7!kyx(|C;W#aU4QhuA-5B8A z>K32UPi|0?SbpkGe`@xis+9C}!D(0~jrh?t49jFQajw7HEP&E_# zmyzp2J3-iplrEWUAUI#Kex6z~<#pwgG13?LEfB7R1ug?(DGkG8riRw{)8LpLK>{6vl_ zNM<1-Uwg>!icZsu+zvi+9R(je(78K=P!1?0Ujo45GN86lc3KcDY$sneMQ8a_Bg3_1 zcRg7xV(BtgGNM_-N!*y&ofAoqW>_Ps!-wN*H4)PqMT|UbglPDUrqYZNq7D1D8!p0M zH>GW%Wc4-O&O&A(3z_{mOiIjgLTv2!r-3=1IyDQ3?pj77rSl>oStCOG1H7D3FAJO$bOr&?W>WA!HLmk`T5DVKJUUJyp0w&Shp1)!8bg!ATsFxSViB z26rOdIfJ_p?wY}sgsU>RnsB!aHVJpn;5gw#1}6!p#8Bq)UBNw_#`3KctAt`DW2!ZY z`fX7BT9eT+rx3-@&14o+3XZ_07f5K;(x@_$9ub~MI3paiBlz7(k6T3WWfF5{L?t!* zQVtKWpP7^j2tP51i;~L2-nD{A)GMPne*?*Yld(Qts!#J&5<`aBNJ&m3+2b~+k?)z%Jz@pZ0n=)G<`-K@R5w?YNOnwf~eL!bO(G(8k;qrL`vO3_EWj6 z1tc6jrWdEFTyLk#7M^xf->%+HW8e7g?19fyMLT`oP}Mf@4)#)LP5-*{6auS9f4rw} zp|?}}cPsC$StD>wkGjPixcQd*KCkKT?NoIzcBE!x-89mSn|`3;Eu^w+#N_G*F|k6i zi6ryuOeVIZiPU-OLQK3qO}v4KhpAgNy_6>Yiin>w@#8e{b|M~N;*m7*HX=Sw8kMyO zaZoW)Pw~}LbqzNUow`Sl3B5~%(!i*@;h4~^B9w+%UE9&2$(0yHBP_8*&_jAa7d>pY z5zu)sCMK!e5e%~r^;PaUiF%og%RHWviQ}|WTV(`XJiHPmVjdpIeVe|uPT;w6Cb#*C z)MW=o4<9)q`iUEMA{YJCPedn>-C~@hThw;!7CxgXs!FD%3XP_2HW;vhIQZvuJ^k*W zDvCJKlPc8AlW4X+nUW#7QTG<{KT;deJPzVBB(YARu75hhsGL9CLceUr{${NGAA&{R zx!#~oDn}xjuLbnx#UQkBBe7U~z8wAb?BvBcsi`;CVt<0BXqv{%CFCpxTeEfMY&kw{ zs>jc0N@MnPEQVn9)5vO#rDe#4Ew+r9R&X>gG!~yBBWReXQG^^Vk}0wr&m>=RSY9qq z&#+ZZjl}%ZsaR*EsrgMyJ5YT_N{Jgy7uiHB6V*kvNq0!M=4O!{CtYiUTy{0>#qXL? z-uc>4dgx96K-knnLvC%gxfR{tCC#{%6p>V;U^;&Q^fNr;*%6H-&P|^ zj*dtwUDMkXF<-}sH~wUbq~tYq#yCwUQN#i}#bY9tQpAlE@j3lx%UDJcKc$G|?4Oc} zIIUyEa*C+9Fd{iW6S0CKmQX};oRv8$Vka@3vz~{nf?U=E6RaBNSF6oU)R4YbA{fqi zc^t22I$pDg*YoIj`5Z5qj<-t0OCBAsfa9go@m7m?siWfsI9^RU-Wn0F=ID4qj@Kg{ z?@SS|$I@VBTSOs8=) zO=}v0Elf*FTI;s<5qer!c+$(x!?+k~?Mo>(2T049N8e&@{cN?apX>*;cEd)5Le|OK zXly5fhP8o&t?JfsMNAUfU`5ZD`pBs^q;-b!Dxou!^fX{U{zjO0l)ILvr?hawjj51M zglmZZV!`|dXOxp@^l(PGVt&Czq0!Xn%2*vV6ocMf*16PqPm$8o=orZ2F{JBJoZU!w z@`!TY-tO}x4UZ@%DQVV5BHJrU&gmIPP9l6O4I4~W6M3qdn+*aBiFcx|m9TI_rmlZM zd4>WkV8$rXn@JIBK93k@B%^LkWL3wq_6xz1GO}BwYu0 zD72cnfGbm1O~xPH+DypR98^h;2Mo0pbp<^@vvP!5_Yp+iWQ8|iv^>HAxCSB*kQ_=5gmja$s?*h{le$7iLk&q{qSD|KRS);7*c z-Ita6RaR;|FB|pvtkk=+QoqYet$t?A=Gbhx`o)$_MTlw+j~;W<*Gh0uY;whsY{_;#U}@Lv{Ljk+!k@sp^VMI zxaqa`R$4g;9V}sVFf-I#ZxGAPYn)9|X#QF@$w0eF21+YtgH33Vgh4ieJvFMPhr{M? z>2vbC9R9FN_)k>zJl)*M`k?tBnLu3T?__?1?bHU#h7%K_mY{EE67;h8COTq-3 zFhLR~+JuRcFv%uNl7z`NVX`2Y*HMS4rp=L^9lOR6$k>NZvvoA{Ak|#69-vP6zVOqg zfcYV7>wC~mj#P!mdYB@8EFv-CF(UlOL3or1KR5_a5aCD4d6u1*$VTTJs0MTG8qAed znr9Q{Ny2=aFkccD*n|a=u+Szfl!Qe#VUZ*pXA_Q-gyU_(@ses#Nn3 zG4}@H|APEC3jYV>ze)H%BLA<1|2VlzXE$SIi4zMZ79Vco%U_)eyO?TC3-n!+)2L`;v2 z`As_JFp_1yre_N?Yf~~D8e|aUXkx{i%UOFlt&lDf!xBXDbd`2SX=dSEQoD3N2i#e2#Rlos03W$l{?Gz)%F$h`#j*&-Z9GuU|_?#>@cq2SR zeSow8F^|UA%KmLz;nooCIPm+jek2rNSIz3ZCr)Sc- zT0Tsem(kV!ioX~h5S5c#E-&(+EvADJa^vM*us2@(?xxC!t)MLq=Y(@3Aw4ltMKSUe zD_j(*sScxvf+oEx^(bFXA|}IzXTsbfEH|J>=g^*$YN4j#>vg{;S?^8uGdy1EcD_V1 z%XSAfQ&twIcaOxb$LJ%p!SsbXicXK|j{kgO*Ow1~+18gtAQ~@dUnJOK6 z^DP)5!mK329Gwo4`4}1dmp@U4W0K5YeC9%AZ~c*qs7G_!OE8cvU~jeO1r?_SERybP zb0B`MFmchmOk1U0sJ#0pruP|`J#-c&LB~@PzV`lp(b$-;Q7ju{%Opp(sFb;2@gP>+bn6u=LzL=PMD5&kOcZNB#VDpgDTnC%PFIo* z+WrcA!zjW{lkDUqG2eVx@YO`Sm7F*ovLlZ>F496jR8m^HCX)!FFY_fTcS<}Q-=tZu zg43j^XS~*HV4uO!0EaA8iL#xL-W{r;)SCaq9XQ$7unzE8FY;Kgqh}Sx%XNFLHz=(? zL)y@OsDq*1`U~eG`b-z794+M2l^IrP`%koUwBDp_W5m@GV%!&4oCnf@J*hiks)^P2j-ofElt*>y^G{}g@t{r>1;kiz&{_WFc{9V#-(HCcu_U|~ zC86q+gh7|cIpB)BGyQwkSwbdKd#$Behxj1Gt66<)nR6n!iSZuqPAZ@%sVm?*wxq7C zCB>=LAtAicIk{fX_NBe<>nJNU-pdp1vG*w1EW4*@SZWn)P>N%{M~yLF+rPNu2XU75 z-vXVYr2V{RY#e_ihfZL;Pg4yO=eeJf`&o z^Vn|${5&rsfs~K{@-E~Jcmu?~Kgn7c7B298EX&-q9K;1jJmBWJ#H1Fk1OEs}b?0N* zN$~Z9<>Xhv3kN?EGH$%u{3&S$&GrJ)7w@N9pAn<1&mp6qlCGa3er{j74JS&~7xCBS zA}ySwx_4TCr(rsnct_|9YWR`1Z#DJ0knXjyISk_k^i+PDFdPX9+5saYMDuURX(wx6 zBDa~05LI4_j1V~<`ru1q<3A8G`ijs$ZS)U9-`ePFLf_lypM<`&(Km$Nwb8ePj@als zLW&~M_k=#R!~R9+GaLOt2&--wZqF`vbdKMR+!^vWK2a1x`8ytYhn*-;>QhH~rItt9 zUY^wcVq*WFe`8|*84^WNUm{ZMO9ab(iM&!@!dHX}c!@8eMtt`9m#|D%WtMB~`ix$x z7FXlrRTf$*^+O+RnX2(;)l|7qM}7sFlR`}w7o!3z4y&tdMXE{})$9LFc)Lu*`VUC^ zZz@lXNO&fVv2grlb@d~3K(&*mu6~q`_-c`a5}kpah}yT&rE;@2M&nv!h8}Kog&QMT zzKJH3;%whU)89xrwa~VKCFhFLieiN|fvo?cQ>|G)0;}F^3G1mk3}GC*Tz8PfC%Sn! z{kfgj0Q~L2=fI8tFG_Iu_>$dK>J`3ZXA(rcOHd41D&qZT+Ty3TTQw&Tb0VmWiEoPJ zHw7Z8?Wtp;q<$t!yJ~3^B_*R)skB+`OO?q_3gst}!-{r%GV>kD)1kJ`uz!PHK3nr5 zu6wBxhZX!XsYY0&QZzaV6-ju=_~45i)-g1G7xpAx&#L>I(mGcq<)iNZeMiC{)%}lk z%uCFik8#RcHL9M5LfwqKEDELU$5715dwfsnTYew@^Bx;bwMwMZC=|>d@ z<~c5%z@nH$ElE>JskoIKD_>e@R@s)3RnkhSa0}rUqE;Pt=U|1JQ5^folz}xq3(2i#a|}u+*~Id|$b4=MLD<^L zX;O$tNo}E2t)UdQo-w77>?(d+D0(uYwq$~sM4a&1R3;PqM1Twp_P}xd`)a z$DUeAbCtd3A-U-F((!tLUZNyC`Nn(60x`H>B%UmnnFMGE1ROv_6B2BI8s)s$FyoVU z*^eoG(lP1}QE854UWhBwlAX-O3a4X8FR{0N6DQ|jfZ)h4Vjl6Ty|d4uH(XPk*;6uh zS%nk4{?QDs&yJ`A_12n4vV=Biz;rFVgk}zhF-5&GCt7m^Ck_iP^>d0 za?9f9q>GOf&(9WL^!XB)yfkwriw=DErM|iTS&-MGQ0vnV8=W)PqbP)~ZzR?~*D+2P zic>+dwT(i|E_8*e6Y(@rW>}pSJ`-nkQOJDbwz}ePo^GC@q>snF-Qjqg9FtR^`&puV zF}`IM=X)?@uj@z0ypp=UJ*C8TQUv#rV&mSKqt!n^MlHIJCTtP$ze z%PUlo#SY7e#sV4jVi8FkXJgHTH%;n|(hSs{D241pMHCo7L95xai&aw$whY2}zklG9LIU!_m< z*4OCA)%qv;!R~wjfAd_)TIA7IvHy|jLkUqeqlF@wNkV1{UH*vUi6EopHSQ*Sx|#Rw zjTTCuZfqI;<`fwSJx1$a$R_CCpR|v5*`kMAaFU@~6^>y@Pr*a*9Tm#TNhm9KIVNc4ek`u|C z<#%Lb^`d&e!Ge$EQF4j+wR)2VQ#;S&X~_iAJ*dR`=Q|Fau6!GkhYp3T|3k;%N(%1F z!4zVmN|oUJ-21!R3=0b$5q1{sHaa_qD`o30;DeAZ+JG`bZZR_W7`!Lw5jzouM-j>V z5fb->#Cdpc(97rH?U-p|e}%TN1d%Qp4d7d_F50g$>c61_nMP#r=X5tE`aph*c1-~=gzE)XZ02U5?WPZPcPo0mI&(>)`0U$(_==9}gQVtZ~Rl$RJC$TbHk zbO^NNZB8Oqjp^kaHhNMDgDKZgek%n9^35S6y3C;@poWn%oIcFMg?(NiFJScA6Uenj zP?sM`bbs)aY#i++y11u>hNo%KQo4`o{ojA3c8JI16-tM*E-(JvP;d9SlZM-# zK>&u83cZdl!Zf1HdrcQ>UVFYHeYc*^ZjYjQs_t%@Lafm|Rq;%n3_53Q*TG#F!Hx6E zWGqw;&SGPTPh*vir?6usjv{7G_KG6r8G@AOvYw-{sXIO#`g0$0HmEPS1G+cha+%B1 zGv|PDI9X&pTmINH_8yl8lYwqzL%@;W$tCIi56VHeo+s7C5n*S?2u3pBux8RWrK-8j zCShYOp3~JtnG{^&L_e_g%**h%y5{; z!nGeAf0{&#s`te{OaHWWvArNy$BET(EfwcYZue2p`BeL8aRtm?0|lgiQh9Oh#%K0* z(jDZv{d{?DUyHgq9jTRk+EFX9*9v|pskV8m!Z_Kd)}v0Ury6)8ppE=Y*#CUm-aVPd z+Z1#}fNo3gqXO)C8mD$>pm};KtERb$+2CdSM>59{9;=a5hk7;@azL&jeIlf++R>aZ zXPQ&!^X-@%nP_sosoR>T5%Z%ti3x6&%uOeiX7m|PDqx;VsyEpw%;^|2;o>z8sQ}gt zq1|wx6w++Uh~#j0@ulujk*PIlyA8Jw?eG*0gfd|l^h2aG)OTkcN5$0wz#z7L%%b(r zY_7e?dk&Q{l9NcfJv(!~^2oc_Jd1SPFfxTRHXQa8PjpU>$Gv@Nua^z6HUn{&nwCq0 ziMLd5U(~PWBvycj`%!Ltm+E6}RUS5p$|EH0vowWd2&@%9mawh5s|Ca!Ovez6phAy@(A;gL7Rn6*-b3&hyjvWSOP{q^ zlUVwo43*QtO*$>Zq(x$62Ryr~iUYC_=NRTHT1>e;UN)2Csy3i=Z36mQ+vYzIil#%3 zu=5Xu%HzbdH7d&HAxp(I5E_GYmvyj0AE(HwuX9%2MOD|i%Jv=2 zhtoUfIjnIQqR~8YA=gTvxDRX=bq~Rvk7nkHNk`e&%nKDh*Lab_M@qM`UE_GtDQ?Jk zZz6A=%e+_-2Tm{GARcwwWw*ZA?$#Ge!Va6TLlQ2r371I1r8ePGNw~}=TqX$@(eFp% zH`!gVZi{manwyDFS%%+5GKI_SBrlhQD{R6QlCVYQvBiBy)Su}%<+nXB1slAvXa zCz-%C$cdzI($RnPpG5w9$j@eil;7a{@FLj$Hih3t4lCAfBE}yk`)HmniggFuOIxoc zBZuC)lYU&S*U(R%-g+Gs^8WOW!cRv+8P|F}fc=isN?f>&!aA`kzlc^y#GERp(gMLLrxhmkc z=Fv#R-vzW7!{7PTup*|}K%J7txf{p1Tnww`UA)*lSc=jnRaGUqXokTj0&D-Qo zBAu${-Et?9&#Kd=xlIcAcD2tA=#iZve}E4t@TqcIl!&bT9;AJprg6@GH`2aI(>PtY=OL50tJiMd3&hY<4!C6BYg%ZCZLB@3TT#pOG(KMbnYXA*{h91;_iMBtM8pWaB9Wl(TmK{(<6Owap$}5NB4xTD&1nnC(I4y%DEr=W zHtz-8salM8x?P5lC*X;4F#;Z>pFt(DXc-^ySS#?iE=(_0M6gr2`8-_6SN9SU0zN(z zhizwAD-}K|znC|wC@XA`CI%hrB5^b2n$tcilpEc)lqIbwNM0aM2;oZ{^K&4V<+PBj zf!t=g+G4F@Q`as`1Y}hLIidVWs31`h$PX0ktO|Io)uK@8`UDE1b3z4yfHb9Mi!WyfDcEUPnso)MUBGNnd#bvxpMCuoQ%yK3UuIQFc6FhUIqgJ zQOsaRrUsd*2kBaeU`LeRa7u_-q-Om=+j960TMm2Mhij|aD1=_vN|-g|^q{T~3WVxu zffERAudn8g5D10B$cH))QNzfJP+_1@^8Em{!&y|6v#G3+x~HifBi33%Q4uK+wf>qB zTv=PL2wSfBm$Y25v*n6AwpqW5jBBJ%uZ64mfbjaTiA30LDlg8%HRgY6|UlS@Zey(aI&Z?C- ztH#aS-p^sKxv|vwh9qb7nj-Ep2=pgHY|8O)S3=b!-CPWM;9l) zP!sU!ReZuL7sZZs9<`tlu6ALbJhm`k+iJ>T#0jE2w*Gi8wcFve{&*9K_~!F5oz`EG z*W5(%=mNsKIEWXSH)p)Jkb3rp+CrhE9QoG&)fPMLEOz?wo+EXsHVUD4-V$anI-`qU zQ6APs^wpt`U-hT2w(?gLLa(eP=z*<7e6-`MG$oz8NEyW5KH18~$$J2qOH6bR;QLa? zm8RcuH|FJlX6P>S_lmqPd=`E`p7#RiguG8=gUcLio5I&qTB!0lkz7wulSeo^MChR! z8ebzaAK+mZ&{HndPur_-1*4e{ve8_8;U9){etaYTPT)Rt zF?XF*QAW4dg>J7|J2=SS-n}~PZ?DV|Lgz;4_}GibxkeRdGv&j>)z#oSM~<`V1XPN# z;)d&yGBJH7*Sdt-?cI*;R!8l2DYqMi&{KU0zGA^exY{B2typGv6Eo#CFNB! zP${Mki6gQfrsJW0Y2@yI(N@$$`u>;Fe%Jn&(|%+BD`~&G`7+i_WT7vo5p@Moe2Eb_ zGhazwzlwSvs=jpQ!hDqGtN`jF=EGz@@R3T0RW%Y}qPopTi0UEgRWxCU={~im<6JLu zyNXixCQd;e`Iy`jcJ4W-IqR2ZeywJJGwAKHe$llcAL{4!W!UM)J3j(z1U!@5S1Ccn%9LWVJGClyV$4fR^AvLN?{Q3d&i*IwnJiogHErDI48Tc@_NnYXM~D4=LITh@yH>Fu z!fUzt=&|UGlk~Vl#=$NaasPft?|C)Tdz#OtuGjo6y13@O4!;STKk&jV67tkNMcR!! z;MqxBuD_R=%3U+y-G5g4m^UvhQ?7$_&%Zqta&DV-E6YsWs8HJHt$pIWb^CG0b`XD} zH+C`6LDWD_K$qRojh&=LcE=p-9-=!EwUs)GUv!jx*irmRTH%O};z8xbLr)ONgCvqY zZtMDE1&^4=CyKTplSpTpZ-LKQr{`H*Oz}M0>!^90%rX6twg~^T_f_dW-DEqC7}2^| zWRsarGe?uJm*_9+JMKv{Zd{P+26;8~R%Yj~?7WYFQ&rFD1OPt2KuwXVc^9hp7&2M7a zsyuW{%cxQf-F%F+-@g!Y)6FQO%0=rtqbg6Q8%{>9p?jNOP^9(FWj@K~JGN7G!F(Ij z{6$IMpJoi*+C&49tQ%}{Gvpa_11`q+(`X$$fX^vut?yGa2(!#CQUL1cO6y@`AWcL! z6QQ0?*SyzpnyR-$tJ)~U9Ds4K3Hyr%y3)}=Mhj(NUy+mO=zDVRIG61>EZg)gU@kyq*ir{w`^T(8<@em2^+7{cTFN>5%gKN zl1xuj8g$ynw`wsTFV=LobvyMG>ki_}Q#?l6!*W;qK(@1XrOrn&m4W}8ng;JFJqA!zmF)m2rvesak z=8g{I_-E5}CZ&tCa7wt7#zdaP*hlYD=#}70i{+U%zU)OWj?#;lSS-FFwyTXQ8tlJG4V*A4quk{ky?Cc1` zyv}@@Z>I|0$>X)XI@2pcF8ljvz{OK|IsqUnnb138aLZ%1=+B3}&qHaL-?Z0Rmd@t! zK{d1P6LOUOyGgznW&^E@d~S1)yy-^!{6-ZYo}hhyBgaulGMnbAZVw+nG5<(fn<2p; z$SAtf<7K0${o?9dI0ZMglfrX1jgYArgfZs-bc|^t#)6-YF$06%$sE3=O>x142~fJ2 zuSc?f4v*V=c!)*}>t0IgJf1|7ZXBb#mGn`Q_p+Yh>C(MpdUH9w`|R|7 zL+S1MKcv@`-h}+K!kdt9D!d8#w!#;!O}25MW^F_cYqWWFhrM~lo?fa+eTs)F0Um@$ zoPcfx<7&-J8`8yP3phpO2hh=8^MxZ7ypsb!k*B0GLl(NnD^I|{Q*WhdX-Mj(aaif^*rd!FA^muS2 z{FbaW@}|Cb`_f*od8|DO|E&#`|IW>Pl9^;x^@aUf%A=aEV|E3KWa#U5XU>skPxD1q z^spH|rABP0h0!7Qtq}G>cXEN-VF<(_Kz-Euo$yniw;m9F>fP3ZQKiI$_Z9bi3l z6xG^G>7kB^{Wx<2IWGEh97;#SsiHqu!sfe0e<61RWaXjt zW7_2)>yqD4-R37GDL*0`G^*j^$69bh%Hm?%R@#qR}C0$^IiJNE9r?YZobx+in%dRHOX+Mnq)9D-&drS%gx4} zqMB|2LtF&Q3y9rLxzXnq*6oDb9T9oaf%D$pR8PrBoQ8~KS9jC_tw+g%lD4DSAL?`| z)4_g`v#`ixo>g$xJC~dumi}Y`DOq_ypgF{^r zIignL*p9Xz_(_<*EPlupruTn%cbhhUn?9h)<8fY+ibFHlSp%+sAqxrAcJ!x$j$=8+ zlJZ(b{^FV|1to>>G*!=M_adJB(}PaL5y;-JPHs^aQ=! z4yi~4hjGAden>HJ1i%J{t($;A*&!cBdt_j6M&*9>@ z6t}OMQN9|9&Jv+4rnkfJ=P~i~1j$x9{TA};0UwV%{N;Y(6<_!>otKV@!mvJK9ZPH4 zfx+Ib!`m{T7Ie;(VgPc53>kB}a*#aZZQbe`%%X)3AnS>$`e~V-LEc-^4{C zZH@tuPNYLTvXS5t29Bpa8lUVMv?^@gXLpTfj_DfDimoAJUvpIdii*=z+@x|(JrXj! zK_jRKU1Ds-bd-zC%_!NZGCWMo_KIFDPK?s^|Md7sS3tgBkUsz594{U{VkeA!#o0LG z(4mkmDomUVJGx675xw_vLT0>dr4rUS03ECLB}*L?%{lQsPXf@_KHcx;Ds%az_3GMe z{Fl)(h0aZv+3V?8Vk2(bw1y0UM!USHBR0j2WLSw;JxI zT?fs4fsGcVTP1+^+;KfYK^;yAzDVj@dwzBJsN;BY-VA^@2Cnl!yg3l5$mrAbzVs=? zkKvLZp9_Bco%g;eAIF;w$dVB@OU$om(cyUUz+OX_K}lW5^iQSqN6PfS5b1yU6X}oo zU#3s{1B)sB(K7w7MEd^#zRvYE@O7?#{zPtLekM124=Dj9qdV4T3FS9d=J$=r@7tfq zVch?!K1#;6$nW;^jkxrf@_0a_Hl!C!UsCv0f6aWEJaIaUWWHk4_RE!pd`5zQ)9Z8t z43y(bsSdQx^fkXq9b9Y5D~A;&w7u#}h8^dpqP)kFlL#JjrYcAEXa*aNNv*BJbuG}c zfe%@bKn?R{D_Zh|3^m}=tp8wCl+T(fCPtLN0XIJe6!4Hm*F(FxzV>dZy0;@^1i;@|s?>3~4-a6?$+2Z zpE#FsFT1TbNi{Osakcdpb)kSQ&kg815FR;S%FrE1IgQTL^B=o=n;0anPH3XgCy8Hr zuVyO0S0gI1%uxyXk_)wt?rcyObs2j7EEPmwnE!x)8%ghAde!MyYwk+qy2XpDB0$`% z;J*<=d*sWh-3Ib3-)yL4XlVxV3L9$2&8lj@O{1gYb2=Rc;(^eprJqQ0{^1<-zs$kbt1W7QU1_>_2!3?cUI~>yNa=J$NqdCpa2u zOGT!mh?!1w6wa>6X{bGFUn$o$)ysVV^GMN2Ha+_{NAcS=6}h{+;|S{7spH?!2e6G3~bsL!~XV_w2iyme)#hkwrFxp z^S9pBn~50mr>cIUzD|LWpdBJU6Ys-{`y{{G0oVO~c!dv(+F<5p9{uQl9UeX3_Ftm7 zF0}nuD$8x%hR(B}Vc#j!^e|uQ^%?tn{Mce!QSQO8l* z-M~j_?*l$c`&$r4X@3LaDDC~ki5s+LTrv9^)fOhV&?nkd%dN^2(b`l~SB1VvHXU4n z(Ap-@{Jz3FuN0j(T6mYzpJ;UR9%YW&Lb-WF1iI6X`YPLM>8}!obZ?4oQCF%h_h(`u zQ&d`~8>+{vnJ)BOAF#}}|Kv>O=B9m~CJGBz+4~VLn2)`0CBMzp@d+58V3aHiF;8tF zmWYQ{{Eh~5M6o`kmI$~Vq4ZLip{J_cPWjjI;W_IgV#V{M2lIn1IT}Aplk4%)AuPiq z*rL&OeuE!vNmG(U3D9z068b9QY?eT^ia1@I4C9ovZMHp0nM3HTo}NynH>HxFPQ_!< zld*LBod3j4hmVc)$GCDIN;7jVmB;bmh2VzE`k3kzqCm$m`W>X-*X@LSZ_4b+e}d8L z^LP{fcRYN~f(}QmQ>9q~Fb$*rOVMGqX?hkX8BgZ)Ma-n*7PyA;SYKxb#cLe~h4oLWk{XR0);FZ) zB>D$6^IJ;cJ4L+Pm%^31t9>BOLf=!=AbMEv&?!EWL`e=W!O#9h=wRdm2&bHBO8@`b&2s@5sE>m&D&y{C66xb5Sb)$s^4Q(-L5jd<5@V76|kdt$CO} zI5pk(A0tU=9zkO36KQ)ly_6!}iBwxCg3qYgBE7)_qi>iXS;b;&`=% zaAvQU@BY$OZ>o@QMj)asUw*4HrEAfi9kIXWf#cG;6QAc=&w{CIPRk61<%XAoRYXxmJ4sZCc3SQ)VSiKwWFTziceNsUg65_&vdOd zY70Fef|8Y=C7?G|_{|aXbcO$hqZ{^Molz_X#GfW@p|>M4am9lJrCG`R{y?flZJ~D` zf?%Oy?@KN?I;!C$yvD`L;6ELO4`lEg8E@t#2F{8!1z-I%dW@!~xfd~)j+Z05R<9RE zd?fcJa=RRSSMzqBW}QpF<2Cy=IiV7vl@mcy1%Tns+(7FEmV z{0$j=%ztp1)s`=qL^c}pYa*>xTfSn_KiK`6T{5be|CC>R!z8kTnBOSe5hoB+zLQMx zP=6Xeef)4m9J6FQ$C^GhJ!^XR>|I+=6mce}-~@oK$k}!H`@|yjPhZuv^o+&L6r%wL zM_p&6&72Oa-sQU`&~?nrarAd{&O`ipHR9pR>A`PdL&5sZuGr=G(xUL+N^g4Dk#fg= z!EZw1njLUdy<>D`!PYJubnG4Vj&0kvopfy5M#r|Tjymetwv$fB){br6ocF!wj_>_Z1dTCdVJ+OZaNt@NGXEmOCTGuz zU;G@gwIn;B5xhgrx%N`w;-vCOGR*MN68?PrZc9@hWU{?Y^tflgpSP5&OW47`;zqgw zvrsi`@}|QzoqXng%t2<=%bJ=J=kW4pmCv%q*WZ*tS4;fj#C|3ovEO3R;~uuZ*?!+0 zpT{l(9I~UUp*N7RkyHY;JCD~+3l$!wBUzZLyilpu=7$}s{!wjnOv$V%`7P}QYkjs!eM?er$kdODj!#vE_*@=+L zFf$Xm_Um6K$(+|<5`CuSoGIB8I%1Ev8eY$BSpgyBdu2$`1Jc1$Qrw*!cLZm*OE;R? zM@eg1%ge=h%|si4-_oW6YgN>eg#AXV7a{?|k2G4#;qFYEgu)K)8fr*5IWX@DngSWT zmTw?^rt*)|O=#N+TOq&8w92qNW~wTIl$gH9)bNBE?0+iO4&Gz$dGEz;y91j*kNaMY zYz5y}3+C$*bDlPIizJ^FS9tm%6}O;`y~le*5%nQG{+B+=g|tQFz+rFe5d@y(o{)D3 zcLNRFAm$8bL>#V1%2|9c^dnVJy87RLGecC5<7kkSBip4HYR!_y`&+!hyD&5nH*TWu z>)>@63%Ws8$YG_T@5SMwL8m+5!hynntv}CL?UoI-bQYL)Xo&J+!al79r=x@j4!aZE z*a$YWWUc&-Re%~M){sP8h9dc}HE40)lM6LZo)ej`G?jBYNyZ;H1k}=9UgbgP!EhUq zn_5zLT}Wz&%zo5&Gk#RL0y)~{z9RX~PkIK{9Ru&w3Tlj}z#tm?Ce5V5#dVD9tKshb z{C^9%c*ya?1O!aLe$h;nb$H5Ha(mp-^Qyp)xC-z95eE6-cnTE;2RHIZOgeQ`2$RQH z>Tr#-OkplQ^R4fY0{i~2J8=u(_X3i{)la4DsY7!r5AI_q=MI62)=ri9qkH zCD=gLQv2r_YTbaA1~2g8*99~5z$6qBI<%-&EhV$%q2Y}~?m81OH1@PWN)8P6B(F&l zc%DC-f0rM%U-T{i5Sa(oYgyeV#6zw4Cz~f4x7>|A9Df-C-I~+S=Q4$(YRnG<@H@hG zvt_cBczX%Wc#H^)Q-~`>QqzL&a#tF#rEenke>)xeXQN^4ff5}j?*&K;Z{{?inDhKj zZ}uZXB2Iq`sN_N7<(!wQSiRq-YZ-HSL|moO3P0*1OdfC*%L&|_mc!q-PMl~FLwLcM z9F}SVQadJ`K6U^xTo_2Aj(<0WR7bZ%XGj3l)qz(LUF#{^(H#Ayo)LP{CfumT1NtGSr@<^8Da2a^K^&<_Vtd`h^czl?P)e5Tg) zx)MI$!jJm37-F~UIA4f7X6weGFROBOopXLsG925*8(DYlB>xQ#?J|1pk1fBch#uV- zyRdhEWPKNQpE2}c=*TZvTYm6HNJ+dj0=MV{ln^tyvUP22Wcq!6K;&~seL%84$9 zZ;X7-JwO*HFN9;XP#1ey0tR(38;5ui1*S-VgMMA?m!kvEIsA!E?KIhoWG{?ces>+N z(3y!*zo0!K8XUI>f^Hb(3PFAmh0Ck!oM( zWW3vjx3hci{GKc|rC0;ZC!5)>px4N9LqYS$y;o0oF7xPkmuXmCb{cz52Ny zF1le>(A$Ef=8`<3(^Afo(?0?)&Pm7KH>hMR_O{Wl)&voGFgK=y7D(J3wgk-F#2Sks zPV4x<9lidMlB>7EZ7hlG=W(8sxNhyu=jFBFzo&;rZl;O~ntw_>T<&Ht?(2qK_;G6% zckq9DyDGw7h_o;`^0uQm^N4cg&NyF4w2-B*Z=raB$-d656SezTEEV8Z2XN{6!`s=) zrUsNQ_1l<4Y90}Z2c_1J%;kRfLEF&ee%vZv1M&=g#MrGe<$4O#T;uP$e{J#Y?TM6i zhTYIX5E#t(?0ae|NDGMaR}QPrt^I|;R6C6dyoP$|0e&a~SC`$bsOQEUdd?i`Q&KnA>k>lp3K52% z5!&G=|80A}^3Y~^u@Y(USKb}w)@J^W(c1*Z&vjrG!W8>Ek|5K8A{P zUVloya^9XwSCl{0rqH7{SIC9q6K=bv&6eStR0*^yuDZhUW7ZYZi(tHd2*dSOpdTx; zq+NT#TjA{kta2j>q%|O~D8`^f=;JSuU_0(1TJ3ZWJ(t8CXA-CL%1ty0s%F2qDsQ4h z%UCfcyW#Vp6kC@Qn)AD7P*nH#xt|R;KVtGikI~~;**tZNa>Zw?czj9c7RELT2F%;F zpa`j}V{@ZisS2u?>d*kiJ{VpF0oc6qcuh#DU7;>xd*hJGLGw><3x4ZWt>7A=Bz8H%4!}jB?tV4?QhSV2{+D{XkX` z>YHrQ2U4}T5ojph&^9pCWkynADnTm0rHkro{(n5B{rigsdi(tC{8LqQlo6me6W+yQJDNeD1gU z@=`d3udydN>*8hr!9&H=ggiJcVXOE1S>2@<(O9xUvA{H9tBc|mPi&7}6JogSnM8*C zQ~dm0&MW9F&H2m#{3I`G4-p!Fx{Tg+q@tcp-z&)I`YY%%L+6aWRHE#qTm#u9K)o+y zfI{P55N)BsHS2_=j_kTu5(0UkP%}l8Zle$YV~xZ2ruunnq`W#Q3~k+ z=e`oZ0%L%SWn+tL1e9 z&^660Sm)w_{?a0b8wH0sn-54zGQv@V-RG|LKoQ&cZg=%o=}~2ab7v~%GCeS~P#B9g z#iEEcg9@|nrSH}4iFIZw_NM^Md|(Qam3uPiRXpRUcmJr7`>IYXoT7v2%qsGqdgo3) z0;5!8g>k^OE*DWEOApLsum>4U?$${b4B;=ACzosACrO+pY{n461<>B^Uf-HwaR5gC zH@$B+u$Yrt^VkUCll3E~T!gXqaY}{wsc8pNu}SS; zDXrLZA;^$ z@b1vjqi6C-u?#Hsd@5 z^37wGv%`99T+Kdf;KN$|>22*#j-c&0psI=HfZxCwfwS)!kEb-zOn<+s$b&{80fu_E)qcF74qZ(KScrjU50*R;N>|)N=DadNlQCqk^khoO7@YoIED8; z%5TDw1Vx>TVlSw?&>xsq!BoR+sl9N!lPo7%Uu8GJ{gQ-EhxzrLQN0zW8@CLM22J}K zuqArbZZtFcKr)`TCqYS~bzV_I&zR@rm;Hs*B!@va@iLoxM^dnvtlbRHU?KoNt+)In z6r&We1@Ed-!akKq@5N^s!LZW>DvcK)UIIv|#OFAjsZqILm%&fACrloI>2|L3qS&fh z)MK*Dc~vA<>uyi=j&)}R!OvXgaQw)mUi6^gC;JIS4}g-DO#1+Plx}P_7dh_P!H;ar zWR(s0X4C$imW(;RHxrOJ$OmEf6@D{o5F=w2ZWAL(%7}7~{gN@w(#1MP^lZz=^#J@l z_I}-!TqB9U&NA(bHPU~bWe8gm=Hw~~Y33O=julUC#Dd5p%jw#0(!^3aYFdv`n74VF z>XW)@v#3|Q>i;a3(v~)`Jh!C~KqSWg{#$xy(b(5e=R{pp*dRvpoXYPiYUS#Cq(KKv z*7#+AAQx$AcA~LL){eI{MDT^nW4C>|SeHR1NIkYnwriZys*SHD0o1|f|+bq1)n`#i3vuTdPsCwv!~x$I$+5{3>n9-nu9 zUbs#+N4`AaLqnguUnc*IJX`6eqKd$XHP1V2%?`t<7$oJ<9x&0rl| z6m`ELUGtn+sa>W}^|C~AN<|s-Za16s56`TPFa891m9M7A)T|A5;C^e$EIIXYerw|g zhd3Nv%N(THLTcfJ_~c`Upel!?Ro%B2AL7CZ&B(dyjvH*$xodrqnWdf|9GWZjJPWl) zv`e+qDQ4Zyj!oqThJVw|5K?Awg2G~6z~{Ik4@Y39(#r)Tm^ER))p%F?3Www1m#w!* z?E8!R`9C|2kFr8}H<4)jcix1E9W805D4$;k9_!dE^+rO;@GRS25ioUGhm zDqDqQPLDi9F0#8S8oGs=pS;rQP3M`T^nx#Ot6u~j*E{b!_=NI5JJsQ_x~<8#KfWFF zR09OL&-6uJEVeiMpJ@iabEpOs@_wu7{?4IrR`QN>(L7UHCDZ0)=-CAv;7ZKUEDaW6 zrqjSoW8>Lc{w{Bo<96-dUJ+-Xi<(G1z?S;kQn?HNh3folsd$&B)UZK_@vge6RlBgq zT^Q7K6%l2V>d_4AYJ43Mb(+eJ4d<$DX+9J?o>L9+?sYL4Wk8*02Z0~K@VoU#n{JWL zkr=JLGPHfm>tOFsoz#joamE6@^0gElGVe}j={~zC|N2~8$Eau&hc9RB0!yYf4%wR5Er23eJi2=l5gG3{V_s;a?EUXymaSu zm+|+LU46o#!c%VCH}>fHe&;bZKv&x*8Rv2EsjLK_^STu@D7qIwvf+`ey{WU8pPsfk zDSCb@;eE2g>_haIcQ;w; z#bJ`-ig{`mS#G^f?fnGBSb8ZBG0>!8TtCeiddwh;EPz^%j;v}Q&EI96cAf+6k@nf3 zSyRrbR%Q#;>1Y)5L$lP!qsj^Sf%f`O{Y2Rv-tXY8mll1gNR4d?~qpdmXpUv8&&>*>WwW*+ixXn z{V41Rhc1dX-VpAs+4u+?rX17B31AjkFIrXF~JX6FY@G!fA zvR}GB1tf3k65cA*c0RlA;)HKdD8>Y(2;s*>nm0aSj?vLpCu(kb=-Z&ZEScAi1!-c@ z3LRGLA3o<&CV1z+p|!|#uYAT)U+5j%qG>|3zt&J+@KaOmUL-M_#;sB9ewd;?;x{p1 zIicWFUX+bQ`X~-=2szotZ<@CyiTkvgR^Q1B3UD*lS4r#yyBYilbH)6~RCy4*J*L&R zxoUfgY`CV+WUW-|rg0fyNm*&fG5ZjZP&C`m=?d%aW!Hh8es@V^b->%rr9GzY*;51R zsmy!|_Kii~<#^>?YMOkgjwg2C*kYOykC|}$@iz@09G!Svzu*m09ua-o7fEhgK&`B~ zC>?(BMz?)RYip|8znVU9)x8WMrYB4qBlj&wzm0Q#L z&5?e)0Zj|+*v7q;i&axL_bDsdudpcIKWT_xDw`N7d=ng3-V{VWm~rwGSna>WS2kzl zB+=8!_qqJ^qRxjtr8JIAk1hUJ?DJNnvzR%Pbrinn%@`o{{xPXF`HA4->QBBw&1hqX zKF|58e7J|aud8P@m1((sr6w_bJh;PNOP2fDTPtgfeAt*%L*_*%i^ZlGeZzFAYNwe~ z+X7dnm|Zaedd_}+r9PkeM?ygQ!W&XMGg%GU!>e$s7V5>)V-V}d}bE&uhPb{WO8Y#Q9e``#YnzjnuC+FZW6}I)_gWNn>Qjrqk8X zW@Agcwg7^!jn}TzZnQ3D&h$OGJCKae4_nif*1r!rMo0q)ryv9=tK5KAyeFN(u{ojj zD2s-46KIsjBX@;$J{4c$M~0#MGZk`O&AKUE)U7ZEitZZI3hAkh}UQ;x*l4umcvgzC)WSPCUwgc+zyWnKxK1q_wFI!qS39mhopX=)tb}tc^doS!WcX z9Z@a)b?EH*8qYR~oHKKKy^s^Z;?7Y7b-(}K_S6rPzB78h!}zZ*htCVy+aAE{!M%Hf z-6vK$@N$?Ec;2;L^LwKoY*1*FXd?Gd_-ylO^B1xsCVD<%@ zV$9@OoHZad{>ZH5Yg5#ZaqxM;EjwcB4Q}!|P|SWV2IX)X`T4^86qd%aujvQgJN^x` z@|c5D*$K7;!$BOd9PWixZOy^hDiPe_8Pw>$geN75_teih_)PQkWTOl5w4-%{J_YJty zQiX`~bclJ*$_w*cI*eAaRkI$eGxy#qnr6|n%b8B;Rg?TqN2T%Ad~H{l*-wF6wCxtU z01<6j?)bE6TYvS{p`=toDM_;_x55 zem8dK2<`g<{F$O+mB+!*8?@IMNjC^&gCI|6L$!WNOOb~-@gqpTE*G3=nI3#h@OCSx z`B&Wqq6f-cDwp%s=%7#8(a#LO`@xtuv~A2Af@AEOTCh*eJ%<$jxMSMORG-4>_;KOq zV>rdp?EOXb{AAU^6|ztJoy+|MKZPkmVe_rb1+A#M$$Ix)!Tq^7J^cL9)VP0`3TqU{ ze^@WgljO9C@hutZq41U~6laZS1n~Of-ZIz`FX~e4=tQzy*scC5P%qyVoI`WCA1pL)l+g2*xK8y1ew3a9jyaOv2&6Y9`RB<}74fXL zJ#h* zgt~EmPPFHCmO!E^$#p^e;@;-CqBUYe)`JeRisOuA2!3hg9Vh!O&De1^nQ0sEw=$n# z5?|~&2|d!l=AWNB!mtK^S54Z?vssE2EkpaWT-kX zSCHgEoH)S|zlw_^^p5Wl+Oxv;WswJZR5`g~VjbrM`I&tDc^=dfM33j>R3K-~Ggj#f z^8U(v+f1a%n{@BcL;&1!{RRJ#fc04XS-j%&VB3t->uQ-D3|{k`M}r0a?Q~lBdEccfh11^#_q{iX*Nue9O_F@{}Qgg***PM_!5Mm>=0nDD=5CtofZU?1}C^T zo%3vU)hssux)yZy!jm1o^uVtZ-1tE6WoBweS^k7C7BDq2)InZem`J?E-(owg-($5Q z}mwr*Gu($|r)(rZXRhP75Q588~B{!RS?C_B0 zoB_-K`BeRvm$kGdFuBQ~!MwqT`B;?leoy;kBqHRpRE*45)2z&QqSaXO-vjv;(~QE8 zJgpt-BLpiKu-q;)F<%`KHH{`QVn(8ZtTYTB|DkFn^b zx8FqK=XJQh$9v!j!j|XzF-rY1+%x0HmxSZ7(T?C~9^tIU{z@J!vauF%a9{`!S7$P# zKbc4?66C%#BAMXRf!5cUd+K1vk+20655mq~r)9unxfxw{Gx$mNe4SFR5(dxrlWqL9 zwaf>ObSG?|#7@zyHcuWA42qXYIpWqdi^7sOnl}U(blHe{&e{rKEj0s_HN5BAnm`fN z4$v}j_XT0aem=1myRcLDk|opZMm}o(CO7HCi+5qT;MbW=OH!P1QU)~$Yw;`kuKraZ zdFvLBijNW7BMm-?B+H68sTq;BT4jVDifZ^yWVX%YSF&e;4U^fh85n50C$jCHui0(J zYHh|9vz)$jmepI5%*UHzT1w1MS&?b#!TJfVlXI51yJF`*EZTglX}`}Hk(W_gwv=@h zSkSHh!kqQk^K0>m4}1R`+n-t9Ff4vpanN~;-wke-H6+`Oq4W6^Pcv;qq95xS4U8wuqG#>963wvKQ6+QJ9dpXKf z^oo~S`xk4*wa|5dw6Z|TN1jX8leUkNm>Z8;md=%~JjIxt7?2rb_q}mvflGL;q6)3! zh-6naTC!whjATbOxJ4Gb`rTVvO8?s)1KCysw70zWW~BBb(iJ)K9Egjo)bI?C#7@^v z)UH!o;$xA;`goD$24$5XhbtDp@%>)T;JBe#&x9gnlc9^bt@$n^q|9f8>~1Aa+A}L$ zOU9LO*3;S}c#{3IMb+#QiN$)temADsukNa>v_(1koZ`dubvwyJmU3j{G3%Q|n+XQqL1Evb=3p z7>+l^x9Aa;`DM$54T`&vmXCZ;17z<+-6AY~ARmqqKD8d04sO3Sect~4KvB&@QMKWt zE8Zj^`4HBbxJvAXeBdqcLmn$1Abxd`Rk)9JpRNL4g`Dxy&Rii$r8C-Jr3TsU=WPyc zmx=2=j@OR0{1%>wyu9j?zRSKbv+(bW`#6H?_K0lIS#>=`-mVMmD-*|(i^!>{ROx!a*Vode5~GEI`06+TgnNhDeVARle!71%lM8tuTK^LdpC9C zBJ`>IfLuFB8LLoh9C~I^rdDq>>1U0JJ24JMS!dnbpoPA}ie9NjU&UJ;l{uzIjc^Gq=ulwX2a>giiQ~VpNDKw@CiL}?Vx>`lA|0*Ye{nj{jYfj`TAF$ zvj$QXut%sI=wYx8AwIAus073*QB;^;{nUuBVufFU?VyQNWbDIbe|2eo^z( z=qFLyemTD&<`eP^F@YOPQOOHY0hW^UiBLU9h%U>0C;4xr<2!W;Wyrjvj4W4pUFKJ5 zBA7(Eq+0W@n2zF!1a|!U2SQvVRFFe}{lfkKDfJ4~34Z_m|Ef8HSx+IsA+K;K=zo|~ zAb0To8}XlXTK{Wga2<{k(Xb9hgxWF!@Gr?bb*#?r9<~5qFNokpDQJ z&YVI!>fjceA@=5HX%QlF=6rYa=k9w6*H zjE?M6H{-0iuG#8To$Ictta&xt*abJ|FW1x=*!7HkY&~F&aE$1WsK$xLq2QNJBOl>d z3_iOYg--|Yus#GV`owHh-qW$6=&kPt)1b z>Z(5t^`F9jc3k!Kk02P(zHRj%MQ_q;Yju`*>RqSpdPF01x@}Tiid^zsa$GiT68aci zeJtvzu#}ogOBd~rC-IYer1ELsm`8TFsvYmox0NEurl-}==ow@&bQRwP$jVL(r{(H2 z*U)LZo2{6b&7`P5Rr)pfP57n1I1;W++fI(*O%55dPfOH8Xut`~R{Vy2%QOB}2lzMO z*wT#X3nYvVwn#B2T^_O}dm{H;BwD(lg7s7KvPLkYY%bxZd zosNoz*Uim{MBKL=F?J`;bjU7m4f1V9iX8CP8e^JmgMTE`SwT-#w`hzFr22C8kJA#J z?(n;!`jnj|02=~t42($nI$-y>UdujY3m0*e0}DhhRmSwE2++;$)j5(3^a=2`%L zoO8wLBylegyABl;s{e@H70Np7OT7P)cFUCp1k3cKf=0^M(=-ONL7S4wXRILs_P=mc zrm8^Q`sC9l41*Jrq!-mg{=kK}tgGZ}@a?A=$?3{fi2};_e7Ntx$adESHL6?fyXceVV2n{Pee5WR|Bz23ml?lcx zz{%G_0J8O`<5MTLGVNhkoYe@?G){2N0e;5G(6QFq+AxtG>Ko+MCun3Ip`7u8q=UH` z?v~GDCBOXMzVzh{$#E|!9xR}JcPr5CXhl&R*V4qZ5)^1a>}OX8s|0;|)W@p4y`%X9 z9{4fz&$wU&V%Ok}9=shw$$amMH^i3DzY9mBb>PYsNeOz53vZ?p{JK^+?%NBS5YTqt zvS0=*rB5MlXhB}+?KBZnC?6_f3!X5(tT2$pCh*PlA1wEnEzdr21BDcQuwE{rCr3%b zid;hK3LOVhT`JTSHK$hD*Rg^s7+tUmvu4!!F*;akQ+I~Z-7Q^y7)NHCus^F{X3aU> zvCH684T}lkga5$Beu9E*+MI^46 zhXtgXA%vK^qv@J)fPGFdQR+c>!mYtSiMvw^B=`LZ{DiWx2ll5!nlEE|wokf)*#`sV z!dh*>7)_RTE11?IX9#;wbfMdD!D~%9!7l=z<;^wwcyz+pTDG~FC!JYJ)*+uTwK^se z{2901&H}(Z{;Yxbz}t8LZ`#qXpx>;C_B~Oymkc#hh__zB9l}QG zx9uNHdUck;dv%N+QVKgM!C_Vw0)3Vn0=LWsgSuOhl*~Qqu)lXhzCg@wnFvC@C42^LKHkLp9bfD2{5N4x_-;b3MDOg@;3wcutCRIlu_g3u{_wBGn2 z$Uv6Ahb^9)C{&`kabWKl1&HiEkRS^%v+^w+Awd`_(f1FqyW6ismsGQYP$`A}mtgNM zLco(pg4rIhFEs%A1+@V2o;OSp3~XGfrw9BUzF-o$0VPlXf~sMw9wo>hQpw!mPkf+1 zf|7ZU#pj>}_7@V4*YBX>K$ch1*KZ(?FP$No3~nOL^nubG@@3}hJ%S6EAEJ_ZfEh!< zCp1;VVl_!UQ3nU15k|=zN(E{*G?0ZhX&6!uk&3le4bBy=U{a`|X%;-$EA#f86mQ<4m=E}GN$dwM(U!I~J zxCswitda$DR~pDfQwk+y0dAxwBizd<9UbTbMHC}kA>WT4%u!IAbhTDw03E_iMGyIc zBlJC31!i^$qW^n}hLopDBLt{chBm010Cl*a5eI||ZiFcFHP40qWp0JP%>dUU_u}>+ z6IjqjAQN;c(`?IsEHMgTz|GuS8o{q#RWPmyjzxM2rThYCWS^F_^%FRP_7%Z}XUN|Y zK4wbUwuP+_wi!#nd$CJp!BC`izzvcZpnQLf%RI#iV}UeF&H>$=b@(6y>2%pA+m8dG z_{3T;x^xdI^ktNNqDgS|2Z~btVS9Cm-cLg;b-_34p&NxOGteYiL^ zeiZwQ(HJw!(?f0|oi}^4=ON4UUj5nGgXh+Zb875JuZ~2pN1F8J01$oS6;M5;_&V9? z%l#p5#_I4(++Q#&apv`@^Nl4=yW~9+>hf;rxf9aj;MUlVCbrA-!&j>%@NyBXM)Fy{r1r4{pa)vglQ zDh<>4>WQf1X_f~yu-`_TOF@#&9(YE;iDkV;1b-AMMa<9x)#&gw1$yKOmmQuKE^0v) zyktVgi_~;a4{2!!Ed}r7D;<){D*>V@dVe9FCQo#qV%Pk}7F+B$z6W(=7%fZ6H{GjX z^GxoJiYi*A4fQE=dnFY;`mRD#mhY#LjBymIw8a&%w+t%%$7Yatv%pm7;mA`|8tIfmB$a?tY?LXtB3*M*l6<+aw0!6QSP!=*iRAaLLU5Uy zvPxx}e>rkAej8no`R&f^8o;H0mfTAuLoP}@sisk7l}&P`6qTaJK}jcgprfYR20)AH zKb=jBV9cc?pk*VSb-Ok@Nm`kSCv7LN&VQjA@PoxBi|(>hda7qEL2!eI`RCZ78V%Zc z7>BL8cM)@_%t7p+P0%~LU>=huZP`IEa}6p9JT0nXWnpThr3^DA{IH4)3Dybbdb1Ku zCmL%O;dv-*-?@@8nrU-LQfKYWLNT(N#A}Kt5BWDKUg5}W6Evk(5On)SX{2XQk`xkb z=1M(7FaU}!m5OK=*JUrZW!!|GN4q490WPPUye($2br%zq#pnlz z)3h9M>{RS4!tH2pCKGvAk{KDyY$)?^yB{7X+$58@cXOMH7dd@I{`P$($FrUD4_O}k zaMHUHRb2HywhuRK%T!0-h9odCS31P>?Vn;;E)Ce^}9?eo}}RG`ng0yNygKrdJ8p=yp*oIqJ4S%hz1DI>+`uA=0zqlN-hi zlOF4vab&l#p=}^S(k(A-Row+$gx1OHq^eP^X6H;{H73YR+T_n*g(Xd-5&CoiK^?^ z)RongaW`os@)Y-H{Il>8=Lq!ZuT$Uw^MD#{$;}aQwbLOvVBNCPyt54(*SePqdmS~J zQjD5Lo_`kiL=mD3!#2VY4jtj4l5}H>P_g7MT}W1B;MLD^)naT~W7h~kSd99;oSR#i zls{h3?d}|`PLb`8gs@XNX2fDkr&N8zD{dJS1o1pSBh4kC&s(yr6s&;(D^b7Ja23LufYm{Dhs5)-tD-%#p~c><*fz z%kBcAhmx)#MtIuRcu(KpT~StUh)c?AJb6XMtjvi7{TaA^E=RTFL>xf035rf+FJXzo zwhZ@?fLfT;9*t+{kxDtV8>4>lf{w^v%F*cTlN8l`4GA>?zU76+MbfU|E;#GfDaC@n z#0<5SUc$@ctT0prMiQrSBPeCS?BHeNzW>9b=qxcKum6D^Om2{LaSDC3r45!vzk!V_ z^Udc6tCg>JbAt7$5ceWAJ`G_Fg)zDD;zYd^6MALH(FxPS4>g`b z&;zxV9_Oe)scs5@V_3wJfSsL2fY4&~o$QEm*YCU{Rz~E`=r7H)GkNC4ka~vt{;wDND~cuEE}02Ugzwm?aaV>|ss^EB3p4fEPyuiyT8 zLP%(AYD6WZArXBP`h@a?Hy)>oYmNBrPtKeO2e@I9adC}ybk+=dw-99IZ(J9+yKvE3 zS0{UQ3WPNHwOP$^)0o;dA$v>|#@nqAj{|>leKHeJhd+HS#TJkC1Yra|!ZHk%e3VsM_5?fBH`ZxQBY67<2BWXnO2lEuKK9)El5Qsw~LdWJrgbNQ& zXd9u&)?7sBA>tSZ_mE)|CvTSW7iV))LA&8LYaI`N+M*&hH{VY{ldT~$bA0bRE|;Lr zX+{EhIu_Ik0TRMVvrLt{f*(@->Wi3VGciv_2|hj~%x{@aj|SsJaa^rzs^4X|6lbPB zlNmuy9tlWYwPI7`qXPa`(P8Mc0NAalNJ` zWR+^};YrJQp}>kLjty@^=byOX`GA@_Q;5q3{(5H6JXu8GY1D2 z(7$TC!ha!G`|Ao3x{tp<*k$aYzdS#+*Gm-{2KTQ3;mM48u+E8Mt&zwuc@EI zAf}~m2uW*(tbP8%v?$KvLVcSPgOmvmNX>x-an#A<>KImt?Y5m#wjc3P*hjk#r;qG0 zxkVUCw)3Vcc~TTD056cL8oNI8Ye+ zzI)B-LLPctV>(*k4c?k!REZ5Q7S)(*155%@An3m}?I1^uAEPfFN|}05g^|>CTf>EN z(loLURwT67?Fug#p;?4Z^{tEICK6{w@Yz$vqsQ3A8Bp<1R@8uJ81WmfPY!qe;A0`u ze){H#g3veDzx)ixM6J_%iyo7gQ^z&eSE2042F3onl^xRFxJJaKbcH^Nn558FMiN~{ zOecY1K>jYT954qcKTjYGu5w0bwl9iYEK6pdbtl=@sM8j!s;*@AEDU=GV_pGrCj@0C zvW)K9Wz$qZX=8%?*BdEIXN!_VCB=WQKnE!A0rAwD&e?x}>|?^3!CE%eIPG+Tv*FRp zMlj~z5mM3rQLP$kIH+tP?Rc2O?lm_MOUdU#$o8NuvEx4{T8inQ&rQk1pbU2ohD~86 zD<*C2dlmg-Mw7jO&oF8=pc)RL<}gLnYP}h}gUi{alC;kI)64y=kO;RZF zlqw!{@BH59nrw_6nN-eJ2?|4kt9zjqKM+R1En4gKgn4!J;J{dTS}h-WRm#kDa*?t_ zPEDSMi*_NbSL*YFk$_1NOT<)aM%@5ho(|ivRWLf}>{TYn%ram*pcD-Xi)>0{co!rP z7M|-|5nW8|&0-FTjUxY1_v^x;=POB>haQJx|C`ac6&j>4Wv*O@`(z&HHD(+ajoioC zx_uZ?hskOR-}Gpi`d3Y7k4{tNSS;qJE2=GQFbaOW#437j;eIHzy9njt1I4W{-UWY! zJ>X@CkJ8@5>l*(506{>$zxd1@kVYLU%}FgYZGTc<{fN6%DKXjbqQ%JJEkwohGgh{8 zqms}KlUk5w1hk`3;nuPqaRr~LC7wv&IjS~UbVN7ALbyR>UUT3k{g9G+K6DT5iRQd@ zWq!6pit^kcPdcf}PiS6Vf=_N*Vhx=xr@#}WGPjMza`sc)ex77blWL1LVJL?xJujLc z5cU$CG|&m*5UXMC_iu(V0H)2z6sLfTqCcy!1*;9_lql9-!_Z=p0~jM%(LG!@Tf z&YT_S>PiwR&TaYWv3fvBrkBPHxHxKd*DhYGs5+$7iJFPBcl8eEmPUA{5Cpq3_ewJDT=utT>qerMZ*%?il+2FnzExaBT zOz~$nhKMDtFch4-oiNup6ENeBpgAUIBh8$|il1*WOxt1y-jgxK6%X@5E3Ax> zoEO`qWl0ZO(OL^^DGwM%kvhuB#noeBMjcXAob&K_z5&AN4wc|cwY{`RGo#-WqKA%{ z@!9=gaL6F1Hpi6lMO-d3nCwV*lh(HPFgneFtC)iM z!#`kYj<-|W8ISiStJD<^2v;qRZ`g2xMB4Uld-nw}8{jTmua?fdV5<^#2V?NI_`Y06 zSc!qR5;r|EBMt*$xw1he#R8kVwJKBJEA2?3*Ut>*TW~t#f`Hx>RD_(6lWh&AJ^Y!_ z?yNN$f=Lmg!^tW#+pHrM@85!+5m_b}SiDT!t7J>l0AzijmDHnt+LB54_G;lCV?f)= z(>TdIPLClc%}l9@7b~$1Kt^fq)|N7Y3k&ZgKICd_Ht;AnMB(OO71IK`)eQ~I!YUC| zojk24I-;=)u|W-?PopiSEd{Zg*PQGC&txMw<@n$wtjUZnDa&~_m)~5dTj^!uAtfF# zKA6NghKG?j!?cydS-FEraLotLqO{x-TtlY9+YvPp2AGHV6LO#HL5Xq5o$L@jiHcMi zYh%p9;^|1s=)V4V44-QxE_bbILwT{X85k==(NuHqXRc7Bw^v`I@I@0pH^R+ex{7*$ zi^XsU7q7VQPyL7iaX_c~VJwl3B@IE-TGBLStqdhs#FFVSbP9}FP0(_+X(5X`#ZP9C z;I+h6py5eHTA5&_X?>)v_1Z!)^SY7__^3QfzFKjMNK<9mT(Eg~MPH?(9|^vL%9WRU zS)DLaW7tUf%y1s(+;}v`=*&X6txVAPy7GfrI+%>}+sHXEG`P{~E~P~bzX9tw?p6$uqa~L- z*dZS460^w=ku+rrZ=U-MYQQ*JOix;?qh&#Fyjyz$OPzZyo(faj4D%TKO& zGns3E7Qt}7sBeB43Iao_Jtl5WZFP9A9fjpZq^y{{agBbnA+E0*R;1t%&~}r~hl+v~ z@6{OzQwV&tG%7V#+|XaNSVwOoY<{%R;@O}af&52=EOI!(1B}*B=H$qrMv7Nm^71F! zovQ`fe4#xZn3vA{=m3kFgJLRG=RiGTF3ggBFj3DZi(*!LbxzKUBm1Vh&Aex=Zh}7- z0LzjsdaQPk{aKv>&D9gf8#zyh^3&HmF89#+&U!Q{66?>tm^TE8lQIYU%(B#hK#Q$b zqG2IJ*ER(oF%_vaQuE7sI{hh69yY%>iDl>k!*d*>VtPnBaTjx+@LJL1=Weo^opG0l z84nbQVLW|j>iU-#2e%qUBA7HU=ES7c*B6ga~rVWQRd94_eU>Vz9tAKFxdm|22! zLw`V(-@kO_VX<}3!F*)~TpB5K~6 z)%bDKW|_tgi-k&lOn>gKks&5$=SYhQ<#9}#BpNrUS{RLEbiFkuAJ=(oqgv)gCUY4< zZkM!hk2yGVc5PQz%CH}%#qhqEn~wHUHdv}=RrqtLz)o3myVE^An1kx*hz)*?5>Jkc zQ^|ausVp@jIaEZD97TMy5?vgXi}uHgpR!^Gh27*S;v3Y8Sg=zDI;gJSc(9jW^hcez zr;*SXfDxrN&KH7s48w3~-x1!Z;2VFr_mOu4=9(Ky(O9d{kqt#-qVoE~ese>yn4xLS zPq*hp=J>86RyX@NWdOtYJR7|o%-2U4rA~Pwn9@nw#n>WljuX27zfkGzH>4KN5eRNV z^HT*wJmZjrdC~<2=yaV9Z>q~x@t^l$Qa{vsSXkStp`4N=DZ5Q3@(9z zi%%udDInL0<}Kj=b77U_`<5M{9*N3Vv%pW{X?^m(88#i{X&cl{4NSH!~cimO@&%hb_72+zx6N)oW zRxN0)Ji7|FR*qYip^O~i{GrdP!W`*>%l6ISGDf2KOhOzT0A+I&7Gee#_wqDvRqRIS zVYTU(#Kq~VF*0nR+v2gPnn2x)HoVguH_gOx)kn~R2~nkv6sj0AJ_Oj@8x18bw(AW~ z3n>wC1f@OntcDllyh4&RKi7Jq?~LR<<9fmbIWDiM)V!Ct#GBW7>~KEoKi_uFJXOgCuEuq?_s^9vn*OYG91D;BMi^Oj_95 zl}PHZn&j|FoloYSIq^8;$)v#5Ab01Z#v1CZlQk_XQh1V#DYd1DnU#*I15D=|o>o(X z>fkc4lj>%bfv3)z1{P%B0*l6YpMj^J#bT)6T$JI(LTW){m^O;^;8JbPN$-)U&+m$s z!!I3(%9D)FFg*pBR1JO7^hgv}vR?gB4&FO-D+Zo8n>KK0iffOVnZ^eTwBeL@exKCO z$2qCKM@bE#1@wbdO{ne|091NB5VG%7ddA!KPP!U0c zQmOeHQ)zT(+$=`wsj)PL)i}7(3sG$W3Mu-n)#!^uI{ye_camHKK_5pKh z!VOSv_4s6w-;TIMfyUebW7BYc1y$jy)ZVY~(IaeDE;E(O2%_c7NtMIuF$aTsQ{<$x zj7V59^PSP0<&}6>J7;~Ra?uO#GjVYEsE)qM<4Xw~@%lTBEWA+(UufR)7K48yEH=53 z~kAl*HAg>oN&rOC&ZQ7Arup_^Z4OtGUtt*q~YaL z+~?Ls#K99yoq8aoQR*Pj6+da(R#IQXO`6}6)DEYqR(dChbI&+^a%kQ~QDdCNGTN|o zj;1Ulv_me-SmWuHrGP$?4H1i!0czK9C?$MibUoeM;*8x3t6^Aaz!kJAr8>p9h(}cC%)^T z2DF18!O$FcG+5B4BB1Xn=mS~2eINqnK`+KN8Ux(E)ZUF?tHjVA;(2T}RyQIlhrdLO z5ALd*jtisxW)AP_d42t<0hP5P5yb}>bR}W)VwVG1CF++DkKs zx^5vF)dEx(H=Gzw4*cB#45>P#y)%YU#`(keCjLTLf*3v+U|_;XN%s?F-0}rS+_d3~ zVRdtk9~U8qs=%!vp9BT1@BTq!QzcDNhS#WQu&QxGf3?;4Qk5Yi%-K}FAuOg@qqyN_ z`UMN_MTC;35I)n7X29smtGlG=?9)P5rSpyqaC^rPpU}ymVZo5Q3zfV3Wc(0FZc!rG zVGgDYbWnS;_qf%}lZxar!fIKlze|)Y;*pFk>VsU%Ro^KpoOJl$*Qbi4>jyrUuaKQ9m|J9#BkCL)_r< z^#Gsw)BtT93OZ$2HK;>WeNW5y$O?38ES{RH@bAyiEUtZxhKIz%#cI%Go{al+xkADx zFg>QO${L?k*Lckloz_-VxMQht^+O7cmFt}95$2sCjh{CK>E+YM9t?M6zE^!a)g*J= z?_}p1FpZxaf}gVB88uF0s(q_5*g2Q5OPHT^usBPz1Pe0-LbKp^39DvX*%Y8Ufd{K9 z_^B}gi1EX3D`O=|L&_v$#k~;T0RJn%V`C#M3fwU8HWLT53OF%#A!FlvARJg*CIK5W9jcXY=5?9KtO?wF9RUVi4K+^VkyL&t;1tW-d@2aBZQ#2-QJ(&m(N3 z92P>_RtV3ByxM`+PP}=Pa|fktqnv`2idD`BiRDygE9Jj{YOtD8wnCUqYoj^_p$;v; zTS6tTfV4rlKP<5w%4&wtV#c3v6E(dLhK^p9@6!rB6?7>RTZ-JhU zu^!-WAgu|J4D#62R??La>!uv7@;68~D(oWQhar~~Y0nHc4gNRwcr)~Mi1iEomQi-l$m1-J-Sd`mLEoM~rAzG~x2X!~dY=E*7)ZPl*eMlQJD3M#9 zS?$@`^Wd7M{P;wG`mh)fCu#K#<^eB3G4qAKpd_1`Kb*TX%|R+k`Nk=p)ne;xCY_8z z-nk~CgKCMTok!d>-eKeM)2tLO3)Ve(oOHPp;VP(CFXLK@E#6HvRPyR*oo*hLuIe?L zx0nn*w*CO!1@c3}geQe&bU+FH@ITfUON!+7!xQ8iR5wn!hDNpipXXsRB7_Ri(x z_x*e*GfHiQql2A2bY9%4Q^@G+^}+s*az}20KIO%!9k@XXk}MysEMP6uMqG3WIT6Ivu3QCo2G4XP=1$L2HEp*BCK6P6y%PlI;$)3?e(O0|-5 zL|yJ6$1+B}A~Y@f>B>;+8WkfDoraSvX_~Pl>-w7Re!Sl7tj4L;{aB^Y zN;u<0@*>~Ujwh$(X3;uJs0WsUY&W%N*w8m>ZP+>a>6TLe;1a!uW+%nat4m3ypY)A< zum$<)hmviEQq|@E04-Sb{8{s-&u0j4uvX7O_evBodU1Ore`K)@#x$zmhV{vp&G#0# zh9`-erj%ULqMUhZImQ{N6XMKUD#o#Ak;`N?mlN9bTBBr=Y*37HYtj5-wXT{4)AZMv z>rnGQl(9mWSGBR9?(D>EiPk@6ZL73#hb3|y35opk+nefLX-uK!Y4o1;Jgse$>K$0M z#ZcBvq1MpkgU6Rw{g5_lJ?=f@+Q_2h4Y@g4&56x4Z~R9y^5oodhSa4Ax}@2gGSqs! zDx;UFjysg(R%ZT?`k${MW*?CSaN~<_o3%i?4%#B)+jh9k#y9bBqYk&waFdR$#2(;2 zVwieN_pXDq`K7O8c!_>7^WgfyyilKESgf;_W3rh#d_Lp58+<23R|G!|Wj}Rw3a zlaAYzO5VugHpssRL_DkXxXa`>G!U~*hRQt4hjL15&9K;x;rm(n{loXW zun&!y>APa;v~699Ne~mI-t!CN7AJYVchjWOJSV&+O!}+lvxT-)CW}E%!_gB{7qC%v z%866DcB*+l;c{y3sOCP$8Q&x28#Qr5*+bujZdh368sq-kyu597HAZis9z(C=kT80O zM%y_<+}0G6jMcgXC2Pno;m(@Af5sb=&q7mKN~=kNxLg_4dP!|&?<nNwUf-w5}t=y@-z3SX0Sz@3}%p4TiK{ERVX2vYYRw6Mdf)) zY%Em|wh$*JCJQTb6eaBqnKUb`t)l$mcKMFAek{Ojj4{Vr$b(Hb`a{jokbFz{5 zQVa)CsRdSR3)Sq#X{t2lrcMQ_2g^&I!I(=m!#91JQ^5ZVH=5al6)H%T6PcjWjzpBXZN#Vn7-UK+}DQ;kDpQ8Fy`}rqaCfFv-Jg zUf;H2Z$-J?CHbbiOC@<68^^q^0tu_)wHHXfG{OL6DwS=U<#i7CZI!(;-c$LgGLV;1 za2!MSI40W);I2VFv$GK5Bp$~(JKQJ(SMSJDkxDYA9Va;pD7whc3ny^79A5m-!I*E` zJkM}n=0@4;%j_zEc7*#2^81zW#_UeuyIqjSExybi2iy<@sVz$3PO(Y*kX58tdK{yg z?Sf7zhf5*KY+FIiN|nWee16POREV?GGWJsMq#YFLX4tP~+g2Adn=d;6w6_Al>6gpP zE6Pzav)2g;NBKrk;E0_`vbVrx^JVVwW$p(q++kKJWHN@f^#Scdp%w^RsMbllOfuPSSs_2o3sp~{H$zScBISY^}4-fnLCGyJC1*HUx>OYaSsyK=>r#vxF}Y9wdB;@YMppO@ekm0$Rmy?5GF2 z94_#$6ykiD4}6)AKs7#=z2(>_S%=3Z(+KjS!s2zL3%V&=jGYMRTPtE=Si<0}z>!C6 z7#HqIt`eE+Svl`|9HndF|IFcXFSaDy#&C$lL?i`cy&TH{^;+u^;(VNx7lHnPPV+#4 z-vNTqJ*8fLA3I3nvSsQ(2FhEGJS>3ocu{B}$hwrHnr$16T8FxK4eGv^U$L=I!(m*f zD^;Bn$U51}#WH*Su0mfn=*upHe_rwPWmkyC@MTwXE7i;|QGRLjR7=?0ySPeZXTczM z%T8|r4VTH#+{@f5;pB~s<@vH;Km3p_$z|sOW3`(%b9S|!c7>XDMWKtDiWJgKT@E=w zSuz-)3NPO8wu5}wlaVX{u23j!8QFt2k@~~S4bA-`=qXSmid=TyFgWx*LTVg?+XS=7 zzy=kgmhe2Fql;ZOHRQ{@$<0@Gt4tcU6^0CSQJE$pdP;`OKq?Ii2*W=BZ4UNE*g0Qz z52Xztt707E+(N&tqTH9=go6ak713x%%VC67l#gT3r4^`Ra`_0C9g~zpBW6jFJz%!7 zmpgfw%uqR3_j0#rbFW7<7)>P=Fb(h$u0ajLy6gZuEvZ#009u$vCzJ|zIlNTT47`q> zQb|xY7j%(JLW6@7NfF)kR^ErBTu#w8Rpjd2WC*D{^xf{dPt|GMw@d9_R4nC-8 zW-qF(V2A`@fTZ$LxgyJAk6**}+|(Ahpt87P?A( znfHB}*L|6Ph<1^EGu?TU6y?uNs33fqfAJ>DKI;Zc58aL40T^+ZePq-RP!r*4$RqO9 zm%Nk$^e||)@D@=gaXUhmf>TA*a-8-W1Ldcd+W3%%=9bOPEv|B5flWPF3emPRB_PuPk(d~3nBL!SY<47pM?=9g_Fi+m+FBxBI{sFv;pe!*J=jpsAg3)+nJ zf;NkVi07lZ_a!vwcS44H(G%hf2l^6T518fbozQ>i#Z&;JfEXx>4ie<^D)h1Jp)6ko zQ|9C>m}T7P7Y%b2fM{8#*VpQsQ%=deMJ{JK>LnKD#oKxh8f&1;<<60WqEsoIHfNG) z+yOZQfo?7X9USQ@Lc;=0<%J|y`{rPRRlZeZIbQE_m5aXE3yF@w1&j@}_6HCklMEc* zuHXm)jft~+k#cL~NBDz(Bvt{2P6)cWJ>j|Y+4y$qnpr$Bi){D@#eSKWw9Vto90QY2 z$+vm9b=pfp9~E-98m<3;lT$8H9t<4ln}G`MJnb!Y*`OS1W6UQDel9e++pThF9^!Q} z2)PS|K?du#TXWP0#aJAqX)`leO0yv(R#jfa@8$L%@&Qbig4OUPx(P`918MSdTRtejH*B&dq8&?8uUVlSn>@FFSxEvG;xP6O# znfvhmv-MP!di18V^+>=t%tHEsA|||_0d@W!5H~R(qeH&UL5qTIj$$!+z+~*p-crhJ zJlR&^XNX(cs@~F8Oq?w$cj7&imebtypcw9;QBW^Xe&5m}awfoV;;0th2;3dN41%eE z(cwT()LW>QpV{pd#$~r^Tz2b`gKFfU8aZf32LdX97xIxvS1{xTcLO*s!J=L`M&sma z?&YAFDs#Df*-{*fvTAB*+HsKYhhb!wfE2nGt)SB|Tho^U#Qk+{l>r`ZCY^GEY>3`Bdw% zt#j|3~g=_8J;7>qdaXEfx-ZAn~Sx_6NnSbU8&M92NQFKo@52C>Es|hNEh89d#KP z9!`h^G)3S*_qgFEq05-f&DZj1=MK4eUfy9Yr|kCiYJ>C^s3u9g?a>@8mzZ!1s?lGd z<(NnFB53hLQ#h_aO2Jxx|D3K%%U&v&kr`wY8M9{?yMZz0lmQ^TyrVh5?2Jk9zw6-t zu6*LISO4|*ux$EQNqi=tF!MoR9@lV_4-tCKbeRbRq&i=#KUw!Gd1FwJm7Y)NI zIwv=A`lxs`->< z=sg_J3eXn`0hPs$=LmLW+8qc^1Q&uEV1)JdX#fA|{aBmRHwpLuZUCaFz^QE$LU0uP z>SU+v5_?@9r@FR~oo+~zl|Y~z6F-9RB*L=@FCZL5IDqgH!mF6Tfz*CTbqa8WvAj$TbK%5pF^FKEnH$o4%Mr)<3X*Oyry0iuaPWtHlh; zDz#gsz-?5i0TRac&O9hPZO~jcWK1e_>XWC}Z|A$(zD>TgZvb37a@lG3A#($F)Nimu zpa^#~O*;i%!SM26q2GqP&yYHVBq4`GGspr$vPtI zaC?Xk26UW=DiADC<3g1QG|6uQlzq7I;v41lfc7V~czq~w%(TUeH&RX&!;MkjDY$#> zJ4J6{XkXu^0tgDS)bHS@3E+SXV587RcO`A%WKY8dMV)UG-dvs6>!MKRep+8;?!@h3 zST5prB&`}fg1|+uowIPHK`mOT7Og;*b<(*{rweP~b-VeM7L#BWxH}r4+dszp{TRj6 z^O$kM(P>(Gsi~mGc$lz>mN+}W?C@>VP5g3=wxFe4i~O=)1f>9Le2~KMvWx%6Oilxzr0S>K^>vBeD(Y7^~5G!33!K;KMn5wr(Pc(6vu9Fx7&3L=0K zFq~Eu`*E8^+u=aX5Tv-mKkYbiP@{H}VHSD0{InuoNE=CMJOh!%_QXO`;G;s5GrNHp z2`x*p1G2tp!RHK-;UMNoBdH$8PiByY;s8at{j!^nNoxB0Koo3~%qcG!3g0L?kQwFc z_2N)k)a zYC7SdcF68Uc?g%&_@_NDx_2Br1=wh`4x~e)a%x-Jjlv-X^5uNzi!Nla9c9!bxH|Nf z@}(P0nHAJz*N9~=KaLnq)8I4MlBf7>Y8sepM6wbxZTbqZge##}UAUI|#YkJLC6M&B zCxl^U#zpr4uaB1w`_#THvk3_q`X zl5h|TCTVT~@ZFT?5yAt6PZB;$_yXZU!j}kN#Z1ewj8hzLoO20Jv$>fU;vr9rY6XBf za}v&ulAx*>t3jtv6n?!RTR8Tut#>|z1Nt&&M<+eB*!wd%~^SwkL zAxsm#MR=5Ack|R_H9V8FF|Ja(d7<}U1q4RGo{-WLsg5X3%JiN{ zLr4iv@0s4%(_LNL*w7H3URxJ#YHF$pDBU%+-AZFqDAE+EkA%a4NCfDb+J-=FO`y7_ zsk*wmv8FcM(=@%hslKr%T&DyY8w1tTd%_LXjg5_UJvESjZB4b(RHKBd>y@xlr%bO2 zgsVgKN)MDAXsD|X*M+OYO|{`bs2hr$ULR?wsR@Td4fQopTu&&{P#bBi18z@EM5*ry zG%EEY<)Zwa^_GKzBr12V$YV zXn1KNe$l`JMf;;lHJ@i&hwJMa!=Z3(W2igQ)D)f`>8`1P+pOt<1`X9hCOx&?aA^pK zo2EAf8mj9f)ivFrP<=z7x~``#+!L;Dtc9+rZR&2S?e1xuUSHGG7-_0$XlQ_p>ubZ| znx;mjF;b&MdX(z!P&g2dK+E?u1{!PX0`>LPN_D8QJJ1veG}U)QFE(~}*Yz~ib%(pB zD>Z?dK<)JEo=5;XvaSJ|1~LW+)I&9(!J2C7!eMCE#=3Cb^oD@a)6-BB>h5WPs?;lvsYad>SwG# zVved%fB!{-iGTi;Q;-2;%@V84`}<4$FFALl67krE-U0m5RYZ*xf9J^^fF{QOu{MLJ zGxpQx{`@G`ZYTVDhx~(1{9EHw{C&xAJkcBNp5j-#q>g7d#V`H_+^m?AP9;LUh7m@8 zAaz!EV`Hd33|ik*Tc=b{Z<>%_nEG*Q&gf85Xj$iord!(FivRBT?(1I}d27kFKYC)? zwaS%m>^|??g|{YG-u}(0>6iCBa>Jo-)fF83etcQUeV=^)>>ny?5)ah>Lwe}z%in$I zFEd_!WX<5W9^Z7+k>|eD+5P-|PrP@iA>8pxzqIZ*kvk&48FS`>-yUi@_szeAH@x$H z^P%^rUX}dV_Qm@@{$=E8c}er{Tz|jptM0=WFDah;HRjzmcy8&Yr?-ue{`u9>!@qLF z*o)7;Vccbx&#qi@@grya=COZHj?Znc3ir(o^lUm(bNd@5^`+0fR{zK6Z=ALBg5J4x zf4y(+qJ!lR%Z82s!vkl%EWc>?mf9O%D8yc2%Qf&MkfECc#-$nQBQvkCHlstoSwq`wUU z|J8k#&x1f=Z2D*YLdYyg-1>QZ-eUt~H2?GYPRJvWRl{fdRLC&sA^(ZK7IFp`I{pVk z>OpA6Xa8nM2PB_zGM^2B`GnP+{Fg(nhGY$&?c*W8$WQudzaKJ1&a3RF`Gkl9$yz^; zuZZl1j86Y_9})?`_&oRX`W{yCAyAo;1*rwYa|io6D5)hGK=k&hsec3PDC zU6E2SO*JR~X_0D3R(`y%i);shC7;C`$V`?0X|H#Z{f$Cq&+ZB=bL?uZ~QF$@t7q|KX7?w?TtW_S+*DLE`_f zy(@u-s(b%)$G(eD*0E$a?u=bgvP80k?9yN?Sw>^mf)P=QBx{Q$p-s|mOH`JMC@m_{ zqNI{i*8K0iV;QCQ?f1UF_t)?D`TVC(xaXexoO7P@Jm2Rz=bm{U)xQ#c6TO zAwv+c)&IV5CN(TH)Aws}NLE75kosQ>MRI{{UKaj&G!ik$p#uNafFwKF=N;Q0#UyzP zJtF;UVM#0?zfbB{B9p+*<~;oRmEa_wp+|N9UVIW9CylcGy$~hA5UCY^H%dtpCk=G| zdY}?5E@*}DpNUm+8EVSl-x01vh8u;F{ndyip4>Ei`SqYBIovcd{%dhdTA@d5{)x~f z1Kc!9`m51PVxUzD=Fb9{lrNy6{HrlcRC#Dv^J`&De0XS(`tL?EIl)6Cvj1!_lY2Zg zlJ;luOv-p6SM$$9nmmE3iT-g^6ZFC3#sO?E*f0IoS(Nw#=E-o~4VnaO{I3G#-c zpko3^!5B9pCLqMm4?`kjh;W2%EFe3#u75}nQp<~)$Q~2yO$fk563HYiU^Ax~j3>dz zkLZC3CSj(7;$x7UJs6(=43d)uBeNOYDuW?;Vx~jELnSz<#Es}q2nix$HsiPc`>0|u zRzyM&DS%3q2dadTg=6evtVm%PsDd28j^xe6Ah|-d0bwU5m$^bL; zmp1a35?pDjQDV3|k>~++k2oE|91~2xJSTQPvDke!3ZWpBZW9X zz=Q_*d-zbF@d-lYdnWZJl}Iqe8R|4+Z1I@som{{UPFW83X-2dN0THlB!Sw^lq);Dt zlBc#Nez1QSM}()A>T1VA#nc8Vp_ ziG{T>$mMsb-!McZK`V8*h&oM49HJMB7(|M-VRe(k0;F|FWq9CzBm%?$IBO_%&@iW9 z9!&9bT5POI{?u87(a3YA7BU-fV#(?1{)C8W1w#@)i&aQ$r|VF-ZP~X_1=6 z2P|NMq%!!+y~NOTQkY|882r8f11B#az+3oKG?}6~Z482fp{Cpw zF@eagzT&K)l8MkW0k9?_@IwgjpfxtZ1YaVeSu^GZ;**Dm50c@-&o4p|j{xUkP$Gm8e1c&?nCb^4905~pDZ!F8(=j;51{Uc14~~mECQJ~LkBG)@!Xga! zj7B5>nZc@2(__plO@A==T2u*hhq?kcjVSzgR1jE$%c*vD#sUh^wn!tCfV`5D62=hX z4K#QkIJL%X(=cnHdT?qxA_l4kSgf42c2ef7P?>v)As!j2B?)rm8)!%uOZ9n&lZ4OQt=)>4phY0ypJq(Ll$n zg!@4NPj#t5EZ~W#1hr9Z3^f_g)VyQ-Ne~l|ill%U*qWKjX>&ELl(Vzx6A%RXE>Np8 zz6KWXLE2II8|}tzAvkyu@PfEZJG{Fx>$B5~kL8}Ht!6hKuB!NH+ ztSnf-AEAny>X;)LV|r;{3Ja+G>wYKn(CoUv9obQUwJn$s;EtHv8Ht=?jy6@cM89+A=B|sdz#hP6dQIW~ zqvPifXLyCCV3vzP5F5$RD%gX%Ao+pcaQ>NPT4m($~!-XUd5eA=tA7ss(grTN#ow9CFPoNo@5xjqsFw#y8 zG+bI;hq^b%iKWgAGBJ9y55a5k`CO}+#qm$(RtBEB@7kEMw$uI$Y|gR3!@ug(&*#Ye zmn~T2ZGNiDGYX`Qp=zz9vkAU#uv|DP z^#hi7lMe%by=0`#(@b(W)^`2Db&b`MUHIy@iyM32*e~`Rc zyC&>SKI*Jl?cEY9qAw@fO^vRm7*S^r*{~SI_sIY_7HrY&QRM~&)F3|kLawS>Kx=8M0R(c+I({U z@vNjXG)2xZ9F`1lo^tqO4E?u%2B7%qXYcUSt3p3* zQPwC|B)6g!l4TJN=k7Wa<{kc2(SP_xrNasRY-E}Ky?lxeOcMQFFAb2EZIKf`)2ESU zf}^A0@8iQyQI9*ouj%|~-ZxS|r|CoCZ(SlME2fX>{Yc3QsRPdZQ$@MKJU|H|{FpwD zNImxzG(}m0=3XGu{@mk_@W&j*3)PuDM>SsvZ}>AejhjA-8Wnr)*YM$wHj0CWo-K-c z3T~DT4(d4;>NysLN2x)-)sQP3axWdV6nfTV>a`#lc^BtL)8qeaN;(f}tZqc6c%Xhw zAEfg`Mjr_Al8n4D^oE{5%~OU!l|cV7&^Y1o!Dn;jk@=XVLzM~-Oeiau^h*=}yF2p#pWpFG(S?4X(I}9j8_UQdA8#E0l>=Zx=TdZop`t)E z0N~g_7DfgIPCB$80}5Qj$g02y&;t|=G(exL3oZi%XiB(17CHcxOP`O9MuFlq&(SX| z9H<%z6X%sq*vR4Y#W7I9d3(aQTnb+-NTII-DRjqk>CgZg&8q@+=X!XwIuIi0Lq)6W zAjeF{00yWFVMveY*3mQaqSsmDc)#FTtdAR4bb-q^oEv?2G)icLu+$w zBQ?CHl8T0ghLWb9hB|HuC`lcW@Vq0kCXz#a+=(Cskf7x-z<{Eo09=qj0IX;V0H98? zNeUG=CCDyRe_rS9!nj>FL~jRA@qrRm^oG2XM(0^MP87Ct7#Y4UJtX`oX#FH<{CuX; z{x3q3318Nh_vYByPM9_4t6h3YX!cr&7BCo2=THW+`YK{#-{6qUrt*p9(KIxcpA8oMyUtJ_|U}ufNBAh(hi2bJJ;{lNMbo$ z?fERg|K79Q)tyh%4n=N#$nSXtkXN>l8FhR){88jBC;b;+L(zp>uXv<)wqBYvy1lU` zNDK{0G*CbRSRjrtfFck}ML6mC=@;Iu`GP;4fa7|#IPIfu4Q|v4&BcPqkccGxB9K3N zp`_~YLo1^|)^{t$LdVJ#PS>fGbAdK+1u=Rv&=fSuU6pGXukRfk9H_0V>`wN>`p>L5 z-AVq+fxbR)sd6Bh$R#FTZDG!Vvy*3z2A@Dn_zg4ENZvSB`=h`cv4Ac9LH8K(9 zbzfJjaV$0~z+HRXE-0~EhDCLS#_dDK!aGBD>K}X{XLGh#!*AiChH$?Ni;wLHFVOI) z22%TkT_zc~P1K%&1V*<6*my+$GZZD)*d zbG$-CQ^>Z9Ua`{gRUOL0x;N~PC6o4#IgS@y7pkp$y+*)XLg#{$t#j0U$04Q56-QZW z7`MF7{I+5Qyy*LF1u3}vVuz+lW9tqkWn9!q0zcO*X3-XiG&v3lPG4gVzsgoGIq zWk`x$LCDzQlpvV}5e#&s!9a5mLO~h~)crLK{0Z&g`2de(>botT;{ltrrLT5EgJa2; zGkx+|MK2ju4S)|pV<(j--VNW2-l!(5dV`n!+1c2cL#{ zbUixFh+;Wzlu|JCEhb)ZpF+s>1+w>F?(7kkIi8V}UEjmBxP8z=piJS(C+5g-%Q!~7 zu$E=PtzCgnneS~Tty!M^I>i4)Gq0VnoP(xowc+uj*-ayIhi+-MTxwvrtTbL!p%MbTBUHd+C8$UX zBJLXQdz^Dc;DePVRXTCsprQw`n4b<}JZ>@UIMNid%*+c;2~?m0gVZcASdmB&I>2A+ z_VjUwUtZ~j1bdUnKEV+Pnt`CE3J#CQX{q2LG{a9_;^E8R3ABF(VQ0t=&Wk~h8jx|m={gva&~hxuAnJZh=clSc^&^eWhL1~6>O7P6&JZjrBnR1k z6i9n9p_WF@?Fe-h4Ks|5)8uara$>mbWwpETjF0l8#cbbFgXMZcm2I9Z1RaLkcDqe9 zH@X_(EHBCMzE}aakma~#C2nY#>*V5fQf}pGGR8TZ+froZ8SocO?_0R{wkf%NG}P%m z!HoK1ly~TkQ&RoP2aQ@ZmT4Y38|GXnaADs3uY(2ygN019f z23`P|q-Ox>pkFlbH7}CDXeGi$PY+38JjlbyGPMlh1LzqL!jS(vQ-+4AOx(elw@dHb z-<`Q(X)%s;bXnyCC2;XfrG;pEc2QR33zlvueU#oDEaN;u*|5S^CgbH2-f{VER_px^ zFOGngR4g+AA^6PI&((`x{_9vabDIo_HVi=sirLVhm@#Ms8qlDa=D*^}!3v{KrTQa& zp#hYGmTr`^QR!RKiZcAUjc+-X1By+)zI6?Gw`Qr*ef^Vc-Sh=4X)Zi~Q5t2lthc?T^n7(&WngbHM?PJl z?X!zJP3;EvuRQSa(}(xZI-8Q=0F7PIz zp8jn6m|~aM&O;|y$9QE{oP06TT@qzf!L(r&al;Dp(<}SU-<5|(JYZF2@fVK9iS=;W zJb9Tn_Hq^XNsr7)OMdK@8V2#mp8a|1VhtM1%RXuP;+l#{%>wm_#8y<+2}PfmId zcQN-_4NK;ZIvtS0$OPf{hiUxg_f|#lTljb2H>d%sf)HY>seoEAe&di!6%fAsee3-{ zL+`_Req~*q#;NjKe6fqWt9qVa%UUaGdGhv?Mdngm@9z}dS#vTN#4LErbkAl#pGlg~ z%G6Vt&Y<)ol<(`!RsD%fTwgiqGY1lHiZ!c9?Kn92*-Kb)d~&Pg7EuOJ$xQ+J{^95^vtFwkFhmBFIS9vawk@GChc+t)nvpRodd(nbb3t1?Kx4&B# z{td_$v1E=zaf3$hEbJLa3caq*;ZN1Wu( zTb)~Ya!ru^XC_`O@qY&Oe`)Ow@tQkhXPq;hf%=m-XHSN8-i}yn29#lgH#zyU^B%ul zy*c?J_AXC;lE2$UJ9M)-hSxIdN#u$iyNXi#Y~gMZApS%}_~5SA{-wbCp6X;)hKAk7 zJp{3LzX;F5a(rd#39MXXesGU3D|!FL zJgoy>O4rtM_PIGP=g-`QS>D4Wh#$F$TOEqiQ6RH5^abin#kDe$R&Hfmx%sX&S^PcNR1r>eb^-)g7jm{eT9`Ss?2@N_xsr14NL>8QwYIMh z2B!I)&{}i%OGM4FMUifDAM$hLR2jnr-5Pa7{lzE)Y&R4uTJ+0bj`VLm_xwn4u-ZlQ zYnvo_q(j-3StV_9G}2#KSzdnH%&Xz>%E{;m@#sT*py%tAJnID;4oQf&>c3HVQ}NmO zrsCZP_~Iw-P(#{;dSRO*m?@rC%ybEli!&xYGD+||Qco=7`g z7=FAwH$6n~Vd@Uv5D8^`F>^q!Q__-}+z;EE#5>-KS~O`KN)Q=_~W3iPu!Mn0T z5nM_02s^w2&RrPI^WzJ@Ji+KiKU2%^Oa?s#K&@aoXDX`VEl_Q}%t&0H7%EK{nHvj~ z^z4n$Ig@l+MrPGbJsWq*#OT$7S#cW#g+Bn>%doxV?hWf@6f-yW6$l41l2&c8+r?z# z>wPBWI==2mXvB8VXITS>_(V`f+18=}<4Nm~V5uda0JTf%Vu!yC`8*n4EF*}0yMwt= zRFyTSRrzJ5=d$}PQVTysE?-i{%lq(KL2LHv>^_Si`2m#)4axNbC)rY~UFFgxZ+=q-(2p+k7UVH%5rT;?a(JM$f>pvE~mw&RO z_D~WgByi0VQ9s$$`3#s3l?7zuO*+jy7uWIXd|j7Ek(LH2XsOv5V8l_-d{EH>MCSJV zHXA?x3kMpBa{(983LM+)I}!kDeC7@VjtkjDQwP-`F9wGL9eqIM++x?I4 zwW82T`6`WCH-ZHzi#U#-5`1=9m9?YzT3E!5pt_<#!d~@l?@L>k4h?QWnIF}ywh7fB zupJK{Tpb-~pR$MN&g%@hC)l_e%C_woeB{MNd*5B2xKor8QF;RX$a=>C^JT^sJ2qRW z2ff$3?{hcBHstu73)gi0WST!$Xr&6P^F#%_+QC-!St@d?qk+R!_odZk{lW?-g8LQ- zI&?Xopt4tUUQS8ghl<+ams4CY3pd0Y14KG{ zG^B2z^PCq{@J7&2Ur^z`dzKzkwujg;I&r0qzf$};f06UulH;p$q%#$3&ZX2-Pu)u_?c=7a&w^2=JKG-b zecKWKZTINO4GB6`m&8uFWz<~TUY2sIqg0{YW=!qTtxc(~L?`<<`8G!}hXz06UTb{! zBdWo8O#zeIO9zgLEe9H2IX;gY>d592+jI2Ac7fWCro$q@jS1r--c*$gabx`ORjGW` znQH5%*Z?`Fm=Br((Vr^%dD-4hd)LtrN48M6B9_2g5i`=fh8dW5tGBtsZF|cGt-eXG ztIll=6~`~s@n-(|R<8;O;_wRYnxLwi8j+x+s^zAtq>5M3RMJ#Y$18bgs^L5dc)Xgb zr~91k5#s=lmzE6elw$%K8WQLHi88hKa@ZXB~TM_ zmI*Y@@;cBOTub9D8~$knKkW7X*hDboIZUr*&>-qNbw*rfMt-qQyQ`KBk{0=E!|%Tv zp14(Y@5;v!A=`J>4L++F?$tN<_l##b?RQaN4d_8N8O!le>T+_xT3xJ%RqPDwN* zOC62b)g>eR!c!zs7dvT3XI2{!n~Q&Ywp`iL)`hW*FR4Mq{X!7?^NvVqF8OrBB7CfF zx~`o`m}KI&GVU8YUo!Kpy{6!ZbJE(FUVJ3MH(i$WvHnzFm7%~*H}jZtHiE16WET2g z36QxyEF;$N4pYKb_VG4bc3RKIgFdl&>i7LI-{S5~)?Lg{XZfbHur_mH$(8trec#6Lma+=pV~3vzc4&=zH2Ui@zuXdAcCxbI^5&Lw+arn!*YuX_^7`+j&I4=|vRNn3+v0U4J zQCGryuX>Xr<;P2Q>8x+9{Xbw{toJ3cT<<`%}Dd=PMq!fmE{dGNfw_~Dg8^1g2zEstGf)D)yQxg1r;F8V~n z_d3r5wgJtnS&XL}wC({5aVy&sIU+oEY)ji9q;M%D4dF9 zDZQWW(6m92;f-hLYrK^-k8albo$Gtx_`+w4Q&g1`VborU4$B6(B zweX|4?p#XkEA|aPf6Byh&pD#dM6Q>kI+r)BI!))p*mDI(ZZR`k+5AZIGal^=ChH%( zd#ArQ_TlC;o8yHZ>Xs$ByiT;(E;yK{?C>IGsnRJG`)e0;zv0`<>2%7@l%{HKYdaXN zIAm_SS6ppLomPNHl=bBUTqhSxZg2j4nJ#|!SJ#17tD2;=9hFzagO|82l0AP@Mpko4 zrq*ipmMvwer-UVoN<8}sVjH_RE?jGk z!petH-IXWM6xYrxeC1U_ch{NrYUOdgku<4XbkSgo;fvZja^y2|uT)o!QP#B&SB335 zV|VwPnSe#d_jL6;9WEVza@w<}HX~;9yN-9Jy(V%+ys}4&wt7Xs+UXYVdPaHseY*qB zHDR){AK&@c$tEi%uh6il?T#}@tY=ws?QWsIa`67I0mI=KdqrNC4g0foEmXEYI-MZ! z^pN@I^wX6_xqg{#&pHy4X11H&K?d>7JUd3S7I0o;^auO=bGD*>*vFzZb7UoLG%iK| z(n1FF?!KZMxI2=Gs-Pp)%t4k2w8%BfHH|mYXdJAbSq^vWR$Q4v^#p4lUx1Pq> zS%H?IIgPPf`D;5ve?UJNj5!Q<9z!3K0mh_(F?(m2grx&xV!`Fp&7lE)l|Qqs9whf5 zXk?yTGSFED$a2@%Mf9$vF<*!+rme#B) zDfr~m>0TqDR+!;J+@7*^myzYV2kfa^+5}C7KP_9i%c}MCgzs}*Cahe}D;=T2yXQp0 z(zJTscr+U5ghxt#;@x^QB{+8X=VocNk^I%2+!aSk7}#^(d5?Ny_vgwlm-n?daTjCp z32@9ze-ZonO7bTog{R|7TdUMQ1S~oAvQ*|>>yuBMrCG8WnP!|iY=g{+9b$F(MLh%8 zlx{m6I%}fEdY$#^^^>Pwo_W~Gm$25*UK77bMlh=Ev&`^QMQw~v<{5`X?*LNKh2Xjs z42(wsd0Ab`a$Yk}wkzdkL*2Rhbc;_F1*)idI|9(@`f2N z>AqE%(fZ!SUGKRQ(}5kjjA4v-7|TM$7FH7o=LQ~M7oxB3(!0Sa`~E3Wxj*Aeo^$#G zR7ajsmBXiuLKahF?yP9BR+QYevYf)@hGC*=*W2>*4@X8yj2iD3J3h8bGJ5FHaEo4keHvL2i%cgw$|b!+UX_lH?|RD?-RHBkbR2v~zh+NYSBSs+UY$D!ZOtue zqU|K|!WZDhBR}Y|mMtGEzInu@HZLK^Zj-IKvEh}KjX9xCtkK546A_1NtNi^pHd+Po zazt9*!cq7-Knh|_8 zk)ab&J&3K-TgWoBL@tnf)U>Uh)F}z*J*@7J7i_xU*r;`|w733}=eKlg&1F59) zg;xtIQ=7A4!7B|FNuU9`A2%#0fDR+u^ki}a^tlv35#p^ZbVCY~ktx#K9a!mrd3G$= z#Dtu`9#GqqFFTf_^A>g@g$4vT}2 zMnJF*M5BSvxiOcH#GL=_2Uu5X8tN;lfO@J*8aP$eUp&B?OW|w?fN*XIbv5`99$t-lsS00$TmF%rN`q3=o{IczOO)EXKii!t5#gu| zTd-3b(?8CeF*F+Glja+2!+o!i6-9{~d$+~gRMGWX-AlsN&}4UoMqI1(RS(M1?Hs+AFu^5P*2itj8n z^+>dID|49$6Vn;63pr7>bEVmewRgA6kwuI;=Nm-0z}^A;naYbxH3asKQ6JV)cBS}RX|_5T;VP|G=9sP(UUp-it5)^hY*f0nsCW)q#x!Gb(-Qu*7XH-~W5Eet&+ z-$w2H7lY+juX#3Z>>BDF2(P+Pd}zt@k;-?zHg?PkYbgdiW0$OxZhqdtvorMOiWPb} zkDUc3ok!LSsAWpong)MZ$=y&|6LmdmP-Cm(a^b zxc#Lm5=Alv4WuNNwY;M%Oiy-@t2{qJ-yL`uzglKuU8(Z7^DpR2>pLMZYrk;<@M?2~EtoB`-btzkaUS=I*eBD-x?^7n;B67~@W^ME=W!q6N*_ z4>(t4M_+5bRn+=nYwSSx(oHN~F2R`+%!Eg$Ek#LHAG=Xqy*Q>L`?S9jSB1YGE;c^? z^(lE9!IucDE#p2CD(Z!m|l`ZxR z*bf}JmTHeau*eACE8nIj%6$2edS|<9^3&i16CTLmJOU|nS7}}Z9QGPKS1ifsv>CBJ zhrhQzzZcSJzrLcbszLkp75MUh)B69Zp}NHUQS!i(dbBb+F0Vi)!()W*0FTXbYl`DV z-M3o<7F{FP%G?W-V;@L2?MU8!gI~+-&{!FV$EDHMEAW zlNWd>sKglFH;>QZ-nU=_=yGSv*;~$l{MM0MJ^~q6@7bh^ZQI|Z2&1BAf?)g^>G-?Enb!$cBk5AkmKlxnrVYDyLg!cQeJ>avYY3|pb zW-TZ=$Wt5la7or%V3gBaN2oY!`66)C`!*N-dgbDQ9c5qE3n|}@S#wf+feM~E$}4dZ zoerDc-d6rqjY4ks&&n&OJz{;CoOIJ#E@YU~VcJj$K^zgFF-sG>ge2;=O0Eh$D%$nT z^RCsK^CP))t;>9N>u*{YX#SwtgAZ6!Er5m+i2HY0m!Hu7el!2i4#ludo$n@c*ZTRk z@QIdk8LPkTQevw_pnhTICa1M^Px9smHgq;dlg=$8eP=(d61N

MP1geK})V;3~~^_>dF3kPI|^h|9(1?IgF#W(~fTh0tS z(y)wo;Z$apM6bQksefzZ>$3y)7lJ^~O2*Tpq!T$&V9rs4{w_`$rI(PY{AfT*YKn-B zfqyGcYW{Y!A~)mj-zY-AM6uV?ai)+OU0Rn6W%UFKwma)aK;fF5J` z$Ph-Uj<8TRoU*5|qp4R2;gJqLX=z4wd~JyWtxDghFFlCA5mHN(h?`nvqY1?VV~Qt{ z8nY*WvC1Lh7-pb>SLK?@SItc+Nv?+=5H#wxiq9O^;1GP!9xKhb@s6cWJyHw@Fg@L*yfvcRpCiAJ$dqvrtRUsUXc<6h~h znVe4VCD2P*(OEjOZipB0&3E_WFfZe>Y!A`I^71I8szCoM;k6(b*9%+OVoC~lO|Atu zsAPClR_tDE^Q{4^DO21HWwl$QXOS&_<&L%mB5N)s4(e7&Q5P&5jtTL?sK|8Cq<4#- zzJ6=-4IySW=GDs9Rw~x;WzgrZUqbR(F%(ZE#Yj!^V!2(I*}*+duy2#^(BA11HHhHX zYyGO)^Lo0UM@Vq8zpx9FviW|q1 zr)Urlud7gx1T1nxHDbi!YhoJ{!~d>>*c`?Tvl~){g6L#i8bX8!VQWSa^I!wFhu9-Z zw1qOdDEdZ$7Kf*^@6Wrofuhb&Yadry^J^=Ed7Tr#Me!;zD(3RP!hi!e=C%|=<{Em~ z7Il|~7wsZr$KH#z9fJz?Vs3Rrv?3t~os&G@1QQr9JkvjaL-)BAohRFeS5Ounn?PU) zD=pGF_h$4-7nzSf$BD>yUu+@q(G2q{irJ?J6#%h>d7_VLrxx+wuSN6+J)^MdX0bAk zi6DOWph&I3Z$(XsGTz;Z4Dw1`lovi;3e~j{dy0dn#1@Vfa9$V*=j=B^rWZ*J#eU8) zCFb#B)f252G$XYxUJgY*5Q7yjxg?(u_m+W&d4!G2+clN~z4o72=A#$;iY!HD3eDAG z_RrXrcN;d53Hkj5J zlw|5QVqztYqqQHEO|!nyN@H)jo9E(wHKYU`g{ai_3X}ZQf>GFesFbak7y&aGEmmVH zdI@}1f5kW=tuGAn+oh{VUa#Wjs_4RJTM zk_ogt?3XU)AsT&UmB~L9D%Lt;%53 zns@gZkuGcE&;ISvOa3P#0}4*Myus2^!{1Haxqp&y=6c7m236dVSQ}r-{+*7>r}CRQ zgPwg3Ykt043CA>@zI0lssbzicS1Es@XjeRQ)>onP=NAphvncK4k;lVxH%p94 zAyLb1$1%yseIG+4r2x51u55i7 zixNF_t%iuB#rBKB1`LpFy<}wsZFab|&V2zb4)*RBNhYc#r^$V9QMl^X9!Mnsb)ViN-v{fLdn zZ@}BLg))6fa6M}7_S?`+tLVO^&8f${k@@PtRwK={B5-U76^eX(?*09_Xv)=e9A|o~ zfOzXaD&St|cQ!E&GKv-U%x#dF6QVB@m}XAM2d?XS zPwi~9!HjN?39p+3(u1Bqyg~}?+G0{j+K!s;1)Xj@WSV0?JjL)4tbgD!8~q-HU!hg- z+;4P;t|E?R47<&f`QP+fWE#Zq5NR>u2+uRF+T+bl*|0)oXob-?%pmi%aHy3!>DsCt zJ}G?-ffMOH{c*Tl==dfbDS#g-IjV@8L>pjzjDFBc^%{;W=I{JyEK?dLCGJ+7I~F`e zA1f_dKIV{Ms`5`neka2A0J6%K(ct&IkyR$CQPm!FhW)fCNZXIB}_#lkwu z5Nd8smYnM>jtH)*UWf!zZiLBfi#?3kq{G$Z@Tq9ftqzmJ30WV#DSsYJltLHIBoH+^lV$rj;r%DH> zI6YZo^QdN~-R5}Y=Cz}_n9Ji1-#$K{f8sA%5qHRj^o#+g4-?T~lseJHpIG3I+X+O6 zgoej?Z7M+Z+KOV|MauDFGM@ifEQ>)r#ak!)m#+3C>G$8iD0%xb7=+v^R+3)$w&NkZ zJTQfDyq=}kmS4u`YINd)yCsG^pxlI_`;MC7gbeniNP9Tl!Q-ykt8<8B0y7|gcdRevX;mM1OjMapchEgDaI(` zyJ2>I%t#^RbnEC5W)ijJPY+m@|BMN8M~b%mgJC25%JkWoZo0i+KJw{Cj|OYc)}-hK z#G~c2h|W{>T1UoyA4Do-9WFdKEIEqyLIz(4dr2Wl4!qV4`!|P@M?_NXemU;`a&wTq z7J9F|`m?{`Mlk^YWzqiRP}A!bdX8d$gdJU{kiB z8B*&VXCPlA&)pgXg}} zJ#aSjvj6+95-R+Rbd7eE%KpwF!ZVne6Le_f&m?nr)St>rJKMeO%{cyDBa@2ori~xz z#>6mlD@CD%uDy&vcjzZ12z4sZEY8}H;h+j#{CL6%O2>oHk)L>BNhr%Ngx3Pd^5JNq zTWI%Bz1bEaB$KvzFTL%T=ZOprp`9gy`6q`O<5S3=5s68LKQ_sb z8Efhm$Svb~eHn(SRzh4>0^=S*-!xiO9Sr~U1gqIO2@V~OHePxEjXyLvi7h0Yh(G)d zcOaOa=IU^+KFH6vYiH=~`bqrLqhnux`ABaP13E79WgoqdxS#8TmodQ zl*6V(>b;jffwn%(*~v|X+`^OEUy|1$T3oN-^yrNA@`mV!`rnkbHC0zqfiV5z19UBr zeBGC$YetN=HPtaudF^v&N#S``C{7gcCPpZcL6hY`I#5tk$a47F4X`y8mGLS-PS_&$ z`4Bpoy)iOGmPz5DVN6hekwQMrK1y9MC)MNLnZ6lTX~xol>feiv=~3?!bwmWTnViTb z+P1$*OrA&Uwz4*Qs0VyabDq}X%J0;FJ&dlNDS{ykH)Z6?{=@tJ;aIJraL^%c@;F@d z9@X}n1?1{NTIf7AyQ4hJ?M)p7@s(!ZC=Fx9RtS8&$e&b=pQl*uRUp~&5Z{tnWR(#C z$;s*NRHA#h#&z>lL`u6VTF&)klRgP+hNo+InfE((~j( zuFE(;+M{!P9*Q+^NwDCDs4mi^q{aSZ($h|dkR43%?Z)6DksoIAu@!rf}{iPSo z>aFG9?P)`NwBhU?2Cdn_P-c{$hcAkGKR%n2_;a>}}N*o`ZYFzi>Y| z-0Q1ynXh7QIHSj+S?IN+SL$SDbDW=vl?z)d4hQd&5;T}E4Za8>uU=?an1GcP$Pr5p zg)9?vtj(T1*ci`?m@s}(eI&v@yzKaQ;zkI^>W4m*fUM3v2kxU?=ET>eNzz*daS#&q z&q$5dZZG_Mla~DXrka4uVUL=P#OpzU(j4yQ)Gmcc0(+jfDql@gI?*m9ep}O)${MOI zhJn%Co0H$c^3X&oUK$Fe?kxqs&mL>F`+alH#ZflxmnAHS?^#+#5^3)4?Bpfh`V1+C zyOj4#0;huf5=uAD!PM@#V}HrDcH!1=SC5cK3Pyoc70=5|_PHR@gRl0?iXoKz-gNaK|DE^E>-l9iN_~RjW3-)dr_R2p;NC6xi>cw)|Uo!440#YWsA%STS8lYA-i` zsnIUhWC!A(Z!N4(x0K(S$-AUL`nB=NQnS^z2C*{RTpw6%d4&~zLH^o4vB8J{p-hIQ zf3!}8#o}FUVlvW!jcj*|rMT;Ma{}C!^WnFb;bQ)5@ls3SlAUCbS$;TaS3NqMDd_M;lhbSK z3+_=rpOIu($5mF&UYt`|!vTrc7@jNq+JxH0^kbO~iR+}!qwb&%-COuN&frJ$Eo=G( z%0Jb4?SEAASy0|iH2e*H>Dn_noPDy<_%pWGa1plS@e`tZ=Sv0&NO2NU0vPu<#25%m zvf(t|PQP2x)c$OYF{1tB-&Pj9-^q`?p60v7noxi2zVX#n&BITe=rAawp@mMKs=~$C zzL)uL&&h2n?m1%C+2$?5F!X9Kgwr=??{~gSm&j)hz*@?;Dga^n;aLa_&Ltm?0JD0% z{peD#0!fXVTjVofIC9Sfr1b}r^i65RQ5$b9P-J9HJ;FWdHBQWN)%f_Oz<2kj<=nrJ zyYu#fEap!P7i87kjlK8xq3ABHPIvW{z+t;faD!voUUNO^@P~9~7#Cv#LKAkJD;y-rlv-#@8$@hKja#8^YlF?QeH| z{gf^4PMP#c@46IuLO0fPEC?F|H8VeElePXs-#YF%rG}!D8+4~Fv*u6B@i%yzc~7Az z4X5JiU{Hf+B^3pdIBarm+o zRMa)i37Ss9Dk5nQfC?)=a`U&s>!QBPb6ri@R?qOOS`tFP3A?8t)hc8WJrNGjcwBnj z#Uw*62@aB~I5N-to+l?vs<8C#@#yPaXFf~2 zd11g}Pg_fC@3q+-v28tw2a`GF*x5uEb8;P>ImlvIcy{u*9WSf+TEo{;!F$b4^>a^K zHZs=MyjRh`;wv!OrX4-%!PrYhr?zntpMUJD6%rE9en|h9?6Qn-bhOeioTJ#o?Uh-( zY2-_yr|G4Fey95J9wLqvzxZ;1Ya$Bt^i)nNJqnw2vqCM%{u zL|;$4*OidaVbHoEIyZb$wwxoT^Z?8E9LWIlU>2{_P-3qxy&8cT zgKtyA4y2RER~m*Q`uOXnA@%#(ygyyE%6_Pi{+*V?mJRpatdh!x&;QaCfAbEzdW> znjwbArH7iz<-ZukZE;ep$^#_VFwCxUCObNxmNvEWkJZn#j7LLV!H-xH+O5O0KQ~)PEqNH$;U|^mfXO|~g>k5=w zNinFhi7s&t{X4bXf~Tui!~@3!Oo{-DTMUV45lB)zL~x4sp+g;m66|rQ+HON?b9kLQ zzxr=@P7~1svHZXoi*Yz5V3IaJlfkE_0}q9HqY87PU1Gx7x&B86QtIy>EYo>Cg%yvf z+eLn#+kNeA>CUgdmS>eT->vGe{IZ$qFG zas6Ufonk43)nM{*o0|79p|x__lM26Y+|N1LzMAdfjLfpcm0smwCz;5j3KCnjqoSUT zpv{c>tLDwW{{(XyzW%m9_lll{m38plmNy6>8&Egd7no-!3R`dQmKa|z9uDz8)Vt0z z#`#j{6t%phQ_^9*$$sa&+-^y9ziVlTy8bEK?S9$maxZX%V>NJ6tC`v0&({0_^RXtTb>~jaM2Eq_!OO&N)2L#kmgB=>zDSxmM9RejhR+Qf zLv58EwzV?{q#vLE915B|+%a~x2sz60lL`izq4L>q4n8N%#;k>@#>Q7|mv8I1GVD&! z+aSlqN)e|Es{x;lL=HO*_7_|hEr zt?Ep0x)$xFM+^a_YHO`6*FV#mes$L3^`!sv+qd^XnnB$I$ZYCCo4WW(LS=#Bc!=8< zPyBtEh+vo!a7batrf+%h+wVD+U(R8SU|;5(E{^&0;N@_zxx-Jeq+n>H?$iY$Meyx| z5Dv56u8#)zFg(8FrMov~i>1{4+B`b8>vdYr@^t$h!Ts+p;mng<@HBw=s=dZ_^D{b$ zux=iA-LPT*2pzWb_y4eV4^4t_!J2@}wr$(CtIM`++qP}nwr$&8wyoP=+?d6zW-~wH zM8?U?C*PC)>jt~S>#8C)-G~NFEQ@#3wedwV&M33>D3d?ArIby4s5rRfhbIrBw;`z1 zNKQO*D7^u&^?Pd0+Yd#f-5em6iW_!Gvg4rx3dVYYtv`CYvJ<<&GHnTIN`c`}yh*eS zAgXL=`?mF4^z`NNA^Cf~`GYb8CPQr9TkWOX-`3eSrLG!JqxY9ut(Pm9bIKP$&O$<1ILPT836_YH-6=pMf0B@}+2@}2CYV^_-OsBy}y zye=#6U533j)$yhJvcozVYtx$+FBd|)r;KbB3naOD&_Yq--_P{pQA()A{Ea4-RO2%%XkA&CV^ayRFb#mrPY%R>`*9u@-#YXuVy2KXV6n`P5qNh2wL< zsv6rK;4bRwX^xhPYY%aD+iMHA4@BoiZoTpM z)!LBG)hh+ejLHkF2QjkdU!SE0h`Vah7hHJe#>6(1hJ=kMj0Q8S+Ub~So^{S%c0C6b zpATif8f~?)rNm{k5l27ICAuycqX#M8&ib%+GJ$E4p|x$Hkzl$y;-ca@&~<;SiXt8# z2M<|Uzr1}l@ERbVOEw$!N|k39R(0)(j_l1yq+V|ITxZm$kcNonH8VU2(HivNkBWh; zs`|Oi8?Hu_Y3f38_f@1v8qf2X(py)#b3ieb;iAnj(J(Uq&YDk56Ow(8zgO#oT}>vc zFuscQM(bI1c%AI1L6#wg#R@pRbe-10@c-tXW?nN&i66jpRg5=%ttXrI5yxffHdLqb zme6AxVJLnd;~piZq>*`~aDSTi7DH+)khxYYY(Ezzj=lh6S~bsY{8^R^iWYTPX5yw>^WuZ*Bpn{&PZC~4Y=>&%_4LPYm(95m&-8kYrt75kmj2!zo z?RJtHk`0;C_a>^_X#}D*p!IsgW#_y4_#6@tF{1e@RL`Gy^TV@NuNL(g_H*^Jy@6_$ zSl3(7jITj!M&mn3L`n93vQ|52;)Fjfi@WYXAV5c|FF8`;z9kB*&9usQ`1umPS)OPA zpzUEdVv&=>ui|yV1BV5!6WgJ%hLW6s(H*1w-e`R#FxPFnbK9FH4AWkYjeJ>|DTU3x zJ?_AT(RLD9-{F=vopmcUcj(Svh543hfy{fIn!_}qtufry!MmB~)l2*h zwb1<Mvb?A~*HP>@|7i&p!{pXyy5JAcA);%s!2QyQm{vqd6)xMrl9n=BE| z;k)HBz|_O~S58UyGp~(C&8yqK>!&ko2#c(%IMeN3Q~_o;yRS}hdbDxr?`0NVDt0v~ zLkKfmX}uS-svHPY*Zle%7wZdo@t1fYHD0L2fXaOx&yZ{>APx)?Al~Y7NllY^L0i7I zAXKU!myCjXDLDul31Pi|Fo5^X_?8_Bq2x;CXF&=IA$H8@LXwp+9EKzf9F}84mG%C7 z#+d0w`!UYm7v6P#)ZnYf-bMDzVfpoZPgF(>b7#&Z{$-bqQ)-#E{fzIFk1*h6XD%8C z&Y=RI+GD;@1y^j>iSF#C?3~Ayu&+Xp`={ujC9rt=l`RfC=dtf^Hj+su~%=m`{0D%8g1*eqJw{5iv&q0tJLqzIy5Odp#?U1 zNFv7~vq6ti>g7#bG{)^8@A`xFP~!-2FqiY2pbF}?S!`NWt*x{UkrGXxnGhu~{=2rg zri(S)s*Reajw%M-_oA95I?S1nQ)gkHHV&2>U=+6PA}9-uiP9i7z8w${~KI<%Bpx(Do6q&>ZA1C8^<$L~U~TTH58FQ;-G^hriO zUevQH*R@ws3~mD|rVC?z0zEV08WebOv*CDl3GGdrmI7_+_7ba&8r=iNMHYIWoQm7b zi~ie7Y)#$JcC&xD`2TD(S{p&8;cvVWLEVZ8%~Bdun9;21ZtP|mCwk^?eGKL>8L>LPoX*oTuCq=O z-Q;e(gHf-v@m0%YJR0|1hh=Y?HWlt~*P886o+D4m5EBr>&D0yRWB{5;i}}^h{!S?_ zH@ncBu!t)z7!8k)UZhba>A>E`}SAty$NjVW94^T&0M^-1&{;p!n?6>t>1vJST z6Tz$R0LO_Z?QoSEo561lv`SCRp4HXBd;|J0W!nQF;!UO2qsxv5BD=~^NT#65N(84d zt~clpFaOfCeIWS|^^XGycS|(z86Z{y9wE5Dg8-tb8}Z>$k2L?T0e{bBHUBz>ez8k$ z{*+8>Qy>ueCn%ZvKnznuL?cK!aJXVwJ(X(#a`Zc-o zoP_|ERT>KR^@?odAS*6tbk2o&(`TKH4Nvs`I~YZgl-+(flp;!F8Z}o6$%uS2wK-{!t%~ z!s-y%37%FK7Q!DIeo?-*?3_ac(}qAmlZ@~f{M(E}HheGURtY3g_KZ|3p<7+tB2 zpFhOxQK#6@bsvzhdrVStfB)y3O=k-muq93KMOQYF;t)Cce=y|pefiACPP`ONy^W;v)Rb31I z$J5NJNXCNTQItfi^&`WNgB>+A7&#)t>CBhDOa_FE5zRIG0}XO|^#upcobH&&lpuyw zMFuEJ3fR8`OU;E>1=MIzYk(_;fxWR-&?@qtmGxadNjoJWA}k z#G(uj9!#2Et@;RPgQQ;!f1tprt|+cK1PH2+4L9lYp^#?trQ1K?@AX&O1hT6rtgQ}I zVGNjV`Z)kwA&TykNgqIjQCeGJ9&@-28ZN_X{EVd@GWcvovbk@LR#;gOW!>FnHfzBi zq3yomCpaV0h$ksuxJebVoc~z6lnO=maeAs|;<>(cjqk?owSt&}Cg6tLq}~f87dIrt z0IE*nq0cJx%!=hO-6=WxP+t(tg(k5jr>D`n z9*XgL#kz|3&qh&{lzy@6`Lf8huaccc=p9F&*J9+w<_g-AXcFIrZ6D_wVAZjTj}JnwOdpkq+9zsEm`s;XYOgZxwF_Z!rxpAYsKo2E48zL8aW1|#^ znj=QSAQwLd@7N2C(z}=gRnIAh{q>!inVn2j4aVByEPqG(>Lv=B@GF37`7D8Qd8<;P zF!P(F`Z-0D{j1Z`jJtv(;OhS(r|7Y9#7oM7k)q z*m883Dt{qMGf6D+XrOl85N72HbmFTVAw$4Z&W50unyOigM~ zZFoQ8(6Uhyf|N%^RC;=ddkVam-u3ZnfyRcXQ`Wy=nySI-aP zZHT|%{(2YQGR+LJFd4(zxT`SS9IP0U_X7Tnn zbnm3svE2Sg8@J^I+iG29?+$&#g3o)1mfqv_&2;8n zI|jZ5Z|7y)T}ZY81q||(P}+cZ>WL_S*t2YT2r45+YvD?XiS_fVi7@AVPOX{6IpfzG zwBvg(bU|l{Ot~} z>RuAe>w$)TPLY`#a*WRHD|)@6Wn}tt}~kiL4ny@n{+mf)YtL11irHm zzc_w?xVfFj?E_lZ*FMxv#8;fFY<1gb%pBvkSntqYy;Mo@Jo!bEyPxSz z(HZ>oU*cg`n_=>6fDV6jHjdew%jiyiH%c*dKYnaycuo(G4=wncRKe3mv`-s7(!XmNE_S>nY3o&Qgf8=47)D!`8 z{gJU@rbRW%rmQZks4$3D3PiOi(!RT-Xn;HWz3bm}7bW<0-{eR?LuN4%288B*D#mpT zLl1|R<@-5svA>{0hShummFHBgEqZEG|3-Bu7Kb7^2CCIu@xT^)?4E zQ+p-=(3C!-8Go1<&IJ9q(;NnNA~dfyr00pkT+1F=&-iHAHF3Tl@EJJ;#@!ev$o>TJ6|%z`AK_1>=0FTdI)u(5)0cZQAoC zLcZIQlK=N>qoK;-LL5r_QP>jZMI+N3Wz1dE+_oc4?I&@@X`D;cr0IJ*$fRP9KabJ} z#kbHUbtk>UbQJ9t@ZvBk(1ED4>hJntA1D313xe;`5i?Eid4KxR8n!`JxKT~tw- z&pfT35ae8DME!#yQs)6k_Wj^0dm-GdtBmb`f1VKJzwov{dF3?mwrMols~P6^M@!jZ zKSMUQgxkis52KV8;2QEniE$B44?DUah2F2nvm4%}Za6m(?Ug3DdabTS{UgsMb6vSs z_V97u+leA%{7`g#x-<=%o)Ew(Z7W{ZN2Uu2TsvOh0i!hMQW2|v(l)P-p}%iHpWg=oS9@)=$}TBrIK|%02Cr zE#%_E*!Qrvb+2mkYb)N)-v@oNkU94jCAYLZV8;ZCn&`9Y(r%96Jz~@fPCX z(?jvGzV@7Md!dHm(RwNMlO5B9-#KHFV!EBa6`tbX|iE$6muHel7gBUyie zj8?T1>L2f6N5K-pcS+g+s>8JO2@;}R$n_-&1Jw5fsuNOZ+5FEW<&O>y5=)or*+TPK zF-#>q((;!$cFGWvK-fdE1CIt^!LK)bo$UJq>!>}a;&ho8{v*cB$|7EPBhi4K=Ocvq z<9!p4!x5wS^P&>O&IV|qV5|^-mP#l&PwCeUN5Q!Xxjqg6UQ1zKBaMYPFtevpm!1>L zCU|3ltB5Gmj{p};fSH7>As&=Dc<6j6ha*mMA7 zAl>YzmrH?gaw-3u|Ag_&eRs$8v3W?Ve^kVZnM{mJ@3Xqa@fE2kv4=y^SMolfcLU$Q zBTy$-ZJG+4xjKN{BBcC}f2mosa`wH#T2; zW3Oi(K&>-^LXPjPf|54n#U(so_+ z{b{@g*7n$l(xoBfn+ZXXg(dKU_amsW1GC5jNaA22UI-Gue0Gi-UO*J<=^5q4MG?h* zjv7Jq@yh+tYP_m8E5g*Xq`Q zaY~*W#*+s@ueIVO<>a#G1%InX{LvS=J=rp~`F2EeI2@D_01Va`A1X`qRn2jK|x>zlxk zc|Sg2zY25_Xc|<|Zh#Y|pCPE#_KpXWq(N@q8X~Y3xEUH?yQUfe1*UdKKnuMc4eX8@ z@O!8m0Div?{4~q|#}I+#Jii8FUnKB_5nyW;POx)d8^*j60B_CRLPr(07ZBhEXI}}< z{4Jo>9H0w+8yb)=ApaXOzYI`+7D&@!|AX1w3|J4_{u`mc8g$LUf0wjh33;BMAN{Nt zK4Bma`v~w|01yEXfk?P@Uph3JK#u|gD)39t3d9&PR)YIMfid`>Fb2Q@CPW`cU;z!} z|0j$A2vX%C1Rlbw36P9o@&o%HA^r(tmQo^3fPQ_hMXLW5#u9;7{{Mur_&;H6ibDLK zFoygmjHdzqk1$3&YeD=^7y}d9bwc3*aG{U}mjeot{lW@yl%vEeG7E{i0s}ypQ&zv+qj?dHDm-2r`on27w0w$(UUM{I4*E09a%KOC$VWVVu3@ zUxYnxuZ?YV7aiQ1o<9bFq6nQog)MwgenGe&K;L6^C67CPmO}q0GrScW5QN9DPTv0( zK9h&gN|}JYc?xphDk?JSu30=Ult2v7+|n=l#6R*lj0$nuUy~m>J&b7M!4Y8Lb5elJwqdxD3GgxqabzfDr?A92Wu&kjvmBDZ|zPh~u-6O!%(^R&dwq z?LD7{tv*vkf&)NA1s*Qhuo9ZF2KZj z4y2d{NXtS2{ZOL$aD2P$8^T_Bl8a^*e3Rl0zfgcHvtSWv=-JQB$F^YIfv zU*$MwIk;C8`+162jPXT0yg~Fq`dZyN6Us6x4v%6h^$Qas#*6O%=NIveL*^n|8RU?1qvu)=>+(T%K$P09RiW|^}IC!zmFV|@)VVC*B;M!*zc95*H*uVnPeob{QhR9@i% zoQ!6zAKu5`%1>yOUuiQ9 z=FR4pw$LBWWe!llExR1Re{d3x?doD~vV_do2oRAI2A=g~UEXnLf8u2T*+dfqksQm+ zjGTB+AKs860OjBcJ2J6 z7&zfboB*`Qb1o1L@A>u*NW5^!CwLs%vl(09k5D};IJFhP66O^Y94u-HASWQ_)dzr| z4^zg`C7uwO`NDKme&sK#vXP$<0Ac*Jf4fWl34x1UB3i1cOf@eaH%i)KUs-mh7UXtx zDOD;=W+0?-qg}omL+h`+m>*+4o{ zQe%C=0AOw}@*7IDpr7HByfiZ_D|Ewh1eoPT0%UG~*oUUp=O*)~($WXl1E7GOxVN7a z)*Y_q>%s>r@RClg5&zCH!rpsMkOd(gV;&g*k_aoOe+*h+Afo6pI|&$3)#CaDKobaH zXeWu$qrQovpET~>z|Sxo2+ILPjGW&pBmtCAEFnuhivu{7o6?qIOZ{?bQTY%6Wkm)! z7!y^%F7hS-i$>>b{x0+&?6Wv63DXfm;V$yUB7?aY=Ic$Xh^00slI5oxF<03t>}cx} zg82zXlnQC1LM&vM~gKsAYHx?vlY-H>&0LLnK7BDL!hjtkbn&r{Lz*S8ODSA~fNa97bM zwjlta0NjZ9S9>YSJ@|YT>l0lGCMs%js^$-N;Kh=}H+Y~Sol&U~3dv$R@%vwiPXQOi zLU<_QsReT)inBOiUNqqtZWtaQZ310U3xH~YMgZCQHShX5PT+_boroY6@q|0+nbHt& z+MOacDqtZ($Pa=NKR-eK5~TF#Q3#CMx^I&FXcy>Mh$ne_Xs1U~;`oRzb8T}v;iNMD zGB~SKw5u@l$2+?PQwA)GWI?q;PAqql7=9%5XoFCakUk}Do8%1s0a^wUh|fCLW;_== zY}S^{lbELkSV&6(7G6vS4iXGAFvl%0Cb;=%aqNs>j16WkVliPsK|o0qf(DooWBEfW zfn=u0L5OJQ;RcqA1UMRj!StG@r7(v|&Gny9@BGL1fU}KgMk&IJXmLqxk z{v<@rNe)_?AXkWrb}}kb^a)gor)0dMRs5T{T7cp*p5hdue99^tD3%(%_}o8IU}%Q+ z`QJ<45U>H!ki6xXEnooFD9@C!>BwYGjHH~J>C#(i>eq34qXwln)_>+*$l zry|N<4$(n@z~wvz^nnpnmF8!+XgJYIBDE&RzSwjy58qva%rZbIm^N92;JT`C!a~ut zm4&Q`s^KGLp4h9i?EV5U2LIlM4w&Ky$Rng#(aN7_jo=gHW#Wo(rvV8$?tDUl!-|j+ zcwProXMyG}3rTQiGd(9H8Jucgdj`V(9ezV1JOvA~FCfCJa3s|qcE~Kyk3^rHFCSva zriE5v^TU<1=JTQXyhX8^Z*Zid(*CL+ZslL~?G=gx2kc+S9!d*aGFs^6YAnB;Rs5({ zpctq47XP83^`emNB{C_rS zU_IaY4mq|i1b5rTygpGVED=OM(VWtqCr6gn6dnO0A5QhQ6uguK!-AwiqBF`?*!-i2 z#ld;Qml(A$5i&)U40aJ!XJbz_{zq7~4AsB2y{S2`9s z3B_4J+OBwXL?H>z-w`EZ`(j6Up#*p=vZ6+GdHOBm7?WbGr&Mh@iHb;ah=V75Uy#fl zE6fWaaJ+Z8f8r@1)*Litc{TMXa%cRCj@n0c!=qh*+#eIWCRcW*(A8M(RI&<0z##f> zky1P*34`UYSVg$(+L^YN7Fea594(%?skmj~MKt7;d5jzbx||UcV}u}9k!ePVv>TkI z23|g|dNxob;yyStti?W>bo!zPa%f2@Ug78njOyyrUnCgD@T0>T3{o*E*%ioOC_|!V z@$#D;78jo0#aILzAC5Kpy{f^oHQZmPQq;&M@Xcudg~7!@Wz$Zp zfXaxI-6iYH@B-dkjc4h}&RH1le|I!SZ8M2s#KvC6Ru;FiS2Jd+ZvnP?R~Ic(^Z@^a z^R?J*vfHQtC79&U*px({tVCM^juKS(JJ`6k)ccUTG6xbv;><+*SK@$RuGg~l3t%{Z zLN~6_qHI)`z(Bdk96?ea!N&^aYglrFT!Wk<9&Mt52>&ZFK!~%_TWRDivuKf~rPrXz znk}=_5ZO!d|ANH(^Uh@V3P(T$F<#ygh9l~~T17CCg5_@@V(uT`p5M>|+Zmdfv714V z0K|cx&I0j<77lfv)`Ri9<`1#$gUKiexEzJ32^`GnJhg-INau@iJckR!WuD68@K6bD z&v-bX1myZ17(J7P@@T?7`W61Ih{bN6ISJndlVSy)ZDq>WF2sERoGF45FbfhN6qZKLT=o zzrX1aDCb4`7ibbcZjdwESQQdw`@!1hJ*#F)vZd zxn#3;Qh_;(+^w%J(JT+!EX(*aYA##@fg}3vMN$4%1-q#M!yw2Pmhmw)d~h4BQSMxy zF?MifR=0ihD%&36buZ*|^ZRo%bxLkNW^m7OI!Rq}SLH7PyWd-JT==KY<&Y8#B@Rid z(PCyd9G^7N{LegI=_%U;xo&$>t7|?%NM)0Iu)cTO?WVGxW-hhWOb-+ z3Z^lrM&T_ZEg`afjQ6I-?swtB0q9s%_Tg!YGnWKgW-BcglhD5oWmn>;n>?Z2d^Z8n zCS8o-LaRAJ9ojeMZo(p;xVmyWB3A3u+Q2wVFt z|AhIrl4x%lfbaV?+sHF$VWbb;IplFnK5!(gkRdJpx%l4wv!g3Cow11X3x|5>t15|FqtPFzSi_ot#ZyLBU*6!?4oE9nAT1;S1`{O@LoH17~ zkNRd9a1%Z&5zku4rL|z-ea;oPMStg4eiJ@7&nE1?sOQXVd;DG1TNw5+sm!&+dlL6$ z0$NVRz|6L+|LYHS{rSuP8|V9E?&6&A!cRN?`}>8A|Mbhj$SBAlnl?DvL9@&90}UUV zQxRT>4TFc6!GM9oK0PtonVps)nT{H`R_{P-HdL=qaUqS7N~Gfs+8uuYi9bCN9T2Jh zC%uqRJrFR?~1D>jfh0Kg{0Ata#QAq1Ss*m=%?!|BvaN&>4^XW}Edhkp zO?iAYt??kGAXWpH?9R&2$V%e&75(-QBdi~^33q+l;v6mik-^DLFmhn}f}KcEtPimF zf0US5%c#1crX;l!aaUbXLkGA{A0VszFtuNiB}T+_Wjs{?>iLRBIHke4SNA6oW|{!e)LotDV!& zU!DQ!oXq^FloI@>mJ3;3E_wCDDXvEEOOyKtL-O;qSY4-aweE~$!=%jMmk)~dY^?9v zCQbeFuW8)R%U5?CcF^jWX7=s%U+=D>obw1gxuBsQ@rcLG@;j(a~O=RCc%jIDoc`v0{6Y zeJaXwm`I6wu>Qc=yCRj|?N&O7L(jq|-batYdjfMMtam*w5W%b=VAhbSXjNqNA*|2% z5dkeJDSTp|VgE45Y!F61%F$^Qj|x>f zY&RAgZeLi&U$uG6;E<4+QGbCC;7Mb3fCM+lDV%hxY!c?NW`AR`Zjs3%bw;huH=+U) z3o*Mm?qmf?-Mr3?vjnw+CDxcf9enVL`wvCXX+E1W7to$qzPfh#uK8hhX=zuBH$MWD z1@>;&6s?i;8E-F%OKtZGfUmrCr@7o&+xz+GCZ-)j1Ib*p7ual-o7s zH`K^7EPbCE_qxg?dFBW3)(#5`x^Dtr{$e3!S?^Low?6RVyW%6p6CU`%oh@w>y?rmK z-UkUsf24y_dAtRTrl53u8f2kX&ojOBJj4IK*s3vWSl3tAJ;icv;50@u62$ZXT3o#t zV-1OjP;#kn@^m?aXYA?|m6kPx_mOHy3?MbxGGW-W`0%f_nu>3mulHSSnsR9U5( z^>|_sJ97GZ441@T&+Ilx9d6xHM4aiW`%$E%zwg|OkGzlMn1QX)G$$`xI5zIJAJ!g{ zhor6sWs`3d?w))tVuxgX`<^3Cz|Od_Ow;M^jnoET^6r{yc>4GyeX4%uBT(NaRqvFv z;Li6hMb$*@G`|x{`+T`{#Chhu-K0HmDtpOo~)KAtI8VzXRW;6(%OTm|$E0A%N!#`l%{GBjF$=eTY_{==4iiIhE#tz}^m5|l zJDmN2u?}LHGXbn9w??(*>G4z6=W(2(s>g|2TlP;$JKWyxVS%jFg~9`oQx^o4lUK4= zQhHXtTUJ&LVO3%6fnYHB1J=#scBd#;wC_1B>LO|)IDl;R&^~P7r3uy?CT)OUT)^V*)K z`DsDw%&F?b_u;5v3z{M`0`W-q<`uIz$F655Zl{W>&_Td(x=uESI^a7oG@R9otJd=V zAg&=vEh3W(i*{DIf~-;nr@3|Q?m8tXu0`W$L}hBSJ}EQ61h+@EAD~s-xznRX;z!2& z{i0m3X7VPPZgv|)Y>i;nBB^;^rpI{ya6TnGJD1WUCF4m)q?D7B?e@a?S(r7H3w@c! z|1*w=X^T4+ioVcH*VD*-203nd=)RZu>hS@@YnS zMPV^CDq4Rkxxk}Fvr53eysGDRk8AjP3{U^5>J) ztL(D>r&~FS72D(1X?>8Vq?>opTk41E1)M+a2`!XFn;XTt`OtQHDDHa5(gd9yi@&mJ z!Gr2DiB?-d7OM5Po}uWr%o42POtw5qJ>9`NJ9Ph9pL`X~E-U$=sP_*%n#1p=c&Zm( zrSYpfU-yBPT;%866uOSI{VKUJ$j8&Z6$z)W#su_5Dwn8xPBZlgmbC*m?KNfNl={8Q ziCYa1m?z3MKgJ~t&WS%?7RqhkL2~!9E5pP5g+Y?l1vSeHd#DYKUOWHs!?yA#YEBrZ zPP$!eS-ng@Q7i*~A|?n!IwP8DI%YP;;#zeE$b@R4Hw{fc@Zo`nb@r3RI1mgp^&gDo zKIFM{1S)>JeHuGDnMv=|!%Ce9Vm$2yS2;jk7C@G~2$NV0^p8BD9YSFVzdv+`ywVOU zO=%OQbck;aSD0xwC!xJe>zS!j)B5pzQ7}mY1~ zi=84LFwa_lL&Z?DU4Cs;bRf=e+EwQQNAci4uQ!f^?kU zI*!+l{z?S_9edGsp}iI-GNsu-j-&rjJ?y^3y0smxi!D%-PFypI6Z2ff{8`n-#HG@) z`{l@+SeKYEITF04h2pyt*C_p$n6ej8iS!;@d;HZM%-aFapW>a>mYkHIa8Ib{?Q$7o z_7b!<)D+C7tBmUGkxggWDqc_|HX?CE`wL_+{@zfTG`x}xoo#pMo>T+m4oc%vcq9!i z!Or)gcj1kzd{IAVpe6Qa!BEL`jDGD;PsjMNr5#E#n(K4Y@@WjhrJB2vm`!Xc1vJvI zdlKFw|2+<&E^CL2(}Dc3M(SwR-m%w6(hL5{2OU9?+7kOmwPlzjb=M_TU{&rhV$fQu z9hMOBjYEY!Sh&dHaNgr4Zz-BzS?%At`)SN3H05Zn2`a>Q9woieS7}enlaXYvccc~` zZ0Oyz<f?%;x7RU| z*jAR~46ZlSFI%n|(9=w4*jH6E8xZt90PnE2Hhwwdv#%j(q^CZHZEq$f=Q<%n#JfZf z{H<^#;k`KZG_*I#jXlW^GjCX@&oVA+aTxW<(RfdCuf5ctq zP9N#VeRi@^LBMW4+W_dkTfXF72J%E+pKEvlaX2!qfNU|N7U0qaD^=Ymlj9yLrms83 zQ5rf-olS-}mG9Zfz}$P)(7z!Q$So(~L2m|0>@sr2(wcKr>$v5}&}(BME~l@SW2NX_ zjJU|h6~FhSzZ55x#T`5A6qgxG>NodSI^H}{Wt*^Rk&J8S*Uh1)RJ)acCPxJ))A=nvpzT#uiFJJwm!Mz%nH(9 z2dj4nJ8ODYM!S5s632$ue;9p!c3lUIsxEwdfGM-=#NA%ZV45gL7~!vV$Y?R2z8~Xy z@3cj8>96L3HiK!PU*8-On6jc+p}SFMYmR-+dmT#jXKk-0Pp<~w7HqdKd!OsTH_zAgUj43Kw(q&0_MGcp;scGwA% z%AP23nOw!L*{%LFLM~P?G-w>|5A&6;kKz1DcR%8O&$ZWoQajI9bSXNma><)u!gSH?arw+@n<;{@pO0OlTnGh{r2br5F|;xNyYUOlpYe3L~mVn6WbsE zOkWu8YBiPVF@P8ny|&Wr)&BISp>C)-I2v`IX0z=!scU=RW-b1tL|%e?(?KQw3@aEP z8bs3AgTlZJUguS%ndz}-Xp7QCQVLG8cK$jt9iA}MiU9+X-L^Y)GZsZ<$87G$XR<3uFXM`$wIK&t<(6HK=oFp1B!t+KlTL=;w1D z(P!fTe~8~Gq1`fc7>%kJ{%y+kq z)Ya--xvp%QcnCa@r7g2{c=~v#;?}x}u~V4gMtKYU{j0PFmx|A{Hh7^J4WGwN>qIhi z8n7RcMOB1O>Ps8n=s`m4Seh`d+sGU6sq%4fXzgWRS2PsL&b{?7@kG+ArQ#-FF_yRF#=5$ z2fs7C6s#(c3M?!L*X#|u#L%Ma2>7HW(rqJK4p*o3$9;!yu-Q8LEwTrMylO4GXkuQf zrCRU2cA3XpBIsPThTdc@1Ui>4u^!e2-G02g{Wd6kXBF!v>atqvkXCFd>%+zwEL#!D z)`l*z2j}iUEBXb`fOO)FWPp>Kuh!jzp!ZsFiXv6bMRXkTREiq7+UF`T?o&;TA!3)( zcb%nQ8ll~r*4?Z%Cm}I%smAD4x0_S+=TCU%kkX?yEW7c&g>v6t&pr9)-BZY0K8QP} z6})lnH1ot~vARo}H3y#t@z~Qy+&XV{C*WFlugAhE)FtW>8TM=_E$_4nov&m4I^6uG z59z|R;dA1hPq<$cKa&)VUz=myFg5tKzu&F@Xq&Tdc9sXBCxByA4dTn|C~~KMn@70zNrDw0hnF(Lm-p}#K$!>)i#SZ+SP(g zpLJevue&0T^YWEcTF*f5;QEFYUv3*;E&#&$87^+cgKf?< zVR~Q4SrnMAhA!4aAaR_R81<5iFxs-bM8e17TyZbG9mwC5hni7V!LsjQ_ZqL42`BE$ zCCl4o+CGa{o#%lR+Ru-XQC++HuI?b>t)%r29dv>nw=nAn+9H#Z1S^|CplvJPh+cVK-+br zRhQ=a2^5=(!$`)IhJ#sa_WGte7d_r%KBuf|GigS>o?rPF(TSD7uTq+p;$Elh_(G=KZ(#svXY)%;oK4L4#6)OEqP2CXn7O%C}@7>sJ% z$e@|ZaYj#>q#0OfvlkLGWaPgJhAb}WD60}%4&3&qOSMWUH`>8_V~O! zT%Phf<}m4;SdQl!vZA?Xq9@FssC?Hyqb_k(kl|L?fBSFN;S-ESZ<8e0&Q4!?5Q*8V zbnJ(us>tT0R$cMMcj|semq_Fsk^WG>QhcdY-dd4%DVD&GUfrZ1o9?N! z3kDzTv$U3PY;`lO(u?0Fy;wluIUUIvFY%sgjHbS8=+x+hGc{0*=(~8QCsE);tLAOn zMm#O<;H+w-8K9R+eLJweo^m}5*||w&9J>luyPlwg=Rl=!`l*U`U&FRWb^8vh+V;Sl zV@LlOMXTC@?f;4F;&mujEU#*=#yz&7 zx0z=dw6YPqsi);!^{g~nqC+&akj1DvhCT+uzU`c-UD2Xj&VEqys?h{hA}-~6Y2Epw zIbvRCzO~C)fU@Iec1wxU#Bj}s>+_m^{y(gpLw7Dpv}j}7wr$(ovF+rhbYh^(PFJ|ZGco;3z>MUR&1P)5hPzZ=w`u^bs1riQ}@d?+dMPOy7jCjU)t?76MuW|g+@BDoC*stD^C;dh${mgd8CueY0 zEDvg4Z<|%O^!w^H8yyZ{b9ph_&Ob%&Uv}%a`nV-E*VV0s%g_najNloHaAcb{r-D;) z*3h?RxN_oiS3}|~)jB^u4NTa|fdLzr(ZaWS&xiN7634G$B3R+DO#fpYQ(?o?&OU~U zGa2{bf(ixdYGT3j?R(To($5jrdoxLDY1va--aPxZ*VCkf^Yv$~SmzjXf4x@0jX0wq+=o57 z#7&>T$|z0&aP;`oH9L6{qi0)AHX*AUVjAy0J@FsiuCF0 zCZZ+A6TEb0D>OTBJgRTMF?XZvKCjPBH~L z&R$^9qXjxziDc4)n&3sknkNOVsI11gQLdRpw3ZA9t1!y5W^Dm)Ek|H?Q5q$1w-R_~ zL$aXSD7vVbLF4p&Bbs$peuPK z!yvVhdrhUV?|z2AjP^@@r*Hsvxh;F0#KK7fAhnUGIgSr6#PRfVzSd|Y^&ZdoYx>Oj zT=uuj@jl()8e4v3=OrF!hN#CbgZTtIu#uljP3{R->Ccm@s-^foME*ZARcRKysBUGp z+qTBNw|hChO8i4-B!n7R*KM7CC*}LFdT!#KUw*lxr|of(VP=*BgpWOzC8z|{FG_~n zgKSPVQxm79aum~lC?DF>)Eeg|{g0n!C7GKoH>b?}u4eg0xP3wKotr+4CI6KAv1$FB zgulMHt-1%w{#WVBVqf=fQKpklo1JSiSUt=?ljtG&1*iWP@aYVrk^9P-W#yE6&g0ux zmge>RGYk%G9lLIQ&^`fmS3#Hv_z=^Fy~=iW5iR;B9WRRXk%&*dAu`XbVK6HV2*rG> zgosv{S9Xs;!n9$ngDSnGCr!z7Y;%kkB)u$5!{7frI9@jzJmSl=(3onj?{|G&@IM^U zZ;(x=kGX-+@r`)@Lf~vSxg*Rqm|0q^_7Bu}y+I9Hy1Jep#cjS7c8`+Z;`EteIA`NL zosY%nN0`j5o@X?$!lNkj>MJif5i%_~;arw`xV)<_DH6Q-^;)W*M=fFk(@Acc|_bUd>`+l;0I zh%S!=fC8d!e=aDC9DTGgPomo819+e~9hbS-yT3QHY^0;3a1!{oY65rpOF{qbdaqob zcq7SfYSLE9pTllYlJ-+o2a&ub|K*`I<@K2tgWeAIq#+8@V}@#VGaD%-i}{T`2x(2u|+Cr#ZEK$3Q?hslkDQy8;EaEw6KD%|&qJweex|Sy!$S=qOqsJCpc;%TUM63>Kca5GbEYW|JXt z0~lYD;SkfjZbN~gdV^!UJB46aX+)3~f(y2_&Ij?}*)d3PNlsJBqrMV#g_8JuW zUDi{~kTUER+TZ}+|MX(C#z^aXw2EIZ+V%|&Od>Gsgn1it=ww58*5-5h9J9W3lG4bz z?NXp=oVasjCpm~o*lx5&pF-&6#&z`>y2G*h*^aZt(P)qisCSqJUtuOd%gxH%q#7R`=B|wMd2#TR5O(yUmG9 zAhX}(aOKo>aRq$1-F>xw*|TK5x45$?gL1QS??2Q@sYt9by`OO`9h|BnB=o%ZsSGIV zv>vH&c4wp8A?#}Z1}Fx9iTIjz0Q%77<|%x^};># z0o$RO<4@ZeUtslkYWKgYyVV~t^lgs8KLJ>0#qp!*-U=nB@-y&%O6lM@n)LG?$)2YW znw;(XEjar;e=DuQvODo?5;w<9pi6Jx=0@5qZ?#r!y#L0eH%N77o=z0&T!(vS*?YtZ zz<0m%uzlFP44u}O7{{BD`*m34wcar|UbejE#)C73+QLpa;Et{1aG9hPO2=OKUu%QP z?I)Kb9N%-9v8$PeGwY|iRR`_-3K z9QXId02$NWIlQ8-y!cxsSFJl2-yk~J7&#q3#)oo?)j1&EMLP%ZFAd21kn172Zeh;1 z+HBSiY*>7M1bry6+%#pV+0QzE9+#^!Xemqe9Ynz9PaM3H0z>z< zaDBjSy7qVlJadibShjv{y8!b-|Lv82OdU>`>2|y!(rvyHC>$u_!(no>qrH%d@ntmkz3$tuvO{Hw3&EGX@b}zpn?Hm9o=cYAjW4c01 z!;nS7)yKd73AySR`{=n`=L`=JcNo5K*2m<0^TY8V-194R`c1+twzdDd#^Xw>FU6Yu z^c&*n^d525SGH`=%k%pwj)fiPh_lnK$Rf41|Kn#du&?IsG!DQYzTC#sh=MzpsM)gy zUA4NW|0+R47VR)_ovFVYTAfcPAui&!A*1g++QL11tXY9~vK{wt;)CT0Fra^O*2`V0 zKVIRVs=a0KM8tm%6VRP~k&z|XzV17I=v>|LP8V4B>9u^ph##s&0k(jVkyZEEZlt$% z)_xxh$g==1E)rzBHH*n%JfDhUwBBdboi;|=_Mzi3PzLq3fnI%jNl#4P=I5Y0j8*D0}o zVDod)(!bDUd^e}Xw%@yId{MDWS~`M7am9^W6=2a$wCz2$bDZyVW%SACa@q3$$^Y2g zwSUMxFKJ#?EZiW0FKx5F(n8;VK+~!g@EE5ib?P?iuELU>25k-J)Kkt+K%F^5SIHnX zgh|Hb8TC{8>h}mzYzl$>%LI_g_XIB4()ieQI^9stqt6H7nBDH;lsz_-QJS&hIy2Rh z!^Lwx%3oYsn!{LCR@)VmA4IZ%qphf_!a7PDc4DI^FaIyHRop)d)cO!3=IgbkP;hbB ze#;MpLjCV#Wqff%3DW+^wStNkdc1RvM}dStPHEx)szVs=#&Qa(aX4=L8qD5ZA!yse9-k9r>1cyx|BYC%kmoM%!4 zm%&QNVCr5{Il-L}@*I1z&-$!-UZO@UXOp2hHy|;9+I&vqF}V(RgXun*Mg7h+0KWo_qX1k zakIO53asi#o#y=gaYySXmTKQ`%F{oy&_+#s#iPm+8w(BG+!HX23?Ez)Jf;UlA^HOC zlyO7P&|v$JZ0}3Io5mOI%T{Bn^e_;Ju&i}v4{};d8I8K73BH{RFM77iy%5o8`@9#y zA++77K2ZkJsSHq-jN2PhfhKvZNQPO#(HDUxb%V^i4s!g{Uz-R?Lr zQH;^b7=OV}2z_oEnjH7SS6Z!Y+Wa-$9)@}6r3e&~#pSy`VKH;HNr!Ls=uOX6acu}4 zZ3~&Y-JMqFCAHxh`?2^8hIDcPdc^*&tvhGExN3wrLJPmZ|35^$UzJYsm+xPv*aHYi z?SFNOP5!SE#gIZOvhBABy;8_v$igCtBuH)|l8RjgY?V<&A!I^C;3@%zh0w;MLEy9z z5gSMi1yE4|MFqxp;Md^Zps@C@e?SU7<^XrU`R=#AcMwg@Z!=k~Yc*O|+3d-{`}e5{ zTwuZ|2fN#_!t6-Dr*Pi@TF@SJ*EnhsNVEB?HAA1dD~NHG%?&aP);RGJ6KOGs;K{); z#RfVCP+2p>-S6NA7mCav6~zQrq{WbYx%(0>}_dzodsvFmq6@VaHDNh6NNr5^I1!l z_Ctqz?y*+j5BA8FHAX#LY)w;>AWb8JiOA!}HRkuk*8;W%CqK3~~ z5Na`&P_wYoW@$N$SR9iu_|k?ARf^$B7)Vk z`A1I(-#x+tq-W<#)Zb=@|7C_-`N7m(5sm&+S4=t2nO2(g)e{uA6&c!WjRZNuI#XPH zl&)g$3cl=yTwKPJF6uorI`crC#;4Sz&hNJRZMLmhse#O{UJeUu98XEKcQ4f~r-cGO z_MY2cSo4vXa@*zwJVc**4!nXSC$fPa<(?QR4re-I?yWZ-uDiDtN@uw8c{xpnmw&4l0r&I4BLg^1uT4#hsWfDMcL z3y7dPf|cr^HfM6;2>9E`f;#XWYmkr0fM0#_1%#G-V1as|9~0q)8emuP0(qQ@JMb3Q zB_uXz9}Lhub)hkF@t=enV0)edYX~P9;CL~`bYM%3U<-JnaNx^3P(QbTGU)p$;5P%I zUNjHLpikZabDoZQ;IBF0%-4Y5i^Kv21|-NYBw`da#6@Bl!;!$C0ZK@x@CqbcnIOx8 zG)O=ot#W)%%?=TTM?o+xXjIUS5IX1=lQ5}<&=I7gFe%OeC&meIMUoIVB2FaG@IY8! zKmxrb8#s~*5Gg`OQ-NUt{16+SudxUeNf&7>@|-CVaN;RE6cRYKkSBuWkm%hmFg$F< zT)+{S9ue@RX$mr86nG5ZFKW!aBE6y6aa@%g7#Nfl%YOqx4raw5eimZjOd^`@4yd3L zM*(6OJRoR>(0$a%*ke9LgF(YU(69;j=%Qa!gP=Q3N@H}Y_!RHYz#1ff3mZ5I3SvUn zJc=}UWU!&LvOR?=E!R5>0%)+Z3|kQKp5vmL%!^(e3xI(eHCQYaK-EmCfYc%)5V*m6 zf)!nnGYc)LF?Y~|%sKpb=-||7k#E3sO03Qo%6xuLpyUR^%z?nIkoJ=kjUt5AN`(ZB zMN{zmDj}~1kZX|y z3ySFd0?)jL&g}m2!~c~PH4fdvI)H5)98UTyDsw2(*d^#FfW@+f#J&gdE1@z6V2cQm z3u|(3h*l`#T(9BjGfOzE+46}DRC?n#zJ&V%JO^YBRYr`Q0YY^pY{F<{!ik2D1o6u*FE^ko zf;DwL?=k^8YaGTQs`y#2GXZOh9>yZBD*zP{BPtq7>M;5wB==>2O1hFk1GUbk_*M_S z4O+&PQ_*nPioq@loFUBr+e)FL$W{QA(@dzv2%?S}W`RzYVTvj~ps%7n63nOg`vxg` zxqH4QB}5V;?fYkce*;t+=>r#5?XN~G%tS~c*;b;B7V`R)eS{SJP4MJluvbOz9gw+7 zxP^qsou+T{rJ{UTlXW60c31}WWC`}=|6bbJr-*%q~D(Ad7dc2 zbkKjrp(8?|j>%>}%$h8P6@$z=%zrIp-dBK#{hd^qcwT+f=;kyW!3BsYUU*gx#Syqr zTU&;R6Mu^h2%m?=W4!2zKzzg>L@|qOg*cInNn4t1<3sB!ZU=ngtUT1zWeF9%5wpSR z=c*=5L1r{Xyg-Ewu?Pwz4+O-|5~~hk)>u3n+F4SpvG7Ec71d9-aZ#CJD@lR7g&yH# z_EtoxNJX2eA}>f{*`bj=Wzl?KLUZEp{8?CBB8l4rMum)6F^-acMip!-29AGCR78CA z&$R04?;;8qkZ0*ePk3Q|=~c#eKcYC?;x zJim@+$kU?)?TqNV3>lZ)IBS297Mwk2-TZ4xi6oC>XCcB%yAMZ-{WB7>%;EboAHwuF#PoY8R5%LBUlnyA`P`n= ztl}4LM&)XS7^?UL7fsH{S$ATD3?URiI0{%nOF2tT8Uw%)yFH z5p8&cq7f&0c_L|^Y&PULWOH~^dL~!s!lQs*)gL4SXoG38zgnMaH(NZ z^N+L9v4GPu#kH=7KpK2R#3UMoB|oMh;kNF+W(?GjlTasi)A^(kNGM)|GxU>VM!+wS z3f@|8CrPICnKNE+0&a37o;gbeBwy5Iidab^v;=*IxM}c_aR_`Ylt(ZwWXu{}A4+2L zPNfYBYv$0A_#B8XNuoLyw!?YA-XIimmAtYuF?r&sjWz?LnG_%l)GNYaQzKNW4K|X@2}?Q%U%4V=?g>4<89n`gXfO_n!Xe7qZ;6q@d<7(}X~LBd7fGSv zba2qy?~Io*J7z@sfk>QcLNxB5K`{!#{ADI@Y{Xh@MBokn<9z6#xq`(Iel(!5{9|Bs zEnK`n4Hs8%!67Gw!U|t8LWo9pi5z=MN9S+TPzY8MT@l++usy&Mp_O=Op~8hnLmFpG zL1*fSJ;XwXI}Ji0SE}+?Q-LB{jQCUWD1t1HF96iAq73VEc zh~K~(G6bPGcw;VhQs{L7(kPH{00d8h6i+zFl%T2@su5HI(G%o0q5(*$8ku*dZ7Qbg6MtC)=P0w_$mZA8T?Z8_ZF%G?1|+8V-A`R8c|hQ4z?ZqCC#^ zT7_grA#*@c2sA=+lxDb`4MWM}%`j0B0xaB!tjJBUw$4P>ox_mhVZ51>Gjk}~`~kEa z%t5I1ITPTfBEssU5fRIPY37tm&Sja!luE3I$&w0*%UH$oLCg@TMu(3Pq7jM%o}D%^ z-bqtw2RL!ud@P__jG>}6C%({&wStTWnfcGM(-`5D^ciq4h_Ge=C$y>;31;}c{_jWJxnI3qss4tFK#z9>4>+Ytaw*aw12q$#nfa2wao4&FW z!~@}lli&cJFEa|9VaT18X*%kIP615tJuVc2FKq@aV`PNFSbD%Yo8zI}CVBszcE|-N z#hE$o?CfmAN)944bgYm@@;zYOnAcRqAvhS;F!>ls5`0^rvQ$%?j9Dx>ph(a#E|(7D z#YNm}bkOiLmYjVfNcZSz5Eb4GVN@zO3j9{(WhVp>U7*lN>4?2ZqHU)Eib4Yzgat8G ztr-HxlIDimU?w1>?gZ*aRfsGMbWn5%^H3pp#VHA788*MLKYBB4rc(#=;&MEwmBf$E zm<(jsD~y$4sVdOYg?`4TVrs z#QKyhIxJMsMBS(#@S4*=+e!`4BVs9O)9u)pC1D`w!gha$%vJs}v*iI*3YiDXG=6!P z1Xv{n|4AmgixvYzwgC$gdB0!cH2J{{DJWi9kGD+eeeuuewS@FhgdTdh|6J#ennB`< z5&X}++dn?L!mEy|1nA2J`Gb@O!39J*DWoRxg(5=^oLOH0$jl+5(h~DCR~XABVi}Qx zxQUJI&1enCP$Ip2kcv^nV1)~c2nQHVNygL`QbZf=CjlB4O$h+d+h;+{WJxbx1_KtX ziGofEB;pav!^W6RiAJ9Kp$9Q_LcT^pI}Te;BAlQaf(|A~C{s#u%n*U&2}hh2{w%lp zd6q7MT226l8Z#~<7Dlv*Y(wj?7X0%@&zEQh61|~2Rd}Bc9w3+rH5MpR43|9|#EvZg z7n-0_8Vw~}(99S7_>eY-5#>o(i*$#Bw z73dH}NfP4(!RJpzKHMyP$kD*jJ!j-gKDjDa%y2;{Y7q@8pJRh6L;wp!Bo7gL5*lma=z_-vMvHMa_&4>jswWYJd5MT0B~Lu*~vg4GPJLbst`mrM2pE0OV>Q_@$~|042udCq#In;WlRL;bpp%1 zpBaOv*a9|9>0Kg*QWRJXQL$zKBn&%vZhayE)P#%p;0Yxd`ZmM~Hfi*pue{(Pg|4f& zXpQD2FJ520aE1Krh285GNV_r)d{Iny0(Buox_E{4TotV^zd%dSyH%`#`5YB|Qn-9j z1+xpe-uPFIke)e|Ah??R8C;jL=+v%2j07|YOcJ1236UUZPA>6$zzC5f>a{G{7*?NC z%-Dn|l?ettA1&e=&TnD`viCA7_seFCH6B7$(dVEmgJc8}ywplh_imz^sml8PC%Pme*S5H+cM^0Eu4L z(dlB}l;^4n5$`7|KM;T%WowAY2QmbNWW9t@>@O> zeJ+Tqf6n;9kS90&O0COZ_uo--YDTfS^$*27 zbX2v0OrPJE?wjew_W9i;vHG@-h#lXe~L7 z9U45{_X!T|{{6JIgb5LPpw>X(L3VDLYoyUNvrzXYk=STnj zP{G(bmeWeU;OD?_3Mu1>J*2sq=z`kAPgeDj`T-6Mcpx?r+G7C7U@qqgBB1ab>x)R? z$3RcW6~*5F0YDXWrKNRvZVF5YmI?W-1$GiAgCMRz4x^w*vR^PRBGYGIL18jYA3Pl}p4;%VUY5xg02sFh@hzW*DV1I9s$iKJT)i>0E zt76S31mzcA@R!=b4hXp55*8}?rkw>xr$!W^k34>Rn)_sux^w^hlOH06(D>< z^1a{v`hE+3IGxo~FZ8>9?yvv4GrH`Iju3HKE4QUwhv?St)Wcv|H5S!K<0+<)g$*8@ z8fj5WtB5-?%S%JOCML0_4oMj{*^Dxwh$kCLdbCJIqR`RC1xAszMVkpV)JgG1Dt$D1 zcXrWpX0BSF-1*zVpy_an9E&KWX>;U|FG5*F-ch4q4o5^*YJ<4WCHb!2Sc>hT`B8sV4d>#7y^69DYS`65J1D2+gObPpVh(eF7L_-&%w zTicr3U?Ah&Na7vLU-pYKLFnRFrmJP%KOn)5Vh{}mW}KG-#-*@+RbevjPQF^YV1uI_DWAWLXs2D;p+l@|JXSx`^C*x zYr~_-m0QKzTS)KyHk!S+5TM_rzBDqc{1Lu(e`bMWO_!S1)qL6KFPyyGRhM8py{AXK zI5(qL==Za$6TR_*;W*Dp_fF#rwx8-=`ZkcwncpTfS>NT-`r?Wy$lpx&P>EV|^ip9P z%lw2;>twzP#hO1%Gdap7+7>hQ{7eW3AVkb;+t%4fBqkQ>~{6ez%4H0Upsm(*Q;J zh326K>)ujM8bbm@Qw(Jdf?`!YMKK+V{Wgtyo~%c#v32A&!f3g8n+4_EvI5cSO4f4V z61(`hwr>~aSuW|y=_l{2ck5ZG*tHb}F9zwa)ceq~;aw56I6exZ4_W>0n#zR)Rv@0s4 zgrp>v93Yr0L@sATHL?8%6jDQOVp+#bVPNVwkH`z>RKzEO|2WrX-cQXwjZXovkC$WH z5tZ;KuyxROp>ZKq!RlJ!JXv;(uyywCjO{nN&wve$U{B8$bZQ8{*Q{a~%H>l0cH6M; zLvo26h0mfo@|@*Sjawg6KlUx_pR`-esicH|6Do2cXNtQ)dJ1% z^$})+nZMW z-31g3+f41ZU7>3wtgLS5tm}S=ze;XiHloMQ`HOyDe|OSIfsB&`>F9 zL^Gy#+>+zx@>A_nsX}jvCvUrS^6qV-bhLW4lam+Y&IrjOIn3Ae9Jj%M%E91c<;V zZy$8E9swHWb(=UUw-3w+oT9sKmQ3s#CnE6OFQeb ztmjYGLn-T0^7ovN|5e7S{*yIn^APijv{*ay4YyTJ!W`5}8V5eOIRMSWTU=5^m0!OP zc4UAFMdaRG4U1m)VInmdtB3|2J{~8EES4&?+3z@*HBu2^!g>Z3B}#@~0ER{W zqSC}ra`K@1mtoE&&l4Kh)C+-YMK2y?y-A z(bpc&=CD{syVw>S7u*<{?e56F$@3$9nj7yzK-fSj|9|dP%tS!>sAt3#=W*;wM-6VP6qw+XwpPn}HYs-s$ z9D&4RSN6SzGce7h!oA9Ed~v2B;i}~`u%S#vJ;cm1;}cGDFx`UpUuvE{W4`0h$-7An z?DN2|?`5;jG+KCS*;Ntr&~I^V+4f>0FLHTaJFO*s62-@Tosx(&Ko;4sF-&yOgcgQS zgDcYzLBW6|B)Mm&OCqu?ttBG{=3~NCPfS9m6J23KNun}I_iWE|$*#H&gIhfbb4HdQdO`C~_!er-DC;A`@ z_wTVIKgI5^)8_6sntfO8tC131}Q;{p*Xr)_FV9#Ekd5}K6+Y#H{Dj3RDe&LPmEW=#rVD?ad_AYg=hv&5tArY#a>eKC#d)_u$_!L*yY$TPF3IKc&9_D~ zR16{ST9tsGxUYKOZcX2)s#aoC(f!={4L?m-6IyrBn-!0WHKS{YfW3lVIkMxLHvi=w zj_n=#*~@3mPU{|3wUtQXTaCqq{)U6Zt9;xMi+@*9RsJ#`YW-}DETPpojy`2-NG(FP zK|_yaO}fYXdNjGCQ;u>rgLCvEy@FO7O@2mdoTJumpxQM3D)lj1`i@GU!p}(0f#=KA zU(6ng$Y71WZ2kqUCfE8McQw*;-}r9csbzla(&BQ(qTFwUj=tBcsy}DDDa}cx)@BE; zJm|r9{M0``rcsXqk70X2t~))bNnKXC)_O4&vDT04d3t`%$+v!?5wmw~ck{9H1c`?F z**Q>F_1ka4zPFe!Ho?W7nEzT{gE}@npO$gU@Rq_eDYBT4b8D8*R847|DO_q1+?3DC zoV8b~d!;@L971Pa#i%*tP-f+NZ(1`qh*(vLmq<6<0nhx?FmKhWnx3IDQZ^_6(_dkDKFxjid(B2C(|o zXL?L)t}j3E$PI_KR1biiuJ!2B)IJ&+8;|x5`SR5z!^Jej{G*l`zZu`O^6$q?18K)# zzlF|IegaIhZ3~SSLWk6iz24+DircUUz4-#r&Krdoen$y!=WkIENj?nD&%6dF@)^x% zM~a?Oi@}$d)p^%-#&7kf_b;XsDwIRZ3|O;{`tk+TEZ!wDkr{Sj4w>&Ud4OzSQmv_hp~PG>$pk z&3{Q%-*hYTvkii~tD1bV`O7HeYE}`eaTGlmXFFMI+Kk5}Y7uPZZuhoU5M{Rw6h?Y3 zYUb0EZM1Gz0Sr<%dB1t9@%i)$9chdAEeF9V;&JcMYN&9}Nqzo+2d-A6@_V%|){Bm? z{WSDQrdIzio$MqL3Zpr)2SqT&&-pRY|`?NgA_c+ z(QaJ!VgmrZynP!-uAbA;>I2|kE4Ln^(Pe+&{67_HZZ@eY zwC~=8UPNyx=-ZlW*rTxcz)^Z&i-q>X`F20~9i}-W%yh|-#;r_nPIggpn6YDl6V}N& zXzS+4@l8;v?|K@)rMT0~}R2d+awbLyN;_9@EdndwZ%}n+foBPe0>{5m!HXQzGxhO&D;4Lf8W!F z4e8Pe_J?jgraUy+e1rE$*Bd|8L}d4wMBBe=+T_N-Dk<<)Yd@mqo53x49@{X(K|mb7 z&Yw;X-(^4FkzktHNiMMm{!T?5OGeyEfP#PIpFBi0Sk~es!NK6l8~{_HTg)xsy%p3s zCvPZopBmy;GJ8ep7-}R^kS3rzELOm!78;OYSesjZG0;KEW20zcML1u*HmX-gPKrUF zuU?d~bXTTt-{`9lET4H`F!a}jJ-{;4xL+z?uErF{vqvl|QPbi(M=oOF`E5N+A*_d9 z^LI4sTx(amrPpu&X1%XUx{d8@jJ(!PGuDjTX;CI z$)_>#;v45Zy=3Ia6%KvBWm{v%f zLvFqx2%`K>$IPzChVs&h{=0!E_=Sl;LVyWv9l?|1^XpEAMbuL-fl?o0SF|~>Mif0r zYBg=>f868O_)7Y@R+A+kerFmko7dc0p@JVW7EzBT$v9pbf3RESE9JaI`>DNe?j?i6 zJLyr#*z%ri-_SMHH=*+&Hkr3OQau;e-CygVmH?>i~<05WjWiW-4_ePXU4_0E^e5Wq8k?eo?yDZm;BPTW?{cOvJbP>wf&6g5d@@qFSj>Ny39GH`^$tOC|EveKeCFi zE(7T*ADlvq=qJ zRGIgz%j}2eF{@-sH%B-7Xl%!<&sEY)DNjH|vO4Zohc9zq>c9qinK3mD|r8T>d)D z^Z`jbUvsW9`O)K=Cn=*{jG@D&c{EllbCao2mmJESvR37(`;~KEeKu6TPu?PUGVyZB z93?oy&5mou$GirhQ#ugw`u>}-)x@wGyY_aI6qJc-aQBoD+KYSnbU1`uJ89A1v|d%N ztF5i$AVC4S&2E?e^2uFJ;8b8G%doHaa_Mzhf6D(^^ptZMcX=JJo<2ZCW-o@0qQW7bZ9b@bN89nv2Sf z$BeV<@UzS2IGa(ZXIWiMyK?P?+W&)X6JB*0JZHu#XKvQlYGUeB<6BGfE0dvT0TexR zY%d-o*+%lwvndI|daZ7M^^y^aS$t#gI+h#Nv7_95E>(OP*59{k4L$4;L_LYn7S&jW zG+TRZQZrKvmF9Nlmc{|*+?2~MkS0Z>sWX}cVH5AcJfQ$WR&RPkU~66N9?^G&r(tt* z*ME(}k#0uOxTve;LW=RQPjzC9u$?vRX4xc%CY>gFK;+RS)pY$(4ia|#f`C2(_U$WkIpVBlw1EZRtv&~e^ ze3`mz`{{gx?elWg0`I@Jym^{a=S%mu7d-%imo;60X~_$(y4M4xj#F-@Jup#E%)_-| zi-d?xxk}kqE1Kg1%6p{v$|_6-bAuF~X;nMu9^@z~xjZf(au9s?nFz~z%z1OW@BWqWgZ1utZ@Z{H4 ztE%>Qlv%@C5Hm-od1+5nX@R{w`7vZ6Coxy8Peumw9Lxbu=|y=^B$T<~!5VAGQO!#msi+5>v|nBf_VtsZC!HBM&1)&${B~{KF{&cG9?dicPob}MQGVD7>*h0 z*4L^TAZ656M6wmC-ni@qh<{yABXWSNO=hyI@6d4W=2Pf6n(WRvFJ>h%8YkzYg21cM z<=rGgcWB=Dkv*ED{>ka4{4t^ZE*2GQ{GgmSLA;sp#x}iL$rUFff1;hU?&I%btaYFd z(zvvJlq>9$VlV9*xVU+fEIXXy=_?%DUe-iZ!;ABn@7r8GZKL^I+o|g8G_jYj(!~Jy zH2#XrB93CP64vKf_U$`KJS9r^Lupiv=F(KtsBhDE^pForan=83yQpN{HsR<7-` zyIxJOn!k=t)&J{FxL)CyfBw)>n3(#S@G^5S2t7Y^)?VH+bZg4!e{%(&exvnp@KR%o zE_jO{abu&I&)t6IwccW}M`2bq#yfpBZpNpFl8mEf)_5*jzKzZ{_06hJ>(X*q^E3029i3xRiH*_kc1-F&9omL`l-S?De6!jOJkAquflnvY zpVwJy-(3Nx7{MIA#(J3#82Nc-P}K-yonaTa%^;d&Qd9+`j8j@c&m7y0+7 zx&zlg^n(@o+TcWojeh;p;6nm+gg!zWsm7O83C#vuoTwmq*Cuh20SO`CTa1Ety}yn1 z8S;zU;fzDfvqtR9i>n!EPIuLUEQc#66J7x$3U#z2(eVL~ z=Xz&c2(ArBa^Sz{oZncH-zSFOems(2`1IfY8!p9Pf1oj=*6?iKV}X-2I}faxLNGsREt1dvgC#gDzVv&P+avysW!(y}ls)8SbyWLSF^(i@FrMnd6bB*l! z|FCvXJ)%Wh7J$pPZQJH4`;=|hDciPf+qP}nwrzCfb|?MPkNpewN_Mgy=3L(xVhU*0 znLUfl1c%3=OAmDaWEb8~Pup2)zj|i|#S#kb$TG6IqG-F^#kq@myB|Q`DmxS{(!a%) z-ndom>r;FzSWzA_Z7ss=ucGb85Hs5MJ@)PXMUY8n$8rp06cS4r2imB;aC|I`ea2)L zzxYU7)--reVD$V*1j(y@bj5_D1`S`Zzfy6H`NXPwYL~?2&b?KyefC#Yfp=XU$xdW( zb=mwRlxw;y-WPjJ))G%L&P&&P8a-ZhrvWFo=UE)@yMi@bLX^y@D_D@5_}>*)j+J-U z-IG^%@w*(B{9{}?_DCe?Rd9J5*^TdSP$vi&${fj=L@j^dh5skZS!maunY zk#c{?mr$ToNGYUh<0?208x*>^&c>sb|LHx7%)iU{K#5qn=s^*y?10p!f3D1Uv-2vu zWT8LmhskmtEo`$_JTr<(v|BErx7q2YrIo1}`BycaeWUou%xClEOmsKe_>@)CT9#g; zyN-6xQv9S-vmA56S9SVU_n724EOkB@j&GY1I1>&I-|9F|RU)PN=j&6>DDVumB%0*3 zxXUT7BJ?mE6t&m^n6SMqm)!3uGAny7PWHFa z%s)id=xdSbV~PyaiiyyrB}q%$Q0!m#9lMn!CQrLeI48#g1+c2e@yG|eX7(-;y z`?C$Xas15mtOk~)kTa}PR<@VaCx;@i7UsnljwIs+|D+KdcZLJkr5AZoL@oo_IOC(g zcSVR>!5_|QtGLf*)=pvO4Q8}k^&g@6ftgy1bpvu1s*IXMb~R(k?Qkv6<1}_7bG(|G z2HGXuVo59|As4P8l7+6!k#zHt39#(9+3Sax+dD{May_rd=H5xEV?Y-LPD?p0Y6_dk z6ln=gX`Ao26CP2YJXwwfCI@5C*-#vPc_hYhl?Wze6BXxWSz3Q%j4H+w61Y!YS+t z+?PA?O{c35;}^n;463bpdgJ5s*Z1rRO7V?^Ob)?y!#BqQ>JVaHsgay$%puM5o#(~N zhYPE2^K}(>He?GdZe4b8NA0(>Wj*iwH|?3B<{)Zas~vR_c7c=96Iu8_8Q1GhI<__tBfUAi4)b!u6v3GTcLvd#{llj;|Q|CnFO5;i^94d3|sgwj(?f}AriXO z_9_oas{FT)=~jgYQ`8>O^cp=Bw1K=)r^~nUY&K3`LFwesC0ykj*3NCd+Bs`P)Y5t* zKoOB>5~?r4I8)_0%zGN&11HL4=pMs5obv~)1Q(s6_MvM2x^Ht<*E}gm7s&5T9gIQHAE=t5K<;_Y$ z)C*#o*6(SSh-U=~U!T5x&$`Mvj?T(ey>FCKVmv<Gj6n=T5JYKyh< zV^@2{+46(DA-d%}>scwb0rB_3?kXMvvqi_Z6~k!A#j+=7x0mFFnS^|EaybNU8@3m$ zCj(jXF1SjZayZ`C-+bzqA?7damb)|u4sptA2kh$ye6;GWo{qZ{7D=4gQ;j3$dRzGH#4sDWrOva{Z&|U`X{%dxYyA!&L;4LPfNM<6G3xt!*yn{I{A$iY z+@v$eDs7fITZ$frIs2QL%Q2Fa$cm7vpDR^ZM@2sFWA9JQjXufkz3K`M0R2-a)@-9D zvI2rKmpxY|z%(3*rqBnFu2R_l4nrCH(tpf?c)kZ-KTO4ytE+5zj1Q5(e_3_;1^-K- zA~X_b-}s8;QEp}CjrPNSNty^NJ0D@TBp(yyvg0y$69F+~XY_>HRMR@Tk+SL}aX&M) z{_kdb&J8+XOLX(LsxG0-xvRzG#)%EbBvpAoZ}$8CA#w7793~%fJOA$_Y2vk5+wp9ed#5q4imExlcesyGfEd{9aBTYApU z9esF9vt@8;#qFK6Xi6brf1ZCN8%6h|d)MltF(;B7dq(;CJ(f)n?&rEWXR&<1jcIvC zu?en|g6HOSvj0nMt)%0y9XA!M@-lt#fj>Hj=K_yY(~DVjUUx<{R7uWHgzLw)jF*Px zODuVPr8}_sn12Tk5!q*~Oz)@?8=cL9<*Orir3D2IAR&sg@17sjy=M8;zPMFu7(Pvx=a-HY2Gzfuuj64^z=OLPjN6uaKO5>&OLFhlj?NT{+3QS2=S40 zB(WlvW_`z0(7(I5O+ZakBV%l?&$|3eFNMah0 z4RiPG=W93F{(?IjVCs5?`wypEp}3Imr+MPv%*sb4=%BEPq?^gVv`d|j^_3D$8xvfk ztd(!2gaFKxJFm-q$i8Rg2J04zK$K!y1Gz-E_P)=f`;cS~)PxywTK_1=p61J^4l6B1 zb#GH`<+O|E2K15ESH8)s?AkgbBO1@5WTDh&UzQh#J*0>_Q%7nOymg#9HUzE4*z^`aUp<>+cL37pOw z$J0rrpC6e#Hc9(5c6gbjqQWbyG2uVp^a#x{DZpN*KeD=7u;c4JuMd4C2}{JaBVzp4 zW{!L|KUCcm4=9;#24cr{91o}b3sOD11dS;w*LcszwHZwzZAIXgG3-GyuU(7St5Uxe zNBB~;-NJ15a>rX{(hB>zz@P^4vtJ2&^0nE)@wRW^8|v$t8zC>Ks}NATC;&oU|70Lx zwt@6gGkpR5-|TmZ$V`yQz-%?Jy6`po$jw$C00?Ul&FO+Ia~`kMb0b!WIMu++$*R98 z+SOd?wIgw_W2l?y=5b$4hWtbCP%r=N;7tRsonGx+$aSU~3AA$Di=K@lJzSuT@Gl+( z=OFQ0ZB-+SpkD~ra{${<8xPE8g=;`7b>9}q+_A2<^HZpRfmnd7f=7q zG^*RI!zq7=ZA6H9!%#?R6ej$mZ&q*Nn~An#TE5x4XPa8+wp(G9QnY($yN1l6NAoCR z#Z52vcIe5ObaeTKS%Q_yHdlI8u_mgzJ7?Q;+O6GQcsEJYh!Sckz+w|s zMn}#;$x5nV?WmH&UvfXhIDQ*>mO((lb4j{TyV z4n8$px%#qG1U9@_ccVn|xRMlor`>MybkG`5oq#Jyu{9}y0IoxPot&^e7U5`sovuv8 zVAXoQXaDI+pKnqar!x1*8iE6Y+CAd zs`+}mq43{PzB=7Sh9t^*_(r;@Mj9qF%MJdSnP{50Q?`+Iw1xmPB}_ZVpRqwmvSE|^ z8ZB>U)NN=C)av8X9#i)e|KgAA%*cpA?qxu{~zC*?HD~UXI zoGSNo=BfF6(*Al&TCQ?2o%krKwN6zNqQ>mP+NKsdn`PD;a#c5tAXcUew}|CL!5{Gd zrPZD$L(&^AUw^Q9e`&Sn|3#~fjQ@YCnLEJ+kf#>-z4Op1!wHB;QO*LTP9Z3?3tfsr z{XjwkK@$F2p$HE8gVL-D2#cTyU$P)7DWMDn=R>SQhpW}yZFGerOixQv$cX(1-%kNAOYO;2|{oI*6A|m?(``1X(}8gk~j)K)}KR0ZWt@~m_Z?9 zkK~FmhSse@5Jica>JN;miSoco<>}+{c-7T8B4Lsf5*GL6?Hxe~T4Q*J)@sqEO0_`m zE255s3dJ(IBIu`l-GZUhxXuXS7tML_HE$xYd_tnuPf$w3V5~$+7gFB)ygHl$dtCuL zdJ(c|tNE7ngZVG7*Mf6i!#gsb2jL>&dWHF(r18vfpmBx;jmqpsPNdSl$dMfHVMvRD z493BZLO}Yp{63dv?)AY5kS-FlHIg}+t;brLzBXm-=v>QTo}=@RZR7^A0_zm!d{Xs8 zSa|B=(O)z2dD(}Sr<|7;wfDqjQXv9U$Ap%&X{CZlgC4Y6n>WMV zk~`}s^;lz~NiMYcVUXpK4`NFt-dVwKGSgmZn~1jWO1{z5VS3%!spY6Udj>p%uXTM% zJ9~w_sUnkJf=L&OLjU`XL4m-2vGEWHh*}UNwt_L4UgzWeJehS2%0FJj{XdRua<`Q&PW= zY4i_^Gkb_Y;i*pNZcj-vkeYKX22ZG1JtQLyQHDrb`VLKW*l2b0j~7dWD^>)O)G^v? zyt?OXt%KVd7s1a<%9bv(d5F?=8QFlA{quko;LtvIs$UT|?7j`^((%@+G0pQc!j|Uw z=x(0*$f#iC0a*^?5-49y`3KF-A{gqmg;s6Zhe5Kg>qK1fHg+*$cS~LBtn9qELWzI% zLjX2f1KyK}aF?fz$3d4M+ynPde!-4S!t{gN>NA9oRpRHJ4%(=v*W1_T$NIS!M>4!-do6F5L_J*o1wa4j=WzmJxC9?d7jrXK z%O*WKrb(u|Gn*Kk6u$RUdbhWMol<>YWEt$X1jL$iD^-E~iTt{51RcR(;=#6)0nqdq zA>3j4kOi>4|E>Uys{$f?0PtP;EiC!DW6rwd5r8oE@ggp=26%wZdUNIa2p~NIf0+i% zT=;&Y?6P1BXcL|$0G)#iZfNKO0PZ$G%(8&-XppWcs(@|RmVnHL0y>rDUb)}W zz`xE4c#-Ft!mYCaYNYLc6PKa`+2Gsm0Is_Rd`Ju25bc@+p5|b~4;w+(_3{&;0E!6J zAz&gH0O}D1Q~(S6rT)bc25lOP1#cyK8l70h%MS=qvn>+TkL4}R_w#X_9fM=J^W7ID zr#ggWBoLdWf=eV9^2Idbt1sX-8$EQi2a6i>MS#}AjKz-yBg6{io0Fe#65t|El<)=a zp8#bM03iY1Q_q!Ra=!ssXYf5`p$KOVgqY<5Bu#{I7m8iz2|&PWk0QtireZ>55lAP? zh59AZWaGQ4l8vCufldJId%5Z;yQ2c8zA!9(Dy03yv0JC6!+yDtz%2UEqTo?9xP4YU zlBs^-Lf|>pyOJQphtb1`iHx&YbFxQ>i&pGAg5T)}dS?sl)aPEFodwt(d83}yux+}aJ^M4gN` z$Ri4X$XKu;#Di9oBc+8nsHiZeS;mmXtKgz36eg36fMC0RpPODpBt5~wky2IfeKW&|Pc zN((9nzarwbwjR}tapuV&B9}b;ei9J$%8wuutEGe20x2|AqO^t~1g8^#C1Aw*I69fh z@2@<6niKCS$;{QD$z@=9DA=Mcwh~fn62B${sH9+2vQu zU7k-r+KuQuX^%!kM5lZXC3`eqd@fV2v{-&9_&b5EOU_8)kROa#mLF6J^hGc=;!wiW zU{^gNvook&AF`GP-f%bwKOfn6XMsqD^wk@qTJSvrPe*o;rXMXK<~bcd3i-i9FTe?k zMP)S{#ZAyv;U7%w>Oqv~j$+?-pU5>n1US3S$>HR5RakUE636$Ec8&rwfn$slhWc^; z+!}5+N?qC5s69ZBc#IfO&iv;a$l^ug(MrS+VXR?T%rDy$%uSB$Gi(VuKQXp#-$hU) zyoEXKP0qWNd-UeczxL9o-|f^Zd>;a0uQgoJM{{!uhS64)vRZssxe>=V?X_hc{zFB> zx~xa@G|701x_GC;9)8Drzd=*3(!SKo@Uu%Mj;i#I=i)tN?ACHN^h};L%4Q`z}WEle0Q2lr#H*bGbbbFpcbu_3nvvQ!WnU&2eCU8w;(hI*WFh)9hf$jG7XGm^(mz(XpY( z9?nHTizyMEFNNN2DrHf#sJ_vY-LG=cU+I!!Nkb$D5%lcQX*om*iM@F&5%~qO6@&dT za?3>7n_$By3K=@Z6aXV21Gl%{mem^XVltqlK}(Yq${=`>Hj+ZtKa(V7 zN;9fl|KnPRrJ)CnXE;zcmJ89N1{?BZ$`FP)XC!s`r{4gF?7gQqe9D~2EO^P8pnkLw zg((P1@-D)O!5;4L_LahbBMAdPO~6EWzD)kEkwPlcfI%~LRu3GC*&nVvUMK)C=x-sm zD9EOIzDshbMqDrsV}2M71FCeT6%TWL9a%bHC}SKiy*m%|h8nW02?KFH=BTf4y7rg3 zd=#q^8Y$E)1POC1i+~uI$`rdlo|wu2lDYgLg*}H^%u@+q6N7pbYb6RA=07o$SV~Kg z{l42!9|@Y+=}&)HeoA3X`VDgeinO_I1vc~!>q8zL=*#-6&lMBbv;~47P3@S zs^8-en*>3Kn~)%3(&*_+UtX$}(?$&C297lNMqXm}N&kpRa43w`8Daek6+k769nB?F z416RvR1X!5Ri}ZPZ2)9yL-Bh4>wD}&C#EczA6qBuC<>Bx2o{VPcL|3B3QdN8adL1I z8U=EgKdNMp0xhLq|G1_TI1hd6Axo24>MClmMLWIs&}pJ0lDgz(T{xn2jkSYq^Ol1B$jQLRzmD=O}ua%5%k; z{Uk*X)ad<;mAWE`_@LqdAiWj<_P%>7k;|MP#*z!D=YDGt*^c#RCRfKU%0XNT{`h2~7MnW_G=4 z@d1NeoGrIRe<2*bRixGiwCG5XT43N2{k1K_wR2-)8UQ3TMxx;u!AOD%Kca%6R2-Q6 zNB&&c(|U?Q{UM^=U@l+=V=P9lWW$)nVMA#&xV_+c@XUS_8uB+$!&O&v+qxn~8ET9-Nee4(!Q6LcENth>6FH02C%%CVii1}53Y@`{p z%CJzu4CXT>5NwX60l*ybf;hiRfEVB~7OYqROfaNRi9@RdH^ekX3mmZ>&OgvNq@TQ8dMp0_phztO=@53Gg+Nb0 ztACP%wOV6M38L-d!bfCMwQO;joC*bDLxFSM|t7VW2DkH|<6MrW#J{ zg-HaOf{1AIQD}9r!||tyL{kxq(E}Km`!(~yh9nT=YmXgG8}`NoeR%{h3`n3Wh74gf zEGux-1E*#ESuFK-kSDk0V#%Ah5&;6=~}<>`vJ$)$mk0 zUokf1TnL|~UZr2=;rpr&4pg;L_9u7?T(Kc~?8&a$p0K;7C^uH& zxAiNeW7YHxb_z3!0x~Am7d>Crs@m~%;;b`;&s^@l!%>+l#TK{FS{^cgAzYmz;!M{J@Cg0HKqLdOWT>FYr zi|~`ijKZGr0Pudpro~7S=;*gHSTH#JA)W-mV8UyI>$RRH=OWJ8Z-|@C{WyW?bS-7vM z>5H6{%X}Z#bID6r?SA3+YW6;V7u`=^o{c5GKRmcrzO149Mpn}C4W1Fjp8nk@-f1M9 ze`)j3argamPdY0tCw_brvM1H1K=J*Hpw|_-o9;B@Gv3_nCh%3AJx7f`rckJEcV%EA zJ!tmSX>M(4z4LDOsn^<=owJaN8ccNFSo->e>4wm!_l}RryT>}D+B((z^y#LB1=735 z)Sjv-s}HAi+gse5Zcr=w@}P~HSpAW1Rc{mhgDx7h_ff7!ZMdG$QjDK0 zy#Crz1W!#x?$Sfy1kh`bN*8NIz*Tl1JQMVZtOD6XA(hQDTI>nu| zoMH0*nDEv3WXS;9Z{m|;9Ca<3>1&OfngqmAuKK_?BgErKT=gfA_i#kk*y5D>HORUQ zxvTRh=F4tH|Y<)Wot^6QRgGzRWB zsd<%AKEa~>w36YbGv#c*BCa?rSP9}FaDMy^=|!3zuY8}B;_(=EGr`d`x>v=3r6qp} znyQ6Ph6o83tW>_CBtIg(*v2Um42|c1B=R4xVQsJZ3@TuTOFS^7rgt3SMFaf zI;h4d?hmtU)|~J_OXUqd+lJD6@2E^hpLC(|9kXa}=Ct0u4kD;aLtQ3XFs3c;%sY0D zZ2ZO5wb`eImlOIX?lgWGbMh_+nYrrHt#wa3627b%*t;Oz^7s*zir~EZ=4I7c6&;m2 zm%Tq4-#8bu{^7*I-k8X?rNVKXyHc~Aue?NBoLx(Wj34-ke_phy<)Qz*H7JL{XA~4#f;L z3O1&a^^DAejR5L3G}ALPG%?T%F*7EGk`2Jcg;KtQN1PcU4?F}eb9c#^nyMY3?`)0b z%lZAqu3xT2F{9bM^)6875g-=R-yrOwhnni4W;}?5Jltx4Namnk=4$^lE6Vs1{?!H<3ly8puAxrfH8+yh2mxzCM!78P* zA~_cdmF&^-?XstjIt9GZF zX+<3L<#%gfq!t-G-Cv{c;WJOLS|+1KnR19d=3YnAWXUPH4rKb<5)OCO~n6z?l~HE6Am~pPe{A) z;nL>m^1qE=`Do47aEYTPqu&DdRw8x{8Pvox|Q&QMXA+$kCh%>cs|!>ThiRNaZbUPRG)vc zXd;Qd)3*xQZpvKXG5wHz)~q72)pbkezC9hbf_!sJep5?E8`G)l1Tnj>`fU|T?~QQT z`8YSO<+yOumuYV**rtN}e9p^XseO~(x?vbf!NGYjP>m zzcp#K<@^i1M)vEJkF6UM$F+LibX~6)&$rh3!}HsG=lM%eu22#n;K9S_iA2^Vp6}=X zL0Qn0^uNTp0>VAy{I$P1|KEqmzYPN({zKLEv#{T#te0*yxQz4GeI+Fl>!Ph0aY=*0!k`i$%q$4;nnCIwBlXGD5;l~hxU?HBD%C(HV375PnvgGb*7bP(*fV<8vHLVCI#qURlgTK zPja?ne9e2L>)0MXZqUsWGBw8)ugsbG$h=tcvAWB#35V?$Ioxk(WF_5YJ<{l`cPwar zep1QzX6l+=Hy5;Q_u9_hfUT9EZdZkNH{_)(?Ca>8`N&1POj>J4+2XL|hpU1Ug7)bz zyXLzous&W(>t!FkQ7cn7)7o@aL)UWql}#e9%~!VD>2q@4G2SN-=ITn%TaZ&|HOp|> zjjD9HJ6qge=T;qaEQ-p%bhjftV+3x3b#~li^k>BA+t!R<4n}`~^M40L{j>^!?F$;- z)4|f4%16qwJ2GCtz3WNYY0^dYl}4yPRzL+0BM~~Q$gOB*n#-SG1pxB}y9J;g*0V+i zyCBps$iRR%*v%gv++eWtL_JXV;WP|(w!b$8)#q&;86N5WfIbIJ*@`hwz^CM)DcNYs zx)B_X$Pe29(CNd~@!@0*|EM}_@D5>8*sxoL20sExq(rlc;T$?@JwkvFHJWHZP#(3n zHwg9(GhyE-wktUi_Jw0VoFDp+9k9K**e+%wLHP%V${T&d`qQ@O-}O#ZAYQ)C2~*oB zmOHkKvcAAJck!jfFqK+E6fw=$f;EIY($v=$KDft#Xb#hotg7Akh4 z#_dg4=29i5%wmVKxCho#sHKhbJcH93l_@59X`MG-z3-PTF4XKgw>|H|vw0ModjUe5 zR#*wf3tkkgj#U|7MGNytl=Hxz~}7V#nitukyBw%ygD2 zNLIOkXg61H+&+laka1oO4ume{@n$ezWC$edM8;dEHNA6BK%%m=+{X zm^s){qaGgnuyWwj>ZfAKPiWIBKcRhi*R`FUv2@Bh%ZrGWuj5SbAdTt|H zJ^ka(v)kr16sK?Wjq!1Jb~s^sW@B7{XtHzU=ftfI$LaKlGoEZ|@g$FPB(6*c%9Xjq z0}pck?tyCvL-@rUaMaYYD5U|mDT)pQQ1W;ZfZVu$9n8`nnGTEKNosgPYTDAHXWlGJ zE7Om1<>JHXPVe))UD_|?TcI_!rzVI_|BHYvkIr2uy>^^ps7&{aNs!n1Xj5^W)05zB zN5|i{mEBS{OCiGH@zerZ@!7l^bBi~rGxekdk+v>fF2Tin|Asg#!sm)d9s1N$u97DH zUn-v3S-Y0jwBBkSt6a_3=3n=@YfPkA**gApEun7r@IglTV%BG7E?<6WjmVhJ#w4^% z{JPGXlV%Q2ea=phSG8NUE9LCe(p#x&S!&D7N_{L^8LQhnuN^GXrcn9>%u>WYj#alk zBQp_y?#NZiU3up{>3dkdlj!WLO>bJ-yk9W{FR`cIlnb0}dQrG`?TIQKAmXVa1RF%z}&41t3TZMmY`8k*}ne`HAx5V5`gbXa}A! zwW5etci_$^1HQh*?O_rxqpc(|ybo%7&8!Zg=qw{o=MxOT+XddrogfXPiy1nMPmzcK zQ~9GpP(d;u?sZYhk!>jl|Mm^6ruGI7uz}UgK+hI+H2sqsSc|w47XXuqfgN~$!{N9{ z$`oEW&iBLU@!u1UqhGhJn8IwEWN2cHZNh^e!10nsSQ1_ImrNWcqZ&gK2jy=QhwryJ zW0M6Gl<((YeDtp1a%J&j@ncs_CG>uh&U-Vkl$IUI@s_%}T@>Li|Jb)Ee5P(tbK?W@ z$+$ySp*jICWV|%-Bo!M)g&gH}5$Uyy$f#d6YA^Y6LHaUpyD`_?4x0(r*xuf-r-P09 zPUe<6h+lZ}#wq1oy~YBAxeFZo=Q^bsEStz7hph`r@vc6?V@D7i_{Ds1VS&=dT* z_Dh~$nE9FUps=-iXMfTZQPPVW?t<$MrVAVQBq&uqE;wiLNZY*lj28O&q^gpn@?ssTI5L(0w zLb07cDLH7$dNd{TyErrjwHyf}ak8Y}jYB5So=S7!kbmcJmCeb(6cz zd*x@uP&O}Ar8jOWEwLC_x;Qr?D`5xyQrD&r%Ad@xXTLtRT{Jgs+wm<56?og!!v~T# zs+kcEOnMN~`|fr95{lm>$t0q=Z(K>tF2PljD`k(8%f_}9UYBqxOm4n#uI$3|#i=j4 zrp1VK&g0~(36pPBc}!#;f7yj}J|YQi+c5PV)hVIp{Z8lI@9wackRzG#yv_Fo+-MP>Q;@WRJx%ywzTT5HcMXZ-wBMZ2_tsQ> z*Rsd`hSuTg@|(H)%4|!{oR_z8yPNi5N@3~PQ1o&w$6#hBW#OBGRr-pjRV)1tRNS(+ z$n%J~R(z>>&OO>4--e5K&=a4}K6LviUO#Wv9}ZMIaPa~Q8y8E&g&#k)GxZdAAuf7nRm3vZEbq1Sx-ddSU9aA4 zeW#eN^`AMxk#(G#%S~g+&@}+cHg$PdT;`q4~74xca6a00* z8*Tx2*TszcWK$#F-oPrBnf&%uK|s&lRTWaPyUee>l;{^}AjOW+o}zubcdhA^&d6Q& z3=Us+Ti6mKmDNx;HBDZu=kZ>Z!$#_R$r-uCk5;bww$xK%6RWG{o{Zf1==^H@=?ylU zA0{4t@GjT)R&q0}4eqc}GnM_Y|Ebd+ee=B+nlF#Bza|nuyD0LCUx%XUFO>EAc}A(> zq&23x(wmjzh z9isosaqHjQybX~C{B8x?ygf9!0H#m+PmM0WL;FWC{~v9N;UWC+gBIfgU%KI2=gnJe zZk;V(@GQ{D*?X*L+7aLBW%T^Dt&3u%kR2^+i}4T9nf&?HT6HmZ*?z_T3&x^$H!NP2E38}9WSsDu)J}?EX~@z& z^;*w%D#;{d7QH(e(|rB#`u1IUEOS@M@DO|V*0cwDZTtADwJbl&*CQRympjGx_l?oW zau|OsCvhr&FD1>w=vmA@OJYP~7Wd#&MFqdw%GIkAUzUHKLF%`NP?VWB^;9vJKM|l; zGB!<3xmWzZc!E$e3I0o&QNKmxmqF(1%RP=+cFCZv_uBj!)84xuTJiWzQOZd)rG8t= zF*N1KUlMx%@bikFf5+$U?Zx{YpRuWpxQ$ryW005JHd1(2(pIu&%j(0 z*4_0X`V;+10MK`M#vy!ssyq2$V>Zki;aQO~RN&<7+gJgUQJ?dXV0n6E0}gNUS|o}J zW1sQM-dj*S{47*V_j5{K6>Tl>y;x$@O^6U)lOUwp^wpUE8`=PC0s_{mcix1}WVR`pd%@>K0sxBPc| z1%uXSY@_W8$^Ia`YqeyKo6i~S_?NgUVioa-E|U4M^I`+0*en$kUr0N)r= z$|W@AJeqPAO{vC@|CRZ|hEX&ndE1izMq$BjvuTs2x28JZc`J7#thYXpF2WHlJ33nP zVc5ZT|FD&lGbU;+c%g9k#Jib030JlSo!w-jy_~I-TUA?;@`!F5eyGxNOtSjQTWIl` zkgL}m6z4lNPw{*@CGbSS=Z9n8?HGG3?_$ccP1gKdWP(mMoW541q31Jib#TEplHF$e z5*Fu?Lw@$rIl;`e(l&)>hoSWal0uiChM5ql2iW#830r&^w%tE%6AE3C=iVQTTo-R{d6Ae@A*g7l&^1wjSGKmtS{!6Z~gDT0ax3m{lQM8tw3 z78DzTf{MLiMX?twSV5G3_Jjb|@4ff?-sipd`R~D;bGFUQ&d$v4&TOK`)Mc0`hGAmx z>FUC;DtMyHmbm}>y>?qMRDvLsmyLzN^1x#jloB*SMq zd@xLrcoz}SjWQ7Z#8n7)$bZ?4LBDJ>P*wD=_t~99S#SjcTrc!89m75&MhGuM3|nRc zi4+X$C(Qe=Jjoa))u+A`q+R=@DST!EAJTiY;09$xUxDtv7a6FcaCzKN$Ruc+4lk&q zI`HXp*}`y9xXdUHR3vCkfkFgpBz*c@wipJz{r+0kor7o-!Njp9YYdwQIHbF)T_9ta zq&kLq!!xBj?@y0TJiBY2#>y+F(;6LgT<5zwUDegKo%Z-u@yi3$*IT&r6LMEx4^9|; zd~TQ7umvT|H0F}ykEd3@{J6!Hru$$+bVE)5f-#=yGZ#<|Qk7Ot8oHzTN@ac2!HTNt zS9kSxeT?2c`@j&JPm6}RyF6BqGhCGDU#%RoIrVU(>}^`GSw+oEDN&&H-09axNI>Lr z_(b_6^7zbX%0woQ6Uz-{@_ODTGU*H^*N_~|3*~U5SRsaFKPH#Q;;^kvDLDEwBs;`L z@ngA6Yc?~M&!tBhlD%U?qFABhnTfufNG97l#KMAZ7HVcrwK6ef;+9t0KO>7}^I6eM zA$A`oAB~GyHwV4#9MM0P<@F5|lhZ|;UR~L^sUfGt*J{z$IMo5$#(h>RcewcA;Idrq z5yt0H^{foWDNU!OQ&?MP(~^_#Z>ehJ-ZRv{bnk?t?-Ob5-A{aI1D~5oY8wNojtN%mkICiXxKX{R6fe4=Akm*Jd$% zbowu`9T|9lVZgEXqNvfnQ9d2>rcGJhTD*Y_jEst(3l-7ifHIXE+UKgduc=xz~w)_`6q!ZQFA0!$3n3OvYy zay!VQ!$5_JW7saplZMY_Nep`odGDZ200^NSJnz6$7wULJSrw$M;5h)ERgj0S=K$*k zyyrl>;ZRov$_wFXE`woD0LLY$b02VX;TZ$%)(+1KOP^Jdyqo73WKd@w!$WnpYA9CL$v97e~YAkBc1L`d@?odAu2 z6x585#S#@<;m*T6pdt^8hIc-cMF2bMLf(7a5Aw; zP=$rf1dvS38Gx{$jt2k?$F@Qv9YG~0q5>kyfx!7=)f-S%@5ic+05OW7{d>4tz=}~n zS7u>h@W&*GLS6QSuE#){_XAl=p!u*Ln}3ht7*wGMs(4}?fYnR??}&N=O@{xv$@j25 zVUW8k`T#Ewk6nOiaqwhgevlJIu#$%@fr>yU8eh~YK2+jB6(KYJ&Uu!xM@b?ZPlJ6F1Ocpl&9R?H7kdeRYLGQpJ$Vl7~55tAk zqoI2!BN%uTOLQNp58@qSI~{}=z0HK`ItY4ibuTOgn*oK0SADfF5vr=7ssg1$D%mT4 z=}>6y2w;&uI>ImrhaJ(zBM9I_K2paRAchWH_k=qVk$uoq&k^7X#&Qx=VS)no3P*28 zc~}ipHgqI}0<~rVmAzPh1$`J8BGX?ta03xw18Il|E)Ww!h=`C|iO>+pLN?|{OueEk ztb80QQ@)oCR1^&`5o{h1Dd3w202A0EX|RNr-#6)1YdfffhKm8s6MoS+92$@M?>43p zvj+Zsb7b@WjB@~(auvie2K2`tSdVm2sIp_A5Ey`LB~o)?M^J67}E#+hTppqeKk1R8n7>g)aO!i8sKxhObf@Xym&;b7)p*N6(#utsV0E{nS z>?>g-Vdl~Ku@NE*8ChhX5_?RpkDw}#=oGR>bRY^Tvll40kQ;(YVmVY*c7vYw4!W?y zAt-`w@w#Omq5d-80I)cGIf328f;w!)#Zqc@;JCILx5((c{~9*w=gsvr(< zL4c6qLAipVb%ys?Ad!JB06?Su3<#Mwq0;@>{3`5r)Q~|#(!d9P|0u&sau8?gmI~gh+(qfDj;=bO8`(M*a~M z>Q=AS-Uc9OLJ+=0(a)3O&p;&PVGr|PZ-%-R20TM^2p@9+AeMgu;!pG(t=4{~;5an) z{qHvJ%U%XZ5Sq}D@FL!sDS$lw33FdruY<}YnmZjf&kQD;PG&I4^ibHfaL9ZXlg%W@ zLLQIB=F<~kqs``!<7$hdSPVLa#J7u~b6KIVePQy*Gh>a!hRLNf=%dK9sL2TYm|3)B8w&X^Hs>I1=5xr5*cjL;(HWdkV*n8#K-FDPb%KBpx-g&U>kK;NlNqcqCKp;W$2g zO9ZHdOhKrqeNYiJll6dO`Zk7Sz`+5sA=4xoGEE^<(9IEjng~$zRPGCz*|!=R*gl@*X~5o9z5{hhd6U=%`DC z0ujmu7*RLk=%KYc=+FT~Am!(3gz~Y;QNV;~7B3neLfzm|NM7y$l*=T<9b}f^D*Y!+ z^ce6S(Ai{qlmG;o1H44Kg|u6!(EaE2NkWeu8x^HblF}1k&?ixQ zO^_~B(?vW)YTjc}1m;N>n(G1uv}6iN8tQ=>Ab0^FGQd#=6MTQMJUW+b$K!!SP>4YV z2O-jKkSMOeTv5oApmKK=;n0IpdVv&0ap(--92-=c92FZ*=Tb;hoPZs*Wqb~UgSsKW z63St*Ls<+K7g32!9*-5yri1ea8J4~lkLWY#FJ!|o^1(!rV`>i~uMQYd7w9#3FJo9t z2Ax3$<^CQMkOAF8tY9$XVwq8KOtPC3J2n~&DhSmW#Jf;_K#&cEy;u?hL@HoDs(tDR z@QnFRvJnLWRR-z=G*OdBBb36~SvUp))z(K1ejIpWRwpuvMS);;CYk?&|J}+-tVs}H zu)?rhU<0|m*29Q^1oF$_azTrFmJLMq&kF#PAJP039K=-C-N{f^7%Q~4lFVkY!)p(+ z$s8^#90mo3mqF))v4)ozZY(o|PKYL#NlcnBVSq(ovY{N-Izj~}W)4R>pYB6=m;xvC!$T7< zA=!K;JDg6u#c{xfqE#BO9*iiVEDRdO9CjdRuQ5Gk?6|{V4*i6gwOOM<^zhLHL3bf%oM^x>etOT z4$P%^GAw}pk9%bDFU>kL8Yb$bKbiIEpaWz~#bZ=z7S8%{8G`e6_fdnL?bV5RV zX{6|r#scxebq?SbSR*tGflwn$fmRc}4TPPdBl|!oI4SX80r;LSkhCZ=SZ1_l7Ot#% z6$ohlnV6p0;s;2inZHE+Yr=uv?gd2O`RDu2A$vvk=;kRfgedwLg^%oc;C({Q@?_d)Au5Pp zYftjQqTn5c(6wDAxjDjfHY!8)?V~s$s4`p-G$Bb2gcu&=V;v(*FlESqS8xsXJcaKl zAAK-Ph9r1OU?VUk2=&_&_h90lK-`xT_x;5E5^-;ZJGuldQ6HtTF_;F{pSTYp?wZ71 zpSV+ryA^S_BkmMT7CVVi0M2!|4<+u}M2-P=2XaiX*Ki+A<^NpZ#t!3fqhT-1Vbi1h1X1swYdLUY z5@A&o@e2UH;6h?X)47p9w{m7hF@FN-!3yPac$_dk#gD~riq1#W z5D8~EH^PkPa3kS3gD_sth=Rc8f4@D(1RwYBoBMJ&Q9Q~dHj9sl0qO5KAHbvZP~*Ym z@#x{;t$=?$gu#G|k_id;b|yE&c}lcL?i+E%^^;h6nAHBHK))fT_ZAL3l!XVZJTm9u zk@tJ#E<4z@uQ3ZaAVwyU-2~Z!Dp6Fvo#Xzu-R7+m$@UJVs@urwE zZ>vK2SGi|Tzs`7>J^zbnTvWPy!HQwKM?YD8ljV+SPsyEIcRyY+ z`=n&Nm;O_l{EFw|FCRYDJXZ4h>03sid%u-6+Y0o8LJYSu4b?lYS@VN9MvvaknYL4* zF3(y=Eo*=SQ-vITY^ABk)JrQBNtmpM58?{Nfx~5j(IBDdeSZ?xkBW>5%?vlA;8YA7 zOu`2A$O`#*8JSGOspyEqJbSoxU+d93S(y6%DLjKB$PET;j!{t_bQW8nH%ul4$pE^# zMgR=rG>@R}|K0zy93Two9xNfRccw-UA#zLuw-G;F$2w6heEz z1I!j?R8kLSM16T-;2f!DGKqy2Ui3@cxn1kf{wD*HN6onN8zEC?Voco{v zCJIJ_qe3`*Pzp2+u0p_0B6^ELKf<7+FkFprqOdax@Su=;81#<003wQcAXyjy^tnTgaA=3l zouEKvBGhC-P6S}bevwDU%0RKn&|lO~WIMJH{q*W?$AWQ0(1c@zQYd2j&-d4okOdU@ zLnl52@xk8F_`M9+5;E|8yB{UtPjWB@Rz0MiI57$3#x97$57FwKS!Sur9c5>*zLmJm0P7Zp(z z$8dKE83PHD7%9y{gd|pIgO9-n_sLPfrA0|tq1Z-|6b#qw(@t!lO{w=viLS5(d+5aq zZg!J8wEJb>C`=oaj;D#$;%TDW3PnXoA|gsA!1V?ft#!q6r;kl0MxX(g>miIJ4kW}A z6p2m}lTZ?w`$`%6GVN=e3_&WnH*9G}CcD&q1eQ&LHCB9jr#VKb=1a5a=8qco^z zH3+dMF1Y21bud*E*Ffc>N-DkOzHoHY$cImljv;$H*x|zl%Tdj7E8K!=VPQ z%uT7(5xBOXM{2+9kq?s_2i|@>jil9=!z6J`G>xPH0zr}yNrU}ak%Px+xBHrPH2*Bc z(b;ROZ>uNlA9ZW~;Q;41QdadPx81g0lvwet`HP!Msm}1WgTd0T=iewS7hTSumg;Au zFJG~x?%Lc&CvVAHi$)lww}pQ=*Ba4J_2VVSmanZZ2RN+|TQ+4MpByWvcrNkV4S)G` zn(Cv+8iu!;rz!NO%~x$|F*3GWk#!9J^lpfIP*dOyduLI*g6oCc;Wf(|Rkt5d+gV52 zW_abmYP@VC$!K`Fy$t*K)7O?vMy^He`Y-ZFvqaWxyH%&#aL6GeVxFYpSSMD%WAfdy zEh@)$a#F534eyt*#$eVcmDWnPrTJ?oJ-2=ldEwMoYYu&yN{pY#hpsqD1%XQy^Ap923bx zxyFPWA(YQE?iofTmxNe?R8pV{K3PHvv{GDLl0*`7$H(EW!Za?DIi?#ye0=<`5P;M3 z_mKIx5~6p6SU+4w2vSt4ueg9hg1C^d)j0}!yCv^F5WQ-BWPSapowAKu8uS3~+4%>o z-A|RTH91;1YsS3e9pr6qB|~ub$w=MVi8GF0Pzy8A_Zi(jar;Mp*UTYvGvE0-=ggM1 z&-9dE`mIGz`-QfnUFtfUy`oJ+EL+NMEh~YeO_{zO1pa zY4EM4`!Am{XXm)pP1od}uRp^eNs$hlD2}8pombK-C3k4hggu!}osAv4FX>i~DSiE- zPUpNzRmD_qqXSE}DkqzDg}szWBPGtJ_ui7ImVCInT5(1)N9D59z1#U^D!bXisH4_-J-Xxxy{pA)9DZfhHA}Zs7v@VEQ=9i4@+`ivet*a;znECB@T205#pOq^6~~8q z7tu#6Vx)@93;OSDKPcQNR`A~zD!t`)*^DPH4y8v1)miIqdg?cE!TBi#Mc6#^H5aTd zjg&KfEY@;VDQ`h~*#rv}yM-<78S9oZRjoxCjVJDU#{{*>W|U=DI6aN;N?#{k&As>7 zPb&9-LHdA&)Xpc9x$1}8)3t?$i4L3!`jw)J_OVu#c4>C#FY$aG%HKo#DGc<3A19Fg&Bo18Mu)tjcIN~H#cJ# zF|16?a4R#bFec9Y&H|q4|Mc{wJ<5|wrz|KY%E|}aSIcPNeh8_Cm=_K*uQ}GtAUX>y`TLoyHi$i(K5sxy(9p zZnVOhc5&_)b?5s}*V>p@aLmd!d;8A4f5qQ=^suDBY|_~HvD0|E{vDLTR~p2g?5}tIQC5qZ?zUBnSJ$;j4!PXM z7+hg+=bcnif_H`lP0h-?`0S#XyHZzYaooqQei|G7@Qjkbn*J2a;3H1kHm^S2uD|}Q z<@o~*;s*`C)QvbAA=j)h%U(6NKKt<0$YrtX2>87Q5J>SjXDG^9Q$NS_e_3N zBiuk>!-n_Tu!$V_DwzX1Rs?Zd2(FRsV&T*em&H#cmSs3@X+ovZ;EOmkux7OGBn>71 zNkjXu)>gZ@Qv!$JjHBwSr<2L{1#v!6Hbbv*8qd6a9{FvRvf{nwQT%k({lWwYcD6@lNR(mdY1+0pbV4CoU=3%`(0@ zME2VXzJ5!bvG1LM_>|9=mV|sgb1K-G>U}_0>7gxto~y5@r&Vv^X8-% z&h*dr8&k7gI#~3w(1c9`6E+oBK$by?MCuX~$3@}M$9(>M)j0TR;P z8wMgtbcp*M9`A$>qV;PWu2_t`}xyHZ=rHFk2%z2gb(SdG*CpW-!K_)+Qh2xz&bXs64OYzZuURpHryVH_(iedGv;7hwVNAMK2ho6^))w&X~vx3zeFUR-qgsZz;u&xWCwvbnh+Vhr^>f@f;cWY};>mt@)`&Pc8VA3>S$-vr#_rsdtMu>%>q*&0!y^p_ zit@~*1-CwI>=>XU&9uyUo1`(W`r>`Rrxz0PR02<#DF@$KsqVJa=*SLJN3~aqgH*Ag zJ7xiz=kn{NUuDQI_KKEQ^0c0<@4A+I@m3ngx48O#@ z)yQ~o!(*<+fcKn=G2v{m+_u+&iTsa!Os%w#P(eNV%V&awSK$I z7bRWW9S_^@m(6vqmYnXwoNnv6%l@TjYh_$wlZ>f!v|0*Pqeb5L&ZD9)k6aXYF!H;+ zl_|52ifbmdrKbUEK9h(#4a`D`PQ&lP*^4ujg#nwATY-e<_*5tJ)Zc*H0;VpHo)*4Tf zkOcevT4=wOBap)uPNDx3_8YgrO(8Z(Gc&=hko~3-NeEX$@}Jx9|10agp(v`N`IhU7 zk+UNyL+&4Ld2pg&g0}aLb9Yochbz3gSbEWY2OlT*e<69*H+PU*&QSXm<@tfQ&P^=x z>8!&q7fLF8k{8Q=v#?R)jLGo%>)PIjs~L9Ada^+M`4i9Lq8e?V(@Q#>&P!jIw)4U+ zd$En}o1<2SU)Q_s?6WKL!XrIrithGIuSpa8Jrp(kGGo~?oIU^D6ntIBoNKEppK7j} z^ZAm}JE{FX(G&MLE!*IVjdKa>ud5%nW!1yW5~<@hw$Cf=?=nz2ZNt3QNeSObtJS@w zGB8Elxpn_tZRhGbBi{`>hb7oi;~UpBk4|4%L>JksE?3d{Y0YlZIj!-&UG3tv$H}rn z>%9%Ecj=$3_b+$C-&t?P9wQ9a8|*oTr{*Kusx6kf3{PE>GVoXCw4yp1NIpaxI@-DcOWZU9jy>s$vwfpL%%bN+nwEtWFvX>Vlf4Xe*PR6c5dnY{PG zrY(H4D$f%$wFl_L$&Q)0c;-}Rhk=JGD|dN>H*B!)N=ejASw9F5dul&mnrg#(EzJuK z&kUYbzjtjkywXHVan~8?Iy`vlbHCS{?-r~(J&JQURhKW(|5cpk(KTr`y1x4=W>_yQ zilgsg7b$H%y4B^)0M6GeTGZ}u%@Z0HYo7``yiR@o0EURQ(atH^RSz{E?cH@cbWeh> z_!T>f_x7A!B?;Rq3-e-CZ>*TF6su)S+akp-3|KtkXyNO5r!}v=80K|q^((h~pGZv3 zLfPa7R>NcV^U_u4sQO*Y3Imh*b);Oxag-Tpbp z1mXVu$#2r@eJ)Jhh?Z;JUTSGkYQH|dXEAW__WGt}sq%Q=(m`l3C~PQ3g~g!O(zW?s zJ6ewTY;05N$C_|$_`!N3+`bP82y^4K!htCReh#V?sivs>ZZXz({sd>LSQ^C9ttI2f z*DgDz)ZtxK9f7LPSTIrcanA1F?RcT1Pvzp??ikti ztiL{Y!`30zNl}M2PvkNOHa~4YFynLd-jMYx!VkHKte$tm?7^%#;v4oXqtuxWJ8kZ` zvq+0+@zL>K&gH1Z%R5KRnHm+StUB+@gDX3BPd@!N@NAM>0Ck9by*^3NZvMi!ru3XC zgL#jal&S4qF6J&Z_}-F_&m*so-uUXa-HI+9cGjD7tOa7qtz$B+=I?TO{) zW*Ji+c&!+*;nCD`$&S~{4JiB6E?wpFbn5OZo*TSc>0MyU)f;aDI!clp6JFV657*oL zGI_|9g*Q*EY|Y4^f6d=oGc7N3OXkfz5u&`9g{{vf7!M27copwcreTS#-OgO5arV$w zJS#@c{6KX-eCijEn(~YAFq>3*_J%Gf1Itm#i_NkmN*;E+N9OI zcXPeA=%y`lH>vTXGVa9B{g6j`ZS{t~q|nVq|3=2%cl*9BuA~?4o)N6cFDqJeshtv1 zH_iCEYUS;%X{V-rT-5rSd0^Ol*XtVY&cO?9+lJaseCj2s))t?mt4HO}_~g3aDW0a? z(W``FBx;)WbI5z#!)p|r(!LH^mqB)@3W$Z%GhIncQ85uvH$1SnF$AcPBj~pQD#BIK zr>z)Sc1TI_sqIWj(M6-)Y*Q+ES0u+6a^d#*`oie9Q{Pn;UMWnIgMgI;2^P-JdOf{Z z-Lr+ClTy8(p&z%vu)4mZDhnjd`CGiHdbkd(kRV{C(d#Ao(bJ1g;!p_(Nw>R~hSR#^ zR)o8kNaFmzg}#5+y}KZ*YIv<=_Ue?xL7h6&JGl!CJKh(sT9D_wzxYh>LgP^;lwr#g zI%bz?q>=U}ol!j`dfNHLiGojG#MIj|WV*E2MQ!2MCv;UF>1lir%drc6`QYH7#jQ%K z&F)&p_;NiuASbXPOAUvTB@|dWR<2X?ep>B z8?oI-d`_pc^#f90Te4H$Rlih{eIZ<3r@-oZw!jrJ0tJ?Oh$*;wO)QNpP0VRV3`;X= z7@bBlGYt#<&OPGFW<2s1znr#pu!V)z-sml-V?}a*AME;NEQ%AuBjQ~k&OMG;B)`Gv zW`tW9;g*Dpgf8qgxJV}9KKKM-8eAkoU-It}2;*IUK*5KVgU}Nt0*8P4#GgT(Mblu( zETOD%%m27{gSOYk2?^I*KYu-Y`0BB@?L+-qeHvIU;#cd=ylm+#2*?fYZ>e`o+)3%) z>cj#4R=>$Kw8rZmMevp3~h4cWstr!H#NReKnwzR-r!$GUcU#|l5`YC<~fzp(rxl={N3WU7k;Zytj~HRHE6;KgQ?U2s~LG)HZ6$E)8o9Y zD}R32X>enRXX;*GRhOmtCDF&&x+g#DYBaQx%VaCwo|9dj(=uZnE4|44dNlc4#?`Lc zs#WIF->e7L&LB!~?`V>!{ zCsLa3pGI*mv&L^R0MBwh&+{WzM?uZJ3VSXckA<#FB|TtUbE_C zoQk%QdNez|V#lH4gR{=(`E5#?d}e@4$R*9!onz{#vY(7?7$p{*>E2`aJ1+AolwEXW z&g75v;q&RY*5}tXEIz|=xqpn3(^~Oy7asj`hTE2Bd2tPgrRu(o{!q@dkl5{ae#n*T z4>_mjtF@)fAbIT@n#!xZ9H2FJ)MS)qBqiAWe&YzQ?WSc z=|Zo0s%=HaQywlGZB%YD`NV#kZ?wymqSh6=cdoFUb7@_Q;RjE@<(g(AYOUCexjqNi zD(o1dJ@3r>gQA&BJ_WzIF!AW(ocV{2Y4S$|tLW`()YY>bk#9B5{QT^S73FH$rDb6+ z=^8Wc>$$B9UeGck=(6T`n~8OM{l^X$eRDA>!1${6gP0(N3C{7ApRxOgwu__%-#Rv^ z^6=0rlg2->DpGi+?RH3|%5k>S!#3r@T~uI7I$eaTA?H@tM)(&m=| z8+LZy*%j7Ovnq8~>$TSLPu%oNmGm~3CWogy&I(Bg-fcYZy8qh1qw#urZ(E~l^|B4K zZ7sZN?q@hItdn*>aizq;n4kNJ{W*a=*-$BHdhTi)FOzvUcP$uvcfIHPyj_Q!3#0Nc z-MhA6agVzR;_Ren_|G1r-lG}6oQ(e9=l{+X^-~lAoeL74>EIfT5}_`0I51G$^ZxVF zdg?{(g{JsaR6#=wW+L3H(4%mCrrTeS0)YC0-h!hZ;#obDT`+DEOrsH#-8A9k29w=H z+#B~4reU(P|J@c;aCAgC)BOQHA5YzYh$oAsuEJAu@YLl!emIIK90S0|3eky>luiDG z4o%(+PACsftFYjU0g0h8JW2#V8n^8MAcC6?qmkA7oDB_zlcDIxuh5CrL^v0WeyBw7 z8!YH-C;C|(3R(RJgG$W4;cb~E`S*MiRVkO7_~BY>Wb^vp4_#4UpO<_ovEQ;9W-!Ij z=5sCgVs!eqBV(V+oF0ADrL6cJ>sIJdEwhqULCkr}k{3C9PipG7V)iA~@oMkJ*e{xR zVb|Bl2R4!v{WXuRhn8H~s~(?Y)$)vS%F#L@N&B5r^5$jy^d;}l=!iIvJf5Xky{SyR z-soQ$t&O7;? z1$wLUJ>;!r+oTp=)2OAXw7fZCbS_~19ycqQlQPFo?kIn>`^K$73nn;CwxrF}Rh?V$ zUib4|!%<{b{_ZIYBiNkM{rp;6af!{Ok$N_1W0gF@WRF#Pe7K)ISB*0$*{L+{k?lxk zac$7Vkjz^3Q1exp%{SkDZc{E=t$Y7$$*K#lf7S@rQ!>^mewf+G zOB*+CNJ`S`aLv`&_Qgdz<-_{VMypQWY^x`w9>xjvvj3c9Wbgc`-iJo6 zGY;60{)+$6@YC`7`caOtw>^@I!afX{9X#b8pPodv8u|5U#VoVe5qWFNxs`*~x=oUq zy!uJojZ=o3Z#-IU`*6VM`X?)nxV&9-d||-WxB(oAy01?L&glwjthw&9^}^JkWva^) z=4=|0Uh{2r_UYmq`kxvjL-Pvicifv9r*m@MVwTsjO6vxe=)C--tdoYH+H6X;HB{&w z8ddMTb<9frr&0&k@A8?NnCGmEEC zjzoIcu4tLZlzX&ZY4=us)6q8pwS!G*=ZeylJn%Fnx1K$js3^d}G&i$L z*tV}?<~IGXOBu0Ut2%es4d)KuclE(#W9#J`L?i;l91<<0Rg_?MvBZV`DGQ3Jnb}la z5)h<_klq)j9@vz+?;k(FYH#V}U}S>ZnHpJ8O-=ve0oKAa`3vBanF%NGrU;kg(y1ef z<+#WXv&a9OflnOJ~#ZDHXV*!rSQ!=J`7GyY5kCDOG8IXXW;5JltO= zt=LKK!t)Owr8eP zH`6s0f9&?dS@s^b6D}&Om9Pn)`yuR@XrAMo z*B8crWj|Vdx?)RP(nuNVo12~z%l9piGJBe!w(D8J*)dOy9S@eizs)$jiBvtWG);Y@puAf`2Qups3uj^SXBCiW>gqs`DOo)Z(f8coCZ(zeBw2)YY zqLV+Vxp?XdJT?2fb!aMX-Ls4&DN}#D4)q@ICRl_zc>5T`FE!BN_nZI1D%AVCRVey~ z)L&YKNP#W2V})H+S=N!xg9vTE3kdqV6*(;e&hMC z?G+n#9-Vt~Zkt8&)Uj%91&QO9PsDawDh&Q$oS4eIQMNboVg0#}r;{+wc-(Qg)|m6H zq9u9RQ}hq*`zm%nW&>@U?$=2>jlb=CwA7?JBzW~Lf7@qo&lQ9%Tii7xWbU04<7AiX zv{=0yGHzz*x>=ghwQGwvj_H`2oHt`x!sh5p_t&<9sC1(w+;AVr|q=KaRywOsR^NpS_xo1Kdp#R~R zv9GS?r-tpGH}$G2%5LTDF16oy>iiHpk9(QzBUcyq55q54^J(LoLuY*`$TA*Uueo!| z-tyayV^(?3yk2za#H0tTyZ$v7@8ZY4Ha_%>)ELRzjZk{`!0Wh+W?qwZbBg7c%MMPhVZt%TeKwtW)ZW`h9762f7Yb; z{rZZzsfFOwx8U0>DEYs0_Wzd?)d8uu+H3FBi5QDy6cy{PVzi5{9pF3GCv9q#&5LBV z$_Z|b?$sFmesA)|U(23XuWS{v{!4|N_PmV`@K2Xwy=5=oxNzZB$BM&2!4_7ZPjdS+ z3`|m;u6t&#QC!)7Iv#X!_MWqWq>;((XIX<+9lz?kLUW$Zhl3-hlNPC+zgU{%7m|c0 zo?1V{#(i^8(Ue(S`IVs?j~81U9lZ6vRpQ3Zuh%E@c--ISLH+-Rr zsI{!!@(ao?r-p`H-!sxU=cde~?8S{f`mvworwAvip}?uZeNI$)9d%FNDtT%4tR`PkU+1pC^X<>~ymQg?ev@&_ zqB5hCa{ls~OPS|hq{IZ+6{KdGTvK_u?Ox4ta;np`3>IzzeB4v(`ii1pdS zYiUaH)6^Fmy64>5ivwpm)#8k$iR-FYJUG!TyZxh?z^VA240AX(k23Ih zSY!##&%j<2;_k+<`jhDf0N!_aCt)HYx-UiGU^eU<;a&B;pu%zQI#j{DPje9}gr|EB z;1HYFLK$2NH4{~SFuh3lE?GqWfn?FIOXahyiW%7UtM+?yi)@0XQ{S{32rn-65D zujfikC}z*E5S5Rhp4(V`@cqJ4-j$aVbp~^n-8Y$<>X{bgo9#cz&c8ed_b{*w>l&23 zYQw4N!(x>B**z;s8ydYu%x)CRlwl&(rt2@wdAsRD>|#;H?D4!0+0U(~4b3WLsL!){?aOvL5C!`q$ErG*;);4O!W?)y`y& z4`1)5{k#KJ^|oQtI+k~JY_Yh(jXs$YWSk+k*yv<6Gj~`#i?)4NRr`eMWlPW6X`AKl zSP)ZlyUFRDNbB^F5#*$AN@q6C?mE3MHY?{rh)*-Y07P>fxuT4BHvE9J+!I@~Dalk<&>r(+A70*~a7KbY(FbJJz1xm;OoD zto2B-so2fEj(A@BvqXsgk9|8e(_JMTu!UG6_{a#VQ#NpX62 buifArE3Ww@|3;Ie*l(`{mXLh%Irjems)A7- literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..d4ff1085b7c4fa000c33ccd7984c6003d02b928c GIT binary patch literal 31376 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..129769c5771130e01140001d6f730425fe0004dc GIT binary patch literal 24720 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 b{U>=oXE-PoVy>;;cxms0x~#rDE9n0L_U$?( literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..0e0fd7980de09859e83de34667f7fbafd9c0228a GIT binary patch literal 27280 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⅑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 E17Wk{qW}N^ literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..19076fc43c97ca62b18447313768c2135e0ed631 GIT binary patch literal 31376 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 L7i9&lzlHrjr(~#w literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..8e85e233618ec28fbf8d22623c1fb72a74e5d715 GIT binary patch literal 24720 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 UKDj|ja^lL1JfY@P=9=dJ0id=owg3PC literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/it/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..78955406b82c8161f900f6c963433139837889f7 GIT binary patch literal 27304 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..3a7643d339cd2ec7f56ea98ca723ee50b138b42d GIT binary patch literal 25232 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 De`!pk literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..36d90a8d671a7cd135ca2fd4d3c2394e472bd30c GIT binary patch literal 28816 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 M^AxoY-3HkI0lC>yaR2}S literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ko/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ko/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..df3543876fcf4971dd9a01ed47fa8c660d273ca4 GIT binary patch literal 24720 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

T;dLk&nCc_v3jr={$SSKePyPnq=Kwky2+c7B&-` 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

iWaAVQ+Q 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 HB<%kI!84g0 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..c87c27a13486b9db8f1218c85dcaa595bdb282f5 GIT binary patch literal 24720 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 WqW2kv3|cTG?8#{A*89G1p#KM}hAYGX literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..30625ccf621f69763946fe431410e842fca74f56 GIT binary patch literal 27280 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

)i5xZH@nRz@eYU&A^BBaV<)b=}kxwK;L>b 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..901070f7014898a1b388659dd8daf1c4a99729b8 GIT binary patch literal 30864 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 QD4sbprOLa#Y&Z6Q03U3F0{{R3 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..1271fbb66e8951979e00f8b65fbe3772ddfee709 GIT binary patch literal 24720 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..117976944711932bac8181d9a3a5614f01bfa822 GIT binary patch literal 27280 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 MKHVG#O&a!p0Dyjq0{{R3 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..11b66e7048ca4416f61340fe7d0486cd1aee7e57 GIT binary patch literal 34960 zcmeHQ2V7H2vp)$Pq$moCAOTcBA)JJ+qV%FP0YNDuB_dJ{q1qq_A{J0lu_2&{T@X-| zreehw?AH!<#a_X}n>`_g;w|6z-FM%6zZY*#PT8HEot^p5?3`V$i*GI_f?=2_d^Dpy=or7A2TLVa7*O z!lNm+Zl08=m{0~)R#tj=7io7p409%lV1|p8{CKTBz{nahBpEIflH9xdro%4Z!XubfHHFUt&66#Xao?Ycy_;4>BIdZLpV7>4tS!1Y87%N-BD zsTkG|e*W@@f?-{(6ICVQ+EIuImBmP6!F45S1D+8A2fl?r6yS==jAMqtO@g->a3T(0 zYxoL%ETJ})$%u@Bf&{Or@DR}wZV)ald)0(KBDul`6(wV0*wJYimJf1}BJN@shk{{m z%`nUzep9>d{oapP?KkIDWbue$Dy1*Ce`

?6W#isd2?kxmK60(r=$`l-#s%P*z~5J1Wc}k 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 UXA}?rWO?p~&E18IZx6u!3nUIr`2YX_ literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/ru/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..333851d043019b132d972b75bcfda420998f47ae GIT binary patch literal 26256 zcmeHP2|QI@*FV=hQzVI8Lm|_-*R0G#DP#(vWVmF!x~>eBxS}X2k!T_bDMCtyG^iBS zrP7?D(j=u+H2Bsz7ioIl=l#Ct`91IZ`+cYGxo7XQhqc#U>%Z4tYhSkRn-O*dK{((u zJd7YU@Qqz2`2CM>@$gzmrd9|!!h1=!hG26^)_GZA1TmaO4WN045`DeH!l-nj4~0mJ z3?l}H5iJ%t5kskd6m>yCK82B{?JW_+hQN;8UnlM{+S>z!O_ra)k08?^hliDGHygf* z@G*f8f{5VHY%IF542*vKiibPozcC@exJ;6;qS*g$-y=yZ3$Bl|5X1?4FhP*$u|^=R zgdm%Z;Cm^82*B6BeG$h<$E)%{dhWPJ)ajIHI;5SY;0EvTu>#%WFCz4=PK%)VLMBd| z2|RGYhX|i>mkCg>PNRfSp&(A{Qh15AH3L55E)xVX8<)f%QH-x}VYIO!oQR$-f}8|C z@Zz}$!XzSyzc_-}!*~2h-XDE2E5DwsQjzAUShOj2i9wox(@A7&jpz={2L`sNjyh$R0%#n>*b4m zCkQ~~7WjlX#YE64q3Vv52x=tFml84dXP-Ru=A>PluB_nQ z@)g&g<-QPmesN{+fZrt{1R|=fGut-^d$=&t>;9L1u&lHuDO^0`6rN$}1d^0ooPh9FNI(me3K z7t(tmZ3^G#ArHHbL-{4}apOi1DRaad34?!BgpODtf$-#qe}^Cxys(xzyb6VXRCwiu zj4y5mMeLABBn18~Kxl|1lnRGtVh|LnnpnW=aCk+9j8J$EgIAVNj0QP0kYI1<=~rc} zp&SKjY=uT#epTRGBUaEzAap^2rktT!Q^XhkQIH6rClZyKn*D=UJKG47aUDeScQE`O880-z*W1`~>28*~eWMJHPgx6sJa^5(( zPvMp0LO>c*Ktc`p>rtTmX5U_kI~40chC)xPzfLC>KGKk z`-T>(4R8{13P_xNrcW%0C%wL5vKe|=I-m~{X-zmVy+BwTth2m^ovMLEnG63$~n+TT40mi~`ZmodhUkPN^*Zo1F@rSxC` zd;$i33^a5-3?G0Bdl<#;5r7^?A`9w)ot3~}OwsG%Q-v#UH86N1Oaq`R5nfi{_;mu) zcNXivABV>GTKt^?{;*8o*iC39U`rj2qyOt=z~Bc!!50yHrNJZ`?`LeC`+k`?{sTm@ zgdH0vwvfQm25Tqi#qX9XSR7d5h+%nM+Xi(4<1ZP`4~yAPRI*kRY>r@Q$H*I9+F46= z*A&P2fEWve+tNW>K{YY@V3h!?-~=csU_Hh$OkGFCidnBt$ooqO9-DDo znnul@ALkM`fUq@>WnOFqy{HD812=zQMFl#cdJWi1Y&&JY-w1cJ5h_wNr zIbsn)Dv2fD>O^J%G=W)0_)LsgIM{OeoqYp3gS7%{1I!m@wXjO#S&f)2$*gTlR3{Yv zrO<`hN%->pYrA(8fS~6wmB#eo2-E?bVktWea1Tx{m?{`6S&+ZwKaWlVKcJ@UMnoBw#?@wL7I)}R_@6)Z|17j4P#JkCl#Oi1QnZpP)J z5z|jh{xGc=kU)480bE2dsaVK>)147Eab40~-)Fx>{xpP_Y|JVdYr6QamxbbYYeS z))9usz#Lqk)78Q6;WW>TfPixpF3jh?0&^N`qM9UqEQb?36$l~$ujS(qWG#G)fag%& ziB1a)3y8ozfOij)+3&zzn~8;rD3#z6HM@!|(0*y%+A-#j1&o zkr$bb$RHE&`xN{xi{F*;I|;w*<9Ad1u8!~{=MZ&h=Mmhe;&*vGM+JEfIhx34xX;4# z%^`;)9^y#QBX(iEDj*(&VgmRb$1VZ_9vl3_DpATJZniDeFEWH;gpB&|kue9ne+b2w z4$geUG$Mi$>Jt*<97qqLn9^Yed?M)-MBSH8rH#F`phWo60>iNi--?XZG^d7!dxypR z{KB3F-TTsieqkNvPo;%=W6gPoj6@ZFE@e&)kD&zyEc-NNBRX))v*QKKE#`jQKSCddagd2?L?ui2*ko7w6Oq*Uq}e@S2l>y zBL9l^Mq?=7A~@=_$Zuq0vcgWp?#T5#GHt2tJoDXeth(CD6y72{$6`HQrf5A#5vxx{ zJ+_{RdvxO65y7kGrh_}QJ&tn_2?U||JPxjy-ZRV%V9*oag z)ATS(B>fzB)B@$FWTA}boG%|el|5P5_w8gdi+xlNP*kOdIt=NHscMhk z#4RZoZrWxzLn?KmIYojPdUC6lt$X`cX#yhg)2xBu2GgnGfH(vMqPG(WhyV#gBCj}&f^R#B3N65kHgNQPWnsDy=-37D>9f9#M;gMK#FTOT zWdR8Sw2B2}u+SqG6~N*L{@}^RE(J_w!P}07Yp_txXb1%JbF;3)9IIfBB>+uyD8&jM z{M?coUIvAzBW-Gj0t^x0qsQ98qL?gCJ=Tx?NY5BuGzbJ>zI+-4 zVghlWe*~<7th&Ka3ybby*K9;^T-z>q4J^DdN;?VBf_f-?$cQ$4YvUZFR|B3lqIe?#WV`D>5hEY5h@66=6$sYs>+-!Laqvenl%0?iN_)%UiP8A_` zHc3tdwc+AZ;UaJl7`ki(jyxlDHadA+jxfs0PC)WF_OitzsO-3U9Ab*Rvn>m(=j7{_ z7L~j8-P$rN{a|h$V^Si@;5dUa*h}-+*$8ZGqM9(;<~ee^3Is2nbi+s9j0%nsM&JYz zqHv1X7jkfkvMqEXiJ}v@Ai*Qb=jt7?4EEP_Y8Xib6~Z#PMY$a*excMbKhiW*3d`XW zoiw($A%Z0vPNm`dG?FYTgS}@LmH77F8IEqLInljC!-@9hrs%ZEf+QVOAJrx4YU^oh zxkFNKToO&F`dcUyMENnw_(eHv7uY+J6w&Fd8LzwL{h&T(a6pZWf0`XbC|%1urmn4AP@vTHU{_)^3828T0fL+BDj z_1f`Vv}7+qO`*(;FYNTwK0S(GmhPF|pM)Ay*>;rPX;N&iH&0r&mRrQwGSK4*@qS6M z#L04M{B=tOf#@A7D-9%itE@L|-?{L);frAAg)fFw`qs%kGxr2|uKKxtVrm+kU0j?VY>R3=gbc(u&KFv^<9dDjqK;ul4bkqg6Ox zugRwspQ=<2pV6)oMxC+xG90$(eAGH`PM&45`G`Z!mlpDaM=d-!Py=!`;5;qnW{A)j zn?_77aj^ucREHv{8y62~B_}60fxuyd&O_&prct)!*&`i9MMeFp0}AaATBf6-7`@Xu z1W>-wCfRw$iwh_uhzkM9%@kIu@uomzd1#(tK`n+g5a8Spy1Q$lQK;%E+kMxz5{lOHf?- zyxf}|g3oui_z`#r4Voe|$(z;|_VNhUPjWbteDibbP-VMf-Rz>i7fmy+NYqrg+p8T< zJ0QMVdpO`m^^A%nbq!qu%e8%Pho2o^71NkLJiA4UYC2GI)Oot~Wa`OR?-yQ43mba> zKEn1)+0m&Yccf+|>(XnV)Lc0X!okrCFn0YLj1gj1sk_=aKD^igh7v-E`GIR_%-;eQ z@~A9J=_SXc1z^sPLUalY2m^2&12SDyk3<4r0Ewi{0P=rk*-O_Da;Cm&jz+A_zLFznOZ&$$FeavU2OL*jhfJV;Ng0d4x#_6f{`QEcc5JE*VQ~9mQ zfbgvXVb@Y$-r~C@K|OQKi%v{xGF066)WvcAl|?!E$XcBpO#Swmf*Maax*A2dtxqg* z(3LPv=^9MhwTU8W$nMvA_P%}i;(q?5lJpA8r%}U+yLjtp51zR2WF1#YoR~uT+~Y=* zZWv6I9|b0F;MC$@DJuIowEFlcE=|gJ6>^|80-1NUKUD9)r3BOwQ|<{I07d)epq8W` z=0^)9W1_?!F$|ByS&oeTuffnlHrLNSS6x$F{J2dnpA71Pbt=QL00j)p0}M>I{I?Jggc(E`fX@rnQ`01= zfe52G2D*;|6kwno3Me?51`IU%a~SxWw&_2pE)ICq`N46?f;ahR*asV|Z+0(vU-^7y zPSIm7Eek?l#HT|VUwS`Yj}Ow8(mF3HP`$)&c0};Te(Kf06PITR?-=By&6c)$_;ja{ zP6buFWWT-hnuph14QEY@^-L!iM;R}PP;?zCLVK>!$~SZ_m-~|XVCaEbr&s^|D8J6z zhq(~mQmf4c178!8Rkx}{o|~X_<8f-2lwxW2#@wbZ?kQLM{U%qa+@MeC8p&Q3~(krVpl_JPMI&&JOV+(iF^a9GA%(I_kqFsi7(?3{&`qVUASzDTz5O zR)PM3zTR{S(KM32j7kfn$KYleit1^S$YeN(PX;t2k0i-h@}C6Se`Q-$(iVA6LH!z~ zbC(i{W;rXILX4(%P+MExJP-bwEiUq)(}12Rc}ydZ{BrpIX)`onw!wku!C#WJGx zyVuJO+RjfaY>1h^e8(K_+h3-4?uuN0?7QG;dAIzK;RB^**^)(t zv=XzJ7@$m{}|>%)tRWhh%gj7w^c%WDu;)|Q^pF3v2h4Y;{)ebB)Buo5!3ImOz0qEsfmkX_T%ZI zpJzVgbIMxuXdi0N!ZK?V;4{xW&otTi&tut`ywgCmeL=Eu6muR$EkLoks1<54ng$fp z`*SG93d&*%gXs&j`ZIp95s*dtMr&qRmA{~xRFJEKUI=M~6ow-_q_J{@SbA9z3hc94{B29yY^?9?R@jL?^SoQjMnTLm)zG*@<}uIF{HM3WpYdR zciDa1n1Au9XyF#S=Be%Jw5*xSLw87ilzQ#d5zs0(>?wU|@5Tnj${1f4i@gq)2A>tU zx!l{qW@(|}_3n1rH3m8C^S&(6M=t_ z4_%%zqqj+TUeFfzy0=x@dXw6TLs}M6uS6zEB8%^7d&pkiexCPLlF-Hlp+cf|hO3n4 z?xeN74Y_#gWq5&WhU@Cgw7jWv+1)=}DG1=B7wYt?X-sZ@Leri2j#@E0fHCM;nWiaD znI@EaPvpMeJL+YtYgZ>fi)rFGa`lsHr%dYZgM6Pv6-^F38hlu?#;T5c=^V;Z6T8D^ zFYS7(R>a)o)8Y-4iYLi*2|3?;od4!0*0M{1#t^IqboS|4-mIs*7qt z?3}EviRxqcO~R89PKV?_x8MI)=)EUDq@wfA+>Dv4g4L%yZ0PDfo8usFf9Uc(2|ESh zS8YXYHizgaal#Ak>&{t|tTU&YWt46AL}%Paf}gHzc$va2{6UCg`|FfenHEijb-ViC z1xTrWUfHu=`gxCCLH;Rur;BMrmRES0OUjvt%{cZB?hn}-a6{>?mDAy5=3^x*b;X0p z3l=&GJYrY<6tsCW8n*83B6QbKTt{}*Q`zjekL{vwd5$@SIv%myyk{;lZ;t;2MP>iu z>_=C*66Wn4Tw63@ju1`XluIF^9zS=j9b1vWake$1SQ(`L99!KecxUUW;U> zp7CV2(7E^Q$f2k^mt!1k2^H$}AqNsh&y;zej z*Sd1IT&aiBgye&D(fu2kFJ}>6b)87(<7`fw+x6OM(!B+x8IO9>g09D(dXm}CrIEz` zY|Bgqx$sZ#KR=4jQ5XEc-4$LhVYh2jFdr?eCSQMNfZACHq31rH#^T#I5RJRICCP)W zq$xhBarkRhASqzNlZ#Z?^K96HWFNda*8= z;^{${%qJ$)ep_t&!0hAxZdGa;J%dTftqv|vcZFw$9MreD_CBWZfJCg1a^Kz^%354e zl0Fvgw)&#dPf&yR*yXC(c;GKihHRa(63pvHGg2!?pp< zd(4L8V`SrZPeT2lnoV3H*}Pj$mTCS>(H)V4PBPK3WlEn3BK3`$$;6=>En7b6!uRen};VRDSJrXx=D)!M|ab z^ty?DY=&y(i_&Wz$v&<=e9`wvv@_>5Q+4};nTHFbORMs>MM~bvSSK1Or$H{}3Cr`? zIK45iZ|z0dju+DwT*!T8{on(ELQUac-5l8bB^4?k zC?0%4wBQSgp|lodD8+-b7X@|u=NuEb`}Zfm$v5wFUcz3?TpRIH^Rkl!#`&H(z`^^? zH_cBHLdU*?Y*94rTK*@Px@e_Xz zoaRf$OZ?6l8^3;nGnIouKxTZs?-%;QV0vG)=n;=um4QhoCiv3WxX+8N~n2_fO-`T4cA5)wJ7?SbJptNM;c z1kKsHewltlPi{T?sZK7V!H4Dx3eT%|zbNmWR_C=k7!7Dl3OSP>vU{fR_4&D%Nupzy{Huc+bd zsJmj6HWDXWKv&P&CC|&&= z9P&I}ol@_a*V0Pto}6%cAv>{D?69=@4h_Nv^B0eAubOPQBSGqg?h9^<{=}=Q!^dkL zo;1HTKZrJuVyuKRRXe-DAAQf>ZL>Ad3mILlVZ+ZE5mc0)?G}4b%03u&!6JToKc;z|xp}+wc%Z zodfLSUA-+GK5MTm)qg%5aN4uIxvuos8PV;3-qov#q9n44uO6!9qfPNv)6)0R0#~o5 zo|>Mf4q44lPn+cLO$Lbb_x;X2GB?ccu|4Ni#(~MYx^mT_#TO&lvVI@z`eiJN8Xkei zyFi@B9I=@EdSN#;R96kv!(AlaqoW2F$wJf#br?;9i)7T7{QC|@<6VEy1syDhQBM>b z9Q_&>e+G4CXMoAfB`$Nv^|XDn{DQp>(KmWOe!0|e{p6d$sV==v&4F_`uQ#>4?E0MJ zk>xc(Pw6D5rRam)nDzDkrFZIHuq~87W+)$R8d~=84dR}elPcB9o5jqPvOr4;#n0Ey z@fc9i+OQ|xP4|qQRJq(mkxMrjA|=|d%jBBV74|1==v0(? zNR@`Y%VMsINgJD`eUC*5ba%wg5T3csvWT2$w9UxXI!Zp}YlX=9)W+pUx6g#zDtmI^JYaioO=|Tl_iR!sY(aFrg_FcwPZi%Jzr0rRz zuzuOBlJoI)GkSPrZG6A%+&altv)X0pf*bRW>unlVzgOY4&ph}-^p%Rb;Pk|hb+iM| z3qS3-C)uI@+3!NA5zpgQi4}+H3u;$h+2*n@)~#jY9G`aCzR$CpNcF(6rdmD++orjLefQX|u z|2jd8WOg-0Fvf3PT;@`Rkn-KuJD)9E(%!klsgh6iO!=)6m9kjg@*CS0U0f>3`OJUC zQ?lcXi5fknJoZz*-%*2+DCC-Ow2PGlPPed<R~@i(*&?ew{fvH? z-x{adox+Ev$ggdASIeH9_QC5l)3I@5=DPZmvh?X*5=uu~6_xa+Z`Yrvb7fUUMwyg+ zQHlRcZ<(NnO4hr))^|-`d{uV7kz-S}tFZ$6>$X@AjqCE=;fsYGtfHzuA`j~ivN62w zoSanEF!kEP`91pi!q4Qb>m_O|R#`qeb%qxEfYzhX*=Ut>w(qo*>z%~3m$ueuQR$}6 zmmYh{Ki@m--*qZGVP$Ve@BAKX#g!a zwzog%Sif=1-2`!V!ZY+|kI}cI8NXbN{=m=woh$06Cc*(__s}X=$nyawrzELjKJno z6fbpEqmO53ZJ~)@PZ&StyEvI6gU^i=D8Q#D!_wCyrCB8eE{?1B`06?>WY z-U^lHC}nTA6*A=S=Sk_1IYXA{dVN;yvd8Wt*7|(s_)ecYRQ9;?)}2Y~9W34S$jcQa z*HpYy{CHp0fEc*Fa#6~%Flx~;`WX{WuKk3WN=6K0QColhlU23@57XC3Q75goEL!o{ zWG1EH%wk8Mg4Td||i*fMIG z_PO@Gd-ue~$_>rUk}3T(M?QXF_s7QIWAn4SUPMMqzI?8m6C*KyxT8vbS>%)Qq0bv$ z@W($7oK^lA?d7o9)Y%ys>bu3TZI_GPg2s4Px%}t}WZBq0Q@#r0PsOeK7N5#rzr%I8 zi``tylV%rotnlEApBwxoX3wdH(9oa@juE1QvG$ipj7e8f#-uB_^C0V=Ubt93gkS6d z$89b15>CM}MZQr7)D#X9IJpV`duNu$*mjtggCxg6G_#jZurS;qvp~}Q)h~pnsENi{e2&G`L^>w!O)jAW2?|)}siMqnW;yxk?ib7LUoB(g3VF21{@Wm4A$<1T?~ z@OXIjGY}E7NRTOFlCIvtB6Thh}d3oW3U2*qR7qW4Ah`pt4c`P9ctBW2w=ATm6(bRNDIl$-p zE-&HuzJ#Oy_~})WmY%tqxt5te9O==~`IDzt^B6)*IC^&*95ScJIb@EQ8%TXUTI-mC z8|6oSSVPcNe~V2%165$zenM7R@xJ47Uk5Fh7_Xi()qAHd{Z@g)*;jLKIctg~dR6uauRJVsA^Sv5 z((+Mv&Q##km^VUf+3EuKOBzrjjl=h4eALFGTR^QdE5KkzO_zwt#Z(7xsbvIWug;e{Qbfe3j~Ia+_$N- zk89eq=2?OR$Ne%fuO~tRA_=ut2WR{9l zP7CD*6smi!Mn)^=8+ZirJvg)~=gOWV8A{x72f~}k$sY5BZdx22Fba@~In%G=1ny?| zB?iZ$QBMPJ!b}|0*nR}H{}@jL3*k_3Es)40O&x9Qd@=kU8Bc0q$$uDs{}ob|NDJ0S zO-MB$zWgkjJutK;Ff*9$EONb&4`C#I>Rq*LzN**RGmpJbuQ+Dpuj27~l9M6_Nyc=l zWR~=0UeQgfywOD!sD<#GrR&!^n+x2qtin=wbSU{0b9HhoGY$uwaGZuw107%w`iEsImyA~__|K-&sL`tr4<4u(j;Y5 z%jf&0*!xs0{t_i)_}Vq{U_+{zt%*aM@J=qHfHedDC)u}I#Pu=fe+he>d$FRpKXxV` z>Gf?pt}RE`^JqVfmOA__=hEyR4U5{McX$07_7P4IdACMi`dokVg2mz`;yVeP3*>A^ zk?IK`Ro5TxvwsOqf5|@k`g@m_^rw40eU`NuW^VSlaXD9_>Hi9PWBcF{(9=;PYyMTB z_nWq1f1QW#udzdo30Y`D2AYum-4;6mH5}U^6U0fs-D2C%w`T3H&F!5u{3!n3@TaN& z#0J~`yA3w>1K&Tj!RCIl-a)YI+=K1L3Cr0HcNOHzQmbCDOKDZYJb6GPCV_IRq&oP~`OEJw#v;`D zsD*;u>?^(Oh1=2>Dc2wU!tpSC4|$&AmxbjTUynZCq*>?Vm3zn4)p(Jcdn3cTk^h! z-I8S-W{EY`@jK-7h}F{{`@Q_|t})Jc(RAThb$!~l8X5Z?>*AHhc=j~if-!8}FefzNeG-|_}he&4+iF@BxgAbHB(N8}X&n^9MpBCpG zOpPi@Xer`7s9*Q;T+2ZH5DaywpA9H?Y(eiimB~`pQGdmaQ@u|x z&tCg>AFra+^{P1SX*{*Jb?#jCO21EEZ#^-e!5#yCS8sfS-JSnmyg}GI9sUN+xE~_2 zPeQm)W@VSD+l5`Y8u|WKiUXWB3N^?}IE^MW?n|gg6OR8an}Z*ITk-Rc`0SjW@E`GM z>sslknUgG0HEnGzbCL?G%-U4QeZQ$7I^loLo@nb0f8L%(G>1R_A3WY7fZt`YaU%Cm zZrg;)NeGYI`{`)uxQ}J%z+nX}1C0V0VjZ4=jV1)$HNYt38)*Ps@9+$k7~70qHaL~d zjXz5`unL@dDufl#8CRW+1hMI{(>M6eHIEPF!K$%y=M(eCJ^w&5{>zFBfgV#z>HX_I ze(mP9oN{t1xre{KF8b=sEf*%*-r(SRpJaH;IKJ8DRpzD>nKG?CNa&NPwCbw|w+(Z877gkoti1$=q+_(At!TWQnH>&1e z&d+oEc>kf$RzmlRcPhK8EZcj9jtoT=t^Yu{#+7e;M|_d}JUIm(sf+~SYqKVpbSpAN z%I=pWObQ(QVBRk7v}ngPlJJ*gH=leb_GYdb)+sYW#hBWfQ|;XywXP+;Z#3<^obA;c!sgOY zcmDmOf}?X7es!~#TwSq{*gqXj=o;4mn*b@H9Zk4`CbXgn6&zx}QeQYNiYCPGi~CPx z792IJb6h!;9A!&>GpH64DpRB^^ujL$0Wh zG}hV{WK}FNQIT`o-|?|tZ`Y@(jzXnXI~No>KOxC|`I4|EYBFv5*2&Ghn-3p3+udBO zuvM$JK%akW?p@L?LA!ZwtF7*Kl&a>v+h#slS?2TVrHNM78D(>h4NolBxOX5_R;OFm zP?0}1-Ojy+%{8*q(|?0pu=2Vxsrp*U`f`OV?#kZFo;Tg!NEP-mb*?0aT(${$DeI9L zy0B^6hrN~tm;8du6|Y+`PlvqKX}ou}yg>K!1igmhIPuOck27533eQi6R zA_xLvR!|pAm;nPAP{ag^@~UT9vVP~g-#zc#`+IM3XJ>l4tE;Q4{#D&myIL>VhH+vT z#s%-59tp3UIuRr6D7_$SbU=b#6R&$ha;39Rwco>X2+wd=wJV5?6W#+}voXwQz$J0I4aSdNh&K+58*4Df zuyxP}KT(QdOfpP?0*2YbXLN7bpFR${Wi)vCoLZvXbMxTbjcYF^*LDOLUMRgM+%?Ny z&fs>d|3kXan$JST-=DY7U3ui{oyjGf59eRFDtALea_Xk%i&nO%I94eid&3(g^vR}N z-OXZZ!111UO@%skc}<0M&%|To4~oZ6OFWD)+pO#MKu2rO;to0b?j^0wov)Y3SJ^vp zasaP4uYaf{0h8O|?PnJe%%J&G7SMtNL+Bo~;J&j3G&fHgU4`r)>=8)!^Kn-pJJ9IC zK7j%HniL%UsgR9B{1_p0ntlK+gh6-nQz6@ixcm8dSkfZw1AS=$`tI7=Zdx8%)2X@| znlxNTS8jM`Apr~@e;T`YI~oJci&n1$Z4FJ(KOdd@2PqoYGY-AKlX>WBa<;wh=A)q! zV~)-3l*%)%dtSC}7roN6Q}2pTyyrC;)5vRBM|Z=P%by=fOy1R~qEz2_$;7^eU#_sl zPJQefEuKRkEO#9K@^(c@7w78YpKI=?|9TYk>6dkPQ;*7B3diD{mAw267lHW`wu*A_ zE+6f5Ty0Exxucwqr=9%hEwiUNpYc==l%Kf;LW|gog0>1U?m@jxF3P zg=<~-90Q-FP=;P_fYw_$Plk3=pzZ{?pAMhX1u(1y`lyFGP0%+TK7*j$KB#*b>V&~N z1p1rtN5g{Q&kkb%Q6DS-TaH=4 zF%)yd{NUOX?nJ;f1FplNF|dM~F|ZJ#!W=jTW7beH81sj72Hf)olAf3;G^arsjc6Q< zErh1HAr$%neFkwW7&C-EX>cn52&@E>G|UW$_&^W+r!X<;5v8+Tc@G*LX^SSJeYOh6U{Fg6ay*+ zLKQYOG))UZfj|<$#3XybR9L{M(TEu^1vEH%LlaMoH3mDN8w7uW1Toay8=5N`5d-vw zi3x-RLj|rNqYz^F$b69Okl5WoiP70Ms4kDF_g9~XxnnEf zCX&@a>)QiWC!ne_7y6tm=H>VTKfQ({k@JvJs&_tbL0jVpaKEF8e)PD z%(xRO!j_gApc}A-FlJ~^{i@8aoCK9AgLMPl@&}rTb}%r>lAARUV_}gvAg9jYCjDk@ z2$j%uc|!B>5gMO^#(MwN#_AXY0zZ6kbA)++?(-Eint&wc3FC1D(IXpVo2&xhHV6P= zB{K8iK4V40AB@`wNtQzm1~eg?!UY{x$uKvvR^}4O2e8F zdS!M!??cq|08hv`FO41>#uS}?}I8edS;D_oHvUcRQBt~PH zi7j-6AOUGVvhIEdkLI3*Do6r!P#^?6sFXFeW^f(?EP7(*KuGV;gb=*3jc#c305K4u z9nePFzyNs<)nUdsSPU$LnKlE^MDjwjkCCZY9%3E2Pd4tE!5PBT;Zi>b zofxn?VXFh`0O_PTkU$=JXjf=h{ir=p9AYFk347w!aHlw&$WLfC``>SdhUEn^Lq3Fo zEglc3^(P{Z#K=*!Hkz!^0#4vAv#Kr*)j+rEHZ#wV>tf)v z0t)h(W$3&vhC+HxVjf_ghVoNTS`0Mu>ypUOK_#;s{)(Yu0#r;wZ7ZQpG4v0$p%*AX z_fJ6|TkAH$Suwe8J)#N4m1JgNT|6{6jhX;IrO^A#Rq9a&dgN8qC<>W*h~NQOgEqy` z21fKZ^$R^}K#!~NDAF7lY5{PQUl$EhJB>IagYYVW*;o)}bX^iL6kry_21DLLj1Y+x zgr)}rphg+6D1{6Z8q5Jy@4L_3L9SajYpctTbplf6hDpHqT6+i@Lg3Nn)HvgTd$cms4N>FPAWhh0` z)QEyAnnV>edozAV=no|NBzOFOp5*={H22|SB{R$Gwi1#Cfe%)sVimAhm>AG8n2laF z{hd_%L=wlr+>a)&iZE(~82QXXc%K0!1Y1V1QB}8jXkTZ*v_X?VBPx2aVJq2?PP23K zrztAIT&4_E@wz17tcuW~O3)&f>VUaHFBM=@n^E_LkX5g)R@m73u_a5!cH;0Yu2O%j*(BT120q&54Lt)0H7^eu!D5 zRil|1giz0*D=4Byk*Y|{Z2(CKD&q;VEM8&cAYOzN%u{50S}?8v4{PTZb75eLk{QQw;02E~qN&;EZIubJj5N$KC zU50urL{o>fy|gZV7)yY;@njecH~?k|v;o}!5GI@$s6g+O6X=B?8p;8-33_##0C37s z$*@7PMz-+3ePo2f@PVEvf|@9icoc0GT3IQPgcZ^F*!(Dw3}N{Fep(jl%d&J~kU&{J zlwA?5 z^G+c}A!pTVFK9f#6LJ$Qze~sh`8&iNa-is}e>8A9z`4OyZ}d_`zzYOD2vqdQLBz%@ zIhf(b@bN&#i>8S1D-_aFW(GkLIdg(IaLTfzelsT6DkK^LVT4A|RS94VKotZvgcl}T zm^Of%vPNTD*MeH2m-iJ3#p6bicr8zT?|+k<~YEQGK*V!R{G0!%c_2(q!k zGjO&p4s_)}e&v|4= zzJxbJK?T9hNWKwiSYNHa=p~4G0(1t&#Y7PJdrk+0-$R@;nFSMrWj8WkF!`ief2Buc zO-Nsf`6~qR<%8r1ZKaSbe+NG>qX=ayP?!!X)E8m`6`0Cs;x;n0fj|^VfX_&a2^2*$ zi$Gb}qG^s!CbQ57`6L>>*Z(2?2a`t{H3(0jm0BgPYi zZ2-wW819`+h$H%KoI*+<0oYX_R0QTx6wX?j3~WePAE+eQ4Cn(|6`-XP3;+o!5y^_} z+VY_)5yaIc)@?xGLCi=J3=5#Q7u5i;hYRm4g=7X%3ld;H0lmNtNFDhJXgH)f5FL>O zG7t)B?l6!ehTE@=ES)AQk6^sLQertBOQPv810P@(#QNu78V@otk~K4s%2Ie9j1*{Q(F6z*HgOn){*`WLt!i z6MD0r(5*5w|Gm*J3UnaK1O0&&IKV+Bp@Rb#S1cT485E&YNb``l0%h$Fh6aN?5sI3) zG2HBk2brip;BZNPtYdkWQi5 z>xE7jAebv!U!WxrL^a55R-ox3q8f-b5gY&l44QGG(-EQ*KvIz44j@s|%RO+X0va%E z)?qpjVdRNfEifX5xyTOeIMsYDS#bVi2(P5_JLrnfKUl-#vsR4F#@Cv zrivmFq+BdqMGlx~N0=Gh19`yRJ|00;3J6&vhS5?D95?6#fEfTIq1L*m7;=q6jizDm|me~Ls$Tq>O zz*B+=qjmGpHWbn^lHx!B>_d3g9zz@&9Lv&>S3om?HhEFJ1Q5Wo8zP_^$})mS!Zx7| zv7ABn2U<`Fp-l}LFFMtDN3Xz0~V7&zt@WrU@-tSndQTU z3+$r6a}Y@wL$7Iq?;?R8PwT_eKNBB;5}^Eu9<_gx`$UVND;h=(J|DX2U+xXUFha_` zGY81khxEu-^$natO8*VhFjTe^2VsoBFDn=WSS0pW*oxT4Xg5 za9LPp$x=wS|8KMSM?-*63K;?@9NKdS2T5ot%-+8_sxu^_MPHmWvXDUn;LqS02uwNH z@d(N=OmZ;6>_|#T;4gCp+vHFi#gZ%+TncB%H-k?C!$2B?PT?ttW)uYy{p{u%kuXT_ zffqcc#zIk2n+C2y)kP)T@O%m$n8R(kHIVNIpN;6;4t6vHmItF6o{%mB*$J53LOaY4 z&QS`bocTfv6Zl+>?xFfdeu3_Ajb4zsL*g9^Ib2YVeV?j;XifFJu+2`mQy)jIH z#QNmHreb1{>S;tAU5R5jaokQEONe7VacqMlda+ufG4f+GvB}tI;y95w$`D5-;z%Wq zy2R0tI8rb{>@p-=iedNRC`laUh!SP&36yAHAK*BHC^v=@u4u?}g&xrh^*RNc3kyt0 z6Y6`BFvxiz-mDrMSIHD(sfVf&M{m0TIJ**wUeU5618t76D#?bbr`N3k-1c>&@+?2@McfB&!lW>a%5r@OlHMlggnOUrD61!$i%-jbqPl z!ku8B@rL`|i&mL)*&kXzdOBN;+F5-pRnf&=`ujb7hD)I8 z%a3c8o)o#bTVGyk(->pg1hW6RotoB5>UWBgFhOfOBo&HrAe{!FK|i{|@v#$n!vU8AGrLNGMiJzafn@<4C zZfGGYiN=vVm(0IGVvZdR1_J_{G9ZVbJ+&kgCS|oJHJarMn~J82B=Q3lfpD zNe4P8@s&noJb6LR1$s?ECImSvD6b0TE}@h@c484x0n6v=Mhs?>Ciig7%fWuVJDrj(-l#lDD4m>_@I zS;=oG$0!7{Qc!P{KJILLWrQS1ht#0{J1AL*m7Nww-1CKdXcUNg2%ND}p(#KS<-8zW z7z6xSL5=0m4&@!AM70R0=>sL+&^tCl85zq3!zROc(Kr!y93jRzueY5K%p;=4o+DP; zBa-DmJzgC`7f|9C%J^mFhxO0K?{#1{p#y{44b_A{>A_5hdPseFf+(%b52Q?nxgM-d z{WOq1A?+RVn$3z2^Jfkz|Noc&Pe_3HjuT||RCpXKT zT*rm_7$b253tl#5fk(QN{4lJaEA$CgA86>9Tnd#4h>hzDCdm+K1O?KGIG8GfPe%7S#U}LMw}-FpsM;~y{Da80#)kN$@j}$; zxGt_u)z;F{(pmzSIs-28n4-UhGa+0MaV99nWj)V!0aXE?%DS8sVC)m*4bR_9>`cj~ zb~bw2>N+N>#+q7Ys%E;TM%1ae9BV{UBaX<9Mi2Gzpy9D3*?|%!abujZBoR;uk^o06 ztk05y4hXwsr<^MNcH~5j#)+mgB69Nsg85$CbWNSQi#t zoN%7gQjmI3cdSNrlCgCwvo6+SAy@YMJ6pD#cCJW1b|doSoR(>I%0Uk|#PU1JzPUF3 z4!3-Hd)X&RGwq$+_=#6rLPZjO_?B^}k~m{U4yE(xTCYtFD)uaB5Ygso4&B>0`cudD z@C1_Pwq)CNt{kAzq^wvHKS+cdmj;na3v-EcjrICgFSSJMI`uV&g5U1td!Ob=7G5WG zNLr3-0xljsR!+0?!2+`&fwtK{LVpw~=U>n&62a|J`^j9^xFv3pZk}$MVC>Cc1nH@% zdC>hR{(Z|Fk3fI5AYUI;ss`VuM9a8fwZ3UYdP%4yXe9-z;EQrxESJhD%U7nfK8HL4vxFFu(L3XJ$nC{gynQ z#&T(Qs_)l*%a6Pl@YbKYKiY(EPHisJs`=Tm>0)6W8R?@Xq`t4xoo#q5?>?VXl=Rt} zwuw30E(rULJEypR_ST}{_2xFV2(OdHps zQemM+rS<|@|0Nz1_qXsi1ju?3ne#V@{4as&h|;e+qE~ws3LHqqI2R;6&adh^);a%| zbE5rug_~B&yWc*Fk*Y~hj<_DOrgV9nd_u)NH7SEDi;gA*?)tH$JLj@w^@Uce@iwyh zB~A{`Yws`lqFPpdn7@i=_4_@)W_RJGzQ1M%GKxy?=~!H2uIE*wK0AHZCX0EX#C?@R zP{_RHRot~%d6n3X^OCk1ZZkwNQb7V!>C@~lA`h}e9FKYMA9*EZ0?HRzm+DT&*@ov>8WjyONU^5 zZc>41YgkX*e*SWL<0}WgU1yZz#%!c^w=AMdS9Hb6v4P1AB;_)ap>hsDtIii|wn%xb z#*WqoV{>nJ`0E_K5rZ#4#yy$~py-e}Zb}_8Kbp8YQYCINWp#C39b7}1>gMjHOVjdF z^`Lp;s+#Jw>8ftiwLDclbv3kbT`gTN8crL8fHk9Auh*XvUqrg5P0j5jo%wppSgBC4fA~VFrNqGKW4Tq>&vg01eKl2A(uxh-ha8N zSxVtpO5)y&&AbzDcX*C3P=4}>FEZRVo=06u*EZ|M=Afs1cUJ{k&Dz@<;{T#X%uz~d zv5sq{>9NCmuXiaOxS@0F%vJ6(l^++UR(T6O6Io>>vFl1w#S-6bg7d%MFKJ0CEYeU6 z=5$`0Wfq%u;`H>e(DisM_gMhELoC1(aMO^NAOdFU5Mkl2M1&^5ze9fG&JGn%(nN7i z@NU$JC~zE5$lvGusH(U!3&W=LW7vW~_$dKna8^EEJ|6H4muwgUNx5_%Mg$R-;kb?l zRb3svh^-D`nR@S~I=cKPf%ad;R)zG%&J%IZD(St;$Yi6`P&+>Z$$NpdH6P#j{z?%S zZG5K3h?6K$OILr_^Ypxtjoe*2_DIW7VB_^Xvc>0i@8i~%Te2%6ELZL`=Y9Bd>a+bJ z8*Uv9Hd%W==Fz8$j_HT4Ih#H{c|yNY(K|&VCz~GZ@Ns*A9kKbEumAld<^X&iXCxKWnbJno(`fD2Tn7jo+dxi7Luo z(YDb~SJ&TmBSVKL-r2?>R&g4)dWq%zc^)nGs_q|6^;?efVPDNM4%9g%%G}|J`i=TEVR%&N+GOu(;vrT7W#`RXQ?CmyJCF_&uyQZ!5 z-zU*2)oyohd97@Zv-FM3#0rJN2oDF7%=tIEUS}TOa%g3S@1Ed%O-tPM$xdmDt*VtL zG)<)5i;k1PT%Kq-$=uv?h5voLaN<0FVKE#1)k<^H=yjj`u2;Vc%5vP{7?r#wU2+cR zl5e-NmJ2Ylr?;u9jlcSeu07^+V8P7gv0V!aw`hpdCJAqPBKp+xbKp(0JGaNbj=0Em z>h=$nXOlM_I4%9#zfRva;>s_lLJe5L+m5l-OUZxN+*05rf;dv(m%;Ddqt1WzTM5D zM?_C)+w$GJppVD$@B)5+VB@#AH`=g;Zz28@_>F7hn(%B=T}uPkMfgo6F5z({T>f+G z{eOkt2Q&N%o;{kgW7=w8%EYFM=I57E=gZlixcOv)%@mRMbvbobCm1++^jqG$_PfSe zBug6Y$lK$L%Rj_?TUS-Q+sG^OO_*y>`^MVIH5yaa@9+4$TuP;TRm%qHH!U_<8P#%j z*SCB(y~WR5dXkxM#Fg1~*l*|Z`-+dv?D7+sFBQ!w3da-XEnG0_1*gi772CGq0qZ|4 z#`k|;b1$W+RVHOkXT8`bz7jkC1*c569h`&BHTN2=pyYKV<;88Dn7Nr<>vBe$kL8a& zxUOws_%G64XUuaI<8 z*3!PGi~GWPvLGA1j{$n;{0Y5BTnP_CZ_z#w2J{9z$MBdv2wUa2Vz%KiTcXE~1iu*` zhur@5@FG?;;)Hm{-1O`dR>6xt^NLYu|7%eHFRk4{)}kq!E;w_VOn>tF)QPZ1HzVd- zlL{z|l}`Sn#E#vpT$NNxxicm+(cit)k)y_jEM}YfByx7MWBJKNd!?GBNeRcx!#g%J z-_0PsZ>~%d;J&(LPIJ56xF_?D?Re3$WyRg->Q~7fJZkZrueVQ|A{+GMYxj%rREp3y z-sYgQ6KwWx^%bD+D$USMTdsO(zVI7&=UL)=Hj`&H^Gc|9)l%n%QuUSTf>+-J>G#A7 zh&?+m;I_5>e(CtPHk;R8(o$ZURrU64l%Ub7J9c!L_xSblaGJ9dX}rK#;rfST_k5Xo z#%ocLs#;4|d_wJfht~Z;$$rOmt?qn{s5&|!(p~98<~}7&o-hgbYxK>s?gw^Fv1%TBSCZR?3Z$4;7rbAaUgqGvl#mi;D8CmtQ?-)Ds;c6MbMD?$v5E zW~s#01F|wq#ob(dpl{~ zwY~2x8o!Zffg1&*uKHYk74Rk}HM#Fct1G6X##eJ`dW&NbaDndA~ z7zdlZIGEc%w=qF%{|?(X>EC@$kI6*gTJJ73KPPq6fW2of*x>Eon--)B;{)%GL%|@s zAr}>b!Lky6?-x@w8p5a6nx4{~`Anq*mW@UONWf!mTs?hk^qAofnKC4zC;ToL8|Xh_ zGnFfrgz27`cUyB61Pw9s(MOtq=?7&GVbG9~TR z6nn$@$85J>c=9uSMoed(+yw(Ki(AJsUeytIrbq~(JEqGmB=z~Aq-<7Sdsdh_3FsiQf>Jq&lm%bZFk1mhD z@w_K_O1aS4_Y~px&og4>56bNl2MT-=}L>WODgS|s3Lbi}A3#IL4!Mfg^MsZst(dCgi5`=>rA<=8IQ zT)6nWz{j&qDR&Ax>mL`bSSqqdFPD=qOVIG~-58|XA z`p))yD>rSp$WvT6Av}MXPW^GU5Ph=d@!J~Sqt~W+zR0&rc+F@xYPGtgb69tBWsAD% zVfCgR9(WI@@yFVDuf%l^bp7}J2(P)ACb{zim(dl8HkF57-*S%Ykq?Y|@Lq3orO}7{ z0?xd6)eAQ`w&AgI-}{Y_i$sl;djn;!`ecnBPRZSeqT8T5R1qY?WeIagG)^uKFgM(} zzcDt4!OC@H2P(93Os5 zj}?LkRy-sKoL~3v^kNrZZ|sbWv3-qx+zi7m4xCj%U}??YvYV=i%R__&53DBl?~)AN z=|!11RAPgqce_^|SJz}cw<5NCiA$XExA6C$Ztrf`R66AXZ_?iAh;iNW%ev_sRK9=C zO4+d6tR$<(b)%Y|24&Lr@b9a0C&!YCBWonia$YxkdnxtX4=(ABc!3_-fQ*ji`j-?Y zyi}b0g)7<6# za@(XMS|3-QZ)9MWo9Z8Le|sx`J(a_f9I`w*R5^@W#p= zuO{`pTj^V~mM@giC^~=6osZbnIaXP`S}zw1{al@P_0^K+@n7!k6`8#C@QZchtM6Su zC{4QZb54%f4viFeT}MN7y_&TZF%>;n z>eFv4J`#I#fOFthZ_PdTb+?x3zUf(h-nss2`LU7$pZMFj>06VJOqo%=Rok^Z`(gDS4Ait7+tByQ|c!xqUx+zy}5zJ@Il_FnSuJ77QW z`a>5Ch#c5EQ5=x^GvN6%m@{WAgv>nRlOH*rx4kMiFLQqQ{kG1ZH!AL)``9Jv&}Mhl z$DI4_#hQ1`-KkEyTu19Dp5rzZYup>L;jGuON9Auh7Rr_A%Y_^I=XHL>mL#WclB(t3 z#oQ}pg6C$7Unw(p`l774`C!r_?F%+iCuOgT-e`yw&DCnplf9ZW<#5dAX9`j;yref8 zP^5+;2$S3Rt3dS1 zrk8x<=3i1?LUqzzvHQrO4Zgb-13zBOdsAULzSi9)rr2J>eCwWU|8oHfmpc_EUu`4j z3Ko34DY!SedBuL8xQyxd{mH-L@Ah0MO_|RBOMh(jp0T;-5^6uhRv%k9#dt#TocQnr zW>@|GSrZ?O-Pp3_p!bvw-ZOHqMBB)>@X1(t{7l<9&RV0`VcERgK7pB$JRMrAD(dB;>^Tjc_U#5+?~C9BD@X# z$RuQh4pA07X2ahCuCT++0)M4`@c;c5dA}Q=!cL2hIMB>0~Tqoy_eQM+hfS2QVF?04PJJk{m4jHSVXi^Yz!rf{~`MLMb7 zm3toKA~N4Btf&)fI(wWW*7ec3aYYr9cNSW<=w^t#ma{lJq10rx>5J+M^vFhf%amtT zW~rAxoR@NZ6u0G_wFRDYZ0oakP6tnRKgsuMu1<+r)poDVvc*CvM@;c>PSo<~SDW0! zT?^IL-FHlLt_o9B{MhDyK`}`sX}0#f>ZW*;jTiZ?F5SsCR%7h?7SI_^UZf)CvTWC0 zgLxY39_DWt|MY;(=iT{d&C>n$)HmMSkl44~1kc$?ukqnKM*XQ7BRZo$?DG%WiW>G5 z0_6p26=LXJh0d9-iu&=?{8U1bv%1Rw!d%8c+XW%gh5%XlOm=ruF z8IRfCw+~0*gfswr7P~tRlDNj7xQGivbZHLBSMnhCe>Lj{pa*IZ2%? zJs>yK6*5E7kDsE9)d2`GOy>6qSh8pLi@49{l0KO! zKkc5utkC)pFg5SxNrg7%lTX4YQx#M8SPSb5cJOVyH~E74gy!~3syCeuoU+grxGZq~ z@`=2cg%2K$+c4jBk&gOG1&Or?|>B zFTry~)?b>E)=CAAi!#j#eK~s?E$f2I0{4Uq(jL=O5}rN$)Y&1Pu~(t#Ms^DGy^Dw8 zb0^-k^#(j)Jas$;A(O{ey15m%KfWxDim>AQr!=*9DPJ?3cQ;`7GR!I#e@e;b zx11xI8aWmHh99KHn%rQM@bZuX#lR)$w-=7f&t1JBdS6o{VEG86bdxIJ~ z?j9aHuAbOD*!534F4i8x2y4IrOUv|_YDiNQU~fQ8YMrrIuSQPf%UOmaeE{@&`tit*KL>5(go#?3Cf7+U-}MRS9gZ$_}`GUe6OJI(7q zPdl3A5Q^X2V;OQXNk+15$E{b7B78aQqAGAzb6$nciUGPn{sOjQNSz>rl>&O9RdU14ES?!n3%VIn# zOA`3cW~a{zELa*#NOZ&<{V^mzo?iXjSn7O^B1*a%VtFE<5rq?h!% z#R8lpNOc*!+rdRtwR1ue&=n`N3w=5jw z@hPl@gLMDGVQ`u=S}fq8e8YqBfmy-1(n4p$MsLz1zv~uD`SN|OPqHt=Ui5CZ02Ukn zqiwafrHbpN3oqTyhn5(4DLb`~vs2)rPBxU3*d=|FUu^4YH+*pcZX)t=*@kuY#-r|A zm+J5p89mu~{9Z8bC?A_;D#U#A#XROl)s$uGi-3YiIo-dxcf!U0G`+4bSVX%nxGFwfRb7J! zME@Jo>wZHUg3xp#2t}DcF}v`X9e7OApg1%J*Y67>N#fMs#-X;B7OWuD*w#+Xljh|H z|9{6{h(c`#MWL);VMgDs`WI0s@2d^-g_r|uj5^y(6FU{8*DQKhD@C)_z_#W>aYG?AeC< z9y^ckaqe0=UTe=32TR5WBhjlTtJYp#+o2t`WR_G%YQ)^_3$T+qBICcPMa0k^XZG%-#Y$&S|Kw^4I;cKZ;pf7WYQIju+^SLT?z;DpD-}OYB+UzV^wbxq{o}n|0q!oV(Iv|0)^(3u#%IGrzBm+Pz|1_+kJ0rnD~UZk>kY z&zG|Wb|)OFI3SV7WfWIh9KBCghg>}MrRTeEpR3k*ES@S7Nzru-&0KkuXOqZA@iMoZ z(KUM;gw6LxUt-?KVSb2;Yj2vdlK+_tV~;GK+rxa@Nr4p~o3LjsRNg~7^}f-}!&^I# z%sKY$DSeHbZ(vw%Oid2|aozHFmunhgPtk8ke=dzDO^W^@xpA7kZlTk|t3nG?Bi9Gd z;Cr=4_05(>4ayj$FXzE@Czg^By zw|wTY>PzY-HOVV7Cl?pzJvNz{V!QHwM*XFQ&wZXcR@Xhn&;6`@W&J~_%4Oc`{gWo@ zsGYsFh@0|3DBV`;;Rk*Nsk=pMv?lSDJ)HjNwrkQ;#s-Tq;BX$ogMjk`9t0d*-cfu+ zj>l;g;e8Gc^*;YBq!0Z1%5+WbfnQ%im;XDx|G#upXZSwKr9HXGp~exPk)@F0*~OVQ z#(tJv?2=N0w^0ETF43zM?glB1YTs>nFKOKsab5QVKMI88)@44&ztxA>3f_LeWWN8t zqr$~iTetHveYB^tMvUown}mI$J4Y|WUFue!y5UTk7S(mbXMD=}yY@R|*2#YUcJ_m8QLe=s%mE$O?kx4z_&)L9eo@7^~>xR$CNXVKDa`3>!%oB97L zDTdhLhcC3yM63OLZ;hLDQe@8bx6f1s&%*ypwB1X>b~o(|RfLw9`;k#|rDb=g_+?(+3SY!2ea*XNHsFN~2H#xSS9~a+o zEagrLJpueA6*a9D88)bl6TqW3%AFZi}!`$E^KN1J^P1wD;*E}|8z_r7PD-0eYM zS}|8!ImGT%aC1YngNzcFG(JEAVx6JvdU+ zHSy^V%ef~WP0XrJk2#OWR2_;ri^rV#TSD(4U#}ScJw6+IJK}qMTH0pQRgI~pxT=9NgH`b3G=w>;#ei<)69+WX1Ot zOoz02RDg#;kj2WMfwd+)cUObxPoS3o?7qV}3FF{Uc*g;W*|2VebBWKa3g>Mvq6*Uo zH0PkgBmu0Zec{9jESSG$)5k<i&PYu2f1xNnCkB7d5Byx%-Sq6VedZWKo za#QwNiR)I~;<%cMe}}}V_I;1aTpvFEHZx(-sNI+DCU3hf@S>^QZYuztLG-NB3 zMMDqWP1QQ8vxg`4#Oerx%b`#4{LVdrUm0#kxmzb)_^yrHI7*a_$(Zvki~kYxRGRzR zGY=9M-_|VU<5IBvIN^pt+OKlyOY_Lzvvk!P#M5`J4SrBsI2N*FzJT$4B#dw8Kf4rU zZEuYb*$mv?iY2Mz5`8-!keMYkXiozlx?jb4bnJPqS+6Z_3TzSn@kS-90((`3Md38Q#S^r1EX6NLrYX5&@LR%;y) zUMWALMw>HPdNa@6XZiy*AKVVg{yF+kF?&P0=)s%J#3{?FRUWK$pIJs@hU$pBUD~MG zk#dGv+-X;u{vbw5^;G0Nx%RQ|V@n0)!i6|!N9LxT5$AgoIenwcW;2zTkE2YkHj&yS zH?FB~SJ<~c6n;RzB{8?D$VG;>+2R*ZLPhT4%2j(-=@}cvC3lV4GH?FZ=*opfmGz}A zDg3dwr%daRntzMC_EyE^&eENkm+Cf{+;RIcYHe&(OIeuooz1oPyJe!R0<3O6G~F>x z?+$(aN?uM{L{6f_B2ymbvv-qz?U3+WRi0z_rf6#ZwA{!t7v}XXt2We}-{4VdHz)f? i*4?$qyq12a-tL=bF`rt|IPUG}sEfSvuilxA!~PFsb{O{n literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..fc9348530e1847bd364228f9ca04040db547daa3 GIT binary patch literal 30864 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 J4?T=w{}0UZDa!x= literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..63a83933ae4f9e939990a293ecbc312ed795433e GIT binary patch literal 24208 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 F{XZtILTUg2 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..9b691bb4b127d761657a1ee3b5dec095884c0be3 GIT binary patch literal 27280 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..b513384c6eea3c7410b2a70073985a8af74986dd GIT binary patch literal 29840 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..ab628765f5a667abdf2fb41c0c0422312b93e399 GIT binary patch literal 23696 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 AYybcN literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..623ebc4ebb2a2b175518bd19ff51f53a6af03b5b GIT binary patch literal 26768 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 s%gE$F^Jmvj5$6tXDidk7clFa~)cjZBXW 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 UeNxY#v0H7?hIu-7%rWf$0Fn?`)&Kwi literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..c9909c917ef464d8f3cdfd1a8f88c558d374ab91 GIT binary patch literal 23696 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/_common/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.resources.dll new file mode 100644 index 0000000000000000000000000000000000000000..f55fc6cc62b868befcadf289aa7d44fe59a6c2c1 GIT binary patch literal 26768 zcmeHw2Ut^0v+xPMND&kPK|+xt0wPHgivh|1i=O>9aNeEq7<

2Wc6N4mW)p3eBw?HwhH=5? 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 DQkJND literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.props b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.props new file mode 100644 index 0000000..4fd179f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.props @@ -0,0 +1,20 @@ + + + + + Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll + PreserveNewest + False + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.targets b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.targets new file mode 100644 index 0000000..0649e3a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/net45/MSTest.TestAdapter.targets @@ -0,0 +1,35 @@ + + + + true + + + + + + + + + + + + + + + + + + %(CurrentUICultureHierarchy.Identity) + + + + %(MSTestV2ResourceFiles.CultureString)\%(Filename)%(Extension) + PreserveNewest + False + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/MSTest.TestAdapter.props b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/MSTest.TestAdapter.props new file mode 100644 index 0000000..14ecf32 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/MSTest.TestAdapter.props @@ -0,0 +1,20 @@ + + + + + Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll + PreserveNewest + False + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/netcoreapp1.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll new file mode 100644 index 0000000000000000000000000000000000000000..9a591bbdde7ad795414374370a1cbe80ab1a5cae GIT binary patch literal 31376 zcmeIb2Ut@}(>T88Bm@W$IwH~$MCwWCDk@b`svuZE3`sy*f=Q@0K*g@u#R@9+h84Rg zDt7Gc+I#Q4{bo-RKyP{P_y6Aeyzlos|KrV`o!Qyl+1=UM+1WkZh<@dWfe>QC@5c{> zYT=Eau5|d3MPx0_6i`c!1GRU_Zye+ZuiY;fIhO z9VZohV+7`(ekvgZ{P+zB+SPS5CdL0Xzm*_H!LuC7jlz+E2n|xh5#`efq4LfUFGffk zUi+dE@>M4Nt(SEZ>omCrz};J9bd!q;@0O1>aOEbINdY=em`>^fg!U$^A(&vXeJg1siE$Ugy`~@ zLHW>~`mzXR`Oq>Zi!lru#AGptL6evqrcsQVah#&kp^8d#rGudO=1MX7?<_OI7lMX-j(TKjgT}cNg zNgLe5h7=2pgf`%ZG;uTsTrut)hBA)3NWr;4!FeJLN#D`z!yrMQHRAdmEg&m2p#|V* ziA#go$E34LTQgv2tS}BYL4k8_!eQ>6P#cOs&}lF~kv=K02I7ejZNt8<=5QSuIl-tx zUG$s<{lY;E7!m?R!_fvP9bq7xojQP^INCLVII(RLq!JdElbOsOuuamlkaPs;W|NFz zI=~01CTj=KFfANs4g&#Xl8(+W8bCh;rV$f*ayU!_rX%pf%Ej%+81~N?pv46^u}LRe zD45PCR^VLKKqyR{6aa%Mam2ioDbut_nm0x5bP+%S^A6?%7CY!820eYDXZ6V;FdvvM zgcD-8GK`${7}9Rgqtc$ZTY;9%CWm0|SrXu$eVy$rTt|?o=tnlPcSme!Jkf?? zq7W$m=W-ogAm<+!&UAGB7gaRXL3L2n!Bg-faf6JwEr!q*5Jb=}xGk7fi90TnWx|qB z5Rq^paDZ{A=Q9Jr^rB_M2pWbvmtlbD&U0WnT~}b}aUqA`VU+N22_6tAlh}Y%CV`$* zBss-PW1zQ+@o-AV;TWdEU9A!pwh4wn*)*f1GMGnfd+9u&mw40BYE=|#trmJoRSL_= z7DUkpXzA7raD*j;&5-y($drIKX1kEBoJ>HoNjhSh=4`m_DhTAr5mp~M*J;mg7Q4wC^rwvgA09xB_s>NIH=2RIIOwwz68wK#mc4W;xrki zm;<_H1857o-m$1VXaGn?cHMf1K_gKgfD1sy*ac=uQZO+*pe~36tHoNHP!{@3cpzAN zaP86X!*Yi8P$c|7wIdKG1Z?8DLE}MQ>17m(q?cWs56AHvI*Lxiai{|xbqyTH6o=I6 zwOPo8g~NT!C~aNz1)9o2t7yEj+B6mm8L~<>S!jY94!hH#hz{@5;dds+KW0`#3H@|a zG+4+@ZG|2S+0*eAOpNKuO3`4WBb@sL2l?ui;s&yD=mjAQ#nCi;gehNZ;&2kPUYm`c z)AUwA!$uR>_Xz`3#Eyj2DwIx`ppUxySZwq`_da2UNG6Uq5X03iQJPjQ@IMM@Sm+pC z+7C5c=3#b&E*oW#_W?f$Qq6!K=MqB+wrD8xqPi`*se4(=7Cj^{Yq8KYx`aFk*{A|? zaZnutb21U=S?DO4qG5|x>s;1iqiw(^3(27_HhKblIv^XZDB%AG#4XV-;D?RQL)-~z zsAJx?LvOIqM7q5fpd2?ek5j7YhDsphp}k}ewl`V~^>#p7>}2Sl&FmBnZ#0_b$5lH; zqciHEenh7;66+n&2}I6NS17V&q-X@9j%1W}Aex~WrOiQuVO;PSug3w%0f9(b$bqaJ`5lbQb_aGP0_|_O!(=cqZ|w|LC%XoSS~9e9Xjm=4QYZ@V#)<LkZ1G4s6ho+wo}v^82QX40 zjA!F;yG90t^&ll&6s4XFVGe`@%Fq!**q)gO;W=UmgmSH72p1EhAzY_B7Q$fdu_Oys zlgSV=H77y1ih<)E5CR+U98wD)%Yic58bhN@ePG5As1FU5DWQQsL4#=MKH;f11M(Fq zp>M2tBmVGq!wDDgr2c>lGF6~&LUPa3HnA_ptCfj;Kd4ERi=$1SPUz4O$jCHXfv$Q z-4>KK=xGyV!mvR`pjn}>H4K;zjJC*J35{oTLT!qvJ2XuR>odZ;~m*#z}rIH9<< zbPa^9PABAogi4651Ns+DP(rQswvsMrk`h{@xs`N9B66gnF>HGrFK$B{Ws9juC){(U5}AKr~vJ)<(Mz zBM^;ILTgxk7{O?q5^BZn!w5waTIB1FrZ+)JM0Ye_Nr`z0LraxVwU&?wLu;BS8yI2e zf--F!afZhx1uurke=PQyC< zBm=MDJ;0D4Pyii90EPgqgF`0hdlIw`wn#k~B}8X_~9R zEs3NojJZm;Q4wE5x2qe}LZW(_zAfGAJv0xPl0aYSR>O3I_$Z(u(Nmyjpigw(8+45d z-WJm(DEd&*V{gFLAy8+!##%^K<-+u;8i&y3@1t9a;{E)KNCLjB;VE91RviHPS*gU}qiy+wL^{&La-GhIG+ASm~aD4fhV{e6$IO;dP@m zgly0-KH7SSONV}R7(j<%bQnX2ed&--hv^U+qe2K-XdHxQP!o>(5jYGZ_=GhYOk<|f z;VWW+hC8Z&R6Ve|MiHJ6nrL=HpNMpgP~g=^I~I8E%@U%O1fC#~K2YuL!^$Nmq#Am3>gJco6 z2&_@L5W;P7wE` z%lCxRIuc=Ie=>lGAyf3ih`ywrUKGUnx_yW`q83)l)4)R#!6$KBP7{eR&(q0ex)~7a zYvXXcZVrTPwR4EUWGmf#qL3U%41=(kHHx@Q_dp3*OHKe=k%|0amDE6?5Ne|+(f}o) zexxFmd5vo zFbD}yKb8Q=&_D=rJct|uB@5_Ks5TOhi3Sdr(&1e?>9UtQ_#^7h)*M!phJGeC4)x!6?fzh>L>zj_G`Uu=>9W+aWtgI5-<4sVK(&zuSs7_ z-l?-7IXO68mXpOV49eomWZuct?~y(j*-a#mtcFcc)o$`T21IT#90m&x&4Ecf7{o}$8depaq1 znx8Hm$U|Yl=`OqaODiDdHVEWSKdBF%P-h{a%lke?$LN!?WF zSdla@T_BRV0qY`ZDqkRS3&V7nfmlhd6kw>1W=F|zbHinjBo;~21t?s?7oq^65QWJC zWHM29N>*VnQL0EP5(`8^B%_@L3DR_^0gsbJ21qEiSFTu|o-K-?8-?gLmhM5r|Nn6o+Brba^^IE4@e*o}Mbg94R{mDa0a7ER*x0AqozgJ4Q8vFmP#N ziA)ish$@!o+!!Oc839Dl90tbFhRVW#7bsV07n; zg@6eQg(DnMzC@a-M5O)#LyuzeP^lzaNzpW7VwnU=NE6AEBcTjn1B($IRWKHso(0km zDKLBJ(Q87$(NT^_Dlcq8q^d}9X`#7US@e{nGpjI#F(88Jsp%pimZau%0iK*qlsJtB zR1)(O12mwjoCcJQQFaW970IJ=tr6&fc6k&iIgg+%$ zE<#PQ-dF^hAQUW0$xTbcgWik-0i-4JXDk#B(>whqN>%5@rOR6u5XYAS=S>pRvSdLn zOvJ(<2+{@otmYI|NqD5=MN+K)exDd7#=3-7pZu&pr3#XWQ`6IOr8Hf0A+(AS^Rr~i zR>Vn~(-a*?XXqu$;up{{S#!FIyJ#t>Pl3ESA({`2 z>E_Ct)3APlwL@uZ;MHCgRce!Fb3m2wCw2-FHyJf5N?H&k0(u&u-Z?_hMZh{%T5%FQ z>WXzKTtz`EG6|Rf1@f@$oGei`=uSmmrP}QV4t%^uDv$xRL4){;mr65>Qk52wVqwKL z5w;JS4F;^VgTb%>{UBD@PDq&20#J;n%0vh$5QuWHfu&kDK|zD+i4r#_$e|?)b&M4g zQfg>A4pWVON5Fa}lG4%a=BR2yE3##Y_~P6g)!4(*Fc=Q=6f-^|U5uBC$Xr|s%Kixg zA?YRJ3jq)2BYuTJ`{ejs1d7i~#~6jg{SF1cQ1m>n^(IwG_gsKN4_+pSZ zC|_y4DH0`VH0~!#RU3Y?NnlVF#@ElJa%}yms`z=x5~TbbPqHB`7Kn-)E{7MXvi$66-h?t%qBU8vBU zEwcU6-WDlJ24O3tRE#as!W8X{f@!9(b-=)fzH9-*m?^b+3uIVxVJ)yq&YLx@jGhIm z$t`O(J{5)`$clvC)yQQ?p^A{gu0s)gscaBGD-iGB6zUiy@YCfeT|5YEQn_*u)HEI_ zSR#^PzC#K?+qc~EbcY=g*7vzNbPRVN*yl(&({L0L@e6ObKq)j0zX)z&VQS!zzLAB6 zMimE{QAO$Pq6(npPe~su=S$_0qI}h2(@T<%VEN!N$Y} zINmNR=T;#-ofMnlCKN)&7b8$QxV@xE0xmEKN=0(yhT;Jy19vJP4(4M4lZ%9akw8iu z5To@%G#KjPo!yC&2?9m}E0tk=$ucK$J9Cd4`3FntW9udB_)Y=Vl^rCa)6fxk2 zAPNlwF`Mx3Wikya!OV(*xnFx9Gp*?VW<~|HxMBeWHto96x&Lb9kbWpMJPYVBRW`g) z8!S&^6i$a2p9}aDNRi^h4!FdU2u(#kp>&64!O1`j#P9@4hwe%TI$_fw1vPQgRJy)u zVl`pl7K0Gzvfxst8{{s)JfQGEvlQ0nM`4>c-VKRj9QuZs)&!x!uttO$MD+DB$iV?g z!vP#?(%7JQC1Gw*yw;$2G&o>69Cbt(#26HxfLt6kb<&_ahlNNE$AY6~Y``bX)vUp- zZOUL1<}7uFK{&@8iZeF{5`!cTiSs7um#DE3!=N`HEDVysiEYpqq6~G&flIIirofF# zT7q9(QM*By!C+EHk02~85zUSzIJ6mb3?~^Rkvh$kF;JwjL5VTRG1r2I7#j>D4Ur)M zMGpg%hBXPGo*|(QY+^iA%K?@-9F7`71|_XE5rbn;V!^R6S5qepimTMD5roiI4afm8 z4Gk!%#0F;~pa9_B+#m^vab{NyYr>$Uy+QFUXfvt70t$oTS9A%lFhTJve71s7nA#uG zH4I9)G#P%8=H?dW8XLMKkI+BQ?oeC_{$s=}MrZ~M91A<00qzwWzy%*VIPVFhe)@Al z{kqF9m$;2urMvE%&ZCFlGM-Ku^M#R@H8Q+nn&rlh59VGz|6AR)xo5l$ZOC#hX{S%c zGe^|l%GaB6NIgHQ{X-sS+GDk+cOTm9tA6qDl`t_}dwSjK3df`rmsKJci_aJQXQsn#8HI#FL?K{oH;~vI_*Z~=gabDghru%F z4ZptdOHx-30+Xd*JdVjSD4v9asU(ZU?^h(t9QxTDI>I1^g9VUd5Q94s3#2)RZLJ0& zM^8hK7Eml!91ctz0)!G$QFAKvF^mTZ$y#~@X|9kd4h)}#ImnTwH3PpvXh0Sq2J(W3 z(x6b&nidw0IY-x;0i!etSW^g%nl%E3HLOASunYlcP+WqC4Y0s1$wp2ML@if0lW zz!D%r`qm7k1Q%~HDBf;RyxRzBH`Xt%1A)U60A%*fWc$T4c#G+++}95&Hz>23rH{5!s?zaCt; zdI?GgJf9*yc$1M12oM+F!-RiuiI6~QTt$>gfV8O5*ENj^WKLfPh$A(_6xKN$tAH%+ zW)04r_UftRt;jAYW`fyZ!yxU96CKAez31;AnRqVk+763*fv32OwhUW*cV}qrAh&A2 zCksy(&D=UZv9|isvRU`r?KP@cgOc@5-*3<{b)Dm0ow1OSW2AMy(_!5{&+Qz($a)*h z9ueMt@kAH(+V83L+*kX;w6EEZx^Z=b&!fri__`(vefY8*5fRZ?y4S<+V>JBWT5!t; zc>n3?6&oBolIUr8eQulZQf-Y1WMcI|+}e;1i2;ep_}nAW$1_ou2wz_$D!2NHzdOZJ z&XGh(N=BlxHxtDoIX=L_V+tdg_`e@4w;W*#Iu+B*{UaQ=ZiZXNRG)JwaImY9f`c%E z53a;)nEF0+%6!J^A;G2gC!S@iw3K~^NivYH2euu{t-Qm|~AV?0ZhN_3H z2A8j4`w)wgAq)XyFcxn6M1i%G4DU!3s`%;#?Pk9Ct~kwBoiXE4KyWWf@i5_~&{|3a zyn^9JK&gDNxK!3z7+7R@3xc1v^qLh1seHi7Xd4Uml(ZpA6QB*u3@DfYp5#DPVs1nO-+1GnOFID~o4Eb&nHv<`?tojvKk@mi z#Bp0lS_fJ-17K#!VC?XI5AW=(K?~t|*DR%fB%?5#|GiJN;yaA5-2Yw{|9{T@xgMau zaV1Gam3A&>X*!j4FZ-ZFsFRhYod*LdnqCLlVr& z&QvF=RSS$RrO6;rC37)Zj3}EH`IttXYfSdKw%^id@yKae&06>26E>H$X(%h$`RAAqpIXacE{P5%gII+PaXOv{iN5f$Bw z+m5nVfR^H*^c?V$TL;I6Sck+$cJSf(2D=7%dWE`%`h^5??I}A&i_HJ9MattIs+6#8 z*~5eyVw4iPAP@wbEF}muC1)Wgse1P2+7Bz%9`jgxYrC#pj98}eDDsoN{j`%QeGWF1 ztogd}_QRoLKDyj|l|Q1=)3lY}xQNvGjBfW@U%mTk>?hw%Osk1gjQZ%+l>7Dl^yaIh zU*A!ArI~6W0l_XVrCHC1a=xAn(8`_uB`bVk#HR8a#SWi_3`_kmf3e+U_p5_@FI{<7 z&^W_>qw{P3T^;jolV&g0CU$>NQ?ba;$fIsbP{hN=)1`vm%Lx6GiL0 zKX5wjoO5Mtsb+%h<0GxksX6R?x#LZnP@m~))Y|)#@^s6-WbRO_AQ+{(ODkD^5hE&c zwg_u3>H4s4=gqyT|K|17f-=Ihd`9%BWD+ErSW-%8LXW6X7SN>@9Ht4=DD}e`^L~a$ zxsS+pS+mmSUSHm3<560MEbN%3lu5CXo#)5Py+U)?&$@oe`?AS-!vU{Nx>Ov_Z^ewD zdQxGP-6})Mf(FUuIUU^H1=1|H?52x#0!g-ePG&mBy2C*jzJwxkZyH7{m$X=dRJs8P z)rX}4vr-KlT?8|n>Opl^!4z56Nm)UDe*Pa-0N1Vlykt3Li21c=YEx`gkqnKN;sO&A z#Dzdvl|K?23wK_8u#R&Hf}V1us$_}IMac>Y0&dLL!PL^#hz;h-tBO0M9~Z8RgYmmTCGjZ zF50)Tx5o4~zwKX96C*HQcydPjknm3()?`h3?{n3$@+s$R=A@UlLJ|K^jT6tI?UYfq z9i5L{d6@HU)sWmBuHo%2?@XNhVDpUEHJ%UGEqUWra(AzolQ~dYee>E8*6z!*dJoJT zJgD8=CE+P*pH9m+4SNe}>=~%B^UZ3EC>-jR5ZUY2(FUZV>C5oKXV*(fHx zS(CJYniGnwW7E^{O`s-4=0o{%xjc%?h9bdTX#h+X_c+f3q`5xnX|8`3s#`hX~s&55c`1hXI=y%3R$NfI@_FltTV@Ixx z@i7e;cl*=m1(QW){tV&qgV&>Tl3r_#UOA;E zq!znBjkHrKCO-63(jQG!Mhk8A@$T?R=7OPU)o~f>arSk#@2V3eR4+Wa^_ifGmUg2; zxW9~#C&j~}q-N;My*sea(>a)oQQl&dFCe32N(lc{-na(9Ghv>`>V;lOde82Ir zQ^oRoEYD!#h3v~(_ixWWo-fYuGWR@esJ&%?u#+rv;%mv-^gSm#>dyP5ChcSqdh6l* z&fYZ=ua(Q9<3`*%m*C&gvM6y1(Ivmj09m_)&&#O?=cMZ=+!$>8ZT!v8H(hTezrLO? zym4g%3u&$nEno8Pdr6tgbm!bd`i>XxjlXT)ZuRVmbL(%bw?6w?*s8|)+8d3cg6PpK zp1EK2k`ohhu4|khA_?y@_hD}K-D8Fc=I#6XChrMZy=?B$Pwf|;@IAG?L2ZZ2mwNlX zgLH1_4hb}yd3eh1ewpQ3F`qAPdoX3=CJ#p$BXPu%(9-#9w|eL2jiE}_c7eiMs!(`r zzK4SuZKZO5=`1Rlw$Rv`(;UW4f9)b9TAMInb>p_ihGPq)X4B%wb)}pYI;?H84(la> zKP3|cixu4Tg?nZq>wsLi;D(R3X|s%?d_A~49@o!<2WA=gplJ|1t-OB!Nk#jwY^#mZ zzKN|V;a-cm1FfwCEAnEqI=8tXIezTbj0{eh8o=cVYX zR|0$7(RJ2gZ(j~t6VY>0_3px+gXeWqzw*ug#)90jr&h^=M_eqq`eyfQ@1;i)Lw;Mo z*8isCpxI{2tEIB|SFL8;{pK}8T6rNa*)l(54fH;=YT@br6CGk77Om>>I`ouJC*Ose^AoFEEu3^re@c9( zx;2`~jI$~gHULyuKS~#C21A1Q!BnFd@M@vH{!o)(v)DqH$%LIl8D+rIRBlX+38ord zFxbCMI1-y|-%fKQ&pM2sd27zVjw`s5Wu10ia-~`~5gCz8ZA&&d1#@A0AA|ya(q)`A zr31Uhx0`*>-teo_Eq3h8zIT^W(F$D_MuGaQ45|z$>+<(?S(Cg=L9_)R*|ZjmQ)w;G zV%@1wDp&=B7W4gkT1@e62A(i@zCfwJ*I)4Ab6>yCBOF54Kaq5;;cdxy!f_X`2>b9P zIrmw3N7su%Yqh=~d*sSpVt0IK^qgXwq&5ET;X4+uh@XEaXJ_r^kA+*pq#rsz4j6It zmUgT3W7YGmT|a9@*T2&uAB!ebQUwJ<8RiE@0sv=X5jo+Z(cmVQ)cDasWyJ@ z%UHY7PD@M8r{A8TZt?ndCuut@z>^&A;Ip+Z?CL7SIQHAT{_e7?vwNfD;K-$X>iu#h$dHD zeYg0tfrF;VcgCwCs~$T~-->_OSTM^p@raj6^0ny}VUu0=tn~~wf39b2hLWy%^|v`W z=dkAU(VU4<*&M@2|Do->&zGKllXbN2Y0i>_X$iw-OsZ_tozd^ZsU>M_dA0X5SNB#8 z_oY4tZzVOI(n>$|+BnI>L}bYse@*YY@U7%z=()449u?LzH=q6Da>Hu;!ZqwKhV8np zz5D6b$`PSE)dzMH4eT1ZA@FJBvrT!0m)M?~+2+MutJ|EoYxkGZ^gGOp+xbDo$L>9BwzBU>1-ehFk?PE`6 ztmwvdpZnXL!TuM~@RV++PmVoOYxE>pWE;MEA73gDy!zk)$Y@r zhGx38zP0=Ior4uIcF}83UNenstNZ-)^3&mK<&?Gl6ZP|PGmXP$v7_(9~7sye&aqmw>|oYHI@u)c9a zAan7jWm(hHE;{}e8oQya@t$L-Te~%7QN4R<-(|Rb$tW+U#ADv{r51c1eqr{ehc>f^ ze>`LOMq^uScCXDL<%_zb9^F#)+qF+!G5hXWR!NV=pGGa$?`EV~x@gq1-UZ)@xfanH zqmdpJ`fS^EyU?BWu5pXjTNVUx^N-KF(Q)MTDn7ZzLZ{~Ihj|-`leRtMetc3pu-{rs zrM*{!_Fn#1+WQZ8!ar$my(T3L+8gvaqDtmq-D<}yDW^&%6&wAL`mGWy<^SX6MX6rl zT9c|CmDOv*WqsbN8@h@9&uIO>wReZU)|);4Kq4d9``V+;YxA$3ER2aDYTV?5`)6w# zu0FYE$dp>Qa|VkiW~bC9kjEme4Wlcr6?MIxuycK%x#qVlh_W?13tmrXeA+a8Z&2k^jcr?|it!>Vi_h0W8RJiGUP`{nC%QSMq z?3 zX>{4~nD~baa%N<$@e4oqzHsj<)1s92FBZ>h@5#zHOF80inQc}2QtPnG&Qn2~?tOYX zY|EXcE973akp~Cc893x=b?P;7aKF$Xqg|UeZHP!~SQPl9xX`9}p)r;EFwkItS;InG zo5r9=&X0D!?S9nbs%|e0B;UsKvNnFd5z{cy?nvtH1r}orgrvXg`o2?Y@7mnkvf-#; zb3vTixd6B5H8VC;7p&e?IV;!f^0YCAxwh`S6&m8o{uAx@R=yZ@)aJqy%cvuBpNHN2 zK!_ycw1zdLH{2ILUOxLIxBU;!!TyPtBHC14`s}{2i(7A#%p-V2in#P;=*7RK8hSrs1h_~4ln%OYkv`ZpAXy7#tosjUsSqc%W_%yvbJ}&y&^iO4Z)aK32A=>i_o{o+U5nhOMXfro6z4@%99>U;!WP1SuJG+JgHb# zvU>K4@UPfY$6P+E(B-scK>3>L*V^8!55`l>+WAN-#90E3sD)$G1=a`pogCpdO4I)I zjC_NN_l;{8M|kYhu1RIQEDwEi;`S>VpB_-ru8J0Unbwz&Z);OM->~vY;GXnVm8)Kh&mOifJKRhEkV)bP{lnd_RhH_& zffb7Y!}(FOrx(>f8uziNB>K@0+JdfcIjUN~((r%8o9ak8fQ1AHR#wekl3zW&*4V*I zJ4lr7ULIV`Q=D7T?p_+CTU==T)nVXQ=~$P~Z$-1FoTTH^wIP~RSlyl}RE74jydxiEGfnbOPuMx*u*PWXXO=6x zUJc%VQ;vF$Kl9tvCl?C7Px`!e;8_3N+pX56%-(x&R89H13+tWF#(nX+a$@kb`<6eR z4$eF_LL*OpQ!l3bxmT#6d-xJ{uX}xUz73t%QD@n#XLL?!1rt+b%{M_rx9@DQ@4t|ZhI9VDtJecAX!4u|zLaMQ+-P+5^h@ys zSFeY!tFMPQ&sFH_1s6AYJTK2w!B6gy?qcD+XtlGYt6KT^*lx*QaWt2l`R9jSe|Q!p z$&u0LT_Da)j#wZ?1SkiG4;`P&r)WUu@93iX>&G2Z;R=FG;q=E2m; zYLmk|y7hnO>^Wi4ls-NOBF)#^9@RT>sZ?*J*UNRb4O7}KE17Vko%!8Vi*cRZek3p= z>ck@}c~3TPa*vKrV$~Q=Y_Je)lWE_%P~@QNG%I8|Z)E3LofE?H?Z$nt(K|f;o`!ME zLFazl{(c#=RxBNxIm=Ppb*p=~4Km%*eRM%tT}GXTgn-m7hgNo zbG1IWcNSLrNCrlC*%n+LRjD;$&+tC)52uacUtKt-zG31qNw-`3+-5whdB1_mewq=s z;?bRo>m{W z-2FHE3H}2bpLzyQwb(UPJFm3!i~38hRZMbn_fIdbk*64osZ#YK@PMbNyeFLUGqmn! z{30w=$=H8Hxq^pVq5Ru7EB`-tkvA^`T=2BOePk~`g`WkkLj%Z#OAKJJ{HK?xQu6l~ z5lDOyfrN_)Fy~gk{4CWocUyZ&ysA_$!gI&#t$l131-5a@eAF*`RV~Zcj2X6L!~t!~ zYd)EW3@&NC^xa><+R)&4o-pDDo*k!CC>%3<#=y2&>lcR2e>7;onH%$BH?mz0tiQa{ zd0mm_`iryr9vx_=_9!*)A+MK%f%}8i8qudV1#e5bRPV;fT|MZ{vFtY;601z!hVHoO zD_kQMdKE0I6zIC1?K=JAo$Km4=MxL7!`eU4*;8qlzh{R3i!XPa`{`Ll#5*o7lHN4v zuq|xBrDxBArjEQkWaE&sHkUisOiX$>E^3t7>niuYcgs7vuJh<~a9ii^ytA7a{xuud zPxBpqWe$;IjIv1|l3zCV+BJ&)$zuS|W)x5~KX7`7mJ>}~s`vo<|D_p0BL(4{To<>{jS z?&t09|ZAiUcH@jrWvkT99J_u{S+|Y5^@?mMk z_s6FcByV&dbunRn;@*5m$5+p?4>(S7nbOrKs_xe4;Bobu;RnxE2f52Snsesng|QQx+)Z%KPCTN1?=fn=n(>E=(O>xa ze{x0r?i2#w3sT+bkh*ptx#dCIjnpDyn z-kMo5n<|+>l}v5&!?`iw8UWQrRUJu~c>Gm$c<~lW1Twg-lAaBJdrFWaa~mYjrn)v2 zKvJHTJZp;v$=Z^=Zr?W?X-_zwG`)J3#-BvDnlYUjO z*Ve0gc9LjR`LGG0(Y-HePaAs1tf%>#PJt78HE#Hpd8f0wTl;zU{o7QZ+hUPF!|(PZ z;gMkff+D*&hQpSX%STRnd(43hb=p5(Z|BmLYTEOj4f;IDZDyrY7pKfVVFD}7baB5q zv+j<3yKl;yQ0MDkJ2vk2dLg!7cW-^WXN}k1aMo8i&Yly&@z;8-G46uZ0iNmYmj_)> z_FuR;%#VGDz5meKb@w)2zG^%+CZvxqZ*V)a5jAhyeZ20{!8(1;#=heQi6zUo$q#f@ zV=W_`96OhGF^ovn+P5j<-K{Aj%q7OdLYC*<>*^$0av-T!O4$Jmf%ojP8&}?Zd~H%S zx81E1)w3I)CkX=X^jDuhrZX#_b(&R^Yh|>D&)@R$w?l21du{|A<~TmTE^>c5`+Zg7 ztV`%ZRp{=%Z)R6(_Ux`#QEb(S+8?Z$SKTEf-_q;QnZ=726&2Zj?mp9M^_OmT#qSn= z+?%xx%bz9{yO1_R`KKXj_bct&zRwpZ`{bu7EJX& zy&yg^YHx9ZZB>Cj&!*@_0K2BkmlemCCe>AqotH2;KC*krzQ7~%^7^xjyJvnYTvWF^ zJ3He@FPWiEQS=FJsqtB=)c6$bJec{PUbqxKgg@8=w%A%$mej#DMfmgo^!-ZB)=Vxq zxrzVp&Mfz)?XV`3Ys<7I({#+guS9hxFYGfLm$Cg*WqIU+sL&2)1A9I<&%gPx^*`j; zB61#GxRbMGyvB_w?{b~LmAlq=IK#^9|1`o+{(1iO&22soD>iL7$vMmFm1o!(9kC_+ ztL5zF%oGb|`_>Q8X$)0ta zZaCLx>M{HE32$dy93RrZ!>fQFyVr~xe{*BgDU{;~MJY&2{w*^`ZXe1=h+^&I!1EcLjVh`&;;AHu>#5XE5D(C45~3&!%6N z5o+i^VwO8lZ53v@MYCD{^Ce$`B=+|5ZF!Rzga0=N0tEK=27Jq##0$L(3$E9? zAGZkmHoU!UpSkZ-`VBeem$dtl{h%C&{9}$&5+z=fR}Z>qw6eH>)Xmsfr#~TCxID9C zu)&Af<7bWXzp-irKYj67)=AB`4?4mTw;8TO9@?Rn(VslW8RD$-W>v!U`36C+)L!>-o&51UD?H-RG3S_F zM}(tZzMq*fbAv~p*mE3luCeW&+D#`0_Gjv74w#dKw6xG*Y5p?(+q}lJTd%F^tv2$| zn1G?3%^uqt>6t$~`EuI2V_zobS3RjeeEr+2m!0&u%U%vMXh`ihv&PQhnAdwx)1E7B zw{KB-blN~qwQ6y>`AMawmCmJSI!GMB#!5nzX=*LG_=h@ zk3s!LXZQZ!-lGGtge%1O9vzlQ+P%W1EzW<#J-RdW78d9%d>P>uo}(M7gcszbl>4X4Sp0@PNc2Ke~1tq@Ou!dYoF$t*oO+kmH-l zJAQng-O;f(>^ip137X#b_OnkbdrOudFtk3%3E-M*E;GIs+CT8o=+^f}kl74xM!}@ya`O-~e>oT`K9b@q9u91|i z7o^mo2S?}cFg&raFsOD}mCcX|1FB6vpHJ*H*;!zHzK!k8Kz{GOFU!v#lWp0dUX-7n zJ?ElNMP}ct;_EL~4BYH_D*H@oT&(u^xi@X~Chj{xRb0F4$GbaW&J`zb>rdgWQ%|)& z1|Dbl7=zhYdgG#q^94ZcJ!d;^WI81uXopeF|Z!}|AMX{wbL zI=k}q$9J%P`qgmuyU!!iXJpFb^v+kaQR(O}&xQ`_>5_c#z&-x{yltIRo%_Euj%~-} zS_QN*n`v=U({S=oKGnB|3f6r!aO|kKAnl70wZ0mg0O{7sFEo^?XpWK|E5hcVZ!~>U3PTOFvS)-C_2_% zC`#qSA4K~bd+g|+_SpD~=fAbbR=+@l?$TJNjd>YaOGiRkjm zEtz)@pL~C`2uXTU!EJ3joqEQoo;9U!`(0bVF>mE8;`M0vt@nEO?_2Lp_Sl({Jojos z*GI2TR-~3s{E?9|;@ZI;T2mcv`#o*lW3XVs5S#1+^Or2{^m)XvSsCR8%d*ehn*Yh- ztM8>5Zx2mg0G~zSdjp?+KrNc)NGFps&4dk(*ya-r~WlSmSla zne5;%*FQG*5~thT;)9JRmN&i_HuB}Ij)OICB+2L4YVfaYh_;mMesv4oc)(R(I=#aO zQMZDJA6Il={o%TFI6qU8zp~`ma?Le`pna=MBM-cNOE^+Z?u8-*?Np--0{Mjvjom>de93chavX)SbRg?fZ88e#94@ zy-87z7Ff3Sb>DTWkDA*HoyushD=#$LnV;V@+{;p9#})6ZXOpK~myZoIs48XTf$Mbu z-lmq^sro;>L0D|hhBh>x=`)Pco=?x?8du9A@+bc`|dHHZX`ZXcEl?X~sb!gse!nwN(fItQ$%V7&rrS64&b5+FY2f?}lRE>eRB`nx>tFb# zzpSWsXt)+%Y38SSb4##ycFKM2ua|5#W*M|DN3%L6f6`)3uR5_|-shx%JcFs%^LGu& zws_;PZ>e`<(X7!SF;~g)t2kFbmjwH*%Wc!~tgmF@z4B#G7Tt9!)3!bxQe45-aOl0E zzu!Oso4C(gNZj9ZI%wV(znV@5RvC1g)HQ#gU1rg+@z;t=Hg;f1wl>HIPQ9XklUrTT zxIj{1(pMyT_1SOQ{?2>bZhTd^bXvEb9#4CoV75yNHR&Uoxcj=&-VZ9)gdCF z{)Un_UydBq9+h{s)pzau_lll*)Bm%UlESz32Ycz3zO7P%N0~LbJK$QD&QA^v>Q`sg zZ=DiveLFF3SU}F$oXm+GuAZp6-b>S^HlT3S;W49x{k~8ow_6lIYI94@P$j3RlH*iK z4b$k4<}Tb8rAmsI4*zfLEVybm@b0kk4p!VlJuU>*A1e{xcTIzdV@Im9YTsl-0(0BIU_)gl7O;>gZd6_l-e1h}C;W|})s$M$# z+&O%=$TP6kzhmg6aXk(N7H)oNwYsr~{(JMraWyg8^>v*mR%q@#_x-ch>zL0crn6oh zNjhQVoYqG@u&$^5^Hryf*Ib|LaJGwFz1}Ee#+Q-v&K(`tV?xH6eGhj}>Z+;JYodpD z$crcU8m?cEJ?@vA|LkeT#@B{ZrE?BE{xX^&chj$y2R=SNi0sqQt*~JEb>D3RD2vW+ z-{iU;0}Ic@JzI1(eeIj+I#+ics~R2Z@!C?esP!`4onBL3)V7}xm73Fe)rYaKuie%m PVglx0y8OcuZ)*M@bo*HU literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.props b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.props new file mode 100644 index 0000000..14ecf32 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.props @@ -0,0 +1,20 @@ + + + + + Microsoft.VisualStudio.TestPlatform.MSTest.TestAdapter.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.Interface.dll + PreserveNewest + False + + + Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll + PreserveNewest + False + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.targets b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.targets new file mode 100644 index 0000000..b040438 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/MSTest.TestAdapter.targets @@ -0,0 +1,42 @@ + + + + true + + + + + + + + + + + + + + + + + + %(CurrentUICultureHierarchy.Identity) + + + + + + + + + $(CurrentUICultureHierarchy)\%(FileName).resources.dll + PreserveNewest + %(FullPath) + False + + + + + \ No newline at end of file diff --git a/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll b/ConsoleAppViereckTest/packages/MSTest.TestAdapter.1.3.2/build/uap10.0/Microsoft.VisualStudio.TestPlatform.MSTestAdapter.PlatformServices.dll new file mode 100644 index 0000000000000000000000000000000000000000..e17042d4dd15579c321eef3889935c9fd872672d GIT binary patch literal 34960 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 On+10gX2Cx=_x}Jir@JQr literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/.signature.p7s b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/.signature.p7s new file mode 100644 index 0000000000000000000000000000000000000000..88085e21fab8706c95ab3cb44c2296fadeca4338 GIT binary patch literal 9355 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/MSTest.TestFramework.1.3.2.nupkg b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/MSTest.TestFramework.1.3.2.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..ca1bc9e225bc5c2506e53af03977edb0b0aee5be GIT binary patch literal 1003364 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

u0>1*{+UmEn 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

D8R*WwPu|I@;8CeC^_fR#pbgdWxXHieQC1@P)R# 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 z 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

^R5V5ZEgbPQkB#C^_$!NRZGCu|EKs zJ!vDeKLNO2WkA?d;2$u#7oq$G6m3Pv0){zY_L6M&aaeq7gkg$ zid4V%Uw^pjZwl^w?6`Hc z5_WOh#9gAExImodWXkgbCroX$jWP=@d|boQ#b4)Ijm_BTB?R;%CO#9Y`TJE~52cMk zvhnV*VgJBsD?(`jv+B8P(z$gLc3!Avs~eyk?;v+v`EVGivq`+K1|Rho5WNdM3(E~6zgBB|7a>Y-eAp-eDGpBY8&pyGTQ1Ysf`G0te` zwF+ApV**u$j*L6wb*cRRLE!8GE-Q^w9R(`v`@$x)b3tND9F1Ww(6P*9$*kn@F;lq$ zMnpM`;!^$69SAiD)1ruQiHA${rD7ZFtC2tDqMIVd-h5UG97Qu+fn(q&+7Rr8K(J%zwMyg z|2-ZT2wGc-doUg*K@7!INv%HOPHy~kMr5!iJZRPtv>t*A4`zY2z?g3rSf2)587$$n zjCSi7>v0Mh{+~A<@yI4(n56JCX;jhMrP1>-{oo%WbF=h9+#Gj3N6*nJltRjt8Uq$t zJ{kdyM5c?#y|UU9{?jObgb=@no6yp9$T`!$|NJTRTXanoUE~#9?D~7E?%niidDq0- zt(o(uT9cKTfwjSGkF3JAa=p%Sq#Pf2+_Mv>PSw|H1e-srK_+c|D1Iz{a`CC6Kkv9o zlb1_|*V2iA9r2G=B)x`2W2`xmgS=W^sB>k(670q@tQI_!2Cuup(=?+lyfPLMOXweMjWL7s25sP{j2re+WrHHdLu!+xKYyLZsMYD@NngP zz0?FXZAGIsmYiPGdt(G&mvRabW!3DFnj8Cz(pO>OJCkTwk8{mx3Urx9ZA`K?i1v`; z-3LE35mc@xvJFZv|MpWvvO9K<%2B?wirlaE2#s z@qF318%iOH>|9GA1f;=xDznyve~y8U4iwMAs%ll`)?_aNq;3zxQp-7x1sbaENd_2% z32`u1L#|XUo={DGwCPo0rWI-^&8MbwSNd~Po~9V?gdp21OxyJ@Av9?92}xr58zhZg1W}T|yKB3F1wE&Vm}&2Pn>?IGUzDhC4F#o>5S# zNz2XoXssy>*8(XVuUbqry$C}M3y^0R7C=j--Wm_VHK%h@gI=WU+jlvqTwza>$tled z*h7xd*<4@$-G>rDJMCnR+5^`iMf3o0!k5LD844)kV8Zj=ror0F!w>fIy&0suV}jEn7z~8i#7U?uz~4;C-PD-58qtqL2odAY4#q? zf&f;dz>_MLsr$zPz{9dqt1LdzPea4s59H;Dln6V#chrx?-#}O{{)Za!<&EeLo4MaU7Ur)$3J&RVN(6;OI^P`Sz zlh^5-C235%;b$O;X=Ls@;3I4}9&}24N1XzV#)di|1genQP=gX+^nT&#&bgP8W?vme z%@)0Rj3S5`gxl6ygUlrMNO0GbC%WE8-neeV90VW$#!FG3)By`fI{`@1u3fxJe_ zHkq%d^SQsTcVXOW3Zrt~52I4*b8QO&Fr}50lv=q z0=5Ukx2np#uKc6lz%YpwkJeFRVD6{*6A1}9Y&BZlxSRRau&aGOV+4ExOpl}4l?SQ6 zG<<%iTR~M>T$|o+`FCI$ZF#`FfLd?j1c{EMXUn90$|pCIdylv&YdAkJAO6a+52GFz3}2S!6=)elTb+azw@MDFd$b8H1V z+8nF`Tlg3OKF=ob{z?pwp-#wJd#$G3YuG*H-TTqvea@WHBj^2X-A}w^SFrEm2wOEA zZePe0qXC6VNXPSbsptE!resDQ7=Q4qSo<>(Y6;C=qrI+h ziAEcH+TYvVKZqu9Sg|6J97w$t)?#lrV+VE%IQ~Pu%bU4R2xB}h&+kSiK})Yy9cmze z{jEE}5e`riZ>>YM#3rOH`_=rp9t^Q4@3Vh)EY>8 z_2*uv;}IFWdleVuZNVBWl!4}TfaCmr6)%Xnn96pA)GWz`Fy%f-oE8(yyv{N*eLk60 z^PVjtRs$88zPI9HdlGZo2JRu0L*Kd0HL#v{(3nuSL5eyEN4oxJ=-AcEbtf}|=ssi* zn&7qK@cTjzli*}WvqOzIFShP;)YTng>2VcPT5RMnQ4N@hvXfk&EuF$`tBmG*Z2JaO$EXDYq6ie z$YRu82-;#P<*ZDi<7!uKfM2W_Fnq%*XZqlsvX6%&6GR7Z8$R%2_Ti@2ABWWcU6;$p zs#Y7}^>EzS4ozIWUkb1@;;PX4K~tr{;h{3OZMSE!N-I>pSaOP?;tDnM3VNH34jq&LKEKW967z7{;HwNzg+!f!}6jxP97>`s7;s1Z;U|*noGHY{-ZYh zrpXeWgDGYVS7lf^{9T1r$4<3`)VPwAni6Fs50jwbd>$lMk#lQ3H=e&_BvJufBcb_A z2VJ7Z0LSnN(jLxj*9ja?*az!P3!Q;Rp)|PU@sFeQ+lDJ}I&ijHbQTVd^>0rPl->HB ztXF%E5vUXCe=XhsAf{8zdrCRUEb$Lx8`$C}<7Q8-k#hG#DMI-M<3&Li~C!-yQZFPWM4=2l}-&gHv8Z z;YA0DTiKF`Z1*JR;8_j*{rh)R&-o~6`Nhb)^eN}N68U+g%n{|MXL~$AQL98W0jY2gSI9%)8jXJ6F1Sq z>*Rs7d0%-a@|t)X*HT$StPxf*pevOlZl$qa2%o;RMnc20grR_HE&G?sTRytIt)%cqgo{#Zq@;}<{+gS)y%p6>o(MCH z83OEV4LdtZg$)PyC1P&cJ0!FDBwt11$)`F%WBJ*Tv&klubgO9o?`3#`*lPWz ze%lBBipr~=xX?-#ir-+w&}AI6qiy8+G8qL!wt&8jKXxkp8k2isG5Bh;=s^a3(4-mk z1KgY*ibov`wA2O65PSh2LX<{KO>?Iz4cB=qlT?%HJd-k>|n> z!GCk`xnEBrK+7tXaXp*Ng&YELuu+wpU*6TdI7eAA#Qi7u#HEs@>sy#FBSWL$@AK~F z`9iWX5WD-@C&W>U$(2-5IhZ^bbdE~omtnt;Kr1t1q0abgj|T8_g=Rw5T{1cuX}Ryq zmq~;xMgl8E;AQjKZhFyvFVtE#)iOwEm?HSlZWB+mldxh~0OpOqLxNe@bRA!Rr9xCI z0XE|b;zL*}!qgD`k4q$*1Ug5+U9lZ6ds^iiZrRx|)J*gw$Lj2?cP-dmG#5x_ZRzWB);q2-L!$ZHJwLt-r2H4k>U4dY#ISPe+ zm7A8l(!+!lf&oCkz+P|Jh-kgs9wcQ0cXdK^9vZUKKRjar?fF-B*sc`iwSyi<$;`N; zq?_PjssJ+%@hIG zA*1Pbc_Bj_2KiHaQLM+h_yV2A=SqqCx#X4~x?D^k+F`wcC5nYUkaa=Qp}Pi6`&U(( zHOUL1`Sc~5DX%D}J!M=Eb$HqYkx8$DtAiN801%e>y||2pP#C$CbFMZOp6+(5aH$KX zzJ&R0qFuf677y6XZ($+tX<&c~N#K%4w zQ81kll?m$TWJ-ma7btoCgU|E)V#JrrG{NNK?yd7|ctziVe)MXuUXPg$vJBdc$gbog zbR7hmwHVF%6+51^hUvi2Af|*PXV}sK;l@&PGq(Ydcf)qVUd=zEUE8HC^&2LNv-!EA zf)}cq{@sIv|`n;$yR;GIa#IhQ>-KK7s{_f5HBz?V_LSCB-{#d*t7#y7A?tf)|Qbe{=K{>m})09 z$9eFhl*&de2AX`e&~yt@5IU*9;(^gLpw@jxBq#mse_Ilv;xX)161fy@+e=0-`hA~# zsrlrD>@3*rh-2?(9OR}p{#Q}U_spj_@@)OjXOhWfS4W)=Q|~ep`&|cD#zdmZ1c=8= zbjldSYAc@v-z44Re`;_4M|VTRRipY|_2`!PHATm~DQTc?gf0e~$z_Khh+R1E!%B4m zkW!*)X%^S54DO|EufRZ|CDoK@^sNxRK+)_;zT5RyCfU;61bzTgZ5}fIfu{$Y&=2PUbC+%Rfs`Y902?hJucjDnC+zC;3~Fk&sa$GXnj()kv3oG&>kV zHv1C%^Xe)H0*;6JAxmoSLPmLg_5kT`?=k#cw~R^9S%!e-Y?d0^3EEq@!P;vZ`*Zr4 zp@43Z@}oD6drXr@M0+ik-db@uf6`xesN5kD#bA!0hMc|lY_>d8eq6MBJnH(aycT>% zHt=S+(;jvhBa#-&4kNOP!tP1Li7{Z}F^I**#m$M|MoR_A?n+NszYpQt6F*>IqJ7-d zc@h~}NdvE?tyRM2t-ChliKjw`8`)kOtUVzbkky-F|F!eT30)g0*b5exwe~r+L?kdc zid3Ws&9dvu%9atuO>?+Wz+wAWkz?Ztrp=^(o~nkyPBc7#>loXJkemy!Bc*uGXH(L9 zuFhncuaAEk9yY`V#}yYdK&a0mh?2^b%iTuLPWd110LWBFGy<@x-g*{i-u4OaX5vpZ zZz*lopn74;@6QgYIK9|^uW#VtlT-wd(MoM*utA-vg21kakd%koacmdh9JMM3Gr@qc z2K#VKm@+u1)igjFMCN~UKI9!O7`YLlq;$vrwMuMynAiRHoZ$&;J60?q&k2gHu9r=G zTFZB&;7v~=Dos#}+@<13%xp3x?%IH$b-3?^KCD$Ux1BRPW1nvUd9%+Xl-0QQO4zV3 ze%1kkt36f!39BSH??SjgUIp=}Vbn0rgk!Y6;i+OWl59IDM5|g2Uu4M~wpL39wASAW zcm?Eo7HCBb20;(=bg_2t?V3Q1#_;RlkJoNr1pKcb+d|uxduRN39LnC58oBSHwJG%m zQBda+BXTlr#XZqrt{@;sw&Nd0B%ErUK8rcSdfHX{pf#=VVqYi>fY^?gPak<*A3tIi zBQG?1maW-7Y}_a+z2Kf%iYmrh-{Ylx03!Kr=Y002m`CTP7OFTMeO|{im7(OHr7K}v z%wAq)T>Cs zdOcbN@Hj(_QK24Et!@o;zU#bQG>*Xah5rJa)Z8F`hKEgol((!eTe@yv$v6>P{)eUQ z7xxODi~MsC9RrQ&pkv78g=1Z>{|JI=?z>lS0gU?|^f=T&8wL}?P!(SI<=$NRgFNYt zJ?JTMnt1>%``EqOl4c1;i=(5Xa1-^%S75bIl)(1c=r$`s`sOV2B?=#pC# z0qoR*8Om^xCd`)!*7tM7_mb-L46z`jo>zY`TNv0`XMS3%0`dI0$<%Q{L#@=-F-)(8 z55jYFgk{;DEFuhuYBRCW3QY^PGK0+FU=7-#R`ABoQ`VnO@g$eJWu;osXQ9)I05=?s2Kj)F|i2iMZX{9B~qxg1HbYHM4iipxJsS( zPx>o!31p3#gz3Pm8tvz!foZPe8A!wd1xRqa@<-2-&>Y58a>pTGgY0)FHXNK+9Wpcuk2!$r8qTo_q`=mmTW4YRJ=SL(G;?rxxfWc@wd)XMv zVAtkfa18=gMfZ`jQI&pAGu@1$u3{-kJzAZE$@&#@(-_0|R-PNfGBD_Es=FYMC#v zb%1n#2!7iU5wCfyycs)7t3CMaQs=IqVN37FekhXY^)drb@)$cd-o}A5ug!)gTePWw z>!j$JyedPzqYK$4DLDXfXO;mS-%V^^Pg&-k$M#vO@_WMx0QRS>6&7AYqKCYQ;Vi9mt{f90% z;be_84dQj5BtY(&nAv_qOdLIj3Dy?jaY9*Uw_|zChq?X;4R2i+{}@aOH5XoFrC>qW zX;ol@VGykkzk-O6u^{@>ZA0zgxP$XHdKE#u0*_YA9^_{`@?zmN4&7vy_64s3tjPM8 z0x8xwQT)80DHim+^0N&q{&R4@UWao2GjVZ}vMDg>{hnKv%*3Y&{T@mTVmmp`!E8UM z_F7AyVN{le&!TQkx zJ=nk;SF1%-n4>=tpj8)hXWkRv$!0nAPh%-op1KerWMEVQ=E#1OF<)s?Y0yq=(FcJf zM&=)xZWEiWZz$^+ohMEBD!M3(LLk2+UChpj?UPpbJM{8>*1W|E$er8RVY>bvf_N^J zZW6n#Mf~i|4-IU99n^+Iw#*0yF!*nE&Rn=^;?wlZ2LrNiv33@+nApf8CdbwDixsi%rmOpLGwm4zN8iOwSOuqZbFRXQ6mpm zEt2)WEg_CHPe_fGa*1G>W)w<{PF?s9BQdxMKTj4=2$#u>5Z5yUsAweICex43BbQnS~6wHwZiC%~DaAK9bC zqXSm#oN7~>D0e=0LxTbraoE48G`MlkqEy>Pv($v=F0?I%x6NUC$VQ#b;mc$?_p3DH z{AmT6t$bQgN_Ve)1_P>-GOih5idLWt~Cz}JZ;YzM^EU5-#VrLm=4b#fp^a_ z{u)OGQiKX71Tj=|<||RH>E8Wq@iorL$d?v!^|WL(tQawl2G`6a4?}Sm2-_v5RQP?`W!AWq|o5bji9Iur)18ZhMEtDLSwvcx<7XM``^p=RVwei z@zACP{&10x*g&op+E}E%namPXA3HibByg5gB&(sTD-KGiqKP7086!#)93lkjZdVYn z2+>26JOsp%n?!RJkd73VAa5)e*B~Ru;h1&oNngNh#Ot|iv&E;FWrr&b8qM=- z;cST4J2UiB1VkY5Z&E?gp_fvbmVB^DXZ}QH7Fnh`uji7Qaj|iG|F7RVA=IXM6E)Y( zEy{nvEE!0%Su-rkd>D~D<2c!{Hu`Td?Y+JdJsJ-=S-kdt19#s1SqMwAfB22Igt42k zX3g+(e|Js4)kYrcs%em6OY6-SH#ucnDYd&+9fs{WKG4)V5WJ@x#kbf+>>ZJ{9L0Sr;W((!?ev?9Lx{oBBf~D64bH0}SVF z>2ZzZe$54ef1^@;2G23d1I^lrKS2%Q+sh;@}ZKy?-U)eMNfk5Ov_T6J|`51 zqTJkOVW!M4iRo3bu}0O#G)f@)wbb;x`~^PbX9Io_GX!s_bgD_0cC;m?6*c={nsgfA zV5IqLI}hTyw$3&%!T<`TlB6XzFe)X`pMKWAakTMY9fNgas8uFU5m*`Wmb}7=8CSLW zNoYOmfjjwi<4!F(u6EMC5q&4OZ144qq&oFEow-_81#sGa&J7{)$uGi$ca!RI;SKvU zYJp6qFosW!)4h&*BoT!}@980sM_6GOH4Q(={X~R!`lln%Pw6V0^>TrH*j}Nj?!@FL24+4h6$;&ouY$6TV0umDo=d^(ot(SjK6z4)$g?=O% zGx~cs84~8&ak>^MaaTQ&sO^x+PQ1%xVO4eT2(HigN{m!jEtU8{J@CAe_+G!CD`(en z`NjfH2M&LQLQ0)SxdtTmNcX{L-Q%vBz;q~sZiOljj3D0%%iI)V;L=32|2P<&4C+Be z5~*tFU;sFb3g=3tABacn#{|r~$24O=kT}%+IvH(R$I^j)GAY3OY5rS&6xyi_RcLkH zh?+R0C?r)r82McO?M2Zm%4ifClrnJNVqkVA*J|=lt%f9@uYDRwEVx)|4-3x99Eljm z_sku%E>Mhi{Sm?r6DvWe=>I54zzS^J{G5QR$P#!UmI2AeUr5lT1jYc&QvMxkut*qN zY&5yAy)8e&TIj*4GYShg^{}RR0dnABEQ6F6sZ)JYfCy) zg#Ty;E4m=>9eS$%iH%pG)dAX75ed28_8f?OWc>(vf&Qvh2nY!0$m?QJgp5^oI$7r6 zkXrs(Y%~%mCq&QX#cG9lIS17ajRtdLL*ZBr7Z4ReXY@z0%{RpM_k---@(O+PeaE%T zhdai@aG;P9@+`CUX<*XK7@ZbsPrJ28q^dgh)tS|HO_VNBki0G*_~4BmBM@B})zC$lmBHD-6W0ipNa=(!WC*)hWkmV9o9cx>3GM ztLcAHe_*M=(*e9!MSOdeX(4oPI5#l{2(ld!uF;J+aw3>CjxR!4>+}AL_mUBAjxucW zV0aO`#8R^Y)l{YJ(Ykx0UDUP9j`vMk83<_ySDU@a9pOx82B4_fMb=9bTH9<%%S)aBo0!(CiW1{i?ewv(4(ec)Xv=kQ0N_&}XRmOC6O$)v7L`W04 z#(E?vZB~p-eqk}ERWT=0=gQi}6T4BV*IEYMtx85pcTvLHt&tk6y^Eo(05!c4K^>nI z0A1XZPdrrz+Q0`5bj5fou?9*vt-V4*`>R@ev6aNq#!hq)r}(^bv5!D#DMsNUxtM?S zRGcTOvL!T$wRW}*1f0$=>l#)3GWiXai&5~LOMCLHv9ZUNu@c^omv7nhu!ipkK(%yI z5ISq1)2wuI&tuidWv7MI{2rv;EC)RW7##wo#InPbwpl8yzOI8~j&sZF9h2(5QP{^` zx%mvGVmHr}BNh@n&GGlqVu_%Lg*ir+QQVxC6NC3Rit|ikCcOFE zz%Mr%?~Orfcd7Ji3R+{H474RVdqzEqwTKO3^)$1vsLZ$T@ZcD@I7jiIAw3eJq&P9v zyaCpdbbvbJ1&3d-vu=@xZ98AY^e9+moP7ji;?{iQM)M4W=dp;OEe+Y>wY6RsBhN>e zmtaDe+m?hLu2t7P9{KCRcBFUDV!NyJGvV#c5mvGDI`&eOA~oCh5XtQ*yP=3TKv`Q^ z#s0+aY0#ZA0nX^UvE~LS#CzH<;ZAl?GbdX$MZ1^Th=j|g^X`>p%&ig5ZuS)!k$#_W zKRQ&+XTs=6VlxoV?*KX)?KD&_XCleTOTGZqdV9 z<}wrYwm9t;r4rb#eN34~?wq$soz_N&d;VX-Gp$L(%NPO+Wd{CfX4;S}E>R}M$}W&d z<|Mw6+Y6l~f6{P_pDs)fDJxzl8N9b1wvz^v@s0kNoH$-VaY@NzL4U zKdh{LKmM!O(aZE>_IyVFx<1A2R((97;Sn~3TOH$N7~TR~pzH4L_H}wwNuN8->|^f6 z^YghwEse!iw=?=$!X?-X`TBsiFS$Nkp--!MovU+tJpT&WdjB{*>!CZ#N%0fYBB(eF z2x&((G9Fw{n2|px(S11{hoJizK{}W;T^({A%^)IN?RAcSr+mn6nQ!JDQT8_!w9Uv#dltV{o1fp9Nic>nI!_X3#qd;Q}YkKOb z4Kdy1=Hi~@m~Qef?}a2H#yS^V9JXobvY0$!OAbe__l#+?t%sKK7&2MtJ?yVo@rAdjF(x4X0kQ$eq$^9 z^zz*!aRwG>ybvuPxtC%IPTudcmLWd2WlKe;)DPN`-YCDKu~GM+RU(tFAv(W$jT1c; zr_P}cIYcT&r{2Yb~+59&0)rk4)v{?2r2ELsM=0vz&qj;I=rqi!>GAQegFi&kI!2gH-}xz*uUnwtii4MoG#_{m8N)yTFeDxIaCDq%3TJ&e)on{hqwZ$x@P~r8!Ctx#-%T2- zMdG=|83!HO$+^wc{8c9`USiXdv$Dl41^uJ4V^X$Cz3pd8p0qJFPe0O>5Vo!Iul`H% znALdB;W;hs3;1&lByP~`2UGA3cptXn$N@2v&Wu`4U)?t9MNmOImNVo^CO>vs2-&2l z$c0enU||f$0Le7qMnGrNA>1QF1ny{k7mN~Bpr|Omw5FCq@mzWmomSJavWuJ^ukwPW z#b??5kt1ulESct$Kq@Qa;0Ebn&h(v35R%>L6wa3L>@jlM_eYIRL<+0&nU+bDC9)GM z{*FSG`SP&d^P@j{pMZ_lqbLup4LpjIPc;&Q=R5>Hu>HPUb=~lg$jm&`2%h2`^ z4|cAUXt+u_EJKg~2ke71+jRKoWGh*k4EdOhDvPybr>Iya$H_mrOb&asD{T{fnjZ-Tm`EWYb!uYr> zp=sG6xEtKaUO_l_+f;?B(YzM(LH}}Cf@beJhFKwR#&vFPw)PYEB z7$^x$=)2o}+BKgg`MyESSt@FtE{p2&igx93p=5VNEXw|Pz_Fk{7=_sB#|nuF%|U1n z+`f%tJw-$?@D9EG>)p(Ls(DD*wI_UU)&eHnxk`Sn*b8+ah>z$x_N@mOUDXGiHcjX8 zu-7l{xd6@G?d4_0{lYLd`W}c13;FW5^a7NrerAuEsmZ#vCT!bv3^Da9*?Hb>6$mx& zAduzHW`nO#h?KFw2!}U=x90rbe2?mu3;m5k%RYu-<2dhc?;W?%4nhbfO50|Th>x2b zZb9?l>?7{H9mi{~r3Gi>V0ddL_jD8 z(Np&#a(?1SX;khi?|m?VQlHPfLqsRy=Y{Z#f)4@8%r2Iu6kgD_a{F77DhIZ+-Euk7 zMIR(#r$#C@)BqSB$1n2lzv;XWqNOeII*3C1u($0e7#E%&&EWi{3D5h4bY-TW zs`V{ng;~OT&`qAyrChnV_97xlMQ<}E7tUAF`avfquBYb8P&>&vIKK(Buo+E=Yd?g^`mafyEAq`Pq)&p+K zf}bR%2Da#v-$$p?VBxl?_dVjP**?~7hfXvWN87~*nstEQoDh1T-$OeZu_$^k^maC( z+-73tH!?11Z-0$l6c^hP|V6;@B3K7usP8pKkPV*W1gLvtR*P|Ji+qtfhPX^Hmi_`*>2o^h@6jk2|JoF`H2|&1 z)R|tx=PNVOf=3s$QY%g{`AmLL44rhDur))!c&WpBmwF8!y+=j{0aKtQpIkYm-pdE< zxt*i+VGJ*v6}5mH3Y|{sAJYeVzK649OlSw)K25gygzN1^;G_<}agj z$bpz6NjM`*CQhAdysOBER>F|}gp8Vf5cQ*HM)Zwxd<~MQfL#<@ERa9`V076LKy;m( z!v6|6?WKX+%=YK-XKa&Twb*tre9X3upUG;uSFlWId?4Qo?PE9I{!V&)^q=Z(8qi(O+W8;dp0$E(da5tJZEcyA^L52+QODLGYUM8sXSJ zIeqAie97~?3n76JFASq?mGZXdL^(n(XE%xV$z1_QIt>10|6#vm<8E891+D3ZKdm$k zMUD04Av^iJF#6Ky&$cFYN;XecG`=US{aQGfjNnpFVmk-|A*4-pM5DXo_Xx7|Z>%>DENfP5!MIg= zRoSC10Que(HxZabN-}#7Jf!rsz-IP3j?Rn~x`K@4OM%`yr`K`J zL@~j*_!%F2{SN?zKzhHkqh@}&2y~>$6br5v4cYY-cI=m*TPM{BqX1JY!2GB16wO)D z%zOF%w$lhXM4v8ZSp!MoVil4EL6(e7lU%HtHT)F507~_e{En@0DFv%4)*HPEKmRpa zy2M00fn18}pvee5ICox{syG8S`xM~&A|@A{wPY2HuwM@+qZs*J3VpWO9Kdbn5}SyQ=Z^@u^g{v z-DFOekUpZvMe~RVd$|4Amjp=Ke>!*_Wd-chC>X>EU%dekYT*Kfj5C2@N$jt+LLavs zUUX!2gaKX_=Q3xMRY>rGZEKOKl5Oiplc~!5gU};Hb)nt%?p<alvYHT za6b)BAID#bnEx5wu}}7Iu~k8~Nh&juJI$iT_5dMwG3bvw12R6vhc+P6UCGJ1HWooL zpI%YWxW;1)w|$^P8OVFo;SBl3QJg?D3AnJ`d*}!-mu@OlfLW*`_X}b&>v8hdCKt^}l49a$F>@?|l?YO; z*!p{niV(M#OtjvY#R$kT+U{fg6E+(AV8SYx?PCU#g;@iD%%8GY@|WeDzN$vR<~5r+ z0Cag)15&TcxHJ$|+PG0uB22NoRo)cbj*6mI^R3|1UA&j4= zG+vxNAUmnfKCFvrzSiK+==<%`Ud3yFE_F)u{koPS<1xq0Qnyy7bu8v_+Hs6RO}l3L zhEL9lR!zD+g4cT4^y=2&50Nb=$Gz1O4)hdde13pi)R13@ogxp!bC}8Fb-Nd@@hpSR zt554xhA8Kx-O=rwP0O2pdN8K-`6IW}w}LNAw?KgwgNLjo&Hx7fpeP{r@k70^p~ zK7Dqasxe@v96-{^vTWKc7}$1`gWd6r3D4(JMYxCNN+PQB2@|-%(%0rL!t}kO2f2uA z{TU};Sdbo*cL)|?EPcNwsR}5?$Qc0N5MW;|anZ?}8QDUll&xcPi zxC^=XswhrGQSs}Y-=yQ8J{@@Wk*N0^myls2J`+0GvF*R%I3EeIr^qso&_jvC?y+N{ zfF!fw{hCm03nTBJ6CpfN15Lfe-1;nh8Tmm;W*oexVDu39gjy<1Gw;($lHfuwiU{?Q zesPYDqev;$2R@*N`Pp4SV(1o2UGEN#xCCzCD)weS(fVWyGE>hb1jR&oz7~r#vNs8Z zeM5eI0G)(o1q~OHRRrxKL;>j-vPFa5s?(|~ESM4nQYb~E>(|EvC@_SNVQPmD-?mmS zLbji8ueF_;wR+j@Y&rO1{>u&hL{}_6m}0o}w2+Y4BC+iVb=IlomzL|?gLy(fX{>U> zL5_<*D4^gJLHHo_J1{3!i;TNvw_E?>1ehQSXIZRm-y;JKcObFUwtPIWY2CHk9cKaA zoTF4KV%=3Y{PA1W30dYaT_IEI)aMcW zN$K%>PWW>>*u3a9Ge>j3(#2z*5I6p_H_(0Bi=DRLMDbQpt0t(t$f9olk86FA(xT3q zbK9HV43o-+(rMWgGn@fs<>3cv#L^jPoNUQ7htKMhmG1fv#xHd3$Sji92TRTELeo0J zIvUCeY8l};ZB*R@h^F+F-(;vK_vc@$wv2PU=}nqd8*gC+sKSCckrWlr?Vx?)HJRYb}5 zQIgoeW78$EiOyUXowLNt0oi>X#1 z3K;%k8>K(TI<=Wa{tc_(@ErI1K85jENn^QAY(+ciBhpFY*}=Fmaaf5FJV17Qt>M_Q zvb#K$?5?}XfG5hPWPa~wk?X^@_-Q>c2*9!3wy(IrILkWb4;wtBfz)`ZEJ|mbUP_9d zvdb;|@&5-x2Mm>H?h$IiEA;16_n6p%@`Q%`28$_3k*fLnbF`CI2D)%#wH9w_uu`QE z?bHzJ$canY)nbyyieZnSUMz_9K$$TbDdx-~UqxkFtQ|}-sbpsjKgK~E(t<3wVx=7y z3->(3f^`{=nb`hDKpr6#T!hllg0%~+L$ElHrB8^G@b^VKbT&MHXUfWFd{gg?Fp;zq z`v;7?UZC*%ifIqzyxIkrmR4NVPRP`20NvhBc2Zy)iuOsGCddOih$khxPsZCv$aO(U zx%{K_yl0~{VAjD%{rq$9wz41B(fZ4}$fRl*LN1(`$4-++rMbiTdphw%%@S}sF zqNh!{3*%V6V+UldPw2veXrN`sW!A}y(6ibOz38J8IDPDcXnRtiZKtI{Ypl5o=w zEm3ikjU*VL)$rPF;ut`G$vPA&ijd#9a`nkPjm1 z)Uk9)9MyogCFyM0JJy6b?}I_cmJ%S{Vhmx8ULl7ruJ^=Kpk>N`GAT z{RU~sYK5fT56Mpg$0aXGhc<1fzd}aRcDU)}hq~2ihb_`I(g_DDxZslmG9@@W3)oys zpXq9C*`@=5T8K-)^|uxPy7YLW?Qc%60=R%0vM zowatWLDq?6J=d`Adab6l8eCt8Lt8&=hwt3};YRq*8SFNd25YSrZG)4)&aP;OjE@Lm z*BnMpmZCdk(RiQqajVs~{b-rlq-W%K5zv)j%catyE5g89;q;--ckz<9ft|G7)|TBq z`;OF`tFXRpdW}x9XvLU-wXzw8+riuC&TWu|d1tNO@V3sy3VIG!jqCT{AU_ON7O;AZ zj;kooqS0y0% zSNat1L`cmLk36aZjiy!;Eijmv1rt%X%CJ&kxHJpM<6vgKu$KwX(!h}uNELNE z^fiYQ7p~eRSS1)mpH|VAiQB;^H4B8Q07fYm2nIk5fRqD3%-Ud?;qY3g-OhO;Rs(mu z4y!c$*b%vv^E>WnmsdRA*0;AvyQ1Egxd8GK6S-eKsnq_*>KEa7h6vU}q9aIlHid-8Q zEHPNJOju$T3QLWQUbw7lg@qs=V(xOT0?MhY%eV+w3e8;-N;ZCcb*z6m-FSlr1`QM$ z8c%$Auas~}oWEa3JO%eB)JHGRCai7x6Nu>!3^-Pl22 z>_`^S<8W?|-cz#6ZY*F&u9T9v^d>cRI9dCd@8S)5hlOHi--3{%6Lv|h&A6DBTDgv0 zL}2~bgWszc>h}0!!Wl|OkFRUg2#EqJ-To@Z(_GzF%krxCj_{}A;4~t;hLu)}9q7t# zl@KA~c_$#z^c=ciCm%cUK_;vv-RrJgbGzBJE8Q3wflXSZ}uv1P~ zH3kr=CsK@m1d2`Mwn|SK@54$5pbf$&LoYMJ7n&7k5Z@qv(rttI2JuY{!|>OH`~^2O zls6i}>bmH@Feh%BH!TsRx;!IhQnMd&WtIz}>Lc}rUx2_Ny|psB3_7{@HoF-tKMyVz z&Ui&5h=xEGEIE>uCfs6hO^~m_wPnJ!O8NIATze5AC*6ir9MrQggi1_YB zVw>L$go?uOadZPXE%e-Dm)j4Y%D|3ad?XTKFKHZZ%Bs<8Z;=S&zCp_`@PR!XQD1wF zE8odK54y?40K*40>nCr$FOG#s>?dz!<=1d$+ulx9rvtqR|a{E3opE zxVdTeVHo48{4~&A!Ctn#nA}}IHE}3Dtj^BqIDj;uSXF_-qT)&h7!5EQU@Q$VR%+cb ztBvZ@5Xu_CK{}PF8X*-Ir!oX(2+9zYA*jbX}Cpp6K7U!xM| z7nBSx)Qk{WO&ma#!)KM>wipXmGYzd7=rYiCdZDXQ4tce=>J3ZGlO<*xpE9grSi`V} zVGY5YOdx06XbcAyvMaOL$j(f+VMMYsJZDM^l%}-6sfZ?3FxZ_173Up7G8kzv(qN=n zfZ&`~cpur2(agzc{*fv}PKKNeIT>=oIjt}`nb_E=rdok#Z;{X1PHn`iVtF-Yt}b9J zQJdFjM?g?u9{U!4`(*eG4P<{-TSUk3xw0oTgH065A~9WO95gj74yqaHOmwO~dFpJk zW@j>}q}6%l(>9%UXe%TA3nK4x`V2CtXOSO3`T-pnenGnZwW@JE{|Nnu@jPN6c>oH` zbTMNDol*w%0Xe#W`l}y< z%}WH$m0D2c5@L$nMo(NU#0ghs%NQv<-TXP*5TfBz!>5K%4WAl5ohP4~;HL2oQg;-1eHB3rZJkHOyd` zfeFoWg=;vxtG zD9%M_ZMdHAT(kp~(*AuQU)->-OnJ@1PSTqXsQ=U#Zw8160KCY@*cO$4#6Hgf`;(8l zvAQv75D}fZ?ROk`GdOuFb4bQMQEB*W1)#TzJC>7TZ&8tEgTw}jqb?gHUOptQ)H;j@ z1>It-+;<)u(wi^o6&F=CBxp!5>arn0LxP3`O$ZU+HIzOtN`J5It=a9?zu3^z`o&H= z?D)>AyY3adSIUui_0Q@US~av<5?XCgi&aGRO>%ju#aT6*#647GLQ+gR(VVh7fMXvP zUZr`lKv}q*PTt&uIiNho(>HA{)q_4sak>phRD>gDns#d#!!Sm+ff&Y^L|UhpG0bw* z#AHt^InOv1){wO!>udutWIc(r3|Skp<{xBY$74rhT#u>m6qscSs>W9s%;(HYfxEoD zdG7LNIe0TE|96Eql>;%|j0b5Xa4O5W8RHEtk2hpa6U-jXi;LqLZ0F|PV7tL~gY6lm zRr)pFh~=Hg5+z*W84{g0i53}eHKfYvfgx2xs)kfEO3RRH{1_899X%T3BFxW4SXk2S zoE!(k*@m+XXPYhGN@esK3R*x;uOTEuNQRIMA(fMm%u?FKr%x;M&pTn*cml=~FrI+% z1dJzesyzV{R6o6b&1$gf2BGaXoa^hiceb4~f(sHkB=E^pC8wT&&Cyp>ueF7z_ANAm z2-b$bA)miO5<7ukW4nj)p&ww3W64U0R)L0QE?p&fFI?laxD>XAHcI;bIAVEVLugO3 zP-qY7_`&cA-L?nLc!-FzCmI7cR?YFG3|`V*yWJVd3=&rFXLNC5uL$6b41yZ@7rF_f z!kHXrqMUuuEX@c~=0G+fDu8MrL)2G1qR?r#Ezj4#s7H%0U%@9E2;|ZH~sPM4t4Qrwgdc z8lf?;WngP=uvI13J*(Fa4`TkUdOa$Sc@yntNBAl>+cC}{ zghzWUG=}j=`Dko+#9240B=T9ev`83g)h_w{lPFk>@9A&xkwR@mS%*(aH;)Ggk+}hs z9I{h~d)B*a=arD-yXV%>U{w|!H zkT8hR=z|a5j4b{_1KyZw_eatsOrpi3%QfvD5Sk^OzZZxXJ>982z|3>!Ey9=Z

  • X zadZ?`QB}4ZWW5{iY&%kOx1pso)Lc(+0DaOb93kI}_Lk1dC+#!sDM>PGcuhyfdELsb zCTpzbheYWC$KXac(R8Ee#2{oZYB|YD^;9%jE>E!Jka0s$`CsOC!(T7 zY2MMH_^!HZ#BXFJgQt#^&WpNdj^T+ zH9d!J8{hx}Zh&O8(EIGVp>t>O6BYkZBmTnD?bR%Q%}irVCI$qStc_BvP%cD z<=lji?L+EGMjaV%Erx*%1I>@e22{04Ci;_@Rf zF28a4vD1c*7EMQm9{Mo!#AIgZ$J1)4uZCU?y^13+^lIqU z(5qR?X5!Zi!H(NVS2 zeWc|m37jUA^8lls!Ke%{FKioZ_|QVJ61y9IKKx?%r6SbPsJ$CiP9bnY%UBeMWE>~7kGBkvr7#f<4h87r~GqhxA$Rs*U4T0{rh zZEM?i0>=%(^zonmU82_B*0vqC)>`dWxMSUGg_~Fc@E31d>wt&%JpV&Ym*i*9NLznS z`rdZZ%Xv-d>V3uFnvyYwd07owoZ*iN=N%0WhMxd}3zSF|K%yyX`fv;IE_;uTg5Zn< ze|g-CsHtn@rD6d@$)HD%hxFQPxTtt93iu1|>+bL~L?PYYfD$Us?NAKWS|#8U9}{82 zQz_r|;5z5W=pP(o_22!ZVgm6mj#CFzB(r}jlDXz?b-DE!Y5K)Yr}5#9sH4}s5D;2l zsbiE06n^c!QlA%*3Vpy6m_2mF4zY3rKbh(*Wzcc__qZv_anJim)A@RY=}h57jxbZj zgY3@G?%<`)*84T7_{IRQSAR%La;wvOsB?S|m(mnD7fGs>li7}bM`ZX4@eb;Q;}Ypa z^d_QG<9z8BSop_Y#qe>>iogCG7k)@Apg^yXq2euF^fiEhG(LwUMB=#VeyVgXDZ{gC zt(<{k!e>`%y7vF`yZ?Idd;C_hJ{@0kgO9!P5`TG;){c~-R^9>(IPA8P7r!qR?JAWC|GA> z)4KQrvY-teH-H5#LC8(78Av_3;`vsK-TzQSCp~CwxHeHZT;khG>%__T?zWm_f*M|@ z-Gt@-3R@G9RzmXEU9Z(70&qi{H2h1?Zw6f%sXAGvRyMa5ktD(PIT z-RDB0!t3|nAU_Or>$O=gj)ZYXLmst2nmYEq$H1c>MZd+Uw}Oj8yc*bq2E_LSddm}D z=0nF)i_s+)a)(8zeADPRbKPQmn6oyL~G7Q%f+mR(Wo$TN=k|h1}6+o zR23)6>4EC6>P^+Iv2&&wgVc1oL%NJHfzyo7MMee;UURc=@Y>+@(&Dv=85s7F+2^v` zoNd$qr~xSA2n}d=QjU?%vT5jryg3hoNgapu>@59V1nnsOPp+Oj(ws3Y5B-onJ|2F& z#9;-;Z7wBj7!WZava}#lJs)<24UL_<^7*m`#1{eLg~lBWs2fnv)nNnb)^dWn2~Ze{ z5-IAc9X2+dl$^QS&V4w5x6x_a{^k2{NF5Hu1n`z~f9hnpV|EVe5xqn`I)j%fFb>A? z0*wQ1X~*M|!^e2!o7oaQQTOH4^rTOl(|0{{uNIX!Cv}@~t}cmg+YSjbxH(I=(BH~^ z{Z5fiPmzs+_9#I4)N`sS@@0DD-HB1-uO{AXf$fe4n-TL^A*d<%)Pw<^c)AVnQ~`J@ z=QfYf)e#e3z9e9S_@zMn!p~_K28gHMFo0nI!vH2?V)$%4pIsvTzUGBUYjcj6j5Ded zb616E>xfndJ$2kAjC+}5CtK7bU1pRi^q`5s98MDq=2Q!Fs^m1!#a~Wwk)@t2L&W6N z;e5ddRt)ZQnqhF?;J(5ANwmwvNh-x+6An+V(VCTN{)k5Z8tVvu!s-MMQ)>Pb%y|M9 z`I;#VryFUCY7J?DV0N_-wjh?Ym#b{US7dXfcK`|9#9K1p`OwQfYDH1|QD2BT5v%+| zTysfeRs5w`lU>OLgZF_5j^!J!s1awmk978Bf|c^Trd06aN(Eo=oy#AQ8N1_pKKZiK zq~(HTxkx30`69v5^+V#jb|WOM&Z%s$R-@|b(Aupae6wc3UvDi*Z^K?O}R!XQ&IN)aH+mx^Fuw>+>r`^v!vhNDg!7&b6mA{aK2PD3gh zQenG!j9V7Hf-eDA7@C-jCggpwC0($eMgyPulHHiQF?W6MD&ZQ=+ACc8ye9*(b6=ht z$Tg6w@122MlX6t;g?MENN^n28;5&pz;Li9lBr;W+EF>@WEDbadpP~h5O1De! z0z}eBW&9FsUb;!XMhz^^XJQtI7r#$^E8GDVwj!N+16~uTIac@udqx`*dPe#IU8n@R zkU6U*GX9)==}E@Xl)y@D%OxsoG2`Sdb199nz>`bHG*6vrmeU0j>{9Z6Xi)j3O&bTP*79|gMv5^gMztG(5yENraR<&A9b7=t}5|}Lm$zP z9W!A8M+)Y-aeQh#CLcgyXc|M?h4YG198VWNgU7`7TTVR26Ftw7V-C>Lz(!S&E~iz6 z_dLt6}ZD{?61Q1SAF+~`n_=0u#fE?lCB)mqjKa8 zNic87!Xv)X-(Vo@T=8tu=1RJ1G*~$61*O48gN+6o&05kRef(CTNWU7~>Z}D$czr!1 z#Lr^=`3%gNhoh8q7kaxA(I`OmmrVVkR?8v4)&pW9FVf(i=&Q!kCxm-!T#g9p`xMnr zmWKxRN}lsl;Vu}3+(R;;6T~8=^*r1W;6!KQjciv)r%r}?|I9Xl8Yj$oyA=CzQ5_#4 zSAFN#XxGb#OKuY1Qo~wt&nG+SFlx3cjZp=z*bQPC#2V45E@_>W_{=)lkLnFfqT!SQ@)PALstDXvTJ{SpOxoV$*{lNp`tcHkL!Dl);} zfRzEO3WHTSymQ=7eMvM-J*zx{tIn(J5;*LJN8-1t!6U_AePVdU@QUFT!z(5bWLR?E z$)0%eLF=yFCL>*777(9$*NuzbKyqbIdq|Mw;IT7%yO@h9vr|pY?38*kj`aBL5AxwF zwJZA;wNao6g2Bv!@NA+)bW-Q?kXv+phGN9uqU3g?ThUmSDcCd&8%w7kL-pzCI))%-XB}qXHthG)EL2R)#_>xEd@RtspW>gZ< zKo$4CfvU#5_7OyqVxYV)T_-3!PwJ$zCeTSD{Jm<;USNc=U6HSId7Lx^J z2*nVJArwO>vnLc26EgHD(&IHRtYZ9UNUz>Knhp1*KUV2x7B05V5R4$^YvEnAJup|P zKPOl;_!(*IV9-5VZhF*6o3DG!Z$k{9N}Wlncj5KwH2w`0ya-MZ2_i;(it})gg1vBK zGCu25@)_J(g~-V6W1a#Hmy?C(i;#eBa8#Cu!3M3Z?lkE=#6;Hd+1VOF&qkX(-rZ19 z62Iwo5bOxLHapwxR>KYnd^Q>#-*?=G6TkRV*Q%}}ACLPLcUjnGhG zd8p7t{S2`eRuXX44MH1wdVT%&&UV(?fbiADmzIwbt)aL)J(T_%@~v0c*a?0>RlYA9 zEWaT{UcG>5KGAHj5)J*2Wqf&qX`i(wJyv`Bc^@GQ_8Xp%_r9ceYdyqa?uoV-ZDG7X z%%V>|is=rFm!KVh%lP_!(-kNDUT|YRr}U;wqK3C5s?S8mfOU z~2EB>;wM1B3wyTW{@*3o&|D6WpEyqG=!hm_VYWqN zBO0dTjL0yZVLHQfr;zDPjM4CR>S=;%ME!8rYJLQ5xOqO@Ow8xUO-%s(bm*szgdBg00gg^en;sIGE`mZAOX(7wrgHg14%1B@GB+yK76#tkr$b>q|& z;?%4Lw>oQq6JB5cxzpZu{5jR5_(rAlnp$X@`VA)>HEC!Dm2Quy)e-K%_F|4WgyQWH zBH|(iChyI#9AOs|Kc+j!bC0c3zCCUVhVqdLF zPHj*(T>iR9K)C0`?E!*hKmKC)86C}Qxww9e<;NNyXZTpxEtCL3BRVlkPx81X0V<&a zK7UkslLPv0b|*t|DY(l=qx&;=61#|?vwc)RL`KYr_fWro-9g;g3w8${3tL@z+QVho}vsaW{v+Yw~o%69!n z!M9p`!yKpQsP0e4`QsDYFI23@IZ~edACd4hes3+h^5RS4=)vtC%F^!Io%i3TdYjWj zPBF~y%Q?vlu(2yGw|TV{Y}sLBlelx#+=>a=P&?GWqA{B6M*3%P;s^2FGW2Q~WwA?O z3{^>S2Pn0Z`2&*PgD;XLqE7WOTmX+7)BdO+$$x$aC_4NN^u^qNg5HPZbhUBOs0xA`jj{x2&=II;$rn*Q9O@$ ze|e1RYVSCrzXGrSW1_i7i95fG+_j6Y(C50YA(!K|Pc*nk<7-s7(gGE4AX3+*)HBAs zICgUrL|Dj}axhfkIi-sZTuuD^NCJAY{6@0x9>+@>kQnXyZON#PmlV;vwSL6k@HGxh z)zz5_C$Pp5eyHk4#<|f;=KpHI>U2p*?Xb#`6O!T?RI-=D)a_FleVZe$)fIm=fkr@xxSXqye3n>3~FN z1QU6L=og5~^6+7G+z$-K6Gzd5kN!=Eo*J`Eb3T8Eehc+D&_jAn8%jnKxwC};TS*Rx-$wj^CjuRE!5*Rp6zJPPu z^l73q3l`}a?S^#xrOeBnYKt7-7q~0fSUIoR)v0H5nc%lyt6NaIUoUXB&E$@s+@gW~ z3T(yQ^ZXC5(k(D$OD<&&AOyrV<+%HC*;K@PZAUWRLu?tHlLt5h5&Q$wQ3~i<7(zOT zXO?RUR(22BLl0DIx986%1K>;5{Z$8^=BGU zYE)W!a4l_bG-?2+>X5et-S++>M0l~&CQh8P0iP~9y6EiE_~+(+=&$O$MJLi$dkL zt%S`Vn%^kR0eOp?I*X=}$&=R~@x!;+59RC_x_|qSat+N6B+gsBF@X6$uUXyZG7V=(+1}fcjLBDj5`DFFk}jicGf1_J$P}HVFyJ&HI8_3d zqS-Bj!MsK(ej#LaO49);4A|gdURR;SmUfH0_g?F++EfghDFO;4#0BeBr7SZhB3ETDLme+n%pU=O|W6-2pwbc8sftPuZ7N2EWCF7DvM;_}w^` z6f2pPbQZFQ_|9JlL%+4w2_2@`G`Tijkw-h55YHky{Z|H!eY8RwBoS|h%TX|DshTI1 zV;XRgW6Y@1^;Ax34K@u9k>_Q`0DYBEZ+Or+BD6NQZI=E14 zOb}2n4udtvQq!c)5`E+Bzen6b);^??aLlUBt}K`qWO&IA?MptaZ*Mw5ryX8u1>0?V=NkFmLZHYh z5f)wY$dcwx;IO0^%v7AeP*`#%eY`I1engHw-SUrDutA+>O{vQhsX)1v92}OC5uyk} zIcA9YCD%I8XmE+(!ByB#UH}-3I@G2+tu}lH851#H?80V!bmFi+I_*D4?7B2QPvl5m z2v^;vbAORD_BSEP98!0|cih7X!W1I#6uBu<^1k8UrIIRcU{yo1Z~j`?9fl;82xN9q z@q0;v7sfbco8Ufrdu-B0U;gfo%V`$c34E&(Gbr!g+GSf zt+8!$z*fSqsyBGOv<<7focxZWh^Su&R!%x-`gfq z+X1g+A-kSpx;q+v;&D(w0HM93=9(lJF?VH}c1!ZdSWu7ebWFL^$o@0&_>sg!uLdy!Flg26;foIG$LH%G>r}+>U z;jnCZ3^|eUZu017;ObrY3a;PbYo*Oex#qshP9XNwe$n=WWap%7Vm)j-(#hf6Z!Vyd0Wp(k7Xwv}ubY+g^ z2i0hz|UXXn`0H@5#TR9AnOug9a>~r*E<(IT7oQ0!d zcagDjYsBX#zxatVt8*>Dd%Y7jyv&CUhRRiLaQGd(gFX5thRT?FGg~V_Wv@&%w)#XT z#|M9*9gnL}!$CImSkZKkFpuXruBpr_{YhWK6LKusik{o&aN#*!bSveD@ybQ@TU5R; z=qdl*Sm#*GL+2nzp^S&@;5xblyX;6zQp;@d6SL|zJh##A1cV_bo}O2@wE#E7e#Xs< zs-f{5Nk5>Xg6X0_P1TirAWzGmk`Pcz;vtRnM72k;SmOh+%xGi{aMQ)&<$l8sg2D^} z;#)nqXHL-D5{z=yz2SQsKB29NN6HP6zw!&Oi{z?gf?=}YSqa9ADW;R$u*^!rpFkjU zfHwszFecsECL$WpDpZvvbACXt_oEdt(Tol=U8Of`ncQw|IbJ90vTyJe!UtYNlsF9H z^|72ZqM?E;j!Q7u3u}`U|46i5KrBlIIJR^wgH7LYKXkJvBqT#T;%}>pjadf&_=X5t zx$2nMK2muB({ah+R|MK zlAEW{S^+Yev=V$Iqq-353^vZ>uJZqF9GQ&o9uypZdb_30>4Nm2n&_WB)BRj21HCKf zjYp-NrRyuio}R()AFzth>~@p01> zdRM~1G~enuPdB}JT+xE>PR1atgm`>hR1RqGQih?9lf*IVJ>c9yjkGf_ppQc7^(n3) zU}H_v(axQhclHRR!j?(2{V0x;>NnkL!7{*_G{&Us^Jf!oK8bg@-Xb4mUU&R1KHPhR z!#*m8@^fh9#Wr!@lR3)R|KAE}iac^NyXJEw7I2G;Ix>KDO^)Q5iJO%g$jt^)swWpe z?{a>j!~*f{gKCJN$4c`{0h2seeuSD_(({AgQ+imt)V6|M!wi=-JmhC&1-*NGwwDsA-h@viea3oC` z7K0zskcb25G$uw2t}0<>r1(mX7x1}9MOij6Xz4l85nAoD#@OTFPf<8pDmDr>gY^<= zMVh!)=^nqbNUlcJMTBQ+Lc~T~GEc;Al8Ks|(X5i!ExS$nF|Fa?VFKaKscuwRtxz+{ z@2HC&hobxy4=x&{z&pbsZM5pxy#hZ;vfaA)* zM&0FCwY%Q*GnenCH&;_9jEwLw&qc_0p}@A%m~_-*Y_mmgKkL$Xhor9Y0lPokKd|}jjGe0(@eKnLyDz-E6?iOZB?DI8!4U5Y_W=}F2G_hIYGm3;ok1V zM*9uidJC!(#o!l6dAe~_oA|Ud!-eOMdFc!JGS3pE@J5u1Z3UH%HMYyaM|^wR(I#-s>L5F#l(fDQO+QZJ9n*%w{Fef21kvq+O{}y z-V&S4JU4kPw4wH4<$U%h&fbJaPQT{Eye3_wlxJYztD)oDdH58@#XNxr@j8D|hOCaF z@)oR_7}0cf!p~``@w2FjYFnO*MQY~pqR_qkHkeafMVs6&J^w?vzkSLzXVgrNH78aV zdX7OXb|OuzK-8__&d~4~R|JRV|Ius-xEYp9BPt|2ctVR;gjnhIsHzg2-z;b0L|@Kh z=};e;40n%Bbbt6UCiHh%t&g#aF$WA#XLdDnUb|+)Cv~V=1s^;9`NM^hnVAbMSSxt~ zR9xOFEq5cGjwoHMN|soqp&>(JZnk71eKPZib1&0Jtcsbpym`LWo?}Svel_TFr_K&V zQ)H>}!j#QLFXkP{RMcYPynK1%A-l@YC!2?++hvbpCYLh^$$HZL0`$b*F8aHlbLFR) zQk_s|c=&ihnLf1J)W)l0smW|*!{J$Ek}%0leqo@_Kf=@L5zx>8Bs%rhdQ&h zsGDNGd#cleW$(JQWH~*pVsUa^>;z9%pdr)b>dwfIKKZ*?5x_s8hC|19CanRKP1!Y- zKx%x6nBBwxh-&qi7DnQUuB@jOVd+|9u>yPF+aPMQJq0`Jq_hiXJ_k`fn;w4_zNb0$ zSEE12eGGaRH>k}h?o z3&UzHg~DfadbFRMQfGyGzbH3H!G#XKcMtE5%$|Iw_~t46G>C716idb?aDqq4qmmTI zcs{jHYkF{B!P5P4yR;1Lqu39NT{gWlrj@@mBCycCq`Uw)c5!#5&dTL9Y7lgaE}D5w zPd7!t$1Q)0$*s&k&o}Wj({xGOTB4A3A@aB7n>{1gOF4LFof&*TfXm_F?CC>RXMji% zzb4(rkfC0{OeG0_U1_y5<6~xn8GcOuu}|dmG)0%$p|(CUaF5>PGU&y`j2E795rTzg zUjVY)@;ZKF^1SSS<7L7X)T2ck_T(BC@v;fe`8~&rCq98a>VA4Dbqi|SaRnS89wnJJ z%3C$=2nHrIZG7LkZ*Oh49qH}APb76_<%aLwZ8aVLr?>w1``6#UeCcQPH{XHJE&7F@ z2Kd)IaDC(kVKb*`-EtZoNR0dGty?!%-(lJC) zar6so)m`^~dc|%B&PvT%xw>=PUTZrmXa8|T|C;f?VTlQKw29BK-r4|rP=5LDId#NE z*GAB&S)CQljbu4Vkl|~({ys?x(%?CGtP^!YFIhT7T>O-U-M)J5#M0(?ZT zV~CF9W|PF9Mp%v**wxEr0g*YK6vm#wlU_~yKwh@hiQ4PX8G?eenj=(v)jeB1Arp6- zT@Ii#ons2Fu@hC3Z=X(sbso>bIgng29^Rvej8s(Sf~en;+)rQ{-u=w6GqKIE2QEeR zTecfg5Q^{x1i6dBKoBMD&PJP$dgu|P2c8v6XNK`Vh%N$vIj!INsC}{Ba@;V(oSkEH zrd_md<2N z<>JV?U*)d!ARQ*Hh!H)A z>qRu}Gu*32ZQ5^G^vGKh_Z*(yD=O~k6&2F&nSHVC9)*RPYp7AgY>+ij#!%2s3H!+K z5#;o5w9Xb^ZB_SUR6t(xX#J?QEdW2tP`Yt$j3d8rpmZ=U=q=LvD}d9_dqLR|tp9j| zAro?lj)&&w~6PoIS(B_RH2U=^kiUsAsbST*5K4yw9_Il5X=rjo0a}h;I zI$x9^wjQ=Dfd$h`ACXmMP5OMl&#M07#&*Eni?X<)pH&yMxFUI+Q*TEZ3>k<$c3Mv0 zUD(~Ny=h|Eb?|%uDadKM>pSqIuc98Dl)LE!pzGrv z%}h%Ivv~T6Q62Ced+;2r8-tY-HjQtvZKVFyjru@Up(+QOh=Hk;Z$(3uXt2&Qtt;0& zv<=p9ep8vuN1j9C$i4p_q{@X6@^ds5RZa7SCxLl0rYw)sr8|u6t*|Ped^Mju1zLN; zCGyo5eaUX!dTw<^TSE_SOn?5KSJnBwodtR%-53ciK}=;BB)l$+ zwHu_o7~S6zw0vwn78*}KfR{k;L)11X+gs?d)P>=GeD{w@f$l6Mby2zpBfW`L87dWe ziG)VL0_rboMF5DU4qyl>x{9gN7OrMb>Fubd8=tq0#mGm6S#g1IEVR34YB zQmAH0*g%M22vZT2rrv)->UFhg8|2y5&B>qsJuaO%f=9uqfO!tZ&Kbj1(peZQv;=@I}xIKB{h$gzGisyHa)_X&zSze`M~ z^|`(ZZW?ph^*{&1C-5<}56RbM$IjU&sIy{)&jGEGTcD5k%@2{fctqe>JD72Eb-7W> zmaqQ&BXsc)zH*k&pW>Ul@z)*Z%`f5KABZe#PE4QiM=MlLrszzuoUOg}8wd0Udw&>j z#ykvsS^upAN2V~Bhb99NFNGpbQ;P}LfeR;lKMRgEgW77zd&1A1Xrmqy$}S{0CsUt> zLOC-Wq8H0^<~EF@q(1p|&v`%DH1DVAsrz8-LFe-uwXTN9E27XU6n(#?^%L~Zw|LB5 zOmKBTvC9QG_%HWufMS+M+7zNLlwadGW5mHIlNuj&&lhLCCZbjxjxx_9vd1%VhT@GM z&8Z+BP1$(=M}I|$%9SYp5i`D$GWgIX=WR~sTC_s$_4L;g821svF8n{>qmM0re$5b$ znrwsd8?m;OLunbLK1U%&{u= z2VNW5j3Xs`q&!A%TnO3-E?D6t;8M802L6Er_G!Mo`SbCoIO2o~BiJvQKj&P$Vo*8} zv6w-v4m+QIPz)t`JXTPyhn=$;^f)3gN>s2Y5rqKBr16~^;+p=Wxrr3EWm8(igN%R=yWXkq+F6FG&mk9`o z5{BCx{I3RettNIG%YrdXtQDA9uH_JWBKhjdzu;HOR18Vjsr{@c|BR(9jK8>;#CD+v zb4cN-iQPa@l7G|ped}%dv5ZzWQ$#2pv6y7Dp2%#9mf!@c%3j7+4XY1DdQ)xqQ3$->zN-WU|H*ASEo=DD$g$!}2ol#g| zj~nGgzjjCpf_IBl|1rQBPGeB(W9{4V8)eQ+b$znDV86EzM=KA8^++v=p#Vsqj^lNJ z>WeC@!zpqt0k-TyaseN(;0nx!pu&Z803mU1is1KZh&hsVknXK+CZKc@ENu>-nReun2tfS!4*>sJxUy@@tEJ_LIeh39Tl!%!lJ?|wr1ku_qAbBV;13mwWSemV}U z1Dp+gJqDe(Wzvh@Kyll0Q9^^e+D#g%5&jBEHZ0wLGGU=y<>-P88nVF5xJ?C^nbn$U zV9%V)_)iHUOsB(BQ-#H88;)_Jq1~KtCsH$SW=CN%o4*4C2w(? z0YP)<;SC0GH#PbM(^xu4lKeNe!D=O6eD+&QbS6`E+z z9_}h^ZeH}6fZbsmDPVe3#&{6F1+?qqwuY^H${i089E<;*VJO$_PbSq(1aD4agU}m$ z38++{kk*syj}~XaS5p?r%V~oMuDUqSft;3cEJ@&Q|HTPMC3_6+At8jj*$*2iK$ghk z%EuvHtzgfJ4iiW~pmk;yCvMfN4_+90#j}*Ko@j&eP6J;CT(Nw7x`ONvIFwj! zj6A~GgA?0h*P~him&zu}32VC38iZ?BYlH4^ci8A7xvJWh6q`%?!Noe;hkH$zzF%I@ zTy3G{6{E7#!c3vH2bTcs#c&b7oNh^SIlicN-yEa&uo&WpLBzM%rSGwJry97-M)I59w8a?`8Gc zfwOcw!^&8o-j^9aC)yp7zs%i=Rx#ik5&CNkY>}wx%)g3R-y#)g#qlsrL7qnfji$vy z;12QOyE;QMr$pUB+P^&D>`h@s;E~EEqrQt=zn57#}dZ}yF#PQ1imRamudC4Nc-MKP2 z&Q#)HTyDvDX+bh>Rlgy~AhtoC7f!>*@H zvI)a(4~*Vn5x?Tt7Q!3qu;Y@>?Jc`tA9#atue2ZzGG~)MGg@ z-MBnIl~DDSDuj`IBZdj&`+yx}o82ao6EogK&h=3h-mqey63ccB_H%7uy zsRns%Vy|T$`(Dt1cL?LEDl7-^n`zn$>_xXI1tGd;A%bFPc)LfI&;A0f$xKAW=0Up? zZSswEaQiITMe6aomVQ`uT>9p)JVtCO6c9!8ijM%XojS(^UN;B;HX1Esg~kv)Fh zv{B#x31Bjc2P}L02+>xp*0!u?fsxMzqSPv^{NiP{~Pr*q50*gI*WLrRib6|dd z{>3g~p>qK9TKc=CXnO)FK@+gGaL`+M}Nq3eg0Te4MOBa2<-PH`O+pP}?8{ zS*wg*=-9|rJVd3I9*KFA_1H*PAGW3tCJ|wXC_KNsIOddxZEkn}HE{d&g2>e|S+p-T zfAyYvW!XU%I;I7q*+{teLpX7^QM1XR_8aC`h-#O{bv*kHwUMc?a3O9e+tQ5nU^iG& zzyn|%n9@?{sC}Zpr&zZ*+;Fs%4Gt93JjGBOszErh27&fuWF?oSYVIUs42a4;zy6%T zpvJGKkBA3Xni~53Ii;|)P+3aJ#!DrOG3LAqFbN($aTmijNwowy*IROsQJ=U8E8`Q0 zXC>(SQu`4@WuFN0#k51;khJg5f&2H7!Xts9)#&h5BOn>;Qk1Nt3bRt%dlFHMn*4$! zSXzft5fApC(|z^g?`Njs3c?S^@H6t;hOh=V1`yOv_c6!$JqoC)^@JeTm>nuj8X!G0 zTw;`GjPYS7Ca6Q)aaqW#dti%cR?ho9WPU#+&REcs23&V+fcpq6NGwHQ(T%fp;J5Sn zUP-KN67FJJfyDrFcOUe;dd}!#iFk*`@8L6;!%D==yGc2#LFS)63V&LHfDi{Goe)VY zZ@@*C74(9CJ3thks+)n%qT+a`dl ze`&Zdas0}Wfc%)*#jCibD{^>>SnobPs@9)|8i%b!^&6MCMgnE+7tRen#+nTckdMl5 z9is3`akFiy%yb#0Q@W|K_2%l}sl^;#*co`}4s*(wW-4`ABP5bRson&*UpUsX$*8XM?;Q)xTW(kS?^PP#F z5l*$$-#i|#pa~RFMeA|kl9Ie`+cL63VfgQE)7n-sAtbdNYP1CHfUY($kk79mQCHLu zsjY4FuZ=T(n7QKEVh|hQK~BeUzuH$CPBG$Yk73p%9|lU@Fk^2@)uXu9R0Zv%C-Ocse2e+9jVj~qLJ=+88*X041R#ZDflc2>nF z8U@z=wI7&C`~gD`VvibPf$1|)Qc1&ZPbD0qo1jwNX_)K%?9!=()GJxRg2;o+LV?7P zUVfAe){iPmpeOS#J0Noq^qfChOUJ<*)y}3~JG^3lb@SJIx#Bsz;;)_MILKW;1&T+A zO4vbZKQ_v?Iuyx3hAMmRhvL_IwC*{!YtZ4S?1MSH3bDBbsM6C0OHbazjph-JiKRk!R>d(*k)D%+f*Bn<8_8ZH5?s~Y*TiHcZS*H3hF$-jwhO4` zW%$Ll_F~^L2w_nOSO;jz4`2W>731-6u5d5TbE>qjBl--;z*>?RB*c$p!V2??>;Hw0 z-dPPWP_ZIyxk4zZxsJmOtU$C8DqiH~#>J=wO=%5YcbQKT$QTuwYZ({=GU#um2U%;7 zf8TPM=KL+k1fjA~&YQ zLW+RjyCayq9xv{C;6KKr?r=(tv;2Qx2#>*V9{5)5Gy*Utow9bXlF2sPw$L*xX$V8{4yo$j$MOv^Ebj8ri-_J8{wbG>RL5hd6?h z4J(P!6xM4T=Tq2;cw<>h(nV&{)08cNU5uGEVFHrC#3Eo?oI_fo84-9RD?=R?uAr7` zm!WJ#D)K%=CMX&yo(t~Put&`abKAHp_))6tLWFAaf+Zv%21~RK%C^x-Tp1(cP<73v z<=uta_%mcKRyNDy7rPS|lXfw(9@4Rg>g1%X=hA*#8Z5MVv9 z?l&dwnP*qN18G+KuXg27glQDGxhW2YWfJ98%k|MbYQcDnk_>)<&-F=#Lb zrY6~5nugSa_t`RC+N&45RDfrq|DJZ&P3w|cWK6On?eb*cuuuSg3RN?yqj^S(`W}iG;P3o*6z|U;@()8Rd=93^!mavFGe+WC z)tEY8(gj=Qo&|@eW-SC*QI_+e8Q$~`qhE&~i*m$I$sM0ScFth&Z$h2~JJFCPG;7}Z ztAl~BKS1Ettfcc~#_gdAixQtqrE+RjEA^s0l*6b7Nev(IeKKtfRdqLstt}{_u-HOP z!}QXSub|G|#9~K-55EMNlq!mJ_N&!!^ij(JLg;ye6`;J7j88I7ej~2DUwUc--*rqf zH!$CsxydegL#(z4RL$Q7VQAxJ4AeRXWYhhas}AH4R8A1r9{6T|;QQclLmRRe7jUEh zep_NlNT_h9_l8|?5&ULvIMy%k3CkCji@#o!XtO%(4(0y$;1~y&ol_S-c;MjsupSEL zIwKEJ+Stu%n{GMC!`eZ(4==>j!nPSH{cp#dxcoz_=Z+4+b(hL$m+T!ovID7~XXIUA zp_zL78{nyP<_|ljCF8td!2>&-I7gJy>&(|S1{k}y_pcSRok2lW6vp-LeCvV%!6Eo{ zH*+TUv4#eO@9F{R;8X~jSQy)SA9KS;)ZVA_gB%4IptlZ;g!8=PzS8*~Lm+2gqdq7p zASq48$O!n1%@eje(F#{fKEiWF2I7-EKM@hkE*q|a8?;s)EKLDK1oA(N{~Q^`12M4A;_3 z)_zr=2C|Y{!yjjgwXbBxM2gX~T;3QIn<6CoCm$dcL7hehEr5xmTsM$2KBVF;se-e) z;SLY!qOJI97pq5mIIe-b^zRE=%V9*q*uc-)F%EVl#0O%AL3CjW_w+@CS=P zg#SVcpMKm=17mJ|1xgW9>Wr55hiHMb##!FAS!Nds*IS}KdH0wDLGXnMoYTPBYOtEK z#7S;%pc7hny>A{k4*{kDRp$XyH}|#o2F3LTyx_n&Vg3k$918XX{X@OTr5iyjD>8&M z=h;UT<_eLd*NH2~dTcc;D=@Vr&Z%1YswS18T!ai05i&<65I3{8b-gu3s4RrqE#MA3 zWa&haQK5+j&fEy-Xgcq8dw4o^o@mP)w~=6kKZ5R|JNf%McKgiV;44C1)F^shx?NP$zoYvfz!MUKeJpYUZFF(0D71O?1D8;VZhc84r76vqS!IS zi3EKQK|~MRGC_QJ-4T31XkLS}!T49mMd&fwnho0ZC4{P_GMQAW4dy2;nl?ViQ6R?{ z#yRU;a+SyGinrL9KWzARmShC57-*C?aMY+5hjpQawNdmTqqrOXgi75q6P22$x)4=R8BC0>tVu-5c9AFHv|PQ z{kH6o)3+GE9caCb5qAl@h2DEaJWw#0u*(H580bW1ujL?R%MNG{en zF1nT_tBXdM!x1!0$rT-W1U4^RItb zXu9j`W=c)RlCIT9X`ljP{<5}}_r*t%jv5u$jHBS=hodfsSDH(pWcj1_OE9;s*)0hg znW8wA(W1BgbU9JsHa+Lp*(p}Vj(WvSJk#;AScw}j-EeXA%uRxWMZL|?Z0-Pau-R6O z*=P}qrZ>eZ@mH2H>Af4>0)}9b+w@oBTO=v&DWsO+5^HZ?M&u6B1Wv%=%p5kNbn_ge z;}pt_*EB557OnRHu6XoIgr`CV9^+PYhqux}JWq$JzsFH$Q7em%(3=^Xl*ZD$!8jxA zV#Tiw->?lBye2)^pY6MzzUvY{N%eRcQsj2zBNc~G=9(z-=DdiD z8NEjHwf0I~8)pNdE`abQ`*gUDq9efPz@Enl2ug$w9Y=`P176CR7+>a}-G$wqvHoa@!VwMD7RgtUT&rx`WRRx-GF z&A3casj-c)IqmS~c`6CiD~D(>364_EEUSv2#*CiS_QPQUre3tN$OElzM7U+{OyS;W zLNcOLP!zGmP(k-MfsC5h|7P;8OO8c3R02Z&?V1zXXui(h)*nVvg<_K{< zIQRnE;`nru!ewIhM@H1fJ0JA;?c)k)9lY`RzXa|WwZf5iD68^w&OTr{DWW=)kk zscuwYAd?S^=a4K);$K=c@q%m{k;}I^{=a74yhGq~UcCR*khFF9DVN$<(FW6fEob1zfB0V-2;Digm{zH zcMj)WbE8(L$o;+mTO1joZ4P)+r#z%n+ei|pb(9o2${RTV{rQ;Q@Lkg0uj9+^urQVM z#X8*jTCXx!Q1lkH4Xt50nyH22Zjrthia2HGgRk+)!;Wiq3IOcL|2qOLFIypG^AXyd zXoT-KjAPEbH~9+&XSNkSWS<<@C1BkZs;aE^W;^df83N4UDdl;)XL+}X2f~@S|8$cH zYkv8cmA6OsB!saHEA#!#3%FT-|9Q7h2gtuEmyjGuJ6Gx)L81}swL`YR})aSZt;0e=Ll zr22KEJ>1wZEb3Kz)ZT!1N9b@^ou?OiKtK`XI2rK2pmr_Cc%gl0hAg$bi1A}+h-!_w=*`mYOJbDiJeQHms+ zqyn}&0lJWsBg7zZ|JVR{eg>{u6x{4M?}?v|0EI)1G|E$V%iLqrRuA43gU6o=Tofrc zz)xlqF`DB3aE=jrPfQKkbx?@wIcHeE80BJVy=AQNy&!t{M3Z@$yS#q1fD?5^qQ*c$ z8qXWA;4j{K143&nXACk9d7>L*+;1xX&-(*F^|c2l(9&O{(N+YeTG#JC3ipHp>j5Kr znC{%ip6YKwXXcY60*x|Y0szF8zypiPCva`@DSooH~ z!nn9)_I6W8D+{NJI~ZRGj`We4rHBxue>CsEY+SQ>sg)slVT)x~^5No_=L;H2`3z|3 z?4j{9B^n1%8)4W35;^)r+6X-$^E&!Zx>A+{vJGx14s?RZm>g3A+ zV?Bvgzg;KlT22?=T(-`v|5q8abDD%1Lyw%mhM7!eOfINoGCMb%@*lntBTV%Z~ zsL1>GupsF%YmbiML&Zi(`5h#$s!$R9>%=uM!=_|s^Ws@aJzoiSSy)KTOO^HdrhH%QvG(w#aLy+y)4LaRC$LH%bV6uRmCAkA`6sV=~WA%=ZymJ3{9u z2ml#eU>j5x-9BAl{>r{A!(u>RN_IwITour8x|PPAu6}+JAS9fw-9Uw3r}HdUd|*Q} zJvlj@Q8@6|&S-B9A_sw%dvEnj;Rm{uw)<{kVpms2ceryK5szs8il^z$3MvmMC(V5{ zEYQx#Gep3me>NoH5zq~*AihZ79#~@kgr0K%J5cZza0t&4=pW^lyGB>L$R!g~JF~`C zqb3u2wbU7>_AdRoU7_jKb}k5K*keoqi*TZbll#dL;jHvkC*J|tM%1|NPWFKhMf_Yx zL~Mxb6Qq69xBq_H+8lj^pQ2uH6|^NBk5 zS8RH-kL3e(1Bs=ZoSK2PmYE`6*4g9vLSblM?`Gm4Luz6AoBtWdeIUD#SeGqum27a9 zu=(uFU7H4s-3K~?^-K^*3Xb2O>)?3wrpfCV=v3!80TBX3yohQ#YHP?dJ?px+3W>zr z$-6)D1ZHG2;)=#Nt{&W-tzCXCQ0oapOR?*;cydg_%aBCc9sWsEQWY!aFK|(Zja4*5 z5VG8H*_e(@`-=pQObZEozyfIe>X_{?_T!ANf+^}q1h+)9H(?Bo@rzApyAg>cc8%CM zoih?G=tH+P8`y#y((%JUF~FEd$(TUXK=GsGQim)PmrRBlegcj*fCSux1}Z#^9HH#fVI{2}&Z+ z6=&n{{u{GazH7BQegP0&+-;%puD0a<)z0j)5&36nQSgsFTnw7C3EF-cuHF8kgs# zw4l5YuT`_5mfVY@Z<+H)^WBQ#YehWqjB{W6CAqA*x36LB5AL^B%w8(OCOFk1-*t1Pw*_k)L_sILvLD#`m6 z={sCZ<626xKM+E5<3vBTgH>`Om@Q>Cs$G+Zg05O{g!gd+b_gq=0~BDTyY?mOsMRym zL&#XM;I+NBWdP%bjg$svZEl6=Zm&p7?gF&LQ!MJ};|@40{i;DIy~w%$wopyzDD&29rP_``iG&22!`jxf!L27p{P zf{heqpFdxAe~@f6>yoLDoqt_{5Pt!&lb5PIJtyEqG=(`1HM|GXu}42b@L`k=m>Yh* zQ5ntcm;A*2B8s$(P9mWdM!|AZ%Y!i%=u>OVl-A3h!)}j zKVq;VEy@9LFz^u@OiosS!uJ56nr&itLc$^(`}hAKq1f=kl18_f7pss~2-K5|Wj2Cn zR;t$xQsi7a|2*8998~q?6OV6RTi$@sPaSe7T@7sW`YW}BG$p#IyI~$rvgwDh`~}(B z!=zAtLtck%o5v?3=eJ$1!4pkgUSVS8C?VIsaW*~ZxrsR{i4C6&J%X)02NbDWHm#^B z!ePFl$E+z?PX;t40YGOVa<-5rIN!xRe_#)>tkrvcu^Bxolt$70od5v_ZrW_ip#4>u z?iCk`5>9<>G?CFvA#dGc4Ig)8BY6cX{M=Pk3*;(LOjt>ckf2i-r(k!yNQgz|DXGfEOZ-2gAt!E;L3y1c}<_E2Ba6b;UydC1kj}r8YDPkK^ zl-($jZvm5e%hm=I`~nJWWX-h*A<7OtbqM_ebbmIzN(stIjmG<4pq^6PPQ`aY81PFW z*%rO*xguRLb#Qr?P(=X*8lntV{spVd%kV+mO{-N5Y-xW*ro8%Cb7%#{7cj$Yg_U3Nvy&P?sog<&Nuvu)UGeoFuFf(hhFsd*ZI_71>*Bj;-Cm z*IUZIPhH>>f5Y4{ah=m9)|U+7&0t$TG0DQrB8!670YU-2;_(6cb}r{FoRHR?XAZ^I@dADrGH$XG zYFPAK0XY|Ra!%U*4!e{SDDFJ<7QaNzDA$L;7TFG6r>4$KlwraYWPwaQ2EnfRezxZN z(`cV2a-uW=0;Z+yE~{#}_Ru}uLc`U|eTShQd8SF+YvmAT_kpZDFB>xld`lT~k<--h zVr;aDwGZUro~MzUcr#DTh^<(T;sI-ZkmHe~{$X%)If=B7gWZ!dQmqfh6zw4b#%Z)* z(EA}Ul@2={_bskfC5gaTUKtcV%s`hA)cNw0BhplDxc{ZevU^l*HJiLO(qk6d+IWp6 z3@tYxx4AC?(+nF(FY{b+m$cf29Q6gaeBC_Z|9Jpf+D#1YaC#+mTnR|c)iRx>$4%8s zwxVZnfkUmtC7|BZ_B4FzJjh82nSo=&NGPx3F)|6Q&naXoN<-QW+@E%SXF&Cr2ae_~ zX3)9`c7#^4d47|r-R9Gdl*NrzKV0tfQ1tdtd!k~HqRw~@O8CIP<8JGR4w|;*WM9c- zMI@$t{Dl$PAsCGI0CKz?kq`Cba!WQGj669^#~AqqMo5#6s+I^UPu0yj{FuJ47cBkl zoQhLx$!p49qmZ_^Id!H`y`^XS)$1D3!U)LHT=yU8ECNaQNjg}>t6XIu0lu^|vKW!N zetK872ryRh*H7_lDf%NWWmxyuz*pzu79li!SL0DO?0k-o^0n%BhMUw7WV({^rVOi( zseF#3RV$xXs@}?CaCJFF1%>`Jz;1dTJudxT%u#&3hvmIZ~fVU zYdI7CDMo1bvkegmXeB$J$Qej{2%qC;#xPGh|KU8Hg+TYU>Lls^%__K#Ln zD@+$pZqVWbJ?Y#7)mo;m1L5(TrPMonA6`Sg1Q_z`6~$AEqw)?!or?x8nOiXFnD-z` zRErVFFB2Y1N0rUSrXaYyEe;+LN(qennr_{fg$$wm65?IslG7CB=g0$c^#&y5=qY=a ziYYV9O3vIjyfBBr)H2Xdh|oHB8fuEumb}w*FYpl|c1rFc>qjoILbj)odg;SOYX0+i zX1I#ie?HDP__~TOI+wz}je45@N9eNgJof!qN6TEg^Jh-rUlqadj6!fAj(-#tyL@1(wny?wz{<$FCq z-p+q+_RH)UR~JOvJ;8Du>t2|7230v`a@ zzTzts9=t}N@EEeejs=A*{`jGSg6qw5YiY91?|7p6n{Y=H9YYJNRJn&PKBx!2wf@{h zxd&!@kPh#re@AuC@lnK0*JUEkAw@$>BcD-dyZ0{4$Sz+t?vb0HdLqWQto%*?W|dZF zBk~|OrmDgwVt;pDAvmX904=m#vH!)V6{U4ld&>5fB70X+-*|IM)O2!@QYv`QNs;;5 zqIrT6bVsu&UQKio)3#PI$}!H)>y5m2Xfk1L9FXwsOTD0#ko!v*U{Wd zDA@!#@d%MG<1J-O-}U;jLL!O7agRFo{CoVL6Oi~Lr2I-!jiiy*%D7rwtj|Q@OWMIK zYr}Ez@0ykl&(;6(W-f6Q(Lt>sc)}Lx)LKzJa@R7a7ibgs@{5$Zbp{p9i+v6z_Q`l5 za)Tr8sY*+INk}x$VeQ&R-D?>Y?GjUVgsc}a&ocEHCD%dR56=_QA6(UpCrqd|rU0D! zHG-BHw}*X^w~|EeK-DX}(pizKD)MRsQ==0z+5ahBpIML2t?x3YJCY~8pLpqMfH&wh z%y#;~->v9D+%{o&$SzK4P8P8O{=pl&GAE?Sv6-3dQ!dS)5tZt_7jO)f`0316Xlra^UE&D0+kAF9^n!2>Y09<%nws+*P-n(`C9Bqr&cLY_?$v% z#0aiTT7IfdrQ><3sZ=hy{VBB&a1Q5~e~&UsGHCnp>N9c`CRv1iqA#ykQU2wZAcZM* zwfdfN#9XPtJncQq3p8wVlurP761Be8a@oC*b5u{L#Nb_KK=(p1e7^L(w^AeZMA5v2 z`@?LK<|vQnPS{(k6EnPwBuGu%7NCZWHDE)5Z$EMeMbuOS-KafY38=h*TZp=gkj4~# zxoWXI%p;%LmlhJRB}+w1x^+f{!trg$H}$x?@x;y^yzW;+x=^!w+;7G9JMWP6G( zkmRKhSzfFtQs-&1nQnWc?iH?LLNQZmv%DjZ547qZ%` zz64iwh=HwV9Sxp4Rua?hrvzc=8DxE#{Qc?pdfB&_WZ5AF*8A@&Lt+edP0AoNaPQaE z`=Ql@*NP0d$qC)KGW(>)9amJMRVSD7I7}GArrMP@!h+f6saAkl?jlilErZ@VR;-Me z7?xW~lM4K=OZN#kZBN9Ab*GAgT85Bi7Xgjg()UKza26OPvjbYQ(I(B{kLCG0j-I#+ zuE?HLtQYXc8A`h<$&#HY&&NzZ60F>&oHgT>CFLe?jY|LKe>Rx)3)&lQ@afzSg<_a# zh@C?uD?M6)08Qj(g-ToWz!GwoI9`VL=FZ{!lZhH=`NoY-+i3D)PVg6}w2fv5JjQ>O zqEo!viy3`Ji%~oC(0k?5C_(-HR6DQ1nN{uK*U zrt=2U(e!cJYOeXL409X(>bGS$4RE!SL?7@_918kS1Ct5Ajw&uhu@{(Hqr zT$#p>@|m*2yin=!9IAf@IJ?P^QC$_aPXq&wp|96L7`l}tY zesd^7WS9gv0&Pz}RL|2=2L8-)-JArU-!lU^H1^Eg5~4TTDEjEt(2`(1gw23M`Tn4T zmcg|$O52?=rBz(GIBLAD93(#rviw0*PVko6P(czfeR||N;armuFf(zZcA}WjlF}+O z#!d;Q{(k=bJM`LA3XMQ__BsN!x*#M{-Yi%sRBAYl!m}FeGBPrh%xP%RiZ&Ec<^wgE zC=J3DWo;_;92#8vNnCAx6n(<~Bbs1O=@8|C$&Dt#Tf&NBNqf)Iudc|ltbG$2`=5x2 zSWo}TVe0Mj-zKsf;Ygl_PdMS5j^qe*J3K;^@V&&7!o>r#Ywnf4A?`iu^Gvl|^yt&8 zF`n3CL$#bPOgAgZze@oR?a8(a;Oobskmh>)Qgr)V`LcZD&4G_OD@KGFE2Mhc4m-9L zfumy}!&sj(F4FkR$q{6hq93AS`^0o0%77IpO`YON6V;oS0hV)wUecs->Zt0Az`@KO z$te){TcF-1COrr$>rPlhrfP~q)39LG@T$sW!6qpG*GCsotTDaCG`L`RdP~es$;gH& zr)N!jLTK9m*gcaRQ(T`Q&--QfZQ&Wijd4qKs0whuSdR)@-xg)<%!N~9ZI(Kmq=iMo z{^o*THWka(Qq7#HW&MYlQ%%JIc)Wj!T=IsEus3CHQ!trw1~b(Uw|VlThgwo5qTMI- z(zOe1J)4)I-|;Z9Q7^|At1PNxhZOdkWO&cVgmr7Bk3NcB#0@0Nlm`zlgh7GP9mQl_ zmq59&8VGIqupTSq-thd(B7c0JL1}h-p!?OZX8I=&ZfcFSWe?bwnoU``XA<&%n~3S_ z2{k&1GMPLrO!OEaR_2_e`CcW6v3KSzbrtReRu|mG-{O~oJoRD=Zm2LUSLkYkCjhCg?kDJF$R>X8uavY8itVGMDe%mDERCrl=x^f6a zUsUGNby)wYm>ucD(#vrxSec_LvXf1UqiPe;pcSP1&C6)&{xo&tfa1pc@d5tZ9%$-3 zi8bTI8nh}*G+nFxXR-zRcx+D12cYxW+52#B|S{*idg;aArqFgF1 zq7%=$GCdzHJcpi}2`4>k5bPLqCfJgi_1w|;54Gx8d+Mb=1miQMx&S@Rw}m9nqqElllb3HLX=z01|U#B6ZVEV(%sk|Fzx7tb*#~Uu0(NJWOaIaT?4_H#TM zKP$ZWzF!#w(A0)fOpbz!LNDEjp6?=KA$X1z=EJ7{jy#*0pHrF=3GFRJY73e_eCNSF zvH}+5q7hznvdI|dHRW++S2~o>pKn(KR7Px~k2%A4$Fqcwa1ZS#b1oDdtn(W?ewl-p^0dFQn8_e<|WuJ4OkCX-TY=5U$#OF|8;dT5f2`SI9~=| ziosK(Ng666I6<^~4xVY|E0kJXj0RvSm8yDYhyOi4H=OU)?E1&yPx~!FH%u_hTH(Q3 z*}u2HZF_yZe*7NKV0~@Ja0V_9S5Wxkj3CFwachL<;nIh1AW}IHaOk=bj63+LCSNUsMtK! z#JcwQ9>8OlnvX8_9*7gbY)-FOxWpX)!`nMGi5dpknq}LzZQHhO+uCK@wr$(B%Qkn} zHmCZ`Rd-CEiI_ey7vE3#@_BQu%#~JUUs^88=PHuaxfzI^bHu!lyN7kY7F@b&cfaXM*Y zjyYVg!aKmOse0JtxU*4d{nZ9FCTS+U2s;@rdPvOkBJxdHhJ3r7_v1q<4in?Bq>EU| z=Q;$Dp|HsDD3A735DSr`h+jQn@*Ytray=HVD9+GnE~$qs$Rpt%ou= zkRh&;It(@63Qf-! zfTiE|Wf~{ht6c|<7FtqS*I!&5=9bUwb(t}jw*NLXM6=)zga*Ivo&C>xa*7pNS|jT3 zfzk7YY?EbFWN9TmtNmRrr*xbRq%S_zsD5UAIZnbqtYX9WfhIv@-HE=#+PQo#K-j+j zHHzR!Fwrps6aWAW1pq)B006+o(um&9)WzAw(9Xor$%K)Pf!@o4R>IKE`Ts*6fvAUz zshzW>y`3|ihpo-BhPFMjIEruG(hq}^zChu{g1AZG21v0Ks1n2#@R4B;cP#qz{`C~t z2W^NB&c2QoQksrLRw6_0px+ZroNepnQ!epZR%uI*h$rPqI z9SJNhtYMZ#swba|+B=C$!O0LjQDsR#e4xAt83?u_FKYFlOiJwblg83Dv<4%UcP--B zYW=d%c(|KKgaRVZFky_SQkdghH=&ei8XY@a)`FmaEyAOEG$(hqQsXNB`2$ZaXiwPJk*8y~TX8d2OxVc7dWxWkMv>vApelg^y( z?i;k%YJRwP-|5vT$5k)RM?EKcX4yyRBhId_C&_8J?$Y!MT)$~8#%tN_54{E6cyJ}uuf(is!rKwP*7c z@??&r1qj9-L|Gp;`EXppHe1C8!?ZCQ7~5UKn&aaHuofVca5lj@bA?Jp5gm~rCrdR% zGb4(r(+l+`N0G3?htyto+#p1mq)rf8oUtJ<1ib3bPQ;U`xvj|1?wB^@?UJO zWb1c#aW7v!!cQT#Q_gJJl8zFdb@zO4W>)TyhYf7OPoE6%;pcxQW~*w#IRhqfiK?Jy za_iM^_0!cTCtV ze40qgJ)eh&5fnmhPEoY~Iy#)FPb_9VsqdVpw<$rd=*&pl2j!YE+F3Spb!)7jH05?N z55)Y9b+C}FYsw&3FgMUQ^{Z&itT=qB;y>DjEXOJ&d)ib3+EfX;yCA`U>fAA6uxzS9 zO?TbxU{1r)mHz{Zqa`y``6Cv_J&79c-3WDOIQWd$7(scnj_iw_zUH63{DrCx2nYNF zgRD_SH+2u`=T_O>u>Q}`?bYQRJ`FM<9Yx6mS(MQUB9@aYkK#xRoj_uQE&7ovay>PG zjtqGYw%&`eVh<$bV)KM)0Gzf+HB8i@sJxvA#9DM9n851Im^z+PNyKKBU|pp{Q8+U) z0kG>(aIer2^H?97%v^aM7qx0yEAVX<-NbnRG+E*lEP&g1FEzp#3-y?N66O%}fVueT z;Ks_+R;}O`=40;8xTq4#z2`VkzRd_+4I_OpdxzmjoG~BbABh?Pj1{}tBRc?tA0MX{ zcfVy>xlh*2Q)Id`5{`c4lb2oOsInJ?`|kB)7P8!S4Bj7OYZSkVjMt}HB?Sm7@N-={ zFh%U^cyLt*b~yKa;4LBXdfY{jvpPm{a3Nvd&sn^3PX+9FggaW_kF*rHLA9=8otT|a zKDUPzZ*(!l9xaqO7+vf<8~DNB9UXu2FnH&~HUHJr?gx>l3;D5d;tQEFUF_pRrxPy z-liruA4x235Gh*e9Zv3(?;K`x9PY$c8J0juR-6xq!~A>6Ly6rm{9zaIAbgO#bScW# zeKRs0a2D+rhh0ZuVmMbMnYWGnTB}^MT04#jgi@P170p3HwR#RQgO_q)ItuYcm`x$% z7*Sxvf=G+3*mO|p`U=ew62bvD4knjV{bYE~SjiOT)`8)P`mhwhY^I#(5Zh14u-VQ+a1iDxSFhbKgBh!{2je}ALEtNCJSQA6fS|KHxu(KJ+hRRo z%2cUM_u1~(S7ffENMMlhRRD$(zD_#V-Yx5&03u<^Wq83rI+=e@Cimg?JG!?UThny5 zq%Z~!lt4Gfbi+a=2qqjO0l6>-*+5{qDpQ6rRR3PJn1Gy8=o79F3{9*@?LE<*h>uh% zt^8M9l%;^CVB^X*Fr0`%s&fpa-Zh@nI#Sr!+FH|k;H_jkA&%wzw|5Z}O67<};p*R) zZYsg-?x8!mM+3+&8L$Q-c&&lv`ADMR>(5ivvZO1#+e=j}oDAEQ0KO&i`aBxu2{yEV z!c&d_Mut}PRVOFEFIaQENq5~+qpMYWGaruWKHQzYub5`*-rsQi?o5gLN~dtKK!HL>~Ydcbl40KXqYk}ae!0) zy(z9vjOD4X;008{YGbS2A5F#pld)9&li%|}NJAT=vPSlG+oCr45?3FpMrm|7ALqEw zi&Ppcm{al>ay})@vSq9=trKJ;MNaSN3dGpT3dDe!o5wvYlkz!04{vh;DWslxR$qkW zc$0V5JHzU0n#Z}xLHwxI;a!Kz+3CK9H1*zdjhhzv99$c6$aFo^L>6DO7eNGHgBk17 z8R&ZvQTcI7h@`7%(^?ie%R;8^HtE)uS+)99`Sy&{C?<0;N&~g z)!bW6HNm`18Ikg=y<6#e+Unv4bOaelxzA(R7OJ`X-5VZs3ej?_bi0Gn*V!v!#2~N2 zegPSK7r8pV@fU_G;Z%jH+4UOrL0_|utYDJJMj@N>uc$>Y520<`p+2(s%HwvPVx68+ z?>8iYsRp-~X(!78=-~AvzayH77%YA{Wy{k}9LwTJ&8)@R$3iwh$Um9>9w;NPl8)=* z`E12=53*z>RZbMlv?}5dqZ@%-MIo-#vPVWaOYhGS6o=f`IJMvcy#l%rU&NAQY^V0E zRq9?>-f-nWVULokB(7g!k)bq_V*m%vAe0q*0#LHm#b7l$#n7ym#s#BGRWZybV~E_$ zJUiF0Uq*sk3Lprqux6^vXGWnbFVJR_!;s0`rD9G-pE-!1i|ea0Z&nQ3%Q5R;pU``_MRT~ltZz+^S1UPE<8?`K|ez}f~{NSV@B8T^7Cqz-K4sXO( zcy*vG(U3zW1orkYQZeot3_G7ZFdW003(L&rO5z|GZx~ z(wMZ{6hqlYKjnv6k_Bp4Su`!+u($$&Kp?NZDi&Cz2|Y|pZ(vHBb~pWRAQbM)6kvLhxSuV)1oR2Ua0< zJ8;XsH>!YmvUto{EvYy6o+{DIWMxsLKFE=Kqm>4QdX>_P8HWH>0CGQxXebT zqB?fw>oR=D-)^Sym~{rFrM8``A$m;gXvQmGKtUEDBz=!lNP;;{$iv#v_6;%JBq`&F z82pV}&W?f;QzPt)+? z#qa{_!q#ar&tSmkQ-|izJ`1JmOIjQJtEvXaB2YTxj7A^WiVQ|Ndqrb5K-x6J(X^tu z1SP_J-nr36*fMf$2SWRf-wkZt$aDr7%ag?_bVC>CA?z}I4S`{xqINvZ7W?r+si)PW z?Yh{b$R4Tcv1hwtz^XY)wZqSEB+{2kl*oh53@$y%s&K22Ohj2%8Hdy;qV!)*gRI{l z)#g;3+9SjOjPoYjB&xONqRv;3vH>-PK?6b4|{G zL0E$5OW7CY?ZFB+Tn7>dBy zY#t|X?SFRZFOMKbR;1E)T<1A&K!~2Ld?m&u3vPusqieb{Lbb*F9Dz583 z{P%6S3zcu8Rf$bE|8>h!+U@>+;3~B$HhpSiWWtR-i{Uu=iB_zk+TtPFU^Nxq@n8+& z=#th)=Le{d6+*X#Q3Ki{MbksL?Ws}sRt^A_ozN%te@(xUW3ozsy9$H61Nb?ub3}>; z0d+RJBg(2dKH?ubcg!H6rqpwmd7w?l0z%D(k}KA36J~jY!TnCP*G*l`Z=4br!*jm= z@n_s_r_H9AySeO?)Wo_B>&?i6nkc}jSh8YUUZb*xhMPuU4q>KqyD$y?Q79bdeFMcF zB~ksSZ3}EZrx7(=xJ(z{wTA8?B^+=OyxQ$vd&=zJiu+|-BekHG-`0aEM$XBuHmL4+ ze{$)&5D>M(A!g%uh~_ae)q?+^#Lz+zUO49j}^ z`kD^{uK4~+P_SUc@e_gFNl;k}2kK@Sf%R|0ln0Oy^SH`IWww!~VyJhtT_$K1Xw@e` z*9X7s65^=81z$7?2Uei7x&)ImkU$}OvPKXUYoXLpx=_W&_PcRPOpm#N;9&Q=SK_TP za+sVypK6#)R2g^`oi5mwwYwhZ?KemUtJ(;t9|Kn*kfGR}5$y}w=HsRfz$s{*`X6NF z#b6Wnm)|+mPI=Hxnu9ml`RF$t4lKW8c6zqb#C2?z9Y<+1?}sR~^lWhPW=vCg^b+w) z4f>D+GFgq1H#ZWeE&wJ|d^c7s|YZ$>vwvLLXJT`^K6jHhG*1-6wr8SURU) zKR`Edid?I6v%3A&0#gDOTUyf=wn)Gd-7FvU)n@w#xz^R3b2^7gh{m(v1nLt6A7czc zIhwg1=#fquRfa~aAJ6)vLyzsPIiG_KjGPzl1+#QZj!)_>AMKH4YOd>MuMq9Pf|WUmhN9BZpk8tsjtIfj9u+F zd^oq8O@!m_N>m$|K27tX8a+bPt?7C=ueRN5#-}=tmRYa%#ZN@I_PRQ3>8~5YXyFc4 zSB^E@qdA~b7S|%#bay7qf5x8mXk*KPmIoQouC~?S1I1?R%(s^X4er6aPv-#Zw}c#xk(e>IJ&~eZp@(PVTaPKyU@ce^d)T>> z{Y51+8(H%|YCCYsQTj@sv@GR9(+2jNk)R0>Rbq8MEtZ1dwIl8Zpmsk^HAp zBTEHVdA{LfbVgN#q9H?gsT8XYV`XJ!CCrBeWzJR!q<{Rxa#9A_whI$XBtA93x@2j$ zkI)*9`-W?131n_vZ^IUV8VnN{A|MquFJ9gD-fb;V22Cfevsr0V2z?=xM`JJ1Gj%{r zzQX4Qiq8VTEhr3Q%!1G^<{ynwkaWE?|C+LcAlmR*E{Ke}w)rqvkt12L2UWy8^h>E{6^l*Jr-$)I=bo2gVovc!?^KZ{Tu;B<@qbr3b#kVj~46J5*soRaW9Mg<7I8mGe7Wv+;*||8~Wt1I}A8i z*9&20~99ARd$u zf5}@~R+Hxq>bI@0S<|t#Ke_L;dG}otm3>7%My^2+Qa-VTaM(qvqFCZ{ztk}%cAGGS z;TW#%v|DfG_68h2esM+X&AWpWXCd|aT-`QNzZnkZhSpadA4i@UWeuw#7M_c3Hv{mvYAH$_JzEX-BNgP1$pE($7fl%*<2T?C2;j%u zHbgT)S-TU{9sWY%HzxOuGhJMFKE*x7GZV*%IT3S9VKs*WSYOA#j5uE(seT*iQLzzU z6wkkazcl87!Nc|a(4m+1^N03jbBiBI&}N>HEOr+Ul{MCnW;D$DCeb;#UI)dKbrGD% zqrMm$Pd?uMHF_#(uy0E0AjhTc@JUx;Aq(Zj_KYBZU1HUY(%5qIbGV!2$LM1a>$ogQ z<>Qm&9gnS0GE+=^j^j;%?`d;F;eq9PPl83CNZb^a_mQLFn4z-cBvw}>9BbT5O&AO- zR2#Z>(3UxxVi*c;R`D<{>CnDW%pPy7RKFL}`>N11rKz&XN1R=;%>hGNYT3UnE{YU# z^ckDk3F1jPuXIu$T{f@*9T>}<-#>%9=tyn))@@c6Wdt) z4ra#YiHq`3jAxcSV4_uJx;Ds+%T{zOF--M`<2=CRPGe~E;WL<6nwp1&{GA;Aw8BMn2Q#iX)dQo0x$fODJe##V1H{I0p2Zj3 zmUt&TzMK^&Cie=i!`7;v>Ir>n+kyvcp!1ur|}lc#l@7y z>`FJHyT5L6~ciG?h-Z5xsGm9oL{>96gb%<4TF$}C!Kd_L3D$ofK9cRlg> zM=(7@xSZ6*t@PHA>fe)i!^tq60mpJc%_V|DpOMNyA4N|+ezhFdx-X$#`*uf1 zU_bh=<)D0D2V<2|g&Lf2_TCWcdeeV;;0Id7{9;aHf3UienV_*I=}SDnH31#j2ldmj z$gd%xaBYff#k#Bz-obU0HPZab;Yt}fY%;UdTXy$?rQJ8x>jfm)3Yj>1Bg@#)W`6x3 zky*(=+-hCc1wiLzFDz_(=^O>jVRzmcTPycEEVT?WlN<5o?XUEfF;S1#oOTec9Uba& z9pWa)JR3Qg#ZsvuIMSaQ5S|<3+Xv@)(3E+|2-mG`?h8I8hoM5Wp98)V%WHR-2a1&W z89o&ll#L@>50$1V>{-?5NTPq;N1!Xi(g=eqPuuE40abmEo$pFSSk_9I`+@2W4r_Kf z!laRh)++()^0z1m7DW0q@D7~3!zJ zI5fe=6^e{Mp!sf1f2?Fh(G;B7M@xiN!Hy*y1SbjFVkz{w%f$sNMxZYRrb!ZZ`gLDm zyzDVZXY{cNimt69yEUzU8m>hETCLg5T3VR~Le?I36aeY08=%>fd_Mf+uU}OEI6)^1 zPm4JQmpCfiDa~#!Aj^*!l_J^L$d1b$H&7>VWT2~f%AEBPg{tP9Z!#bbQ>!ZTSxdzO z<1QWoG}J+Iynw?vik6w3s#OnD@eR=NA7Kc_^H)Hlf<(AdPeUZ46j*~D2@a$gbXyND z#we#T9aX9zr@{a0PC|O%1@BWlx#r|8lT!iNZO53(@WiBq;LhTgagovJ$Sf~ zJTsF00c$*XnGI}MW0vYOsTY636hZW&fbfW_w^neRzi)-a_yW$oB<{tAqu+k@ZChAG zt~hgRqO%|(il#5hT(gOUyP+#nnul60M`t@-BeG}IVUYq4yF=$!0ZF$NnIetr`Vb`szx$MGw-#o&m-aq`kG}vZ%dUucGKEM<;v!q zG?T$3fulM?4%Wy3FWfiDusBo7ZJ!_?x!Pg^D5PF3Iww}Odf}He=pLPVneS2!x_lu; zuReCQw_x~n3Y=a7^lB#;eHAt?#Oe1lDK10s=#>_hbnfR0scYFT)uVzHa=3*6Z6>{z^roeG$H7?2;!-UKGU zyafuqZ4NFRn>MFY2)dpp>_hE-+GKQ37dRJQ^iePaa?nJmt&YFG;KlOQMKU^a4k$nN zL_~Cs^GxLV5(f(jL$uh;A&?P{Fo-%?WV_9_9OcT-D zUH!(Ue1YzytU_e=9~s%?B&|DVB7%+A$u{SZ0j@24>ff0;c2L_SKs4DLtNh<~?$%eZ zhBTGb(>Ob-lM-@1k(_cupt0#RO3D;fIsuHyy)#(bP}A~+u;^LPGvP^VAU)9$sZbJH z6F*wP-d1vt27jOTPKOr)~6OpEfiBS~-uk8`%^zS}~T|8nzv?!^mIrGp(dl+oN%V)nP8qzmpFRa|}TjH;id{4q8`yN30bC53IAo>Hiy;xkp|WQ=&k_CK_k% zX`=OK&N<+L2rL9B5AGwl*Dc7>#fed4l^LCBHZ2Nhq1{e4MP^&D;gj*0l5ud^={+t* zk-e;J7Jk{Tc{ayXhBCUsU6gDBAssg#O)0_hIj%6S#%yx*u7sC6N^AB90Q`nV^gWdD ziTiMe7cz#{`g3`5x3Xf@KgmaGXRQO|nzId(<4>mHAE5N=^#*hMyxT>8z2!7E^bQuI z;D1Al99Fp#n<=z44sd%k02*uG9%=>O3U?l<$|GW*WV|(zOQmqovs{H_PEs&d_j({% zVm}J#nJDMPgt7x-vhzjpygQTB4j~aDnOtJNwZ?)YovCJF5KotTMWb+(dR}&aTC_t) z|DKwBcm7H{O@VuMHIg4)2Y3IN_Yzj!K!W=S69NVf6tijPo5bwJNxPYe9Jsvdd3D=C{AZ~T<mm48c_G{U%^Jp`N1(iI(sH6fgLuzF*pK1omey60x)`Xhl35~-V!;&;IkFt^ z5r5d;QaQ|$^;sO7PsYi@H1}j(H;ftz!!@+jvPQ{5!kl+;gsN5orH_w_SIC~k)^Dv0 z)aQ^2a((zv)R~;=Ek}mavK95O8?XFl==s$~Pz-jAR%$4ZnP62cGaw>2AojsdB~c@| zqA6Zb`-A8pkV%b%Y1u=5p;8@&{vu>;DS~V+{#IdDu*79gZ5ri+LfiMRblIjKN?ahM zvz{MPe*e90?1=yn+3RK3rr~L<-BtfF)+C->;}$;^oAO}{F=k?XV@1%fDGgX0;w8ESuyOKSKHMf=WE``w=eU8|I(B?AmVU|lRaWH5QS z9fq{HldkTA?NlA6C!tB+eQ^Ddn{25k%{gxQkW_8@@H!y0;5xy1FmQa!5q8Jsx=Vq^1S&mID$s{DfR!S20g>BHFg;rQG zl*}XxU20NmJc%@J9&PI>&qJSrj+^XSY^O(GQ5?BOM0p@fs`*wHGzI3Jv6LQ|_Cuf8 z?HVS>5I7tZ>#~t-$acP&N(*#cJ+8jRM+Fa;RZF|#Y;@+UMa2OwXMJshn{+K=!#Smz zhQg+f*Y#b%2#++tL?D^i2p+9 zhS<3tZn?doVE&$}H40~|G4$?7xYucBFx3%H&9sR$J^TdK>LN089+Xw*K&y~aA~r4q z9fz&~DVlL*IHqbMtxX?pBA~tOsf|<{#oFW#YR{`)cEbX~jdWk&Gl$5~4Ti%s%h0F- zp4#*{O9@SCaHxkX1mDgbVbz|i=QdRmCZ?Jnq~irHeObiTqe4wB6fro}iu0hxs+10FkbZFYEq0Nh4#N z*~>yxK-JrPE^~!6o)T5`wZ=YsJjmZ8Qspz&u|Sr?5Eu_EbgbHzp*;7uONNmX07h9+ z2bjmaQ{ZDw$&mo`z6rUhqE*&IMD3}S6(Hols}RtK{^lVVMp{SS`VvVE%ILovgTP$x zAWDW*37}*1Wt~$L+AT`(xQYqH`saJdQ@e*gxT%1gLPy_~Gg|t*O?%~ie!JPOWdyg3 zq8uYzCK>y4SqS@`xb!{!fJPivF>1s>jUdwwPJg%Qz>4AkSp9w=K%99uafSFz^TSlX zJt3!2rn-dxwkH58H1@u%7{pk)JE^xH4KKuAyNA`@f~=->O}7w8i~{tUux^LKxYeV&2$&@QaNc$gQpmD|_t`Z!uvH?Er8 zjV{%UOR@_xo8jNqn8d!rlXZI@MzWl$|LXJ5|M{WrPkblF1qJ}ng#O>^^HzrcV}1U2 zHq?1h48`|G=4UAO1Bh9Lj>kk389o_YQ)>)J)2XG(pidNuj4W+n3rT{4 zP?n&8kWEIL3?=b1J?8S3-ph@4q|rD?78xpIO2fO^+wLRB{)NJkCT)J6p*7qLOWZiD zq|RvUo$rUHAQS47;8pr>@Scp)EVwZt^C8SNcL`;x{97c0FFrEo@-a=bme* zTeJyP5p9|9se!6Dp%9Qr8Wmq(gLO8+i3EQ)F13W$7?z8>EMt|Q@xPDKB6$RfXD~N8 z?64?pCAfkB3pN<=;w|5!EtMclvpeEzogVH>+`h^7uL2VLIXRP-9iv`-m_Ol$l`>=D zr4>9Hg3vqDy+mYqgN?qJQse{uyS;Uln0?R2B)u(GmqfaI(jcLQCDJ6K+J(;uVhBcB zY2q(DO$2}69Gbl!>ZL5~)ztwv9Pvm7HIBlWph~t}>9Ngmn(j-e%(;xCFE^jO1rbACckhHy; z$Vr&`J>vV>v`&A*ji4_GlRg&A#5*gpedcu3c^vK}D>PrG8H{ebv8km)FWNERxI!Z>oH!*-K@~x1=&^w8DhwT%< zt9*nMau{v~wf?c1>T zE%M^ik;9)t0PX)o;liQwmQrL3Z8XmO%YYO8j$tSJoQ1ivk#e;AI+I!S>M5U^q zRiF*3aU-{)x~fg$%gdkz$6N?9wg-|yfk8=T{7Yq^V=r>TCcKyeoW%HJs@jaSJB>yV;uqP5zk-9^#r%FP1>We zeJ+@g2=Z>(Z@j1$(oU?rFvg**3rI%W1S+@AcoT9Kiv+6J2o_ZqCYzegMd+ZFBUX_+ zLCq*lv-GAw+TEI0!6xmMS2pv&82_)))yPojVHCQ)n#ywKIA@*tX8~;6ZlX ze91#GRaQJNjKKJ;icoY+nS!C{$1+Knej$!9REeNY^z9?ReipwScmQA>>7?(L9mUSP z0lc~!K=gt2+H~Gf+?ZA^8ddzQUHZiHhLot$*QOH1&mObAmk$|$l0qj6{bMVH786n> z@3h6tSnR)GGxat@09QBjI-pXVeW>MZzKCUiyHqiEIr|K7{Xy7`ES_@pZ8- z)}fo$7+t$o##azI%}X!^jJqoF59v^f zj)O(w4F7)WJ1loy+U;sB1{hMIA_4VgY9@Qr=OoKHn@fG_!U9cOggK@uf_VWw!ud>| zU$UYUNFU-`iHVRSZ(e#}EsOb(M^1kMWs<}!Rf^wYIQ7YTNsU!Gb2M1)jA=SkZ3kPY z+2ASLayyj{g_13pEK$mf2ncl?5VwLSy1%qt$`2~S)*N|J|10X=a&albWqYn1!*Vp5 zB?7urbHX^tSK9I0T8fs|SUEd<{KW-a!=a}clgi3aa`;AIa`;y z*-LA&;`>$zo%M<#LS$@4qwbMh5U<7Uld8ws>by|5j(E4`@g%o!NfWC_&-#%&+N&9_ zL;mdF9XgCPhb=4!UHhipfypEGtv6)1E2twm^zSBe@AB1*li7)|vj^7voyorSgV5W6 zwux#cd@m5U@Pr>N5Jr^MHRH{kh=G@`{RsZ^{Hj*R9hSz8XctuAwPsBo(#0*+#bN_A zApF-A9(y`CR>~9{-#JR1Zf9R)Owge9vACv0%A{VLaDlV40UYA(0%wW zpN1*7Dx(iDlFtdSbOH-g1qTTs-C?~e0CutAbSW>nKRE3fulS~N`#x-L zj4$~^TY&EvY_;moip>lIVwH$+b@O^z5R3U@9C!*Y1jiYutnN5)y*RITTY5eHYhNQs z7ljy3pM^Z^k)hC9&(ZPebDO~DIo;IWr|wiD|H5RxUTbo?@@R4%0XkK8N5KWtL#D&{ zuj-yPek`B*3B-d5Nt1<%V+COaIA&tDbfmfc>J})57-(uWwid5?tr1@V+D*{2C z8>X-#DkSKCe0X!)wq1){Mr~CNX_@Z0yxOC>4@C9sg58z^9QtRHb=xi*B&0_0_3WSWY9tBB|Nl@ZQa=g4q*qp1e~nBNhqgk_M<`s1u8_v-8VX`PRcPR0|E~oM^hZNlA^|pe;4c}6^+h3myzo1b z#0Z*;1=WO>8J;c$n*V6MS3&t6(6Y<{cE(=#1(<6($e8HSp(X}36d8!(qBWO6CecXT z4@e@cDh6v+1;&wK3J-9XgN!c;6P5D1K#_ zuU8wU66mV^o^s)WONl8O-_u7dxZk<6_~BPK`@U-(Hbc@SPu@A&t$20e!BlEZ|(6- z0?+&s=JCHbE*xzB$AnqdkhR}r!{~)y^CRe%hBmqHJlN|z%|tnEt<_7a4XXv$^0Hk_ zl!z%NnjAA2@fBXlo8OGrzWQkiOE#I5Yvj;ei7T`aiuCDw<+%~}hBvbujFrSLIQ*LF z*~^*<`cBh-BtqQ>AIigH4_z=+TCwgU_mui7BU+j$Pk{ABB|8}}m?ka=BxZ7pci>jy zdWssuDuXUL*fTJbXns%nxP;hXEYZr zUcR5Y*&atiJfRs6qd86`x60l%RUF(jr-@bqjZv+yIIiIC4?WtS6^ltErPj!HATIA< zdm2=3q{?h_qfbtO3al6ES5iwJrQ0zH{7u=hbA|jdk(sq3kl%sq?b z$Vi}l$tLkAWdXS}_b9&QoOuAuH3x+=%P9c=2^<_}cA1b5i}l0V*=G6dwCc4PU6t_o zdQtPh^+MGwxWfTDN(BjDPTXzdj(>?nI%LX2{-e~QN!Uvz){F2Kp;=<-Y^h$nx`A4b zCU#vZm;iW?^Yi~)kfW!gtZ|l}D?B{Xv0_5*&Y{~49V914t71X+c&UI`6C7b}^fFP6xL)tWntf=$YP zuw&rL!ETSR9k~k3ibA4Ju!F;NvhV4`eg3`}XdWw{I7OtGmrvb}IA2})P`KmE2HT!J zrhnwLIzVIIVI+6+_9ydf;!EWBPcd_Uyb~vpn9+Kfb9BgKo3}0(l9(HPs5HQ&l`l5% zv8Xrj~j&eY%4?~=#$g?jIM#zn+Gm)z20q-+f*H&*CiCc1aL&!T6@Zsa+L z+X#L1{j~mJ{Bh4ApLmbHg+MHr@B>7UnMe52Im2oZ15Hosb`x4n^VaRa@@y*ztD%C% zu6DO3)D+~bIGTP_3GJIb6jRwwyK|}WOpgcVL!YM#52oN8VKw3;T*TuD%VU3^Vkl9T zo=3#CKxGQv1mhW17^EqYF%tdF%ib(!x5<@U&{_`3KgtC&j$xLPhm_4+{*Uj}J9_dj zrYj8*17_JPM%!hu@zxxMib?t*qG*=Zx#JM@g30|b*4#ooTZ=Z5O+(6C7L&E-Q*+?U z_xsE70K01N^%-xek4>Qj$0|1ZXD?PwO~0@qjTNk_Fi?(9VWWSe1?MCg{Sjlw})wLb;2%E~PxeX;FKdf$ns}D}q=A^`Gw)%!$&(h$6ywJk5 zm<9upQ#frlMrb2uD}|bjh>$e^G3zPLk#wv*gVvG|_aAjgLErM4w)8u+pC99$Uw>q@ z%Y29uX`^a2PY0vwlvS~t#pUGMkyq@^m2IzWixu^F!k=9_EzoQG+|Ts~@IUt`zA(7U zy1xV|{NE7d|Aav@ZHLW{(2IV`jc`s1n60{K+~7F(JI$0Ik+WtAZwa^LM8ddEy878r z(kr_moFFX!2c$=%@87i+^}3vixFqtBzv%B&^bPh5g&#+il%v>;wKX2hwfQbQ-nH+C zY^_ZIKM;S%V{WA)r~Rts?B7VYywgEV`!T`~)enlv1B8^;b;vgdl?jH{TB#^;xU$(A z?e^Xo>?z1Vnu1fQnpxKvb*%>N zCU7Lc?t{t_aA5|`J||Vr;$UcBUisEsCrOs0)}bMBqiIQlRDbmlFH%TtL*{oszoDGF z>*()hqUfN2H~{c|LWFUr#%1_OS5!#+z9)6;Ih$Rug;hkwgz$FX}0 z*nO>kU~NDXl|)YJ^=CpF1Yb3Pr2by2}z65_{s%w2I<}Ani zQ0Z#6jQA!-_#M!3a7A^gdei%1_kiuA~DU7*!anhd+xB^5n;}61BFTrc@%y z*K%eCsyX$2Wjq#WcKeXQNq+o3xpb0H+i^qDpZso!lD+N8-vKRG?-%%J{aAux(F0WZ zx`cCAmN7Ii*Ljiq={ryZ_S``wRM0Glr$Sli`0v?cPVkoMR9#^!2YO&;43RT%f~xYU`&k^;px z88;*~Q+Kea>xW<5+j3~L`YU7HLY152SRo-vYF&#UdqZ%{p%p)2-j#qYmWQ${5Y5sVHpc3&*m_Ix5I074xHkU32&YFyZSFmt8Xs ziZYjFh|uE~Qze&_SgHR98DjoUpH<4o?gVe7F`It~c1cp{j6b@lEZ$prlvh;gqnz8e zxOCj=t(N=}(`H>-`PW58O<)Y`6;OdBb{k^nto7Hx8cXzcT1Ul} ziye|E9$s6Q!kJ%_NpPcx=SbNLZI-cNL&>S-}#xXN9GsVozj@dC? zGcz;A%*@Qp%-0Yz`)p&M7O0f;8{9 zl;T#|pS|SBnH`9Ym#kO*<(~Vz`{)#?YfQ@`!p-kgLS6WyxuQ7xd*XK~!Bp^jFYuhV z6$Z$L;E{LrjOs1`m`KZ2HsI7iJpnx#HN~Vb*4`l?P#_YrhXltQ>Zw~Oa8zE!NJ_v;nEheXh?CRg9h>^P*T2Q_h8-)#1$6yf@60A zNTSio$8A2Qm)zN<^JM4CJxfgeF6r@m9#^_|*me${2y~0%NDZd6VgKKZ_dVnWjPW^4 z^WeMnj}#z9&I+Z#`g5M#;P~`hQY_961}sDbI1+jR9irMpSxC|W=v-?H$#JpP=>8ZjUm$ zkK0qA@+*rjUkQs`25+Xt#;FZkr1 zJAA}mOAf8i^~N}K)6`chE5jy<+pgNT^exC?C}yJ^>qZ9{9zH2F z?2Rvw1u44Zb|Jk55o5LHhASA!w3}d2M*Axd6B3gos4u?lK>Gcjs%wM1`z|{9azn+9 zJocI}oy#UNT9t=rELVH!ckm$ZQb)gyDWl`z{i^!MUO8S zdmMYTJ;>{owjKk4YtPGH1+!kUD+^r5*O7XJfCc83L+f7eNC0yzF4%q~eWf_1*JW#o zf|L9G=n?SV)bPv|-U36rh=XwXiTS=2x*HzXAn({mm(HqID?KX6;~#Pl3rQ?${cSQx z#J+T-oU717h#B9>IOGllvY1K%)a|{+GLbK853V2?ILi~n zL*>b(&i~NfuR4<>sl26BT-RWfXaoFM(AS1tu*$_1m?;GN0iE0gQw0~`B4SMCkr@f;7psE%)8ddK_^HhC;F8%+fQc?$>_Dg5?@FXK759fKm*2dC0|@Tz4zHewoIYi z+??Mlgt4sNw?(`^4;g1V+c5Hz>~)k;KmIkO*V9wBj6awUrd6hn(j@2t>(wd~P+XQs z?$z@07}sg7uVc%;Dw=Yf36-?VRBN=jt%(%nB>qD)`7Ufuc8+n z!sLq#<``7?f`MWaU=GBzu8_?%(oGCHA~B@z2qe3t@B)!+`s8J`Z0O>L-viUgWk$k1 z`W)<7c3MlUy*b^zN?KU$f3UfhaZ)~}Uo)PJdd1KaYwG7d+MvUS<{{SiunlIs^$a*M z7^)&f%&n!QN0=a5uSM#L$8TM$<@Z{?Q#ed$L*7U^Wz{czQRBFoPL@{}SV>7>erP=` z=@RA(c_;>l*#&erW?mU71D#a=OwRx?=!RUXE{PZXcG1Px#4AUlqix7a3J$88wK?|S|L!OCiq zzXL^ks#*T@XI7?IyO(VkUgK&+h>3u@S{22Vh3M*&dk@{1$rx&AovAq@jom4nuConx zvU9j#1PiCx^`SQXhfUtjC0nqGc8_wa>(C~>V>wJ2YoR>!o?9^SJ89aeOj-#I zn$667H7w|vdQgQ&ykAWdS+%iXDB>n$u?QBM#vX>CCEO}a>CW_4^w?Y-ly{|-Mlv^r zai=6UdAlU+=8juwgSnqd4H>biShb5mm1T}zQF^{w!%3&%fP=rYA z1q)WfTnpSH)VwUCd(5{;zn+>Fx4lviwzZIRuU6o&EL5O3$yk1Rb|lcQd2vi0?FWJ_ zx%cb~zY^{{(>K+L{;LH`7qKmOF*U$@wTuLo}Xv-3lCdpPqW(3)0S@P(pi&TT>gfjvm^QX>#U2RTFUS zT(>29Vb9z70fJb(yrk!`$e#LNL{&oBy2JhFiv-+Qw0B2>dJCJk2u@=~vE;amE=X1HaFTU;pxghi5{@ zM4>tS6Ppdg4mfAhYO*r=uW98VkejSjmBcJXl9UG9U0eA^DLonU{Els$u2BbD4KTZ% zODc|vts1>|2ra3M8pVvWV!v+k`D^Zv&8hZL_Cevq1UR-B&0=C&Wlv`^tQ@FaGp^|@ zO5{GvAI(u#Y7;5f<^q@Bs-(mw^PwZtd9e^~b|g__s5X_&w{kJ;kq@nItNp_>s(d?D z^-1g4pYIb2;_b$@Ua6Nz3G~fI)$8xH#v@{Xae_XYVSvU^9K{yynE4Fm4~q}?s+huL z(tvq3Cr|<>W_=QA$==-vBy&~_g`#DdYQ(LGGUw#L4=(bRry0}bit+Q7hYocl1ML(= zHsj>rAtk?GnDc)f)PD%lQ>j5$6zh`*5c(fI$o8PO zm?EoG4RT6CyF8-cRa?+$F=5z%;YY~{oQS{*~5#(h+5kcx4YrxyNIn^cBNuRhxy zO&zukCS(+|A#ax;kN;XMHo?}Dueuhz=Qp`JsD5I52#8=>7S+_5TA6E>bEuW!+>JmU zpC8gM6sXpuf2KA;@nM5VXGxTdO*qV(!rYsX|?S>KM`x11$5O2#l-(O>sh-tw&NHBb_&H*t(eL^@H|6 z#@KKHOrr_R1RSRc0l&Bg$Gm7rD%Nb2Rg3Ftn~i(R00|ME0OkFGB~I%k(fWO&nZ$JS z$+(Ox3oV?|`!9;s$5Xh()PK=f1x(Zoz2F?cUvr(sNnz1pZ?b|yT!+d(WElRMd;5$l zRqwMKrQS3VY8nG?pEoyE(ui)_CKP7S^Vlhm7#_M2?U)^;heHd|(-M;(VrGE*GbsR1v@0t() z6!@J=ZsG|BRz?gCCiK6QL)ba~U(h2nTU$^!oHxPn1GivfqDJD?hNB6e6No$#Ww~xOilsQZ2V+wK7QvnrpjgGp>5kPLR0brwhna>A+)S6HCHk_xK8YX zDEEZ+bN7=4pt)hCef_hiclMtll`r2_I+w%NR9D8@n!X#68)+l+NY(Y*G*|TB$)Q<# zz)mjd^ECe39X%lKt`+O)_DkmNL>ni(1BPt38SToya+Ux-#I(ksmku4J9fDMIbkBZO z7KOpLnL>^+7hp;HQyQ)yLx|VysvlKl~a!c<_Np)CJ3`LfGHI(W+eff*4mq} za4h(D%Yyvy$CWa2@86Jm@7yfrTxU95_hL272=R!0c7(Z8YQVEpbP92>;yp>4J?{rM zn4wXh0L#A;TsQ0g?sUW1VL$pjXZl=JpH%WycDing-~*WpnCOW_BrjD;jCl zmb_O)sp>^#kT&NbZ51M1$K+f%gQZv-VPeJ%uN%}oVl1x%CN-gS2*nGXtXkx6oM77T2R z(E0?6sq&HhaF$cR*yAv%StG(W&l>MMkrNh|nNq2O@DdWT>gehk6|7KX1zK(e3}>tw z3%V>T6F)KI>Ej(_;h)$B9DTeTu#-iK_-O$&75VB%6B$Ud5!iKZ4v^#ogg&hll477u zwHQ*+Un|%1&0H}a3LSlk^8F|bo&gT6?VG|M?Pf<1iE@~9Yr_$u(8KzCo1M@)L=4~U zyK~m5W6vt8n`16{?`KM3T6G7A^LbPdp>_Z66yt*yIaWIf>W*(H$q2SM=YwaP2eYdqPMflUCeumzp}q19GLn(Go+SBZQnyclQeylA*2S(nSj z`D4IHBnj%5JV2bSVh8ThSenN2rLn1xCF}y;11olPeypO0sRtIciPZn$>|rz&&AD|Y zWk0}`lE+6Ylrou9y=x;VS!Rz@Q9~LBSiih`&NPU`#h5T!jhSAqC6+RS2r3LD|LEva z7cJbiMRF+rbynhB2+eMS%oG7~lH9JjW}7Z*44Sdy{~DBu#LtduBsGyZ

    ER9)1ly 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Ŷ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

    +=;GQ1DzMe>R{ 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

    YP()65qiIl+s zzzu$z#8o%GFgJ-i+(O|bUN2q>b4>)9i7sCl3_)k<_G{dRtrJ06<5mxMVrvL>CyE

    jGmTxwZ?W$a6w~4f?=-@qf<2I_xe1% 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 k@${cn_#5v&%|-L%LUYq4KvZBbNAO2U0R|J7 + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + +

    + Used to specify deployment item (file or directory) for per-test deployment. + Can be specified on test class or test method. + Can have multiple instances of the attribute to specify more than one item. + The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Initializes a new instance of the class. + + The file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + + + + Initializes a new instance of the class + + The relative or absolute path to the file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + The path of the directory to which the items are to be copied. It can be either absolute or relative to the deployment directory. All files and directories identified by will be copied to this directory. + + + + Gets the path of the source file or folder to be copied. + + + + + Gets the path of the directory to which the item is copied. + + + + + Contains literals for names of sections, properties, attributes. + + + + + The configuration section name. + + + + + The configuration section name for Beta2. Left around for compat. + + + + + Section name for Data source. + + + + + Attribute name for 'Name' + + + + + Attribute name for 'ConnectionString' + + + + + Attrbiute name for 'DataAccessMethod' + + + + + Attribute name for 'DataTable' + + + + + The Data Source element. + + + + + Gets or sets the name of this configuration. + + + + + Gets or sets the ConnectionStringSettings element in <connectionStrings> section in the .config file. + + + + + Gets or sets the name of the data table. + + + + + Gets or sets the type of data access. + + + + + Gets the key name. + + + + + Gets the configuration properties. + + + + + The Data source element collection. + + + + + Initializes a new instance of the class. + + + + + Returns the configuration element with the specified key. + + The key of the element to return. + The System.Configuration.ConfigurationElement with the specified key; otherwise, null. + + + + Gets the configuration element at the specified index location. + + The index location of the System.Configuration.ConfigurationElement to return. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The . + + + + Removes a System.Configuration.ConfigurationElement from the collection. + + The key of the System.Configuration.ConfigurationElement to remove. + + + + Removes all configuration element objects from the collection. + + + + + Creates a new . + + A new . + + + + Gets the element key for a specified configuration element. + + The System.Configuration.ConfigurationElement to return the key for. + An System.Object that acts as the key for the specified System.Configuration.ConfigurationElement. + + + + Adds a configuration element to the configuration element collection. + + The System.Configuration.ConfigurationElement to add. + + + + Adds a configuration element to the configuration element collection. + + The index location at which to add the specified System.Configuration.ConfigurationElement. + The System.Configuration.ConfigurationElement to add. + + + + Support for configuration settings for Tests. + + + + + Gets the configuration section for tests. + + + + + The configuration section for tests. + + + + + Gets the data sources for this configuration section. + + + + + Gets the collection of properties. + + + The of properties for the element. + + + + + This class represents the live NON public INTERNAL object in the system + + + + + Initializes a new instance of the class that contains + the already existing object of the private class + + object that serves as starting point to reach the private members + the derefrencing string using . that points to the object to be retrived as in m_X.m_Y.m_Z + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + Name of the assembly + fully qualified name + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps the + specified type. + + type of the object to create + An array of objects representing the number, order, and type of the parameters for the constructor to get + Argmenets to pass to the constructor + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + + + + Initializes a new instance of the class that wraps + the given object. + + object to wrap + PrivateType object + + + + Gets or sets the target + + + + + Gets the type of underlying object + + + + + returns the hash code of the target object + + int representing hashcode of the target object + + + + Equals + + Object with whom to compare + returns true if the objects are equal. + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Invokes the specified method + + Name of the method + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + Result of method call + + + + Invokes the specified method + + Name of the method + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the method to get. + Arguments to pass to the member to invoke. + Culture info + An array of types corresponding to the types of the generic arguments. + Result of method call + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + Value to set + the indices of array + + + + Gets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + the indices of array + An arrya of elements. + + + + Sets the array element using array of subsrcipts for each dimension + + Name of the member + A bitmask comprised of one or more that specify how the search is conducted. + Value to set + the indices of array + + + + Get the field + + Name of the field + The field. + + + + Sets the field + + Name of the field + value to set + + + + Gets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + The field. + + + + Sets the field + + Name of the field + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Get the field or property + + Name of the field or property + The field or property. + + + + Sets the field or property + + Name of the field or property + value to set + + + + Gets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + The field or property. + + + + Sets the field or property + + Name of the field or property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + + + + Gets the property + + Name of the property + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Set the property + + Name of the property + value to set + Arguments to pass to the member to invoke. + + + + Set the property + + Name of the property + An array of objects representing the number, order, and type of the parameters for the indexed property. + value to set + Arguments to pass to the member to invoke. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + Arguments to pass to the member to invoke. + The property. + + + + Gets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The property. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + Arguments to pass to the member to invoke. + + + + Sets the property + + Name of the property + A bitmask comprised of one or more that specify how the search is conducted. + value to set + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Validate access string + + access string + + + + Invokes the memeber + + Name of the member + Additional attributes + Arguments for the invocation + Culture + Result of the invocation + + + + Extracts the most appropriate generic method signature from the current private type. + + The name of the method in which to search the signature cache. + An array of types corresponding to the types of the parameters in which to search. + An array of types corresponding to the types of the generic arguments. + to further filter the method signatures. + Modifiers for parameters. + A methodinfo instance. + + + + This class represents a private class for the Private Accessor functionality. + + + + + Binds to everything + + + + + The wrapped type. + + + + + Initializes a new instance of the class that contains the private type. + + Assembly name + fully qualified name of the + + + + Initializes a new instance of the class that contains + the private type from the type object + + The wrapped Type to create. + + + + Gets the referenced type + + + + + Invokes static member + + Name of the member to InvokeHelper + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + Result of invocation + + + + Invokes static member + + Name of the member to InvokeHelper + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invoction + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Invokes the static method + + Name of the member + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture info + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + Result of invocation + + + + Invokes the static method + + Name of the member + Additional invocation attributes + /// An array of objects representing the number, order, and type of the parameters for the method to invoke + Arguements to the invocation + Culture + An array of types corresponding to the types of the generic arguments. + Result of invocation + + + + Gets the element in static array + + Name of the array + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the indices would be {10,11} + + element at the specified location + + + + Sets the memeber of the static array + + Name of the array + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the element in satatic array + + Name of the array + Additional InvokeHelper attributes + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to get. For instance, to access a[10][11] the array would be {10,11} + + element at the spcified location + + + + Sets the memeber of the static array + + Name of the array + Additional InvokeHelper attributes + value to set + + A one-dimensional array of 32-bit integers that represent the indexes specifying + the position of the element to set. For instance, to access a[10][11] the array would be {10,11} + + + + + Gets the static field + + Name of the field + The static field. + + + + Sets the static field + + Name of the field + Arguement to the invocation + + + + Gets the static field using specified InvokeHelper attributes + + Name of the field + Additional invocation attributes + The static field. + + + + Sets the static field using binding attributes + + Name of the field + Additional InvokeHelper attributes + Arguement to the invocation + + + + Gets the static field or property + + Name of the field or property + The static field or property. + + + + Sets the static field or property + + Name of the field or property + Value to be set to field or property + + + + Gets the static field or property using specified InvokeHelper attributes + + Name of the field or property + Additional invocation attributes + The static field or property. + + + + Sets the static field or property using binding attributes + + Name of the field or property + Additional invocation attributes + Value to be set to field or property + + + + Gets the static property + + Name of the field or property + Arguements to the invocation + The static property. + + + + Sets the static property + + Name of the property + Value to be set to field or property + Arguments to pass to the member to invoke. + + + + Sets the static property + + Name of the property + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + Arguments to pass to the member to invoke. + The static property. + + + + Gets the static property + + Name of the property + Additional invocation attributes. + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + The static property. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + Optional index values for indexed properties. The indexes of indexed properties are zero-based. This value should be null for non-indexed properties. + + + + Sets the static property + + Name of the property + Additional invocation attributes. + Value to be set to field or property + An array of objects representing the number, order, and type of the parameters for the indexed property. + Arguments to pass to the member to invoke. + + + + Invokes the static method + + Name of the member + Additional invocation attributes + Arguements to the invocation + Culture + Result of invocation + + + + Provides method signature discovery for generic methods. + + + + + Compares the method signatures of these two methods. + + Method1 + Method2 + True if they are similiar. + + + + Gets the hierarchy depth from the base type of the provided type. + + The type. + The depth. + + + + Finds most dervied type with the provided information. + + Candidate matches. + Number of matches. + The most derived method. + + + + Given a set of methods that match the base criteria, select a method based + upon an array of types. This method should return null if no method matches + the criteria. + + Binding specification. + Candidate matches + Types + Parameter modifiers. + Matching method. Null if none matches. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific method in the two methods provided. + + Method 1 + Parameter order for Method 1 + Paramter array type. + Method 2 + Parameter order for Method 2 + >Paramter array type. + Types to search in. + Args. + An int representing the match. + + + + Finds the most specific type in the two provided. + + Type 1 + Type 2 + The defining type + An int representing the match. + + + + Used to store information that is provided to unit tests. + + + + + Gets test properties for a test. + + + + + Gets the current data row when test is used for data driven testing. + + + + + Gets current data connection row when test is used for data driven testing. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + + + + + Gets base directory for results from the test run. Typically a subdirectory of . + + + + + Gets directory for test run result files. Typically a subdirectory of . + + + + + Gets directory for test result files. + + + + + Gets base directory for the test run, under which deployed files and result files are stored. + Same as . Use that property instead. + + + + + Gets directory for files deployed for the test run. Typically a subdirectory of . + Same as . Use that property instead. + + + + + Gets directory for test run result files. Typically a subdirectory of . + Same as . Use that property for test run result files, or + for test-specific result files instead. + + + + + Gets the Fully-qualified name of the class containing the test method currently being executed + + + + + Gets the name of the test method currently being executed + + + + + Gets the current test outcome. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + + Adds a file name to the list in TestResult.ResultFileNames + + + The file Name. + + + + + Begins a timer with the specified name + + Name of the timer. + + + + Ends a timer with the specified name + + Name of the timer. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll new file mode 100644 index 0000000000000000000000000000000000000000..63d2d7bfbde8eeffb52d5b5bcfa955de93c55a1b GIT binary patch literal 40080 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 ac!lU>D_?23+?%nV{(YOUS16N1gaH8SIPtsy literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.XML b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.XML new file mode 100644 index 0000000..a71d66c --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.XML @@ -0,0 +1,4391 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Specification to disable parallelization. + + + + + Enum to specify whether the data is stored as property or in method. + + + + + Data is declared as property. + + + + + Data is declared in method. + + + + + Attribute to define dynamic data for a test method. + + + + + Initializes a new instance of the class. + + + The name of method or property having test data. + + + Specifies whether the data is stored as property or in method. + + + + + Initializes a new instance of the class when the test data is present in a class different + from test method's class. + + + The name of method or property having test data. + + + The declaring type of property or method having data. Useful in cases when declaring type is present in a class different from + test method's class. If null, declaring type defaults to test method's class type. + + + Specifies whether the data is stored as property or in method. + + + + + Gets or sets the name of method used to customize the display name in test results. + + + + + Gets or sets the declaring type used to customize the display name in test results. + + + + + + + + + + + Specification for parallelization level for a test run. + + + + + The default scope for the parallel run. Although method level gives maximum parallelization, the default is set to + class level to enable maximum number of customers to easily convert their tests to run in parallel. In most cases within + a class tests aren't thread safe. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the number of workers to be used for the parallel run. + + + + + Gets or sets the scope of the parallel run. + + + To enable all classes to run in parallel set this to . + To get the maximum parallelization level set this to . + + + + + Parallel execution mode. + + + + + Each thread of execution will be handed a TestClass worth of tests to execute. + Within the TestClass, the test methods will execute serially. + + + + + Each thread of execution will be handed TestMethods to execute. + + + + + Test data source for data driven tests. + + + + + Gets the test data from custom test data source. + + + The method info of test method. + + + Test data for calling test method. + + + + + Gets the display name corresponding to test data row for displaying in TestResults. + + + The method info of test method. + + + The test data which is passed to test method. + + + The . + + + + + TestMethod for execution. + + + + + Gets the name of test method. + + + + + Gets the name of test class. + + + + + Gets the return type of test method. + + + + + Gets the arguments with which test method is invoked. + + + + + Gets the parameters of test method. + + + + + Gets the methodInfo for test method. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invokes the test method. + + + Arguments to pass to test method. (E.g. For data driven) + + + Result of test method invocation. + + + This call handles asynchronous test methods as well. + + + + + Get all attributes of the test method. + + + Whether attribute defined in parent class is valid. + + + All attributes. + + + + + Get attribute of specific type. + + System.Attribute type. + + Whether attribute defined in parent class is valid. + + + The attributes of the specified type. + + + + + The helper. + + + + + The check parameter not null. + + + The parameter. + + + The parameter name. + + + The message. + + Throws argument null exception when parameter is null. + + + + The check parameter not null or empty. + + + The parameter. + + + The parameter name. + + + The message. + + Throws ArgumentException when parameter is null. + + + + Enumeration for how how we access data rows in data driven testing. + + + + + Rows are returned in sequential order. + + + + + Rows are returned in random order. + + + + + Attribute to define inline data for a test method. + + + + + Initializes a new instance of the class. + + The data object. + + + + Initializes a new instance of the class which takes in an array of arguments. + + A data object. + More data. + + + + Gets data for calling test method. + + + + + Gets or sets display name in test results for customization. + + + + + + + + + + + The assert inconclusive exception. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + InternalTestFailureException class. Used to indicate internal failure for a test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initializes a new instance of the class. + + The exception message. + The exception. + + + + Initializes a new instance of the class. + + The exception message. + + + + Initializes a new instance of the class. + + + + + Attribute that specifies to expect an exception of the specified type + + + + + Initializes a new instance of the class with the expected type + + Type of the expected exception + + + + Initializes a new instance of the class with + the expected type and the message to include when no exception is thrown by the test. + + Type of the expected exception + + Message to include in the test result if the test fails due to not throwing an exception + + + + + Gets a value indicating the Type of the expected exception + + + + + Gets or sets a value indicating whether to allow types derived from the type of the expected exception to + qualify as expected + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Verifies that the type of the exception thrown by the unit test is expected + + The exception thrown by the unit test + + + + Base class for attributes that specify to expect an exception from a unit test + + + + + Initializes a new instance of the class with a default no-exception message + + + + + Initializes a new instance of the class with a no-exception message + + + Message to include in the test result if the test fails due to not throwing an + exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the default no-exception message + + The ExpectedException attribute type name + The default no-exception message + + + + Determines whether the exception is expected. If the method returns, then it is + understood that the exception was expected. If the method throws an exception, then it + is understood that the exception was not expected, and the thrown exception's message + is included in the test result. The class can be used for + convenience. If is used and the assertion fails, + then the test outcome is set to Inconclusive. + + The exception thrown by the unit test + + + + Rethrow the exception if it is an AssertFailedException or an AssertInconclusiveException + + The exception to rethrow if it is an assertion exception + + + + This class is designed to help user doing unit testing for types which uses generic types. + GenericParameterHelper satisfies some common generic type constraints + such as: + 1. public default constructor + 2. implements common interface: IComparable, IEnumerable + + + + + Initializes a new instance of the class that + satisfies the 'newable' constraint in C# generics. + + + This constructor initializes the Data property to a random value. + + + + + Initializes a new instance of the class that + initializes the Data property to a user-supplied value. + + Any integer value + + + + Gets or sets the Data + + + + + Do the value comparison for two GenericParameterHelper object + + object to do comparison with + true if obj has the same value as 'this' GenericParameterHelper object. + false otherwise. + + + + Returns a hashcode for this object. + + The hash code. + + + + Compares the data of the two objects. + + The object to compare with. + + A signed number indicating the relative values of this instance and value. + + + Thrown when the object passed in is not an instance of . + + + + + Returns an IEnumerator object whose length is derived from + the Data property. + + The IEnumerator object + + + + Returns a GenericParameterHelper object that is equal to + the current object. + + The cloned object. + + + + Enables users to log/write traces from unit tests for diagnostics. + + + + + Handler for LogMessage. + + Message to log. + + + + Event to listen. Raised when unit test writer writes some message. + Mainly to consume by adapter. + + + + + API for test writer to call to Log messages. + + String format with placeholders. + Parameters for placeholders. + + + + TestCategory attribute; used to specify the category of a unit test. + + + + + Initializes a new instance of the class and applies the category to the test. + + + The test Category. + + + + + Gets the test categories that has been applied to the test. + + + + + Base class for the "Category" attribute + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initializes a new instance of the class. + Applies the category to the test. The strings returned by TestCategories + are used with the /category command to filter tests + + + + + Gets the test category that has been applied to the test. + + + + + AssertFailedException class. Used to indicate failure for a test case + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + A collection of helper classes to test various conditions within + unit tests. If the condition being tested is not met, an exception + is thrown. + + + + + Gets the singleton instance of the Assert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is false. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is true. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null. + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is not equal to . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Throws an AssertFailedException. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Static equals overloads are used for comparing instances of two types for reference + equality. This method should not be used for comparison of two instances for + equality. This object will always throw with Assert.Fail. Please use + Assert.AreEqual and associated overloads in your unit tests. + + Object A + Object B + False, always. + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Replaces null characters ('\0') with "\\0". + + + The string to search. + + + The converted string with null characters replaced by "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Helper function that creates and throws an AssertionFailedException + + + name of the assertion throwing an exception + + + message describing conditions for assertion failure + + + The parameters. + + + + + Checks the parameter for valid conditions + + + The parameter. + + + The assertion Name. + + + parameter name + + + message for the invalid parameter exception + + + The parameters. + + + + + Safely converts an object to a string, handling null values and null characters. + Null values are converted to "(null)". Null characters are converted to "\\0". + + + The object to convert to a string. + + + The converted string. + + + + + The string assert. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert customAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not end with + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if does not match + . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if matches . + + + + + A collection of helper classes to test various conditions associated + with collections within unit tests. If the condition being tested is not + met, an exception is thrown. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if is found in + . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if every element in is also found in + . + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Determines whether the first collection is a subset of the second + collection. If either set contains duplicate elements, the number + of occurrences of the element in the subset must be less than or + equal to the number of occurrences in the superset. + + + The collection the test expects to be contained in . + + + The collection the test expects to contain . + + + True if is a subset of + , false otherwise. + + + + + Constructs a dictionary containing the number of occurrences of each + element in the specified collection. + + + The collection to process. + + + The number of null elements in the collection. + + + A dictionary containing the number of occurrences of each element + in the specified collection. + + + + + Finds a mismatched element between the two collections. A mismatched + element is one that appears a different number of times in the + expected collection than it does in the actual collection. The + collections are assumed to be different non-null references with the + same number of elements. The caller is responsible for this level of + verification. If there is no mismatched element, the function returns + false and the out parameters should not be used. + + + The first collection to compare. + + + The second collection to compare. + + + The expected number of occurrences of + or 0 if there is no mismatched + element. + + + The actual number of occurrences of + or 0 if there is no mismatched + element. + + + The mismatched element (may be null) or null if there is no + mismatched element. + + + true if a mismatched element was found; false otherwise. + + + + + compares the objects using object.Equals + + + + + Base class for Framework Exceptions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access string has invalid syntax.. + + + + + Looks up a localized string similar to The expected collection contains {1} occurrence(s) of <{2}>. The actual collection contains {3} occurrence(s). {0}. + + + + + Looks up a localized string similar to Duplicate item found:<{1}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Case is different for actual value:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference no greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1} ({2})>. Actual:<{3} ({4})>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected any value except:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Do not pass value types to AreSame(). Values converted to Object will never be the same. Consider using AreEqual(). {0}. + + + + + Looks up a localized string similar to {0} failed. {1}. + + + + + Looks up a localized string similar to async TestMethod with UITestMethodAttribute are not supported. Either remove async or use TestMethodAttribute.. + + + + + Looks up a localized string similar to Both collections are empty. {0}. + + + + + Looks up a localized string similar to Both collection contain same elements.. + + + + + Looks up a localized string similar to Both collection references point to the same collection object. {0}. + + + + + Looks up a localized string similar to Both collections contain the same elements. {0}. + + + + + Looks up a localized string similar to {0}({1}). + + + + + Looks up a localized string similar to (null). + + + + + Looks up a localized string similar to (object). + + + + + Looks up a localized string similar to String '{0}' does not contain string '{1}'. {2}.. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Assert.Equals should not be used for Assertions. Please use Assert.AreEqual & overloads instead.. + + + + + Looks up a localized string similar to Method {0} must match the expected signature: public static {1} {0}({2}).. + + + + + Looks up a localized string similar to Property or method {0} on {1} does not return IEnumerable<object[]>.. + + + + + Looks up a localized string similar to Value returned by property or method {0} shouldn't be null.. + + + + + Looks up a localized string similar to The number of elements in the collections do not match. Expected:<{1}>. Actual:<{2}>.{0}. + + + + + Looks up a localized string similar to Element at index {0} do not match.. + + + + + Looks up a localized string similar to Element at index {1} is not of expected type. Expected type:<{2}>. Actual type:<{3}>.{0}. + + + + + Looks up a localized string similar to Element at index {1} is (null). Expected type:<{2}>.{0}. + + + + + Looks up a localized string similar to String '{0}' does not end with string '{1}'. {2}.. + + + + + Looks up a localized string similar to Invalid argument- EqualsTester can't use nulls.. + + + + + Looks up a localized string similar to Cannot convert object of type {0} to {1}.. + + + + + Looks up a localized string similar to The internal object referenced is no longer valid.. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. {1}.. + + + + + Looks up a localized string similar to The property {0} has type {1}; expected type {2}.. + + + + + Looks up a localized string similar to {0} Expected type:<{1}>. Actual type:<{2}>.. + + + + + Looks up a localized string similar to String '{0}' does not match pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to Wrong Type:<{1}>. Actual type:<{2}>. {0}. + + + + + Looks up a localized string similar to String '{0}' matches pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to No test data source specified. Atleast one TestDataSource is required with DataTestMethodAttribute.. + + + + + Looks up a localized string similar to No exception thrown. {1} exception was expected. {0}. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. The value cannot be null. {1}.. + + + + + Looks up a localized string similar to Different number of elements.. + + + + + Looks up a localized string similar to + The constructor with the specified signature could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to + The member specified ({0}) could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to String '{0}' does not start with string '{1}'. {2}.. + + + + + Looks up a localized string similar to The expected exception type must be System.Exception or a type derived from System.Exception.. + + + + + Looks up a localized string similar to (Failed to get the message for an exception of type {0} due to an exception.). + + + + + Looks up a localized string similar to Test method did not throw expected exception {0}. {1}. + + + + + Looks up a localized string similar to Test method did not throw an exception. An exception was expected by attribute {0} defined on the test method.. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} or a type derived from it was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Threw exception {2}, but exception {1} was expected. {0} + Exception Message: {3} + Stack Trace: {4}. + + + + + unit test outcomes + + + + + Test was executed, but there were issues. + Issues may involve exceptions or failed assertions. + + + + + Test has completed, but we can't say if it passed or failed. + May be used for aborted tests. + + + + + Test was executed without any issues. + + + + + Test is currently executing. + + + + + There was a system error while we were trying to execute a test. + + + + + The test timed out. + + + + + Test was aborted by the user. + + + + + Test is in an unknown state + + + + + Test cannot be executed. + + + + + Provides helper functionality for the unit test framework + + + + + Gets the exception messages, including the messages for all inner exceptions + recursively + + Exception to get messages for + string with error message information + + + + Enumeration for timeouts, that can be used with the class. + The type of the enumeration must match + + + + + The infinite. + + + + + The test class attribute. + + + + + Gets a test method attribute that enables running this test. + + The test method attribute instance defined on this method. + The to be used to run this test. + Extensions can override this method to customize how all methods in a class are run. + + + + The test method attribute. + + + + + Executes a test method. + + The test method to execute. + An array of TestResult objects that represent the outcome(s) of the test. + Extensions can override this method to customize running a TestMethod. + + + + Attribute for data driven test where data can be specified inline. + + + + + The test initialize attribute. + + + + + The test cleanup attribute. + + + + + The ignore attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + Message specifies reason for ignoring. + + + + + Gets the owner. + + + + + The test property attribute. + + + + + Initializes a new instance of the class. + + + The name. + + + The value. + + + + + Gets the name. + + + + + Gets the value. + + + + + The class initialize attribute. + + + + + The class cleanup attribute. + + + + + The assembly initialize attribute. + + + + + The assembly cleanup attribute. + + + + + Test Owner + + + + + Initializes a new instance of the class. + + + The owner. + + + + + Gets the owner. + + + + + Priority attribute; used to specify the priority of a unit test. + + + + + Initializes a new instance of the class. + + + The priority. + + + + + Gets the priority. + + + + + Description of the test + + + + + Initializes a new instance of the class to describe a test. + + The description. + + + + Gets the description of a test. + + + + + CSS Project Structure URI + + + + + Initializes a new instance of the class for CSS Project Structure URI. + + The CSS Project Structure URI. + + + + Gets the CSS Project Structure URI. + + + + + CSS Iteration URI + + + + + Initializes a new instance of the class for CSS Iteration URI. + + The CSS Iteration URI. + + + + Gets the CSS Iteration URI. + + + + + WorkItem attribute; used to specify a work item associated with this test. + + + + + Initializes a new instance of the class for the WorkItem Attribute. + + The Id to a work item. + + + + Gets the Id to a workitem associated. + + + + + Timeout attribute; used to specify the timeout of a unit test. + + + + + Initializes a new instance of the class. + + + The timeout. + + + + + Initializes a new instance of the class with a preset timeout + + + The timeout + + + + + Gets the timeout. + + + + + TestResult object to be returned to adapter. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the display name of the result. Useful when returning multiple results. + If null then Method name is used as DisplayName. + + + + + Gets or sets the outcome of the test execution. + + + + + Gets or sets the exception thrown when test is failed. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the execution id of the result. + + + + + Gets or sets the parent execution id of the result. + + + + + Gets or sets the inner results count of the result. + + + + + Gets or sets the duration of test execution. + + + + + Gets or sets the data row index in data source. Set only for results of individual + run of data row of a data driven test. + + + + + Gets or sets the return value of the test method. (Currently null always). + + + + + Gets or sets the result files attached by the test. + + + + + Specifies connection string, table name and row access method for data driven testing. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + The default provider name for DataSource. + + + + + The default data access method. + + + + + Initializes a new instance of the class. This instance will be initialized with a data provider, connection string, data table and data access method to access the data source. + + Invariant data provider name, such as System.Data.SqlClient + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + Specifies the order to access data. + + + + Initializes a new instance of the class.This instance will be initialized with a connection string and table name. + Specify connection string and data table to access OLEDB data source. + + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + + + + Initializes a new instance of the class. This instance will be initialized with a data provider and connection string associated with the setting name. + + The name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + Gets a value representing the data provider of the data source. + + + The data provider name. If a data provider was not designated at object initialization, the default provider of System.Data.OleDb will be returned. + + + + + Gets a value representing the connection string for the data source. + + + + + Gets a value indicating the table name providing data. + + + + + Gets the method used to access the data source. + + + + One of the values. If the is not initialized, this will return the default value . + + + + + Gets the name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/Microsoft.VisualStudio.TestPlatform.TestFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..740d01fd3857259353f56a8c44745531ec2ebd99 GIT binary patch literal 73384 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 LZzAJ}Rd)Ul&m9{B literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..055948f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Používá se pro určení položky nasazení (souboru nebo adresáře) za účelem nasazení podle testu. + Lze zadat na testovací třídě nebo testovací metodě. + Může mít více instancí atributu pro zadání více než jedné položky. + Cesta k položce může být absolutní nebo relativní. Pokud je relativní, je relativní ve vztahu k RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Inicializuje novou instanci třídy . + + Soubor nebo adresář, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do adresáře, ve kterém jsou nasazená testovací sestavení. + + + + Inicializuje novou instanci třídy . + + Relativní nebo absolutní cesta k souboru nebo adresáři, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do stejného adresáře jako nasazená testovací sestavení. + Cesta k adresáři, do kterého se mají položky kopírovat. Může být absolutní nebo relativní ve vztahu k adresáři nasazení. Všechny soubory a adresáře určené cestou budou zkopírovány do tohoto adresáře. + + + + Získá cestu ke zdrojovému souboru nebo složce, které se mají kopírovat. + + + + + Získá cestu adresáře, do kterého se položka zkopíruje. + + + + + Obsahuje literály názvů oddílů, vlastností a atributů. + + + + + Název oddílu konfigurace + + + + + Název části konfigurace pro Beta2. Zůstává kvůli kompatibilitě. + + + + + Název části pro zdroj dat + + + + + Název atributu pro Name + + + + + Název atributu pro ConnectionString + + + + + Název atributu pro DataAccessMethod + + + + + Název atributu pro DataTable + + + + + Element zdroje dat + + + + + Získá nebo nastaví název této konfigurace. + + + + + Získá nebo nastaví element ConnectionStringSettings v části <connectionStrings> v souboru .config. + + + + + Získá nebo nastaví název tabulky dat. + + + + + Získá nebo nastaví typ přístupu k datům. + + + + + Získá název klíče. + + + + + Získá vlastnosti konfigurace. + + + + + Kolekce elementů zdroje dat + + + + + Inicializuje novou instanci třídy . + + + + + Vrátí element konfigurace se zadaným klíčem. + + Klíč elementu, který se má vrátit + System.Configuration.ConfigurationElement se zadaným klíčem, jinak null. + + + + Získá element konfigurace v zadaném umístění indexu. + + Umístění indexu elementu System.Configuration.ConfigurationElement, který se má vrátit. + + + + Přidá element konfigurace ke kolekci elementů konfigurace. + + System.Configuration.ConfigurationElement, který se má přidat + + + + Odebere System.Configuration.ConfigurationElement z kolekce. + + . + + + + Odebere System.Configuration.ConfigurationElement z kolekce. + + Klíč elementu System.Configuration.ConfigurationElement, který se má odebrat + + + + Odebere všechny objekty elementů konfigurace z kolekce. + + + + + Vytvoří nový . + + Nový . + + + + Získá klíč elementu pro zadaný element konfigurace. + + System.Configuration.ConfigurationElement, pro který se má vrátit klíč + System.Object, který funguje jako klíč pro zadaný element System.Configuration.ConfigurationElement + + + + Přidá element konfigurace ke kolekci elementů konfigurace. + + System.Configuration.ConfigurationElement, který se má přidat + + + + Přidá element konfigurace ke kolekci elementů konfigurace. + + Umístění indexu, kde se má přidat zadaný element System.Configuration.ConfigurationElement + System.Configuration.ConfigurationElement, který se má přidat + + + + Podpora nastavení konfigurace testů + + + + + Získá oddíl konfigurace pro testy. + + + + + Oddíl konfigurace pro testy + + + + + Získá zdroje dat pro tento oddíl konfigurace. + + + + + Získá kolekci vlastností. + + + Třídu vlastností pro element + + + + + Tato třída představuje živý, NEVEŘEJNÝ, INTERNÍ objekt v systému. + + + + + Inicializuje novou instanci třídy , která obsahuje + už existující objekt privátní třídy. + + objektů, které slouží jako počáteční bod k dosažení privátních členů + řetězec zrušení reference využívající . a odkazující na objekt, který se má načíst, jako například v m_X.m_Y.m_Z + + + + Inicializuje novou instanci třídy , která zabaluje + zadaný typ. + + Název sestavení + plně kvalifikovaný název + Argumenty, které se mají předat konstruktoru + + + + Inicializuje novou instanci třídy , která zabaluje + zadaný typ. + + Název sestavení + plně kvalifikovaný název + Pole objektů představujících počet, pořadí a typ parametrů, které má načíst konstruktor + Argumenty, které se mají předat konstruktoru + + + + Inicializuje novou instanci třídy , která zabaluje + zadaný typ. + + typ objektu, který chcete vytvořit + Argumenty, které se mají předat konstruktoru + + + + Inicializuje novou instanci třídy , která zabaluje + zadaný typ. + + typ objektu, který chcete vytvořit + Pole objektů představujících počet, pořadí a typ parametrů, které má načíst konstruktor + Argumenty, které se mají předat konstruktoru + + + + Inicializuje novou instanci třídy , která zabaluje + daný objekt. + + Objekt, který chcete zabalit + + + + Inicializuje novou instanci třídy , která zabaluje + daný objekt. + + Objekt, který chcete zabalit + Objekt PrivateType + + + + Získá nebo nastaví cíl. + + + + + Získá typ základního objektu. + + + + + Vrátí hodnotu hash cílového objektu. + + celé číslo představující hodnotu hash cílového objektu + + + + Rovná se + + Objekt, se kterým chcete porovnat + pokud se objekty rovnají, vrátí true. + + + + Vyvolá zadanou metodu. + + Název metody + Argumenty pro vyvolání, které se mají předat členu + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Pole typů odpovídající typům obecných argumentů + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Argumenty pro vyvolání, které se mají předat členu + Informace o jazykové verzi + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Informace o jazykové verzi + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Argumenty pro vyvolání, které se mají předat členu + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Argumenty pro vyvolání, které se mají předat členu + Informace o jazykové verzi + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Informace o jazykové verzi + Výsledek volání metody + + + + Vyvolá zadanou metodu. + + Název metody + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda načíst. + Argumenty pro vyvolání, které se mají předat členu + Informace o jazykové verzi + Pole typů odpovídající typům obecných argumentů + Výsledek volání metody + + + + Získá prvek pole pomocí pole dolních indexů pro jednotlivé rozměry. + + Název člena + indexy pole + Pole prvků + + + + Nastaví prvek pole pomocí pole dolních indexů pro jednotlivé rozměry. + + Název člena + Hodnota, která se má nastavit + indexy pole + + + + Získá prvek pole pomocí pole dolních indexů pro jednotlivé rozměry. + + Název člena + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + indexy pole + Pole prvků + + + + Nastaví prvek pole pomocí pole dolních indexů pro jednotlivé rozměry. + + Název člena + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Hodnota, která se má nastavit + indexy pole + + + + Získá pole. + + Název pole + Pole + + + + Nastaví pole. + + Název pole + nastavovací hodnota + + + + Získá pole. + + Název pole + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole + + + + Nastaví pole. + + Název pole + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + nastavovací hodnota + + + + Načte pole nebo vlastnost. + + Název pole nebo vlastnosti + Pole nebo vlastnost + + + + Nastaví pole nebo vlastnost. + + Název pole nebo vlastnosti + nastavovací hodnota + + + + Získá pole nebo vlastnost. + + Název pole nebo vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole nebo vlastnost + + + + Nastaví pole nebo vlastnost. + + Název pole nebo vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + nastavovací hodnota + + + + Získá vlastnost. + + Název vlastnosti + Argumenty pro vyvolání, které se mají předat členu + Vlastnost + + + + Získá vlastnost. + + Název vlastnosti + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + Vlastnost + + + + Nastaví vlastnost. + + Název vlastnosti + nastavovací hodnota + Argumenty pro vyvolání, které se mají předat členu + + + + Nastaví vlastnost. + + Název vlastnosti + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + nastavovací hodnota + Argumenty pro vyvolání, které se mají předat členu + + + + Získá vlastnost. + + Název vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Argumenty pro vyvolání, které se mají předat členu + Vlastnost + + + + Získá vlastnost. + + Název vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + Vlastnost + + + + Nastaví vlastnost. + + Název vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + nastavovací hodnota + Argumenty pro vyvolání, které se mají předat členu + + + + Nastaví vlastnost. + + Název vlastnosti + Bitová maska sestávající z jednoho nebo několika určující způsob vyhledávání. + nastavovací hodnota + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + + + + Ověří přístupový řetězec. + + přístupový řetězec + + + + Vyvolá člen. + + Název člena + Další atributy + Argumenty vyvolání + Jazyková verze + Výsledek vyvolání + + + + Vybere z aktuálního privátního typu nejvhodnější signaturu obecné metody. + + Název metody, ve které chcete prohledat mezipaměť podpisu + Pole typů odpovídající typům parametrů, ve kterých se má hledat. + Pole typů odpovídající typům obecných argumentů + pro další filtrování podpisů metody. + Modifikátory parametrů + Instance methodinfo + + + + Tato třída představuje privátní třídu pro funkci privátního přístupového objektu. + + + + + Váže se na vše. + + + + + Zabalený typ + + + + + Inicializuje novou instanci třídy , která obsahuje privátní typ. + + Název sestavení + plně kvalifikovaný název + + + + Inicializuje novou instanci třídy , která obsahuje + privátní typ z objektu typu. + + Zabalený typ, který se má vytvořit + + + + Získá odkazovaný typ. + + + + + Vyvolá statický člen. + + Název členu InvokeHelper + Argumenty vyvolání + Výsledek vyvolání + + + + Vyvolá statický člen. + + Název členu InvokeHelper + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty vyvolání + Výsledek vyvolání + + + + Vyvolá statický člen. + + Název členu InvokeHelper + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty vyvolání + Pole typů odpovídající typům obecných argumentů + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název člena + Argumenty k vyvolání + Jazyková verze + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název člena + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty k vyvolání + Informace o jazykové verzi + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název člena + Další atributy vyvolání + Argumenty k vyvolání + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název člena + Další atributy vyvolání + Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty k vyvolání + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název členu + Další atributy vyvolání + Argumenty k vyvolání + Jazyková verze + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název členu + Další atributy vyvolání + /// Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty k vyvolání + Jazyková verze + Výsledek vyvolání + + + + Vyvolá statickou metodu. + + Název členu + Další atributy vyvolání + /// Pole objektů představujících počet, pořadí a typ parametrů, které má metoda vyvolat + Argumenty k vyvolání + Jazyková verze + Pole typů odpovídající typům obecných argumentů + Výsledek vyvolání + + + + Získá prvek ve statickém poli. + + Název pole + + Jednorozměrné pole 32bitových celých čísel představujících indexy, které určují + pozici elementu, který se má získat. Pokud chcete získat přístup například k a[10][11], budou indexy {10,11}. + + prvek v zadaném umístění + + + + Nastaví člen statického pole. + + Název pole + nastavovací hodnota + + Jednorozměrné pole 32bitových celých čísel představujících indexy, které určují + pozici elementu, který se má nastavit. Pokud chcete například získat přístup k a[10][11], bude toto pole {10,11}. + + + + + Získá prvek ve statickém poli. + + Název pole + Další atributy InvokeHelper + + Jednorozměrné pole 32bitových celých čísel představujících indexy, které určují + pozici elementu, který se má získat. Pokud chcete například získat přístup k a[10][11], bude toto pole {10,11}. + + prvek v zadaném umístění + + + + Nastaví člen statického pole. + + Název pole + Další atributy InvokeHelper + nastavovací hodnota + + Jednorozměrné pole 32bitových celých čísel představujících indexy, které určují + pozici elementu, který se má nastavit. Pokud chcete například získat přístup k a[10][11], bude toto pole {10,11}. + + + + + Získá statické pole. + + Název pole + Statické pole + + + + Nastaví statické pole. + + Název pole + Argument k vyvolání + + + + Získá statické pole pomocí zadaných atributů InvokeHelper. + + Název pole + Další atributy vyvolání + Statické pole + + + + Nastaví statické pole pomocí atributů vazby. + + Název pole + Další atributy InvokeHelper + Argument k vyvolání + + + + Získá statické pole nebo vlastnost. + + Název pole nebo vlastnosti + Statické pole nebo vlastnost + + + + Nastaví statické pole nebo vlastnost. + + Název pole nebo vlastnosti + Hodnota, která se má nastavit pro pole nebo vlastnost + + + + Získá statické pole nebo vlastnost pomocí zadaných atributů InvokeHelper. + + Název pole nebo vlastnosti + Další atributy vyvolání + Statické pole nebo vlastnost + + + + Nastaví statické pole nebo vlastnost pomocí atributů vazby. + + Název pole nebo vlastnosti + Další atributy vyvolání + Hodnota, která se má nastavit pro pole nebo vlastnost + + + + Získá statistickou vlastnost. + + Název pole nebo vlastnosti + Argumenty k vyvolání + Statická vlastnost + + + + Nastaví statickou vlastnost. + + Název vlastnosti + Hodnota, která se má nastavit pro pole nebo vlastnost + Argumenty pro vyvolání, které se mají předat členu + + + + Nastaví statickou vlastnost. + + Název vlastnosti + Hodnota, která se má nastavit pro pole nebo vlastnost + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + + + + Získá statistickou vlastnost. + + Název vlastnosti + Další atributy vyvolání + Argumenty pro vyvolání, které se mají předat členu + Statická vlastnost + + + + Získá statistickou vlastnost. + + Název vlastnosti + Další atributy vyvolání + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + Statická vlastnost + + + + Nastaví statickou vlastnost. + + Název vlastnosti + Další atributy vyvolání + Hodnota, která se má nastavit pro pole nebo vlastnost + Volitelné hodnoty indexu pro indexované vlastnosti. Indexy indexovaných vlastností se počítají od nuly. Tato hodnota by měla pro neindexované vlastnosti být Null. + + + + Nastaví statickou vlastnost. + + Název vlastnosti + Další atributy vyvolání + Hodnota, která se má nastavit pro pole nebo vlastnost + Pole objektů představujících počet, pořadí a typ parametrů indexované vlastnosti. + Argumenty pro vyvolání, které se mají předat členu + + + + Vyvolá statickou metodu. + + Název členu + Další atributy vyvolání + Argumenty k vyvolání + Jazyková verze + Výsledek vyvolání + + + + Poskytuje zjišťování podpisu metody pro obecné metody. + + + + + Porovnává signatury těchto dvou metod. + + Method1 + Method2 + True, pokud je mezi nimi podobnost + + + + Získá hloubku hierarchie od základního typu poskytnutého typu. + + Typ + Hloubka + + + + Najde nejvíce odvozený typ s poskytnutými informacemi. + + Možné shody + Počet shod + Nejvíce odvozená metoda + + + + S ohledem na sadu metod, které splňují základní kritéria, vybere pro pole typů + metodu. Pokud kritériím nevyhovuje žádná metoda, měla by tato metoda + vrátit null. + + Specifikace vazby + Možné shody + Typy + Modifikátory parametrů + Metoda porovnávání. Null, pokud se nic neshoduje + + + + Najde v daných dvou poskytnutých metodách nejkonkrétnější metodu. + + Metoda 1 + Pořadí parametrů pro Metodu 1 + Typ pole parametrů + Metoda 2 + Pořadí parametrů pro Metodu 2 + >Typ pole parametrů + Typy, ve kterých se má hledat + Argumenty + Číslo typu int, které představuje shodu + + + + Najde v daných dvou poskytnutých metodách nejkonkrétnější metodu. + + Metoda 1 + Pořadí parametrů pro Metodu 1 + Typ pole parametrů + Metoda 2 + Pořadí parametrů pro Metodu 2 + >Typ pole parametrů + Typy, ve kterých se má hledat + Argumenty + Číslo typu int, které představuje shodu + + + + Najde ze dvou poskytnutých typů ten nejkonkrétnější. + + Typ 1 + Typ 2 + Definující typ + Číslo typu int, které představuje shodu + + + + Používá se pro ukládání informací poskytovaných testy jednotek. + + + + + Získá vlastnosti testu. + + + + + Získá aktuální řádek dat, když se test použije k testování řízenému daty. + + + + + Získá aktuální řádek připojení k datům, když se test použije k testování řízenému daty. + + + + + Získá základní adresář pro testovací běh, do kterého se ukládají nasazené soubory a soubory s výsledky. + + + + + Získá adresář pro soubory nasazené pro testovací běh. Obvykle se jedná o podadresář adresáře . + + + + + Získá základní adresář pro výsledky z testovacího běhu. Obvykle se jedná o podadresář adresáře . + + + + + Získá adresář pro soubory výsledků testovacího běhu. Obvykle se jedná o podadresář adresáře . + + + + + Získá adresář pro soubory s výsledky testu. + + + + + Získá základní adresář pro testovací běh, do kterého se ukládají nasazené soubory a soubory výsledků. + Shodné s . Použijte místo toho tuto vlastnost. + + + + + Získá adresář pro soubory nasazené pro testovací běh. Obvykle se jedná o podadresář adresáře . + Shodné s . Použijte místo toho tuto vlastnost. + + + + + Získá adresář pro soubory výsledků testovacího běhu. Obvykle se jedná o podadresář adresáře . + Shodné s . Pro soubory výsledků testovacího běhu použijte tuto vlastnost, + pro soubory výsledků konkrétního testu pak . + + + + + Získá plně kvalifikovaný název třídy, která obsahuje aktuálně prováděnou metodu testu. + + + + + Získá název aktuálně prováděné metody testu. + + + + + Získá aktuální výsledek testu. + + + + + Používá se pro zápis trasovacích zpráv během testu. + + řetězec formátované zprávy + + + + Používá se pro zápis trasovacích zpráv během testu. + + Řetězec formátu + argumenty + + + + Přidá do seznamu v TestResult.ResultFileNames název souboru. + + + Název souboru + + + + + Spustí zadaným způsobem časovač. + + Název časovače + + + + Ukončí zadaným způsobem časovač. + + Název časovače + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..3f446b4 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4197 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atribut TestMethod pro provádění + + + + + Získá název testovací metody. + + + + + Získá název třídy testu. + + + + + Získá návratový typ testovací metody. + + + + + Získá parametry testovací metody. + + + + + Získá methodInfo pro testovací metodu. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Vyvolá testovací metodu. + + + Argumenty pro testovací metodu (např. pro testování řízené daty) + + + Výsledek vyvolání testovací metody + + + This call handles asynchronous test methods as well. + + + + + Získá všechny atributy testovací metody. + + + Jestli je platný atribut definovaný v nadřazené třídě + + + Všechny atributy + + + + + Získá atribut konkrétního typu. + + System.Attribute type. + + Jestli je platný atribut definovaný v nadřazené třídě + + + Atributy zadaného typu + + + + + Pomocná služba + + + + + Kontrolní parametr není null. + + + Parametr + + + Název parametru + + + Zpráva + + Throws argument null exception when parameter is null. + + + + Ověřovací parametr není null nebo prázdný. + + + Parametr + + + Název parametru + + + Zpráva + + Throws ArgumentException when parameter is null. + + + + Výčet způsobů přístupu k datovým řádkům při testování řízeném daty + + + + + Řádky se vrací v sekvenčním pořadí. + + + + + Řádky se vrátí v náhodném pořadí. + + + + + Atribut pro definování vložených dat pro testovací metodu + + + + + Inicializuje novou instanci třídy . + + Datový objekt + + + + Inicializuje novou instanci třídy , která přijímá pole argumentů. + + Datový objekt + Další data + + + + Získá data pro volání testovací metody. + + + + + Získá nebo nastaví zobrazovaný název ve výsledcích testu pro přizpůsobení. + + + + + Výjimka s neprůkazným kontrolním výrazem + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Třída InternalTestFailureException. Používá se pro označení interní chyby testovacího případu. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + + + + Inicializuje novou instanci třídy . + + + + + Atribut, podle kterého se má očekávat výjimka zadaného typu + + + + + Inicializuje novou instanci třídy s očekávaným typem. + + Typ očekávané výjimky + + + + Inicializuje novou instanci třídy + s očekávaným typem a zprávou, která se zahrne v případě, že test nevyvolá žádnou výjimku. + + Typ očekávané výjimky + + Zpráva, která má být zahrnuta do výsledku testu, pokud se test nezdaří z důvodu nevyvolání výjimky + + + + + Načte hodnotu, která označuje typ očekávané výjimky. + + + + + Získá nebo načte hodnotu, která označuje, jestli je možné typy odvozené od typu očekávané výjimky + považovat za očekávané. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Ověří, jestli se očekává typ výjimky vyvolané testem jednotek. + + Výjimka vyvolaná testem jednotek + + + + Základní třída pro atributy, které určují, že se má očekávat výjimka testu jednotek + + + + + Inicializuje novou instanci třídy s výchozí zprávou no-exception. + + + + + Inicializuje novou instanci třídy se zprávou no-exception. + + + Zprávy, které mají být zahrnuty ve výsledku testu, pokud se test nezdaří z důvodu nevyvolání + výjimky + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá výchozí zprávu no-exception. + + Název typu atributu ExpectedException + Výchozí zpráva neobsahující výjimku + + + + Určuje, jestli se daná výjimka očekává. Pokud metoda skončí, rozumí se tomu tak, + že se výjimka očekávala. Pokud metoda vyvolá výjimku, rozumí se tím, + že se výjimka neočekávala a součástí výsledku testu + je zpráva vyvolané výjimky. Pomocí třídy je možné si usnadnit + práci. Pokud se použije a kontrolní výraz selže, + výsledek testu se nastaví na Neprůkazný. + + Výjimka vyvolaná testem jednotek + + + + Znovu vyvolá výjimku, pokud se jedná o atribut AssertFailedException nebo AssertInconclusiveException. + + Výjimka, která se má znovu vyvolat, pokud se jedná výjimku kontrolního výrazu + + + + Tato třída je koncipovaná tak, aby uživatelům pomáhala při testování jednotek typů, které využívá obecné typy. + Atribut GenericParameterHelper řeší některá běžná omezení obecných typů, + jako jsou: + 1. veřejný výchozí konstruktor + 2. implementace společného rozhraní: IComparable, IEnumerable + + + + + Inicializuje novou instanci třídy , která + splňuje omezení newable v obecných typech jazyka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializuje novou instanci třídy , která + inicializuje vlastnost Data na hodnotu zadanou uživatelem. + + Libovolné celé číslo + + + + Získá nebo nastaví data. + + + + + Provede porovnání hodnot pro dva objekty GenericParameterHelper. + + objekt, se kterým chcete porovnávat + pravda, pokud má objekt stejnou hodnotu jako „tento“ objekt GenericParameterHelper. + V opačném případě nepravda. + + + + Vrátí pro tento objekt hodnotu hash. + + Kód hash + + + + Porovná data daných dvou objektů . + + Objekt pro porovnání + + Číslo se znaménkem označující relativní hodnoty této instance a hodnoty + + + Thrown when the object passed in is not an instance of . + + + + + Vrátí objekt IEnumerator, jehož délka je odvozená od + vlastnosti dat. + + Objekt IEnumerator + + + + Vrátí objekt GenericParameterHelper, který se rovná + aktuálnímu objektu. + + Klonovaný objekt + + + + Umožňuje uživatelům protokolovat/zapisovat trasování z testů jednotek pro účely diagnostiky. + + + + + Obslužná rutina pro LogMessage + + Zpráva, kterou chcete zaprotokolovat + + + + Událost pro naslouchání. Dojde k ní, když autor testů jednotek napíše zprávu. + Určeno především pro použití adaptérem. + + + + + Rozhraní API pro volání zpráv protokolu zapisovačem testu + + Formátovací řetězec se zástupnými symboly + Parametry pro zástupné symboly + + + + Atribut TestCategory, používá se pro zadání kategorie testu jednotek. + + + + + Inicializuje novou instanci třídy a zavede pro daný test kategorii. + + + Kategorie testu + + + + + Získá kategorie testu, které se nastavily pro test. + + + + + Základní třída atributu Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializuje novou instanci třídy . + Tuto kategorii zavede pro daný test. Řetězce vrácené z TestCategories + se použijí spolu s příkazem /category k filtrování testů. + + + + + Získá kategorii testu, která se nastavila pro test. + + + + + Třída AssertFailedException. Používá se pro značení chyby testovacího případu. + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Kolekce pomocných tříd pro testování nejrůznějších podmínek v rámci + testů jednotek. Pokud se testovaná podmínka nesplní, vyvolá se + výjimka. + + + + + Získá instanci typu singleton funkce Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is false. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is true. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null. + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Vyvolá výjimku AssertFailedException. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Statická přetížení operátoru rovnosti se používají k porovnání rovnosti odkazů na instance + dvou typů. Tato metoda by se neměla používat k porovnání rovnosti dvou + instancí. Tento objekt vždy vyvolá Assert.Fail. Ve svých testech + jednotek prosím použijte Assert.AreEqual a přidružená přetížení. + + Objekt A + Objekt B + Vždy nepravda. + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Nahradí znaky null ('\0') řetězcem "\\0". + + + Řetězec, který se má hledat + + + Převedený řetězec se znaky Null nahrazený řetězcem "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Pomocná funkce, která vytváří a vyvolává výjimku AssertionFailedException + + + název kontrolního výrazu, který vyvolává výjimku + + + zpráva popisující podmínky neplatnosti kontrolního výrazu + + + Parametry + + + + + Ověří parametr pro platné podmínky. + + + Parametr + + + Název kontrolního výrazu + + + název parametru + + + zpráva pro neplatnou výjimku parametru + + + Parametry + + + + + Bezpečně převede objekt na řetězec, včetně zpracování hodnot null a znaků null. + Hodnoty null se převádějí na formát (null). Znaky null se převádějí na \\0. + + + Objekt, který chcete převést na řetězec + + + Převedený řetězec + + + + + Kontrolní výraz řetězce + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not end with + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if matches . + + + + + Kolekce tříd pomocných služeb pro ověřování nejrůznějších podmínek vztahujících se + na kolekce v rámci testů jednotek. Pokud se testovaná podmínka + nesplní, vyvolá se výjimka. + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is found in + . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a null element is found in . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Určuje, jestli první kolekce je podmnožinou druhé + kolekce. Pokud některá z množin obsahuje duplicitní prvky, musí počet + výskytů prvku v podmnožině být menší, nebo + se musí rovnat počtu výskytů v nadmnožině. + + + Kolekce, která podle testu má být obsažena v nadmnožině . + + + Kolekce, která podle testu má obsahovat . + + + Pravda, pokud je podmnožinou + , jinak nepravda. + + + + + Vytvoří slovník obsahující počet výskytů jednotlivých + prvků v zadané kolekci. + + + Kolekce, kterou chcete zpracovat + + + Počet prvků Null v kolekci + + + Slovník obsahující počet výskytů jednotlivých prvků + v zadané kolekci. + + + + + Najde mezi dvěma kolekcemi neshodný prvek. Neshodný + prvek je takový, který má v očekávané kolekci + odlišný počet výskytů ve srovnání se skutečnou kolekcí. Kolekce + se považují za rozdílné reference bez hodnoty null se + stejným počtem prvků. Za tuto úroveň ověření odpovídá + volající. Pokud neexistuje žádný neshodný prvek, funkce vrátí + false a neměli byste použít parametry Out. + + + První kolekce, která se má porovnat + + + Druhá kolekce k porovnání + + + Očekávaný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Skutečný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Neshodný prvek (může být Null) nebo Null, pokud neexistuje žádný + neshodný prvek. + + + pravda, pokud je nalezen nevyhovující prvek; v opačném případě nepravda. + + + + + Porovná objekt pomocí atributu object.Equals. + + + + + Základní třída pro výjimky architektury + + + + + Inicializuje novou instanci třídy . + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Třída prostředků se silnými typy pro vyhledávání lokalizovaných řetězců atd. + + + + + Vrátí v mezipaměti uloženou instanci ResourceManager použitou touto třídou. + + + + + Přepíše vlastnost CurrentUICulture aktuálního vlákna pro všechna + vyhledávání prostředků pomocí této třídy prostředků silného typu. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Přístupový řetězec má neplatnou syntaxi. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekávaná kolekce obsahuje počet výskytů {1} <{2}>. Skutečná kolekce obsahuje tento počet výskytů: {3}. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Našla se duplicitní položka:<{1}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekáváno:<{1}>. Případ je rozdílný pro skutečnou hodnotu:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekává rozdíl maximálně <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekáváno:<{1} ({2})>. Skutečnost:<{3} ({4})>. {0}. + + + + + Vyhledá řetězec podobný řetězci Očekáváno:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekával rozdíl větší než <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávala se libovolná hodnota s výjimkou:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevkládejte hodnotu typů do AreSame(). Hodnoty převedené na typ Object nebudou nikdy stejné. Zvažte možnost použít AreEqual(). {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Chyba {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: async TestMethod s atributem UITestMethodAttribute se nepodporují. Buď odeberte async, nebo použijte TestMethodAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce jsou prázdné. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejný prvek. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě reference kolekce odkazují na stejný objekt kolekce. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejné prvky. {0}. + + + + + Vyhledá řetězec podobný řetězci {0}({1}). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (null). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (objekt). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} neobsahuje řetězec {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} ({1}). + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Atribut Assert.Equals by se neměl používat pro kontrolní výrazy. Použijte spíše Assert.AreEqual a přetížení. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Počet prvků v kolekci se neshoduje. Očekáváno:<{1}>. Skutečnost:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {0} se neshoduje. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Prvek indexu {1} je neočekávaného typu. Očekávaný typ:<{2}>. Skutečný typ:<{3}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {1} je (null). Očekávaný typ:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nekončí řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Neplatný argument: EqualsTester nemůže použít hodnoty null. + + + + + Vyhledá řetězec podobný řetězci Nejde převést objekt typu {0} na {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Interní odkazovaný objekt už není platný. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Parametr {0} je neplatný. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Vlastnost {0} má typ {1}; očekávaný typ {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} Očekávaný typ:<{1}>. Skutečný typ:<{2}>. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se neshoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Nesprávný typ:<{1}>. Skutečný typ:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se shoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nezadal se žádný atribut DataRowAttribute. K atributu DataTestMethodAttribute se vyžaduje aspoň jeden atribut DataRowAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevyvolala se žádná výjimka. Očekávala se výjimka {1}. {0}. + + + + + Vyhledá lokalizované řetězce podobné tomuto: Parametr {0} je neplatný. Hodnota nemůže být null. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Rozdílný počet prvků. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Konstruktor se zadaným podpisem se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru objektu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Zadaný člen ({0}) se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru atributu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nezačíná řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávaný typ výjimky musí být System.Exception nebo typ odvozený od System.Exception. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (Z důvodu výjimky se nepodařilo získat zprávu pro výjimku typu {0}.). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Testovací metoda nevyvolala očekávanou výjimku {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda nevyvolala výjimku. Atribut {0} definovaný testovací metodou očekával výjimku. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, ale očekávala se výjimka {1}. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, očekávala se ale odvozená výjimka {1} nebo typ. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Vyvolala se výjimka {2}, ale očekávala se výjimka {1}. {0} + Zpráva o výjimce: {3} + Trasování zásobníku: {4} + + + + + Výsledky testu jednotek + + + + + Test se provedl, ale došlo k problémům. + Problémy se můžou týkat výjimek nebo neúspěšných kontrolních výrazů. + + + + + Test se dokončil, ale není možné zjistit, jestli byl úspěšný, nebo ne. + Dá se použít pro zrušené testy. + + + + + Test se provedl zcela bez problémů. + + + + + V tuto chvíli probíhá test. + + + + + Při provádění testu došlo k chybě systému. + + + + + Časový limit testu vypršel. + + + + + Test byl zrušen uživatelem. + + + + + Test je v neznámém stavu. + + + + + Poskytuje pomocnou funkci pro systém pro testy jednotek. + + + + + Rekurzivně získá zprávy o výjimce, včetně zpráv pro všechny vnitřní + výjimky. + + Výjimka pro načítání zpráv pro + řetězec s informacemi v chybové zprávě + + + + Výčet pro časové limity, který se dá použít spolu s třídou . + Typ výčtu musí odpovídat + + + + + Nekonečno + + + + + Atribut třídy testu + + + + + Získá atribut testovací metody, který umožní spustit tento test. + + Instance atributu testovací metody definované v této metodě. + Typ Použije se ke spuštění tohoto testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atribut testovací metody + + + + + Spustí testovací metodu. + + Testovací metoda, která se má spustit. + Pole objektů TestResult, které představuje výsledek (nebo výsledky) daného testu. + Extensions can override this method to customize running a TestMethod. + + + + Atribut inicializace testu + + + + + Atribut vyčištění testu + + + + + Atribut ignore + + + + + Atribut vlastnosti testu + + + + + Inicializuje novou instanci třídy . + + + Název + + + Hodnota + + + + + Získá název. + + + + + Získá hodnotu. + + + + + Atribut inicializace třídy + + + + + Atribut vyčištění třídy + + + + + Atribut inicializace sestavení + + + + + Atribut vyčištění sestavení + + + + + Vlastník testu + + + + + Inicializuje novou instanci třídy . + + + Vlastník + + + + + Získá vlastníka. + + + + + Atribut priority, používá se pro určení priority testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Priorita + + + + + Získá prioritu. + + + + + Popis testu + + + + + Inicializuje novou instanci třídy , která popíše test. + + Popis + + + + Získá popis testu. + + + + + Identifikátor URI struktury projektů CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI struktury projektů CSS. + + Identifikátor URI struktury projektů CSS + + + + Získá identifikátor URI struktury projektů CSS. + + + + + Identifikátor URI iterace CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI iterace CSS. + + Identifikátor URI iterace CSS + + + + Získá identifikátor URI iterace CSS. + + + + + Atribut WorkItem, používá se pro zadání pracovní položky přidružené k tomuto testu. + + + + + Inicializuje novou instanci třídy pro atribut WorkItem. + + ID pro pracovní položku + + + + Získá ID k přidružené pracovní položce. + + + + + Atribut časového limitu, používá se pro zadání časového limitu testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Časový limit + + + + + Inicializuje novou instanci třídy s předem nastaveným časovým limitem. + + + Časový limit + + + + + Získá časový limit. + + + + + Objekt TestResult, který se má vrátit adaptéru + + + + + Inicializuje novou instanci třídy . + + + + + Získá nebo nastaví zobrazovaný název výsledku. Vhodné pro vrácení většího počtu výsledků. + Pokud je null, jako DisplayName se použije název metody. + + + + + Získá nebo nastaví výsledek provedení testu. + + + + + Získá nebo nastaví výjimku vyvolanou při chybě testu. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo načte trasování ladění testovacího kódu. + + + + + Gets or sets the debug traces by test code. + + + + + Získá nebo nastaví délku trvání testu. + + + + + Získá nebo nastaví index řádku dat ve zdroji dat. Nastavte pouze pro výsledky jednoho + spuštění řádku dat v testu řízeném daty. + + + + + Získá nebo nastaví návratovou hodnotu testovací metody. (Aktuálně vždy null) + + + + + Získá nebo nastaví soubory s výsledky, které připojil test. + + + + + Určuje připojovací řetězec, název tabulky a metodu přístupu řádku pro testování řízené daty. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Název výchozího poskytovatele pro DataSource + + + + + Výchozí metoda pro přístup k datům + + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat, připojovacím řetězcem, tabulkou dat a přístupovou metodou k datům, pomocí kterých se získá přístup ke zdroji dat. + + Název poskytovatele neutrálních dat, jako je System.Data.SqlClient + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + Určuje pořadí přístupu k datům. + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s připojovacím řetězcem a názvem tabulky. + Zadejte připojovací řetězec a tabulku dat, pomocí kterých se získá přístup ke zdroji dat OLEDB. + + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat a připojovacím řetězcem přidruženým k názvu nastavení. + + Název zdroje dat nalezený v oddílu <microsoft.visualstudio.qualitytools> souboru app.config. + + + + Získá hodnotu představující poskytovatele dat zdroje dat. + + + Název poskytovatele dat. Pokud poskytovatel dat nebyl při inicializaci objektu zadán, bude vrácen výchozí poskytovatel System.Data.OleDb. + + + + + Získá hodnotu představující připojovací řetězec zdroje dat. + + + + + Získá hodnotu označující název tabulky poskytující data. + + + + + Získá metodu používanou pro přístup ke zdroji dat. + + + + Jedna z těchto položek: . Pokud není inicializován, vrátí výchozí hodnotu . + + + + + Získá název zdroje dat nalezeného v části <microsoft.visualstudio.qualitytools> v souboru app.config. + + + + + Atribut testu řízeného daty, kde se data dají zadat jako vložená. + + + + + Vyhledá všechny datové řádky a spustí je. + + + Testovací metoda + + + Pole . + + + + + Spustí testovací metodu řízenou daty. + + Testovací metoda, kterou chcete provést. + Datový řádek + Výsledek provedení + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..6dc91e9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Wird zum Angeben des Bereitstellungselements (Datei oder Verzeichnis) für eine Bereitstellung pro Test verwendet. + Kann für eine Testklasse oder Testmethode angegeben werden. + Kann mehrere Instanzen des Attributs besitzen, um mehrere Elemente anzugeben. + Der Elementpfad kann absolut oder relativ sein. Wenn er relativ ist, dann relativ zu "RunConfig.RelativePathRoot". + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die bereitzustellende Datei oder das Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + + + + Initialisiert eine neue Instanz der -Klasse. + + Der relative oder absolute Pfad zur bereitzustellenden Datei oder zum Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + Der Pfad des Verzeichnisses, in das die Elemente kopiert werden sollen. Er kann absolut oder relativ zum Bereitstellungsverzeichnis sein. Alle Dateien und Verzeichnisse, die identifiziert werden durch werden in dieses Verzeichnis kopiert. + + + + Ruft den Pfad der Quelldatei oder des -ordners ab, die bzw. der kopiert werden soll. + + + + + Ruft den Pfad des Verzeichnisses ab, in das das Element kopiert werden soll. + + + + + Enthält Literale für Namen von Abschnitten, Eigenschaften, Attributen. + + + + + Der Konfigurationsabschnittsname. + + + + + Der Konfigurationsbereichsname für Beta2. Belassen für Kompatibilität. + + + + + Abschnittsname für die Datenquelle. + + + + + Attributname für "Name" + + + + + Attributname für "ConnectionString" + + + + + Attributname für "DataAccessMethod" + + + + + Attributname für "DataTable" + + + + + Das Datenquellelement. + + + + + Ruft das Arrayelement mit einem Array von tiefgestellten Indizes für diese Konfiguration ab. + + + + + Ruft das Element "ConnectionStringSettings" im Abschnitt <connectionStrings> in der Konfigurationsdatei ab oder legt es fest. + + + + + Ruft den Namen der Datentabelle ab oder legt ihn fest. + + + + + Ruft den Datenzugriffstyp ab oder legt ihn fest. + + + + + Ruft den Schlüsselnamen ab. + + + + + Ruft die Konfigurationseigenschaften ab. + + + + + Die Sammlung der Datenquellenelemente. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Gibt das Konfigurationselement mit dem angegebenen Schlüssel zurück. + + Der Schlüssel des Elements, das zurückgegeben werden soll. + Das System.Configuration.ConfigurationElement mit dem angegebenen Schlüssel, andernfalls NULL. + + + + Ruft das Konfigurationselement am angegebenen Indexspeicherort ab. + + Der Indexspeicherort des System.Configuration.ConfigurationElement, das zurückgegeben werden soll. + + + + Fügt der Konfigurationselementsammlung ein Konfigurationselement hinzu. + + Das System.Configuration.ConfigurationElement, das hinzugefügt werden soll. + + + + Entfernt ein System.Configuration.ConfigurationElement aus der Sammlung. + + Das . + + + + Entfernt ein System.Configuration.ConfigurationElement aus der Sammlung. + + Der Schlüssel des zu entfernenden System.Configuration.ConfigurationElement. + + + + Entfernt alle Konfigurationselementobjekte aus der Sammlung. + + + + + Erstellt ein neues. + + Eine neues . + + + + Ruft den Elementschlüssel für ein angegebenes Konfigurationselement ab. + + Das System.Configuration.ConfigurationElement, für das der Schlüssel zurückgegeben werden soll. + Ein System.Object, das als Schlüssel für das angegebene System.Configuration.ConfigurationElement fungiert. + + + + Fügt der Konfigurationselementsammlung ein Konfigurationselement hinzu. + + Das System.Configuration.ConfigurationElement, das hinzugefügt werden soll. + + + + Fügt der Konfigurationselementsammlung ein Konfigurationselement hinzu. + + Die Stelle im Index, an der das angegebene System.Configuration.ConfigurationElement hinzugefügt werden soll. + Das System.Configuration.ConfigurationElement, das hinzugefügt werden soll. + + + + Unterstützung für Konfigurationseinstellungen für Tests. + + + + + Ruft den Konfigurationsabschnitt für Tests ab. + + + + + Der Konfigurationsabschnitt für Tests. + + + + + Ruft die Datenquellen für diesen Konfigurationsbereich ab. + + + + + Ruft die Sammlung von Eigenschaften ab. + + + Der mit Eigenschaften für das Element. + + + + + Diese Klasse stellt das NICHT öffentliche INTERNE Objekt im System dar. + + + + + Initialisiert eine neue Instanz der -Klasse, die + das bereits vorhandene Objekt der privaten Klasse enthält + + Objekt, das als Ausgangspunkt zum Erreichen der privaten Member dient + Die dereferenzierende Zeichenfolge mit ., die auf das abzurufende Objekt zeigt (wie in m_X.m_Y.m_Z). + + + + Initialisiert eine neue Instanz der-Klasse, die den + angegebenen Typ umschließt. + + Name der Assembly + Vollqualifizierter Name + Argumente, die an den Konstruktor übergeben werden sollen. + + + + Initialisiert eine neue Instanz der-Klasse, die den + angegebenen Typ umschließt. + + Name der Assembly + Vollqualifizierter Name + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für den abzurufenden Konstruktor darstellt. + Argumente, die an den Konstruktor übergeben werden sollen. + + + + Initialisiert eine neue Instanz der-Klasse, die den + angegebenen Typ umschließt. + + Typ des zu erstellenden Objekts + Argumente, die an den Konstruktor übergeben werden sollen. + + + + Initialisiert eine neue Instanz der-Klasse, die den + angegebenen Typ umschließt. + + Typ des zu erstellenden Objekts + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für den abzurufenden Konstruktor darstellt. + Argumente, die an den Konstruktor übergeben werden sollen. + + + + Initialisiert eine neue Instanz der-Klasse, die das + angegebene Objekt umschließt. + + Das zu umschließende Objekt. + + + + Initialisiert eine neue Instanz der-Klasse, die das + angegebene Objekt umschließt. + + Das zu umschließende Objekt. + PrivateType-Objekt + + + + Ruf das Ziel ab bzw. legt dieses fest. + + + + + Ruft den Typ des zugrunde liegenden Objekts ab + + + + + Gibt den Hashcode des Zielobjekts zurück. + + int-Wert, der den Hashcode des Zielobjekts darstellt. + + + + Ist gleich + + Objekt, mit dem verglichen werden soll + gibt "true" zurück, wenn die Objekte gleich sind. + + + + Ruft die angegebene Methode auf. + + Name der Methode + An den aufzurufenden Member zu übergebende Argumente. + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Ein Array von Typen, das den Typen der generischen Argumente entspricht. + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + An den aufzurufenden Member zu übergebende Argumente. + Kulturinformation + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Kulturinformation + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + An den aufzurufenden Member zu übergebende Argumente. + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + An den aufzurufenden Member zu übergebende Argumente. + Kulturinformation + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Name der Methode + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Kulturinformation + Ergebnis des Methodenaufrufs + + + + Ruft die angegebene Methode auf. + + Der Name der Methode. + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die abzurufende Methode darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Kulturinformation + Ein Array von Typen, das den Typen der generischen Argumente entspricht. + Ergebnis des Methodenaufrufs + + + + Ruft das Arrayelement mit einem Array von tiefgestellten Indizes für jede Dimension ab. + + Name des Members + Indizes des Arrays + Ein Array von Elementen. + + + + Legt das Arrayelement mit einem Array von tiefgestellten Indizes für jede Dimension fest. + + Name des Members + Der festzulegende Wert + Indizes des Arrays + + + + Ruft das Arrayelement mit einem Array von tiefgestellten Indizes für jede Dimension ab. + + Name des Members + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Indizes des Arrays + Ein Array von Elementen. + + + + Legt das Arrayelement mit einem Array von tiefgestellten Indizes für jede Dimension fest. + + Name des Members + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Der festzulegende Wert + Indizes des Arrays + + + + Ruft das Feld ab. + + Name des Felds + Das Feld. + + + + Legt das Feld fest. + + Name des Felds + Der festzulegende Wert + + + + Ruft das Feld ab. + + Name des Felds + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Das Feld. + + + + Legt das Feld fest. + + Name des Felds + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Der festzulegende Wert + + + + Ruft das Feld oder die Eigenschaft ab. + + Der Name des Felds oder der Eigenschaft. + Das Feld oder die Eigenschaft. + + + + Legt das Feld oder die Eigenschaft fest. + + Der Name des Felds oder der Eigenschaft. + Der festzulegende Wert + + + + Ruft das Feld oder die Eigenschaft ab. + + Der Name des Felds oder der Eigenschaft. + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Das Feld oder die Eigenschaft. + + + + Legt das Feld oder die Eigenschaft fest. + + Der Name des Felds oder der Eigenschaft. + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Der festzulegende Wert + + + + Ruft die Eigenschaft ab. + + Der Name der Eigenschaft. + An den aufzurufenden Member zu übergebende Argumente. + Die Eigenschaft. + + + + Ruft die Eigenschaft ab. + + Der Name der Eigenschaft. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Die Eigenschaft. + + + + Legt die Eigenschaft fest. + + Der Name der Eigenschaft. + Der festzulegende Wert + An den aufzurufenden Member zu übergebende Argumente. + + + + Legt die Eigenschaft fest. + + Der Name der Eigenschaft. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + Der festzulegende Wert + An den aufzurufenden Member zu übergebende Argumente. + + + + Ruft die Eigenschaft ab. + + Name der Eigenschaft + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + An den aufzurufenden Member zu übergebende Argumente. + Die Eigenschaft. + + + + Ruft die Eigenschaft ab. + + Name der Eigenschaft + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Die Eigenschaft. + + + + Legt die Eigenschaft fest. + + Der Name der Eigenschaft. + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Der festzulegende Wert + An den aufzurufenden Member zu übergebende Argumente. + + + + Legt die Eigenschaft fest. + + Der Name der Eigenschaft. + Eine Bitmaske aus mindestens einem die angeben, wie die Suche ausgeführt wird. + Der festzulegende Wert + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + + + + Überprüft die Zugriffszeichenfolge. + + Zugriffszeichenfolge + + + + Ruft den Member auf. + + Name des Members + Zusätzliche Attribute + Argumente für den Aufruf + Kultur + Ergebnis des Aufrufs + + + + Extrahiert die am besten geeignete generische Methodensignatur aus dem aktuellen privaten Typ. + + Der Name der Methode, in der der Signaturcache gesucht werden soll. + Ein Array von Typen, das den Typen der Parameter entspricht, in denen gesucht werden soll. + Ein Array von Typen, das den Typen der generischen Argumente entspricht. + zum weiteren Filtern der Methodensignaturen. + Modifizierer für Parameter. + Eine methodinfo-Instanz. + + + + Diese Klasse stellt eine private Klasse für die private Accessorfunktion dar. + + + + + Bindet an alles. + + + + + Der umschlossene Typ. + + + + + Initialisiert eine neue Instanz der -Klasse, die den privaten Typ enthält. + + Assemblyname + Der vollqualifizierte Name von + + + + Initialisiert eine neue Instanz der -Klasse, die + den privaten Typ aus dem Typobjekt enthält. + + Der umschlossene Typ, der erstellt werden soll. + + + + Ruft den referenzierten Typ ab. + + + + + Ruft den statischen Member auf. + + Der Name des Members, für den InvokeHelper aufgerufen werden soll. + Argumente für den Aufruf + Ergebnis des Aufrufs + + + + Ruft den statischen Member auf. + + Der Name des Members, für den InvokeHelper aufgerufen werden soll. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Ergebnis des Aufrufs + + + + Ruft den statischen Member auf. + + Der Name des Members, für den InvokeHelper aufgerufen werden soll. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Ein Array von Typen, das den Typen der generischen Argumente entspricht. + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Name des Members + Argumente für den Aufruf + Kultur + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Name des Members + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Kulturinformation + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Name des Members + Zusätzliche Aufrufattribute + Argumente für den Aufruf + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Name des Members + Zusätzliche Aufrufattribute + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Der Name des Members. + Zusätzliche Aufrufattribute + Argumente für den Aufruf + Kultur + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Der Name des Members. + Zusätzliche Aufrufattribute + /// Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Kultur + Ergebnis des Aufrufs + + + + Ruft die statische Methode auf. + + Der Name des Members. + Zusätzliche Aufrufattribute + /// Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die aufzurufende Methode darstellt. + Argumente für den Aufruf + Kultur + Ein Array von Typen, das den Typen der generischen Argumente entspricht. + Ergebnis des Aufrufs + + + + Ruft das Element im statischen Array ab. + + Name des Arrays + + Ein eindimensionales Array aus ganzzahligen 32-Bit-Werten, die die Indizes darstellen, welche + die Position des abzurufenden Elements angeben. Um z. B. auf "a[10][11]" zuzugreifen, würden die Indizes {10,11} lauten. + + Element an der angegebenen Position + + + + Legt den Member des statischen Arrays fest. + + Name des Arrays + Der festzulegende Wert + + Ein eindimensionales Array aus ganzzahligen 32-Bit-Werten, die die Indizes darstellen, welche + die Position des festzulegenden Elements angeben. Um z. B. auf "a[10][11]" zuzugreifen, würde das Array {10,11} lauten. + + + + + Ruft das Element im statischen Array ab. + + Name des Arrays + Zusätzliche InvokeHelper-Attribute + + Ein eindimensionales Array aus ganzzahligen 32-Bit-Werten, die die Indizes darstellen, welche + die Position des abzurufenden Elements angeben. Um z. B. auf "a[10][11]" zuzugreifen, würde das Array {10,11} lauten. + + Element an der angegebenen Position + + + + Legt den Member des statischen Arrays fest. + + Name des Arrays + Zusätzliche InvokeHelper-Attribute + Der festzulegende Wert + + Ein eindimensionales Array aus ganzzahligen 32-Bit-Werten, die die Indizes darstellen, welche + die Position des festzulegenden Elements angeben. Um z. B. auf "[10][11]" zuzugreifen, würde das Array {10,11} lauten. + + + + + Ruft das statische Feld ab. + + Der Name des Felds. + Das statische Feld. + + + + Legt das statische Feld fest. + + Der Name des Felds. + Argument für den Aufruf + + + + Ruft das statische Feld mit den angegebenen InvokeHelper-Attributen ab. + + Der Name des Felds. + Zusätzliche Aufrufattribute + Das statische Feld. + + + + Legt das statische Feld mit Bindungsattributen fest. + + Der Name des Felds. + Zusätzliche InvokeHelper-Attribute + Argument für den Aufruf + + + + Ruft das statische Feld oder die Eigenschaft ab. + + Der Name des Felds oder der Eigenschaft. + Das statische Feld oder die statische Eigenschaft. + + + + Legt das statische Feld oder die Eigenschaft fest. + + Der Name des Felds oder der Eigenschaft. + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + + + + Ruft das statische Feld oder die Eigenschaft mit den angegebenen InvokeHelper-Attributen ab. + + Der Name des Felds oder der Eigenschaft. + Zusätzliche Aufrufattribute + Das statische Feld oder die statische Eigenschaft. + + + + Legt das statische Feld oder die Eigenschaft mit Bindungsattributen fest. + + Der Name des Felds oder der Eigenschaft. + Zusätzliche Aufrufattribute + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + + + + Ruft die statische Eigenschaft ab. + + Der Name des Felds oder der Eigenschaft. + Argumente für den Aufruf + Die statische Eigenschaft. + + + + Legt die statische Eigenschaft fest. + + Der Name der Eigenschaft. + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + An den aufzurufenden Member zu übergebende Argumente. + + + + Legt die statische Eigenschaft fest. + + Der Name der Eigenschaft. + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + + + + Ruft die statische Eigenschaft ab. + + Der Name der Eigenschaft. + Zusätzliche Aufrufattribute. + An den aufzurufenden Member zu übergebende Argumente. + Die statische Eigenschaft. + + + + Ruft die statische Eigenschaft ab. + + Der Name der Eigenschaft. + Zusätzliche Aufrufattribute. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + Die statische Eigenschaft. + + + + Legt die statische Eigenschaft fest. + + Der Name der Eigenschaft. + Zusätzliche Aufrufattribute. + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + Optionale Indexwerte für indizierte Eigenschaften. Die Indizes indizierter Eigenschaften sind nullbasiert. Dieser Wert sollte für nicht indizierte Eigenschaften null sein. + + + + Legt die statische Eigenschaft fest. + + Der Name der Eigenschaft. + Zusätzliche Aufrufattribute. + Der Wert, auf den das Feld oder die Eigenschaft festgelegt wird. + Ein Array von Objekten, das die Anzahl, die Reihenfolge und den Typ der Parameter für die indizierte Eigenschaft darstellt. + An den aufzurufenden Member zu übergebende Argumente. + + + + Ruft die statische Methode auf. + + Der Name des Members. + Zusätzliche Aufrufattribute + Argumente für den Aufruf + Kultur + Ergebnis des Aufrufs + + + + Stellt Methodensignaturermittlung für generische Methoden bereit. + + + + + Vergleicht die Methodensignaturen dieser beiden Methoden. + + Method1 + Method2 + "true", wenn sie ähnlich sind. + + + + Ruft die Hierarchietiefe vom Basistyp des bereitgestellten Typs ab. + + Der Typ. + Die Tiefe. + + + + Findet den am häufigsten abgerufenen Typ mit den angegebenen Informationen. + + Kandidatenübereinstimmungen. + Anzahl der Übereinstimmungen. + Die am häufigsten abgerufene Methode. + + + + Wählt bei Angabe einer Sammlung von Methoden, die mit den Basiskriterien übereinstimmen, eine Methode basierend + auf einem Array von Typen aus. Diese Methode sollte NULL zurückgeben, wenn keine Methode + mit den Kriterien übereinstimmt. + + Bindungsspezifikation. + Kandidatenübereinstimmungen + Typen + Parametermodifizierer. + Übereinstimmungsmethode. NULL, wenn keine Übereinstimmung vorliegt. + + + + Findet unter den beiden angegeben Methoden die spezifischste. + + Methode 1 + Parameterreihenfolge für Methode 1 + Parameter-Arraytyp. + Methode 2 + Parameterreihenfolge für Methode 2 + >Parameter-Arraytyp. + Typen, in denen gesucht wird. + Argumente. + Ein "int", der die Übereinstimmung darstellt. + + + + Findet unter den beiden angegeben Methoden die spezifischste. + + Methode 1 + Parameterreihenfolge für Methode 1 + Parameter-Arraytyp. + Methode 2 + Parameterreihenfolge für Methode 2 + >Parameter-Arraytyp. + Typen, in denen gesucht wird. + Argumente. + Ein "int", der die Übereinstimmung darstellt. + + + + Findet unter den beiden angegeben Typen den spezifischsten. + + Typ 1 + Typ 2 + Der Definitionstyp + Ein "int", der die Übereinstimmung darstellt. + + + + Wird verwendet, um Informationen zu speichern, die für Komponententests bereitgestellt werden. + + + + + Ruft Testeigenschaften für einen Test ab. + + + + + Ruft die aktuelle Datenzeile ab, wenn der Test für datengesteuerte Tests verwendet wird. + + + + + Ruft die aktuelle Datenverbindungszeile ab, wenn der Test für datengesteuerte Tests verwendet wird. + + + + + Ruft das Basisverzeichnis für den Testlauf ab, in dem die bereitgestellten Dateien und die Ergebnisdateien gespeichert werden. + + + + + Ruft das Verzeichnis für Dateien ab, die für den Testlauf bereitgestellt werden. Normalerweise ein Unterverzeichnis von . + + + + + Ruft das Basisverzeichnis für Ergebnisse aus dem Testlauf ab. Normalerweise ein Unterverzeichnis von . + + + + + Ruft das Verzeichnis für Ergebnisdateien des Testlaufs ab. In der Regel ein Unterverzeichnis von . + + + + + Ruft das Verzeichnis für Testergebnisdateien ab. + + + + + Ruft das Basisverzeichnis für den Testlauf ab, unter dem bereitgestellte Dateien und Ergebnisdateien gespeichert werden. + Identisch mit. Verwenden Sie diese Eigenschaft. + + + + + Ruft das Verzeichnis für Dateien ab, die für den Testlauf bereitgestellt werden. Normalerweise ein Unterverzeichnis von . + Identisch mit. Verwenden Sie diese Eigenschaft. + + + + + Ruft das Verzeichnis für Dateien ab, die für den Testlauf bereitgestellt werden. Normalerweise ein Unterverzeichnis von . + Identisch mit. Verwenden Sie diese Eigenschaft für Dateien, die für den Testlauf bereitgestellt werden, oder + für testspezifische Ergebnisdateien. + + + + + Ruft den vollqualifizierten Namen der Klasse ab, die die momentan ausgeführte Testmethode enthält + + + + + Ruft den Namen der zurzeit ausgeführten Testmethode ab. + + + + + Ruft das aktuelle Testergebnis ab. + + + + + Wird zum Schreiben von Ablaufverfolgungsnachrichten verwendet, während der Test ausgeführt wird. + + formatierte Meldungszeichenfolge + + + + Wird zum Schreiben von Ablaufverfolgungsnachrichten verwendet, während der Test ausgeführt wird. + + Formatzeichenfolge + Die Argumente + + + + Fügt der Liste in TestResult.ResultFileNames einen Dateinamen hinzu. + + + Der Dateiname. + + + + + Startet einen Timer mit dem angegebenen Namen. + + Name des Timers. + + + + Beendet einen Timer mit dem angegebenen Namen. + + Name des Timers. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..ae68026 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod für die Ausführung. + + + + + Ruft den Namen der Testmethode ab. + + + + + Ruft den Namen der Testklasse ab. + + + + + Ruft den Rückgabetyp der Testmethode ab. + + + + + Ruft die Parameter der Testmethode ab. + + + + + Ruft die methodInfo der Testmethode ab. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Ruft die Testmethode auf. + + + An die Testmethode zu übergebende Argumente (z. B. für datengesteuerte Tests). + + + Das Ergebnis des Testmethodenaufrufs. + + + This call handles asynchronous test methods as well. + + + + + Ruft alle Attribute der Testmethode ab. + + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Alle Attribute. + + + + + Ruft ein Attribut eines bestimmten Typs ab. + + System.Attribute type. + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Die Attribute des angegebenen Typs. + + + + + Das Hilfsprogramm. + + + + + Der check-Parameter ungleich null. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws argument null exception when parameter is null. + + + + Der check-Parameter ungleich null oder leer. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws ArgumentException when parameter is null. + + + + Enumeration für die Art des Zugriffs auf Datenzeilen in datengesteuerten Tests. + + + + + Zeilen werden in sequenzieller Reihenfolge zurückgegeben. + + + + + Zeilen werden in zufälliger Reihenfolge zurückgegeben. + + + + + Attribut zum Definieren von Inlinedaten für eine Testmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Das Datenobjekt. + + + + Initialisiert eine neue Instanz der -Klasse, die ein Array aus Argumenten akzeptiert. + + Ein Datenobjekt. + Weitere Daten. + + + + Ruft Daten für den Aufruf der Testmethode ab. + + + + + Ruft den Anzeigenamen in den Testergebnissen für die Anpassung ab. + + + + + Die nicht eindeutige Assert-Ausnahme. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Die InternalTestFailureException-Klasse. Wird zum Angeben eines internen Fehlers für einen Testfall verwendet. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ein Attribut, das angibt, dass eine Ausnahme des angegebenen Typs erwartet wird + + + + + Initialisiert eine neue Instanz der -Klasse mit dem erwarteten Typ + + Der Typ der erwarteten Ausnahme. + + + + Initialisiert eine neue Instanz der-Klasse mit + dem erwarteten Typ und der einzuschließenden Meldung, wenn vom Test keine Ausnahme ausgelöst wurde. + + Der Typ der erwarteten Ausnahme. + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft einen Wert ab, der den Typ der erwarteten Ausnahme angibt. + + + + + Ruft einen Wert ab, der angibt, ob es zulässig ist, dass vom Typ der erwarteten Ausnahme abgeleitete Typen + als erwartet qualifiziert werden. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Überprüft, ob der Typ der vom Komponententest ausgelösten Ausnahme erwartet wird. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Basisklasse für Attribute, die angeben, dass eine Ausnahme aus einem Komponententest erwartet wird. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer standardmäßigen "no-exception"-Meldung. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer 2no-exception"-Meldung + + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, + weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die standardmäßige Nichtausnahmemeldung ab. + + Der Typname des ExpectedException-Attributs. + Die standardmäßige Nichtausnahmemeldung. + + + + Ermittelt, ob die Annahme erwartet ist. Wenn die Methode zurückkehrt, wird davon ausgegangen, + dass die Annahme erwartet war. Wenn die Methode eine Ausnahme auslöst, + wird davon ausgegangen, dass die Ausnahme nicht erwartet war, und die Meldung + der ausgelösten Ausnahme wird in das Testergebnis eingeschlossen. Die -Klasse wird aus Gründen der + Zweckmäßigkeit bereitgestellt. Wenn verwendet wird und ein Fehler der Assertion auftritt, + wird das Testergebnis auf Inconclusive festgelegt. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Löst die Ausnahme erneut aus, wenn es sich um eine AssertFailedException oder eine AssertInconclusiveException handelt. + + Die Ausnahme, die erneut ausgelöst werden soll, wenn es sich um eine Assertionausnahme handelt. + + + + Diese Klasse unterstützt Benutzer beim Ausführen von Komponententests für Typen, die generische Typen verwenden. + GenericParameterHelper erfüllt einige allgemeine generische Typeinschränkungen, + beispielsweise: + 1. öffentlicher Standardkonstruktor + 2. implementiert allgemeine Schnittstellen: IComparable, IEnumerable + + + + + Initialisiert eine neue Instanz der -Klasse, die + die Einschränkung "newable" in C#-Generika erfüllt. + + + This constructor initializes the Data property to a random value. + + + + + Initialisiert eine neue Instanz der-Klasse, die + die Data-Eigenschaft mit einem vom Benutzer bereitgestellten Wert initialisiert. + + Ein Integerwert + + + + Ruft die Daten ab oder legt sie fest. + + + + + Führt den Wertvergleich für zwei GenericParameterHelper-Objekte aus. + + Das Objekt, mit dem der Vergleich ausgeführt werden soll. + TRUE, wenn das Objekt den gleichen Wert wie "dieses" GenericParameterHelper-Objekt aufweist. + Andernfalls FALSE. + + + + Gibt einen Hashcode für diese Objekt zurück. + + Der Hash. + + + + Vergleicht die Daten der beiden -Objekte. + + Das Objekt, mit dem verglichen werden soll. + + Eine signierte Zahl, die die relativen Werte dieser Instanz und dieses Werts angibt. + + + Thrown when the object passed in is not an instance of . + + + + + Gibt ein IEnumerator-Objekt zurück, dessen Länge aus + der Data-Eigenschaft abgeleitet ist. + + Das IEnumerator-Objekt + + + + Gibt ein GenericParameterHelper-Objekt zurück, das gleich + dem aktuellen Objekt ist. + + Das geklonte Objekt. + + + + Ermöglicht Benutzern das Protokollieren/Schreiben von Ablaufverfolgungen aus Komponententests für die Diagnose. + + + + + Handler für LogMessage. + + Die zu protokollierende Meldung. + + + + Zu überwachendes Ereignis. Wird ausgelöst, wenn der Komponententestwriter eine Meldung schreibt. + Wird hauptsächlich von Adaptern verwendet. + + + + + Vom Testwriter aufzurufende API zum Protokollieren von Meldungen. + + Das Zeichenfolgenformat mit Platzhaltern. + Parameter für Platzhalter. + + + + Das TestCategory-Attribut. Wird zum Angeben der Kategorie eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse und wendet die Kategorie auf den Test an. + + + Die test-Kategorie. + + + + + Ruft die Testkategorien ab, die auf den Test angewendet wurden. + + + + + Die Basisklasse für das Category-Attribut. + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialisiert eine neue Instanz der -Klasse. + Wendet die Kategorie auf den Test an. Die von TestCategories + zurückgegebenen Zeichenfolgen werden mit dem Befehl "/category" zum Filtern von Tests verwendet. + + + + + Ruft die Testkategorie ab, die auf den Test angewendet wurde. + + + + + Die AssertFailedException-Klasse. Wird zum Angeben eines Fehlers für einen Testfall verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen in + Komponententests. Wenn die getestete Bedingung nicht erfüllt wird, wird eine Ausnahme + ausgelöst. + + + + + Ruft die Singleton-Instanz der Assert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is true. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null. + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Löst eine AssertFailedException aus. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Statische equals-Überladungen werden zum Vergleichen von Instanzen zweier Typen für + Verweisgleichheit verwendet. Diese Methode sollte nicht zum Vergleichen von zwei Instanzen auf + Gleichheit verwendet werden. Dieses Objekt löst immer einen Assert.Fail aus. Verwenden Sie + Assert.AreEqual und zugehörige Überladungen in Ihren Komponententests. + + Objekt A + Objekt B + Immer FALSE. + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Ersetzt Nullzeichen ("\0") durch "\\0". + + + Die Zeichenfolge, nach der gesucht werden soll. + + + Die konvertierte Zeichenfolge, in der Nullzeichen durch "\\0" ersetzt wurden. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Eine Hilfsfunktion, die eine AssertionFailedException erstellt und auslöst. + + + Der Name der Assertion, die eine Ausnahme auslöst. + + + Eine Meldung, die Bedingungen für den Assertionfehler beschreibt. + + + Die Parameter. + + + + + Überprüft den Parameter auf gültige Bedingungen. + + + Der Parameter. + + + Der Name der Assertion. + + + Parametername + + + Meldung für die ungültige Parameterausnahme. + + + Die Parameter. + + + + + Konvertiert ein Objekt sicher in eine Zeichenfolge und verarbeitet dabei NULL-Werte und Nullzeichen. + NULL-Werte werden in "(null)" konvertiert. Nullzeichen werden in "\\0" konvertiert". + + + Das Objekt, das in eine Zeichenfolge konvertiert werden soll. + + + Die konvertierte Zeichenfolge. + + + + + Die Zeichenfolgenassertion. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if matches . + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen, die + Sammlungen in Komponententests zugeordnet sind. Wenn die getestete Bedingung nicht + erfüllt wird, wird eine Ausnahme ausgelöst. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if every element in is also found in + . + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Ermittelt, ob die erste Sammlung eine Teilmenge der zweiten + Sammlung ist. Wenn eine der Mengen Elementduplikate enthält, muss die Anzahl + der Vorkommen des Elements in der Teilmenge kleiner oder + gleich der Anzahl der Vorkommen in der Obermenge sein. + + + Die Sammlung, von der der Test erwartet, dass sie enthalten ist in . + + + Die Sammlung, von der der Test erwartet, dass sie Folgendes enthält: . + + + TRUE, wenn: eine Teilmenge ist von + , andernfalls FALSE. + + + + + Generiert ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + Die zu verarbeitende Sammlung. + + + Die Anzahl der Nullelemente in der Sammlung. + + + Ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + + + Findet ein nicht übereinstimmendes Element in den beiden Sammlungen. Ein nicht übereinstimmendes + Element ist ein Element, für das sich die Anzahl der Vorkommen in der + erwarteten Sammlung von der Anzahl der Vorkommen in der tatsächlichen Sammlung unterscheidet. Von den + Sammlungen wird angenommen, dass unterschiedliche Verweise ungleich null mit der + gleichen Anzahl von Elementen vorhanden sind. Der Aufrufer ist für diese Ebene + der Überprüfung verantwortlich. Wenn kein nicht übereinstimmendes Element vorhanden ist, gibt die Funktion FALSE + zurück, und die out-Parameter sollten nicht verwendet werden. + + + Die erste zu vergleichende Sammlung. + + + Die zweite zu vergleichende Sammlung. + + + Die erwartete Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Die tatsächliche Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Das nicht übereinstimmende Element (kann NULL sein) oder NULL, wenn kein nicht + übereinstimmendes Element vorhanden ist. + + + TRUE, wenn ein nicht übereinstimmendes Element gefunden wurde, andernfalls FALSE. + + + + + vergleicht die Objekte mithilfe von object.Equals + + + + + Basisklasse für Frameworkausnahmen. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Eine stark typisierte Ressourcenklasse zum Suchen nach lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcensuchen mithilfe dieser stark typisierten Ressourcenklasse. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zugriffszeichenfolge weist ungültige Syntax auf." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartete Sammlung enthält {1} Vorkommen von <{2}>. Die tatsächliche Sammlung enthält {3} Vorkommen. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Elementduplikat gefunden: <{1}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Groß-/Kleinschreibung unterscheidet sich für den tatsächlichen Wert: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz nicht größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1} ({2})>. Tatsächlich: <{3} ({4})>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beliebiger Wert erwartet, ausgenommen: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Übergeben Sie keine Werttypen an AreSame(). In Object konvertierte Werte sind nie gleich. Verwenden Sie ggf. AreEqual(). {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Fehler von {0}. {1}" nach. + + + + + Sucht nach einer lokalisierten Zeichenfolge ähnlich der folgenden: "async TestMethod" wird mit UITestMethodAttribute nicht unterstützt. Entfernen Sie "async", oder verwenden Sie TestMethodAttribute. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen sind leer. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungsverweise zeigen auf das gleiche Sammlungsobjekt. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0}({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(null)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(object)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' enthält nicht Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} ({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Assert.Equals sollte für Assertionen nicht verwendet werden. Verwenden Sie stattdessen Assert.AreEqual & Überladungen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Anzahl der Elemente in den Sammlungen stimmt nicht überein. Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {0} stimmt nicht überein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} weist nicht den erwarteten Typ auf. Erwarteter Typ: <{2}>. Tatsächlicher Typ: <{3}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} ist (null). Erwarteter Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' endet nicht mit Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ungültiges Argument: EqualsTester darf keine NULL-Werte verwenden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Objekt vom Typ {0} kann nicht in {1} konvertiert werden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Das referenzierte interne Objekt ist nicht mehr gültig." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Eigenschaft {0} weist den Typ {1} auf. Erwartet wurde der Typ {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} Erwarteter Typ: <{1}>. Tatsächlicher Typ: <{2}>." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt nicht mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Falscher Typ: <{1}>. Tatsächlicher Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Kein DataRowAttribute angegeben. Mindestens ein DataRowAttribute ist mit DataTestMethodAttribute erforderlich." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Keine Ausnahme ausgelöst. {1}-Ausnahme wurde erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. Der Wert darf nicht NULL sein. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Unterschiedliche Anzahl von Elementen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der Konstruktor mit der angegebenen Signatur wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der angegebene Member ({0}) wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Zeichenfolge '{0}' beginnt nicht mit der Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der erwartete Ausnahmetyp muss System.Exception oder ein von System.Exception abgeleiteter Typ sein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(Fehler beim Abrufen der Meldung vom Typ {0} aufgrund einer Ausnahme.)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat erwartete Ausnahme {0} nicht ausgelöst. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Testmethode hat keine Ausnahme ausgelöst. Vom Attribut {0}, das für die Testmethode definiert ist, wurde eine Ausnahme erwartet." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} oder ein davon abgeleiteter Typ wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ausnahme {2} wurde ausgelöst, aber Ausnahme {1} wurde erwartet. {0} + Ausnahmemeldung: {3} + Stapelüberwachung: {4}" nach. + + + + + Ergebnisse des Komponententests + + + + + Der Test wurde ausgeführt, aber es gab Probleme. + Möglicherweise liegen Ausnahmen oder Assertionsfehler vor. + + + + + Der Test wurde abgeschlossen, es lässt sich aber nicht sagen, ob er bestanden wurde oder fehlerhaft war. + Kann für abgebrochene Tests verwendet werden. + + + + + Der Test wurde ohne Probleme ausgeführt. + + + + + Der Test wird zurzeit ausgeführt. + + + + + Systemfehler beim Versuch, einen Test auszuführen. + + + + + Timeout des Tests. + + + + + Der Test wurde vom Benutzer abgebrochen. + + + + + Der Test weist einen unbekannten Zustand auf. + + + + + Stellt Hilfsfunktionen für das Komponententestframework bereit. + + + + + Ruft die Ausnahmemeldungen (einschließlich der Meldungen für alle inneren Ausnahmen) + rekursiv ab. + + Ausnahme, für die Meldungen abgerufen werden sollen + Zeichenfolge mit Fehlermeldungsinformationen + + + + Enumeration für Timeouts, die mit der -Klasse verwendet werden kann. + Der Typ der Enumeration muss entsprechen: + + + + + Unendlich. + + + + + Das Testklassenattribut. + + + + + Erhält ein Testmethodenattribut, das die Ausführung des Tests ermöglicht. + + Die für diese Methode definierte Attributinstanz der Testmethode. + Diezum Ausführen dieses Tests + Extensions can override this method to customize how all methods in a class are run. + + + + Das Testmethodenattribut. + + + + + Führt eine Testmethode aus. + + Die auszuführende Textmethode. + Ein Array aus TestResult-Objekten, die für die Ergebnisses des Tests stehen. + Extensions can override this method to customize running a TestMethod. + + + + Das Testinitialisierungsattribut. + + + + + Das Testbereinigungsattribut. + + + + + Das Ignorierattribut. + + + + + Das Testeigenschaftattribut. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Der Name. + + + Der Wert. + + + + + Ruft den Namen ab. + + + + + Ruft den Wert ab. + + + + + Das Klasseninitialisierungsattribut. + + + + + Das Klassenbereinigungsattribut. + + + + + Das Assemblyinitialisierungsattribut. + + + + + Das Assemblybereinigungsattribut. + + + + + Der Testbesitzer. + + + + + Initialisiert eine neue Instanz der-Klasse. + + + Der Besitzer. + + + + + Ruft den Besitzer ab. + + + + + Prioritätsattribut. Wird zum Angeben der Priorität eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Die Priorität. + + + + + Ruft die Priorität ab. + + + + + Die Beschreibung des Tests. + + + + + Initialisiert eine neue Instanz der -Klasse zum Beschreiben eines Tests. + + Die Beschreibung. + + + + Ruft die Beschreibung eines Tests ab. + + + + + Der URI der CSS-Projektstruktur. + + + + + Initialisiert eine neue Instanz der -Klasse der CSS Projektstruktur-URI. + + Der CSS-Projektstruktur-URI. + + + + Ruft den CSS-Projektstruktur-URI ab. + + + + + Der URI der CSS-Iteration. + + + + + Initialisiert eine neue Instanz der-Klasse für den CSS Iterations-URI. + + Der CSS-Iterations-URI. + + + + Ruft den CSS-Iterations-URI ab. + + + + + WorkItem-Attribut. Wird zum Angeben eines Arbeitselements verwendet, das diesem Test zugeordnet ist. + + + + + Initialisiert eine neue Instanz der-Klasse für das WorkItem-Attribut. + + Die ID eines Arbeitselements. + + + + Ruft die ID für ein zugeordnetes Arbeitselement ab. + + + + + Timeoutattribut. Wird zum Angeben des Timeouts eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Das Timeout. + + + + + Initialisiert eine neue Instanz der -Klasse mit einem voreingestellten Timeout. + + + Das Timeout. + + + + + Ruft das Timeout ab. + + + + + Das TestResult-Objekt, das an den Adapter zurückgegeben werden soll. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ruft den Anzeigenamen des Ergebnisses ab oder legt ihn fest. Hilfreich, wenn mehrere Ergebnisse zurückgegeben werden. + Wenn NULL, wird der Methodenname als DisplayName verwendet. + + + + + Ruft das Ergebnis der Testausführung ab oder legt es fest. + + + + + Ruft die Ausnahme ab, die bei einem Testfehler ausgelöst wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Debugablaufverfolgungen nach Testcode fest oder legt sie fest. + + + + + Gets or sets the debug traces by test code. + + + + + Ruft die Dauer der Testausführung ab oder legt sie fest. + + + + + Ruft den Datenzeilenindex in der Datenquelle ab, oder legt ihn fest. Nur festgelegt für Ergebnisse einer individuellen + Ausführung einer Datenzeile eines datengesteuerten Tests. + + + + + Ruft den Rückgabewert der Testmethode ab (zurzeit immer NULL). + + + + + Ruft die vom Test angehängten Ergebnisdateien ab, oder legt sie fest. + + + + + Gibt die Verbindungszeichenfolge, den Tabellennamen und die Zeilenzugriffsmethode für datengesteuerte Tests an. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Der Standardanbietername für DataSource. + + + + + Die standardmäßige Datenzugriffsmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter, einer Verbindungszeichenfolge, einer Datentabelle und einer Datenzugriffsmethode für den Zugriff auf die Daten initialisiert. + + Invarianter Datenanbietername, z. B. "System.Data.SqlClient" + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + Gibt die Reihenfolge für den Datenzugriff an. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einer Verbindungszeichenfolge und einem Tabellennamen initialisiert. + Geben Sie eine Verbindungszeichenfolge und Datentabelle an, um auf die OLEDB-Datenquelle zuzugreifen. + + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter und einer Verbindungszeichenfolge mit dem Namen der Einstellung initialisiert. + + Der Name einer Datenquelle, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + Ruft einen Wert ab, der den Datenanbieter der Datenquelle darstellt. + + + Der Name des Datenanbieters. Wenn kein Datenanbieter während der Objektinitialisierung festgelegt wurde, wird der Standardanbieter "System.Data.OleDb" zurückgegeben. + + + + + Ruft einen Wert ab, der die Verbindungszeichenfolge für die Datenquelle darstellt. + + + + + Ruft einen Wert ab, der den Tabellennamen angibt, der Daten bereitstellt. + + + + + Ruft die Methode ab, die für den Zugriff auf die Datenquelle verwendet wird. + + + + Einer der-Werte. Wenn das nicht initialisiert wurde, wird der Standardwert zurückgegeben. . + + + + + Ruft den Namen einer Datenquelle ab, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + + Ein Attribut für datengesteuerte Tests, in denen Daten inline angegeben werden können. + + + + + Ermittelt alle Datenzeilen und beginnt mit der Ausführung. + + + Die test-Methode. + + + Ein Array aus . + + + + + Führt die datengesteuerte Testmethode aus. + + Die auszuführende Testmethode. + Die Datenzeile. + Ergebnisse der Ausführung. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..17b74f5 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Se usa para especificar el elemento (archivo o directorio) para la implementación por prueba. + Puede especificarse en la clase de prueba o en el método de prueba. + Puede tener varias instancias del atributo para especificar más de un elemento. + La ruta de acceso del elemento puede ser absoluta o relativa. Si es relativa, lo es respecto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Inicializa una nueva instancia de la clase . + + Archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + + + + Inicializa una nueva instancia de la clase . + + Ruta de acceso relativa o absoluta al archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + Ruta de acceso del directorio en el que se van a copiar los elementos. Puede ser absoluta o relativa respecto al directorio de implementación. Todos los archivos y directorios que identifica se copiarán en este directorio. + + + + Obtiene la ruta de acceso al archivo o carpeta de origen que se debe copiar. + + + + + Obtiene la ruta de acceso al directorio donde se copia el elemento. + + + + + Contiene literales para los nombres de secciones, propiedades y atributos. + + + + + Nombre de la sección de configuración. + + + + + Nombre de la sección de configuración para Beta2. Se deja por motivos de compatibilidad. + + + + + Nombre de sección para el origen de datos. + + + + + Nombre de atributo para "Name". + + + + + Nombre de atributo para "ConnectionString". + + + + + Nombre de atributo para "DataAccessMethod". + + + + + Nombre de atributo para "DataTable". + + + + + Elemento de origen de datos. + + + + + Obtiene o establece el nombre de esta configuración. + + + + + Obtiene o establece el elemento ConnectionStringSettings en la sección <connectionStrings> del archivo .config. + + + + + Obtiene o establece el nombre de la tabla de datos. + + + + + Obtiene o establece el tipo de acceso de datos. + + + + + Obtiene el nombre de la clave. + + + + + Obtiene las propiedades de configuración. + + + + + Colección de elementos del origen de datos. + + + + + Inicializa una nueva instancia de la clase . + + + + + Devuelve el elemento de configuración con la clave especificada. + + Clave del elemento que se va a devolver. + Objeto System.Configuration.ConfigurationElement con la clave especificada. De lo contrario, NULL. + + + + Obtiene el elemento de configuración en la ubicación del índice especificada. + + Ubicación del índice del objeto System.Configuration.ConfigurationElement que se va a devolver. + + + + Agrega un elemento de configuración a la colección de elementos de configuración. + + Objeto System.Configuration.ConfigurationElement que se va a agregar. + + + + Quita un elemento System.Configuration.ConfigurationElement de la colección. + + El . + + + + Quita un elemento System.Configuration.ConfigurationElement de la colección. + + Clave del objeto System.Configuration.ConfigurationElement que se va a quitar. + + + + Quita todos los objetos de elemento de configuración de la colección. + + + + + Crea un nuevo elemento . + + Un nuevo objeto . + + + + Obtiene la clave de un elemento de configuración especificado. + + Objeto System.Configuration.ConfigurationElement para el que se va a devolver la clave. + Elemento System.Object que actúa como clave del objeto System.Configuration.ConfigurationElement especificado. + + + + Agrega un elemento de configuración a la colección de elementos de configuración. + + Objeto System.Configuration.ConfigurationElement que se va a agregar. + + + + Agrega un elemento de configuración a la colección de elementos de configuración. + + Ubicación del índice en la que se va a agregar el objeto System.Configuration.ConfigurationElement especificado. + Objeto System.Configuration.ConfigurationElement que se va a agregar. + + + + Compatibilidad con las opciones de configuración para pruebas. + + + + + Obtiene la sección de configuración para pruebas. + + + + + Sección de configuración para pruebas. + + + + + Obtiene los orígenes de datos para esta sección de configuración. + + + + + Obtiene la colección de propiedades. + + + de propiedades para el elemento. + + + + + Esta clase representa el objeto INTERNO NO público activo en el sistema. + + + + + Inicializa una nueva instancia de la clase que contiene + el objeto que ya existe de la clase privada. + + objeto que sirve como punto de partida para llegar a los miembros privados + Cadena de desreferencia que usa . para apuntar al objeto que se va a recuperar, como en m_X.m_Y.m_Z + + + + Inicializa una nueva instancia de la clase que contiene el + tipo especificado. + + Nombre del ensamblado + nombre completo + Argumentos para pasar al constructor + + + + Inicializa una nueva instancia de la clase que contiene el + tipo especificado. + + Nombre del ensamblado + nombre completo + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el constructor que se va a obtener + Argumentos para pasar al constructor + + + + Inicializa una nueva instancia de la clase que contiene el + tipo especificado. + + tipo del objeto que se va a crear + Argumentos para pasar al constructor + + + + Inicializa una nueva instancia de la clase que contiene el + tipo especificado. + + tipo del objeto que se va a crear + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el constructor que se va a obtener + Argumentos para pasar al constructor + + + + Inicializa una nueva instancia de la clase que contiene el + objeto dado. + + objeto para encapsular + + + + Inicializa una nueva instancia de la clase que contiene el + objeto dado. + + objeto para encapsular + Objeto PrivateType + + + + Obtiene o establece el destino. + + + + + Obtiene el tipo del objeto subyacente. + + + + + Devuelve el código hash del objeto de destino. + + valor int que representa el código hash del objeto de destino + + + + Es igual a + + Objeto con el que se va a comparar + devuelve "true" si los objetos son iguales. + + + + Invoca el método especificado. + + Nombre del método + Argumentos para pasar al miembro que se va a invocar. + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Matriz de tipos correspondientes a los tipos de los argumentos genéricos. + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Argumentos para pasar al miembro que se va a invocar. + Información de referencia cultural + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Información de referencia cultural + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Argumentos para pasar al miembro que se va a invocar. + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Argumentos para pasar al miembro que se va a invocar. + Información de referencia cultural + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Información de referencia cultural + Resultado de la llamada al método + + + + Invoca el método especificado. + + Nombre del método + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a obtener. + Argumentos para pasar al miembro que se va a invocar. + Información de referencia cultural + Matriz de tipos correspondientes a los tipos de los argumentos genéricos. + Resultado de la llamada al método + + + + Obtiene el elemento de matriz con una matriz de subíndices para cada dimensión. + + Nombre del miembro + los índices de la matriz + Una matriz de elementos. + + + + Establece el elemento de matriz con una matriz de subíndices para cada dimensión. + + Nombre del miembro + Valor para establecer + los índices de la matriz + + + + Obtiene el elemento de matriz con una matriz de subíndices para cada dimensión. + + Nombre del miembro + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + los índices de la matriz + Una matriz de elementos. + + + + Establece el elemento de matriz con una matriz de subíndices para cada dimensión. + + Nombre del miembro + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Valor para establecer + los índices de la matriz + + + + Obtiene el campo. + + Nombre del campo + El campo. + + + + Establece el campo. + + Nombre del campo + valor para establecer + + + + Obtiene el campo. + + Nombre del campo + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + El campo. + + + + Establece el campo. + + Nombre del campo + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + valor para establecer + + + + Obtiene el campo o la propiedad. + + Nombre del campo o propiedad + El campo o la propiedad. + + + + Establece el campo o la propiedad. + + Nombre del campo o propiedad + valor para establecer + + + + Obtiene el campo o la propiedad. + + Nombre del campo o propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + El campo o la propiedad. + + + + Establece el campo o la propiedad. + + Nombre del campo o propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + valor para establecer + + + + Obtiene la propiedad. + + Nombre de la propiedad + Argumentos para pasar al miembro que se va a invocar. + La propiedad. + + + + Obtiene la propiedad. + + Nombre de la propiedad + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + La propiedad. + + + + Establece la propiedad. + + Nombre de la propiedad + valor para establecer + Argumentos para pasar al miembro que se va a invocar. + + + + Establece la propiedad. + + Nombre de la propiedad + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + valor para establecer + Argumentos para pasar al miembro que se va a invocar. + + + + Obtiene la propiedad. + + Nombre de la propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Argumentos para pasar al miembro que se va a invocar. + La propiedad. + + + + Obtiene la propiedad. + + Nombre de la propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + La propiedad. + + + + Establece la propiedad. + + Nombre de la propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + valor para establecer + Argumentos para pasar al miembro que se va a invocar. + + + + Establece la propiedad. + + Nombre de la propiedad + Máscara de bits que consta de uno o más objetos que especifican cómo se realiza la búsqueda. + valor para establecer + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + + + + Valida la cadena de acceso. + + cadena de acceso + + + + Invoca el miembro. + + Nombre del miembro + Atributos adicionales + Argumentos para la invocación + Referencia cultural + Resultado de la invocación + + + + Extrae la signatura de método genérico más adecuada del tipo privado actual. + + Nombre del método donde se va a buscar la memoria caché de signatura. + Matriz de tipos correspondientes a los tipos de los parámetros donde buscar. + Matriz de tipos correspondientes a los tipos de los argumentos genéricos. + para filtrar aún más las signaturas de método. + Modificadores para parámetros. + Una instancia de methodinfo. + + + + Esta clase representa una clase privada para la funcionalidad de descriptor de acceso privado. + + + + + Se enlaza a todo. + + + + + Tipo que contiene la clase. + + + + + Inicializa una nueva instancia de la clase que contiene el tipo privado. + + Nombre del ensamblado + nombre completo de + + + + Inicializa una nueva instancia de la clase que contiene + el tipo privado del objeto de tipo. + + Tipo encapsulado que se va a crear. + + + + Obtiene el tipo al que se hace referencia. + + + + + Invoca el miembro estático. + + Nombre del miembro para InvokeHelper + Argumentos para la invocación + Resultado de la invocación + + + + Invoca el miembro estático. + + Nombre del miembro para InvokeHelper + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Resultado de la invocación + + + + Invoca el miembro estático. + + Nombre del miembro para InvokeHelper + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Matriz de tipos correspondientes a los tipos de los argumentos genéricos. + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Argumentos para la invocación + Referencia cultural + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Información de referencia cultural + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + Argumentos para la invocación + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + Argumentos para la invocación + Referencia cultural + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + /// Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Referencia cultural + Resultado de la invocación + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + /// Una matriz de objetos que representan el número, orden y tipo de los parámetros para el método que se va a invocar + Argumentos para la invocación + Referencia cultural + Matriz de tipos correspondientes a los tipos de los argumentos genéricos. + Resultado de la invocación + + + + Obtiene el elemento de la matriz estática. + + Nombre de la matriz + + Matriz unidimensional de enteros de 32 bits que representan los índices que especifican + la posición del elemento que se va a obtener. Por ejemplo, para acceder a a[10][11], los índices serían {10,11} + + elemento en la ubicación especificada + + + + Establece el miembro de la matriz estática. + + Nombre de la matriz + valor para establecer + + Matriz unidimensional de enteros de 32 bits que representan los índices que especifican + la posición del elemento que se va a establecer. Por ejemplo, para acceder a a[10][11], la matriz sería {10,11} + + + + + Obtiene el elemento de la matriz estática. + + Nombre de la matriz + Atributos InvokeHelper adicionales + + Matriz unidimensional de enteros de 32 bits que representan los índices que especifican + la posición del elemento que se va a obtener. Por ejemplo, para acceder a a[10][11], la matriz sería {10,11} + + elemento en la ubicación especificada + + + + Establece el miembro de la matriz estática. + + Nombre de la matriz + Atributos InvokeHelper adicionales + valor para establecer + + Matriz unidimensional de enteros de 32 bits que representan los índices que especifican + la posición del elemento que se va a establecer. Por ejemplo, para acceder a a[10][11], la matriz sería {10,11} + + + + + Obtiene el campo estático. + + Nombre del campo + El campo estático. + + + + Establece el campo estático. + + Nombre del campo + Argumento para la invocación + + + + Obtiene el campo estático con los atributos InvokeHelper especificados. + + Nombre del campo + Atributos de invocación adicionales + El campo estático. + + + + Establece el campo estático con atributos de enlace. + + Nombre del campo + Atributos InvokeHelper adicionales + Argumento para la invocación + + + + Obtiene la propiedad o el campo estático. + + Nombre del campo o propiedad + El campo o la propiedad estáticos. + + + + Establece la propiedad o el campo estático. + + Nombre del campo o propiedad + Valor que se va a establecer en el campo o la propiedad + + + + Obtiene la propiedad o el campo estático con los atributos InvokeHelper especificados. + + Nombre del campo o propiedad + Atributos de invocación adicionales + El campo o la propiedad estáticos. + + + + Establece la propiedad o el campo estático con atributos de enlace. + + Nombre del campo o propiedad + Atributos de invocación adicionales + Valor que se va a establecer en el campo o la propiedad + + + + Obtiene la propiedad estática. + + Nombre del campo o propiedad + Argumentos para la invocación + La propiedad estática. + + + + Establece la propiedad estática. + + Nombre de la propiedad + Valor que se va a establecer en el campo o la propiedad + Argumentos para pasar al miembro que se va a invocar. + + + + Establece la propiedad estática. + + Nombre de la propiedad + Valor que se va a establecer en el campo o la propiedad + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + + + + Obtiene la propiedad estática. + + Nombre de la propiedad + Atributos de invocación adicionales. + Argumentos para pasar al miembro que se va a invocar. + La propiedad estática. + + + + Obtiene la propiedad estática. + + Nombre de la propiedad + Atributos de invocación adicionales. + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + La propiedad estática. + + + + Establece la propiedad estática. + + Nombre de la propiedad + Atributos de invocación adicionales. + Valor que se va a establecer en el campo o la propiedad + Valores de índice opcionales para las propiedades indizadas. Los índices de las propiedades indizadas son de base cero. Este valor debe ser NULL para las propiedades no indizadas. + + + + Establece la propiedad estática. + + Nombre de la propiedad + Atributos de invocación adicionales. + Valor que se va a establecer en el campo o la propiedad + Una matriz de objetos que representan el número, orden y tipo de los parámetros para la propiedad indizada. + Argumentos para pasar al miembro que se va a invocar. + + + + Invoca el método estático. + + Nombre del miembro + Atributos de invocación adicionales + Argumentos para la invocación + Referencia cultural + Resultado de la invocación + + + + Proporciona detección de la signatura de los métodos genéricos. + + + + + Compara las firmas de estos dos métodos. + + Method1 + Method2 + "True" si son similares. + + + + Obtiene la profundidad de jerarquía desde el tipo base del tipo proporcionado. + + El tipo. + La profundidad. + + + + Busca el tipo más derivado con la información proporcionada. + + Coincidencias de candidato. + Número de coincidencias. + El método más derivado. + + + + Dado un conjunto de métodos que coinciden con los criterios base, seleccione un método basado + en una matriz de tipos. Este método debe devolver NULL si no hay ningún método que coincida + con los criterios. + + Especificación de enlace. + Coincidencias de candidato + Tipos + Modificadores de parámetro. + Método coincidente. "Null" si no coincide ninguno. + + + + Busca el método más específico entre los dos métodos proporcionados. + + Método 1 + Orden de parámetros del método 1 + Tipo de matriz de parámetro. + Método 2 + Orden de parámetros del método 2 + >Tipo de matriz de parámetro. + Tipos en los que buscar. + Args. + Un tipo int que representa la coincidencia. + + + + Busca el método más específico entre los dos métodos proporcionados. + + Método 1 + Orden de parámetros del método 1 + Tipo de matriz de parámetro. + Método 2 + Orden de parámetros del método 2 + >Tipo de matriz de parámetro. + Tipos en los que buscar. + Args. + Un tipo int que representa la coincidencia. + + + + Busca el tipo más específico de los dos proporcionados. + + Tipo 1 + Tipo 2 + El tipo de definición + Un tipo int que representa la coincidencia. + + + + Se usa para almacenar información proporcionada a las pruebas unitarias. + + + + + Obtiene las propiedades de una prueba. + + + + + Obtiene la fila de datos actual cuando la prueba se usa para realizar pruebas controladas por datos. + + + + + Obtiene la fila de conexión de datos actual cuando la prueba se usa para realizar pruebas controladas por datos. + + + + + Obtiene el directorio base para la serie de pruebas, en el que se almacenan los archivos implementados y los archivos de resultados. + + + + + Obtiene el directorio de los archivos implementados para la serie de pruebas. Suele ser un subdirectorio de . + + + + + Obtiene el directorio base para los resultados de la serie de pruebas. Suele ser un subdirectorio de . + + + + + Obtiene el directorio de los archivos de resultados de la serie de pruebas. Suele ser un subdirectorio de . + + + + + Obtiene el directorio de los archivos de resultados de la prueba. + + + + + Obtiene el directorio base para la serie de pruebas donde se almacenan los archivos implementados y los archivos de resultados. + Funciona igual que . Utilice esa propiedad en su lugar. + + + + + Obtiene el directorio de los archivos implementados para la serie de pruebas. Suele ser un subdirectorio de . + Funciona igual que . Utilice esa propiedad en su lugar. + + + + + Obtiene el directorio de los archivos de resultados de la serie de pruebas. Suele ser un subdirectorio de . + Funciona igual que . Utilice esa propiedad para los archivos de resultados de la serie de pruebas o + para los archivos de resultados específicos de cada prueba. + + + + + Obtiene el nombre completo de la clase que contiene el método de prueba que se está ejecutando. + + + + + Obtiene el nombre del método de prueba que se está ejecutando. + + + + + Obtiene el resultado de la prueba actual. + + + + + Se usa para escribir mensajes de seguimiento durante la ejecución de la prueba. + + cadena de mensaje con formato + + + + Se usa para escribir mensajes de seguimiento durante la ejecución de la prueba. + + cadena de formato + los argumentos + + + + Agrega un nombre de archivo a la lista en TestResult.ResultFileNames. + + + Nombre del archivo. + + + + + Inicia un temporizador con el nombre especificado. + + Nombre del temporizador. + + + + Finaliza un temporizador con el nombre especificado. + + Nombre del temporizador. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5b05af9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4199 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atributo TestMethod para la ejecución. + + + + + Obtiene el nombre del método de prueba. + + + + + Obtiene el nombre de la clase de prueba. + + + + + Obtiene el tipo de valor devuelto del método de prueba. + + + + + Obtiene los parámetros del método de prueba. + + + + + Obtiene el valor de methodInfo para el método de prueba. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca el método de prueba. + + + Argumentos que se pasan al método de prueba (por ejemplo, controlada por datos) + + + Resultado de la invocación del método de prueba. + + + This call handles asynchronous test methods as well. + + + + + Obtiene todos los atributos del método de prueba. + + + Indica si el atributo definido en la clase primaria es válido. + + + Todos los atributos. + + + + + Obtiene un atributo de un tipo específico. + + System.Attribute type. + + Indica si el atributo definido en la clase primaria es válido. + + + Atributos del tipo especificado. + + + + + Elemento auxiliar. + + + + + Parámetro de comprobación no NULL. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws argument null exception when parameter is null. + + + + Parámetro de comprobación no NULL o vacío. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws ArgumentException when parameter is null. + + + + Enumeración de cómo se accede a las filas de datos en las pruebas controladas por datos. + + + + + Las filas se devuelven en orden secuencial. + + + + + Las filas se devuelven en orden aleatorio. + + + + + Atributo para definir los datos insertados de un método de prueba. + + + + + Inicializa una nueva instancia de la clase . + + Objeto de datos. + + + + Inicializa una nueva instancia de la clase , que toma una matriz de argumentos. + + Objeto de datos. + Más datos. + + + + Obtiene datos para llamar al método de prueba. + + + + + Obtiene o establece el nombre para mostrar en los resultados de pruebas para personalizarlo. + + + + + Excepción de aserción no concluyente. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Clase InternalTestFailureException. Se usa para indicar un error interno de un caso de prueba. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + + + + Inicializa una nueva instancia de la clase . + + + + + Atributo que indica que debe esperarse una excepción del tipo especificado. + + + + + Inicializa una nueva instancia de la clase con el tipo esperado. + + Tipo de la excepción esperada + + + + Inicializa una nueva instancia de la clase + con el tipo esperado y el mensaje para incluir cuando la prueba no produce una excepción. + + Tipo de la excepción esperada + + Mensaje que se incluye en el resultado de la prueba si esta no se supera debido a que no se inicia una excepción + + + + + Obtiene un valor que indica el tipo de la excepción esperada. + + + + + Obtiene o establece un valor que indica si se permite que los tipos derivados del tipo de la excepción esperada + se consideren también como esperados. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Comprueba que el tipo de la excepción producida por la prueba unitaria es el esperado. + + Excepción que inicia la prueba unitaria + + + + Clase base para atributos que especifican que se espere una excepción de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción predeterminado. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción. + + + Mensaje para incluir en el resultado de la prueba si esta no se supera debido a que no se inicia una + excepción + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje de ausencia de excepción predeterminado. + + Nombre del tipo de atributo ExpectedException + Mensaje de ausencia de excepción predeterminado + + + + Determina si se espera la excepción. Si el método devuelve un valor, se entiende + que se esperaba la excepción. Si el método produce una excepción, + se entiende que no se esperaba la excepción y se incluye el mensaje + de la misma en el resultado de la prueba. Se puede usar para mayor + comodidad. Si se utiliza y la aserción no funciona, + el resultado de la prueba se establece como No concluyente. + + Excepción que inicia la prueba unitaria + + + + Produce de nuevo la excepción si es de tipo AssertFailedException o AssertInconclusiveException. + + La excepción que se va a reiniciar si es una excepción de aserción + + + + Esta clase está diseñada para ayudar al usuario a realizar pruebas unitarias para tipos con tipos genéricos. + GenericParameterHelper satisface algunas de las restricciones de tipo genérico comunes, + como: + 1. Constructor predeterminado público. + 2. Implementa una interfaz común: IComparable, IEnumerable. + + + + + Inicializa una nueva instancia de la clase que + satisface la restricción "renovable" en genéricos de C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa una nueva instancia de la clase que + inicializa la propiedad Data con un valor proporcionado por el usuario. + + Cualquier valor entero + + + + Obtiene o establece los datos. + + + + + Compara el valor de dos objetos GenericParameterHelper. + + objeto con el que hacer la comparación + Es true si el objeto tiene el mismo valor que el objeto GenericParameterHelper "this". + De lo contrario, false. + + + + Devuelve un código hash para este objeto. + + El código hash. + + + + Compara los datos de los dos objetos . + + Objeto con el que se va a comparar. + + Número con signo que indica los valores relativos de esta instancia y valor. + + + Thrown when the object passed in is not an instance of . + + + + + Devuelve un objeto IEnumerator cuya longitud se deriva de + la propiedad Data. + + El objeto IEnumerator + + + + Devuelve un objeto GenericParameterHelper que es igual al + objeto actual. + + El objeto clonado. + + + + Permite a los usuarios registrar o escribir el seguimiento de las pruebas unitarias con fines de diagnóstico. + + + + + Controlador para LogMessage. + + Mensaje para registrar. + + + + Evento que se debe escuchar. Se genera cuando el autor de las pruebas unitarias escribe algún mensaje. + Lo consume principalmente el adaptador. + + + + + API del escritor de la prueba para llamar a los mensajes de registro. + + Formato de cadena con marcadores de posición. + Parámetros para los marcadores de posición. + + + + Atributo TestCategory. Se usa para especificar la categoría de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase y le aplica la categoría a la prueba. + + + Categoría de prueba. + + + + + Obtiene las categorías que se le han aplicado a la prueba. + + + + + Clase base del atributo "Category". + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa una nueva instancia de la clase . + Aplica la categoría a la prueba. Las cadenas que devuelve TestCategories + se usan con el comando /category para filtrar las pruebas. + + + + + Obtiene la categoría que se le ha aplicado a la prueba. + + + + + Clase AssertFailedException. Se usa para indicar el error de un caso de prueba. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Colección de clases auxiliares para probar varias condiciones en las + pruebas unitarias. Si la condición que se está probando no se cumple, se produce + una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad de Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is false. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is true. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null. + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is not equal to . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Produce una excepción AssertFailedException. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Las sobrecargas de igualdad estáticas se usan para comparar la igualdad de referencia de + instancias de dos tipos. Este método no debe usarse para comparar la igualdad de dos instancias. + Este objeto se devolverá siempre con Assert.Fail. Utilice + Assert.AreEqual y las sobrecargas asociadas en pruebas unitarias. + + Objeto A + Objeto B + False, siempre. + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Reemplaza los caracteres NULL "\0" por "\\0". + + + Cadena para buscar. + + + La cadena convertida con los caracteres NULL reemplazados por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Función auxiliar que produce una excepción AssertionFailedException. + + + nombre de la aserción que inicia una excepción + + + mensaje que describe las condiciones del error de aserción + + + Los parámetros. + + + + + Comprueba el parámetro para las condiciones válidas. + + + El parámetro. + + + Nombre de la aserción. + + + nombre de parámetro + + + mensaje de la excepción de parámetro no válido + + + Los parámetros. + + + + + Convierte un objeto en cadena de forma segura, con control de los valores y caracteres NULL. + Los valores NULL se convierten en "NULL". Los caracteres NULL se convierten en "\\0". + + + Objeto que se va a convertir en cadena. + + + La cadena convertida. + + + + + Aserción de cadena. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if matches . + + + + + Colección de clases auxiliares para probar varias condiciones asociadas + a las colecciones en las pruebas unitarias. Si la condición que se está probando no se + cumple, se produce una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is found in + . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a null element is found in . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if every element in is also found in + . + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Determina si la primera colección es un subconjunto de la + segunda. Si cualquiera de los conjuntos contiene elementos duplicados, el número + de repeticiones del elemento en el subconjunto debe ser inferior o + igual al número de repeticiones en el superconjunto. + + + Colección que la prueba espera que esté incluida en . + + + Colección que la prueba espera que contenga . + + + True si es un subconjunto de + , de lo contrario false. + + + + + Construye un diccionario que contiene el número de repeticiones de cada + elemento en la colección especificada. + + + Colección que se va a procesar. + + + Número de elementos NULL de la colección. + + + Diccionario que contiene el número de repeticiones de cada elemento + en la colección especificada. + + + + + Encuentra un elemento no coincidente entre ambas colecciones. Un elemento + no coincidente es aquel que aparece un número distinto de veces en la + colección esperada de lo que aparece en la colección real. Se + supone que las colecciones son referencias no NULL diferentes con el + mismo número de elementos. El autor de la llamada es el responsable de + este nivel de comprobación. Si no hay ningún elemento no coincidente, + la función devuelve false y no deben usarse parámetros out. + + + La primera colección para comparar. + + + La segunda colección para comparar. + + + Número esperado de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El número real de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El elemento no coincidente (puede ser nulo) o NULL si no hay ningún + elemento no coincidente. + + + Es true si se encontró un elemento no coincidente. De lo contrario, false. + + + + + compara los objetos con object.Equals. + + + + + Clase base para las excepciones de marco. + + + + + Inicializa una nueva instancia de la clase . + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Clase de recurso fuertemente tipado para buscar cadenas traducidas, etc. + + + + + Devuelve la instancia de ResourceManager almacenada en caché que usa esta clase. + + + + + Invalida la propiedad CurrentUICulture del subproceso actual para todas + las búsquedas de recursos que usan esta clase de recursos fuertemente tipados. + + + + + Busca una cadena traducida similar a "La cadena de acceso tiene una sintaxis no válida". + + + + + Busca una cadena traducida similar a "La colección esperada contiene {1} repeticiones de <{2}>. La colección actual contiene {3} repeticiones. {0}". + + + + + Busca una cadena traducida similar a "Se encontró un elemento duplicado: <{1}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>. El caso es distinto para el valor real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia no superior a <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1} ({2})>, pero es: <{3} ({4})>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia mayor que <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba cualquier valor excepto: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "No pase tipos de valor a AreSame(). Los valores convertidos a Object no serán nunca iguales. Considere el uso de AreEqual(). {0}". + + + + + Busca una cadena traducida similar a "Error de {0}. {1}". + + + + + Busca una cadena traducida similar a "No se admite un método de prueba asincrónico con UITestMethodAttribute. Quite el método asincrónico o use TestMethodAttribute. + + + + + Busca una cadena traducida similar a "Ambas colecciones están vacías". {0}. + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos". + + + + + Busca una cadena traducida similar a "Las referencias de ambas colecciones apuntan al mismo objeto de colección. {0}". + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos. {0}". + + + + + Busca una cadena traducida similar a "{0}({1})". + + + + + Busca una cadena traducida similar a "(NULL)". + + + + + Busca una cadena traducida similar a "(objeto)". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no contiene la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "{0} ({1})". + + + + + Busca una cadena traducida similar a "No se debe usar Assert.Equals para aserciones. Use Assert.AreEqual y Overloads en su lugar". + + + + + Busca una cadena traducida similar a "El número de elementos de las colecciones no coincide. Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {0} no coincide". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} no es del tipo esperado. Tipo esperado: <{2}>, tipo real: <{3}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} es (NULL). Se esperaba el tipo: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no termina con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "Argumento no válido: EqualsTester no puede utilizar valores NULL". + + + + + Busca una cadena traducida similar a "El objeto de tipo {0} no se puede convertir en {1}". + + + + + Busca una cadena traducida similar a "El objeto interno al que se hace referencia ya no es válido". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. {1}". + + + + + Busca una cadena traducida similar a "La propiedad {0} tiene el tipo {1}; se esperaba el tipo {2}". + + + + + Busca una cadena traducida similar a "{0} Tipo esperado: <{1}>. Tipo real: <{2}>". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "Tipo incorrecto: <{1}>. Tipo real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "No se especificó ningún atributo DataRowAttribute. Se requiere al menos un elemento DataRowAttribute con DataTestMethodAttribute". + + + + + Busca una cadena traducida similar a "No se produjo ninguna excepción. Se esperaba la excepción {1}. {0}". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. El valor no puede ser NULL. {1}". + + + + + Busca una cadena traducida similar a "Número diferente de elementos". + + + + + Busca una cadena traducida similar a + "No se encontró el constructor con la signatura especificada. Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a + "No se encontró el miembro especificado ({0}). Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no empieza con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "El tipo de excepción esperado debe ser System.Exception o un tipo derivado de System.Exception". + + + + + Busca una cadena traducida similar a "No se pudo obtener el mensaje para una excepción del tipo {0} debido a una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba no inició la excepción esperada {0}. {1}". + + + + + Busca una cadena traducida similar a "El método de prueba no inició una excepción. El atributo {0} definido en el método de prueba esperaba una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1}. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1} o un tipo derivado de ella. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "Se produjo la excepción {2}, pero se esperaba la excepción {1}. {0} + Mensaje de excepción: {3} + Seguimiento de la pila: {4}". + + + + + Resultados de la prueba unitaria. + + + + + La prueba se ejecutó, pero hubo problemas. + Entre estos, puede haber excepciones o aserciones con errores. + + + + + La prueba se completó, pero no podemos determinar si el resultado fue correcto o no. + Se puede usar para pruebas anuladas. + + + + + La prueba se ejecutó sin problemas. + + + + + La prueba se está ejecutando. + + + + + Error del sistema al intentar ejecutar una prueba. + + + + + Se agotó el tiempo de espera de la prueba. + + + + + El usuario anuló la prueba. + + + + + La prueba tiene un estado desconocido + + + + + Proporciona funcionalidad auxiliar para el marco de pruebas unitarias. + + + + + Obtiene los mensajes de excepción, incluidos los mensajes de todas las excepciones internas, + de forma recursiva. + + Excepción para la que se obtienen los mensajes + la cadena con información del mensaje de error + + + + Enumeración para cuando se agota el tiempo de espera que se puede usar con el atributo . + El tipo de la enumeración debe coincidir. + + + + + Infinito. + + + + + Atributo de la clase de prueba. + + + + + Obtiene un atributo de método de prueba que habilita la ejecución de esta prueba. + + La instancia de atributo de método de prueba definida en este método. + Tipo que se utilizará para ejecutar esta prueba. + Extensions can override this method to customize how all methods in a class are run. + + + + Atributo del método de prueba. + + + + + Ejecuta un método de prueba. + + El método de prueba para ejecutar. + Una matriz de objetos de TestResult que representan los resultados de la prueba. + Extensions can override this method to customize running a TestMethod. + + + + Atributo para inicializar la prueba. + + + + + Atributo de limpieza de la prueba. + + + + + Atributo de omisión. + + + + + Atributo de propiedad de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El nombre. + + + El valor. + + + + + Obtiene el nombre. + + + + + Obtiene el valor. + + + + + Atributo de inicialización de la clase. + + + + + Atributo de limpieza de la clase. + + + + + Atributo de inicialización del ensamblado. + + + + + Atributo de limpieza del ensamblado. + + + + + Propietario de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El propietario. + + + + + Obtiene el propietario. + + + + + Atributo de prioridad. Se usa para especificar la prioridad de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + La prioridad. + + + + + Obtiene la prioridad. + + + + + Descripción de la prueba. + + + + + Inicializa una nueva instancia de la clase para describir una prueba. + + La descripción. + + + + Obtiene la descripción de una prueba. + + + + + URI de estructura de proyectos de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de estructura de proyecto de CSS. + + URI de estructura de proyectos de CSS. + + + + Obtiene el URI de estructura de proyectos de CSS. + + + + + URI de iteración de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de iteración de CSS. + + URI de iteración de CSS. + + + + Obtiene el URI de iteración de CSS. + + + + + Atributo WorkItem. Se usa para especificar un elemento de trabajo asociado a esta prueba. + + + + + Inicializa una nueva instancia de la clase para el atributo WorkItem. + + Identificador de un elemento de trabajo. + + + + Obtiene el identificador de un elemento de trabajo asociado. + + + + + Atributo de tiempo de espera. Se usa para especificar el tiempo de espera de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + Tiempo de espera. + + + + + Inicializa una nueva instancia de la clase con un tiempo de espera preestablecido. + + + Tiempo de espera + + + + + Obtiene el tiempo de espera. + + + + + Objeto TestResult que debe devolverse al adaptador. + + + + + Inicializa una nueva instancia de la clase . + + + + + Obtiene o establece el nombre para mostrar del resultado. Es útil cuando se devuelven varios resultados. + Si es NULL, se utiliza el nombre del método como nombre para mostrar. + + + + + Obtiene o establece el resultado de la ejecución de pruebas. + + + + + Obtiene o establece la excepción que se inicia cuando la prueba da error. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece el seguimiento de depuración que realiza el código de la prueba. + + + + + Gets or sets the debug traces by test code. + + + + + Obtiene o establece la duración de la ejecución de la prueba. + + + + + Obtiene o establece el índice de la fila de datos en el origen de datos. Se establece solo para resultados + de ejecuciones individuales de filas de datos de una prueba controlada por datos. + + + + + Obtiene o establece el valor devuelto del método de prueba. Actualmente es siempre NULL. + + + + + Obtiene o establece los archivos de resultados que adjunta la prueba. + + + + + Especifica la cadena de conexión, el nombre de tabla y el método de acceso a fila para las pruebas controladas por datos. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nombre de proveedor predeterminado del origen de datos. + + + + + Método de acceso a datos predeterminado. + + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos, una cadena de conexión, una tabla de datos y un método de acceso a datos para acceder al origen de datos. + + Nombre invariable del proveedor de datos, como System.Data.SqlClient + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + Especifica el orden de acceso a los datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con una cadena de conexión y un nombre de tabla. + Especifique la cadena de conexión y la tabla de datos para acceder al origen de datos OLEDB. + + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos y una cadena de conexión asociada al nombre del valor de configuración. + + El nombre de un origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + Obtiene un valor que representa el proveedor de datos del origen de datos. + + + Nombre del proveedor de datos. Si no se designó un proveedor de datos al inicializar el objeto, se devolverá el proveedor predeterminado de System.Data.OleDb. + + + + + Obtiene un valor que representa la cadena de conexión para el origen de datos. + + + + + Obtiene un valor que indica el nombre de la tabla que proporciona los datos. + + + + + Obtiene el método usado para tener acceso al origen de datos. + + + + Uno de los . Si no se ha inicializado, devolverá el valor predeterminado . + + + + + Obtiene el nombre del origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + + Atributo para una prueba controlada por datos donde los datos pueden especificarse insertados. + + + + + Busca todas las filas de datos y las ejecuta. + + + El método de prueba. + + + Una matriz de . + + + + + Ejecuta el método de prueba controlada por datos. + + Método de prueba para ejecutar. + Fila de datos. + Resultados de la ejecución. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..fcb3e3f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Permet de spécifier l'élément de déploiement (fichier ou répertoire) pour un déploiement par test. + Peut être spécifié sur une classe de test ou une méthode de test. + Peut avoir plusieurs instances de l'attribut pour spécifier plusieurs éléments. + Le chemin de l'élément peut être absolu ou relatif. S'il est relatif, il l'est par rapport à RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Initialise une nouvelle instance de la classe . + + Fichier ou répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + + + + Initialise une nouvelle instance de la classe + + Chemin relatif ou absolu du fichier ou du répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + Chemin du répertoire dans lequel les éléments doivent être copiés. Il peut être absolu ou relatif au répertoire de déploiement. Tous les fichiers et répertoires identifiés par vont être copiés dans ce répertoire. + + + + Obtient le chemin du fichier ou dossier source à copier. + + + + + Obtient le chemin du répertoire dans lequel l'élément est copié. + + + + + Contient les littéraux pour les noms de sections, de propriétés et d'attributs. + + + + + Nom de la section de configuration. + + + + + Nom de la section de configuration pour Beta2. Conservé par souci de compatibilité. + + + + + Nom de section pour la source de données. + + + + + Nom d'attribut pour 'Name' + + + + + Nom d'attribut pour 'ConnectionString' + + + + + Nom d'attribut de 'DataAccessMethod' + + + + + Nom d'attribut de 'DataTable' + + + + + Élément de la source de données. + + + + + Obtient ou définit le nom de cette configuration. + + + + + Obtient ou définit l'élément ConnectionStringSettings dans la section <connectionStrings> du fichier .config. + + + + + Obtient ou définit le nom de la table de données. + + + + + Obtient ou définit le type d'accès aux données. + + + + + Obtient le nom de la clé. + + + + + Obtient les propriétés de configuration. + + + + + Collection d'éléments de la source de données. + + + + + Initialise une nouvelle instance de la classe . + + + + + Retourne l'élément de configuration avec la clé spécifiée. + + Clé de l'élément à retourner. + System.Configuration.ConfigurationElement avec la clé spécifiée ; sinon, null. + + + + Obtient l'élément de configuration à l'emplacement d'index spécifié. + + Emplacement d'index du System.Configuration.ConfigurationElement à retourner. + + + + Ajoute un élément de configuration à la collection d'éléments de configuration. + + System.Configuration.ConfigurationElement à ajouter. + + + + Supprime System.Configuration.ConfigurationElement de la collection. + + Le . + + + + Supprime System.Configuration.ConfigurationElement de la collection. + + Clé du System.Configuration.ConfigurationElement à supprimer. + + + + Supprime tous les objets d'éléments de configuration dans la collection. + + + + + Crée . + + Nouveau . + + + + Obtient la clé d'un élément de configuration spécifique. + + System.Configuration.ConfigurationElement dont la clé doit être retournée. + System.Object qui fait office de clé pour le System.Configuration.ConfigurationElement spécifié. + + + + Ajoute un élément de configuration à la collection d'éléments de configuration. + + System.Configuration.ConfigurationElement à ajouter. + + + + Ajoute un élément de configuration à la collection d'éléments de configuration. + + Emplacement d'index où ajouter le System.Configuration.ConfigurationElement spécifié. + System.Configuration.ConfigurationElement à ajouter. + + + + Prise en charge des paramètres de configuration pour les tests. + + + + + Obtient la section de configuration des tests. + + + + + Section de configuration des tests. + + + + + Obtient les sources de données de cette section de configuration. + + + + + Obtient la collection de propriétés. + + + Le des propriétés de l'élément. + + + + + Cette classe représente l'objet INTERNE dynamique NON public dans le système + + + + + Initialise une nouvelle instance de la classe qui contient + l'objet déjà existant de la classe privée + + objet qui sert de point de départ pour atteindre les membres privés + chaîne de déréférencement utilisant . et qui pointe vers l'objet à récupérer, par exemple m_X.m_Y.m_Z + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper le + type spécifié. + + Nom de l'assembly + nom complet + Arguments à passer au constructeur + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper le + type spécifié. + + Nom de l'assembly + nom complet + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres du constructeur à obtenir + Arguments à passer au constructeur + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper le + type spécifié. + + type d'objet à créer + Arguments à passer au constructeur + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper le + type spécifié. + + type d'objet à créer + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres du constructeur à obtenir + Arguments à passer au constructeur + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper + l'objet donné. + + objet à inclure dans un wrapper + + + + Initialise une nouvelle instance de la classe qui inclut dans un wrapper + l'objet donné. + + objet à inclure dans un wrapper + Objet PrivateType + + + + Obtient ou définit la cible + + + + + Obtient le type de l'objet sous-jacent + + + + + retourne le code de hachage de l'objet cible + + int représentant le code de hachage de l'objet cible + + + + Est égal à + + Objet à comparer + retourne true si les objets sont égaux. + + + + Appelle la méthode spécifiée + + Nom de la méthode + Arguments à passer au membre à appeler. + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Tableau de types correspondant aux types des arguments génériques. + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Arguments à passer au membre à appeler. + Informations sur la culture + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Informations sur la culture + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Arguments à passer au membre à appeler. + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Arguments à passer au membre à appeler. + Informations sur la culture + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Informations sur la culture + Résultat de l'appel de méthode + + + + Appelle la méthode spécifiée + + Nom de la méthode + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à obtenir. + Arguments à passer au membre à appeler. + Informations sur la culture + Tableau de types correspondant aux types des arguments génériques. + Résultat de l'appel de méthode + + + + Obtient l'élément de tableau à l'aide du tableau d'indices pour chaque dimension + + Nom du membre + les indices du tableau + Tableau d'éléments. + + + + Définit l'élément de tableau à l'aide du tableau d'indices pour chaque dimension + + Nom du membre + Valeur à définir + les indices du tableau + + + + Obtient l'élément de tableau à l'aide du tableau d'indices pour chaque dimension + + Nom du membre + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + les indices du tableau + Tableau d'éléments. + + + + Définit l'élément de tableau à l'aide du tableau d'indices pour chaque dimension + + Nom du membre + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Valeur à définir + les indices du tableau + + + + Obtient le champ + + Nom du champ + Champ. + + + + Définit le champ + + Nom du champ + valeur à définir + + + + Obtient le champ + + Nom du champ + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Champ. + + + + Définit le champ + + Nom du champ + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + valeur à définir + + + + Obtient le champ ou la propriété + + Nom du champ ou de la propriété + Champ ou propriété. + + + + Définit le champ ou la propriété + + Nom du champ ou de la propriété + valeur à définir + + + + Obtient le champ ou la propriété + + Nom du champ ou de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Champ ou propriété. + + + + Définit le champ ou la propriété + + Nom du champ ou de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + valeur à définir + + + + Obtient la propriété + + Nom de la propriété + Arguments à passer au membre à appeler. + Propriété. + + + + Obtient la propriété + + Nom de la propriété + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + Propriété. + + + + Définit la propriété + + Nom de la propriété + valeur à définir + Arguments à passer au membre à appeler. + + + + Définit la propriété + + Nom de la propriété + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + valeur à définir + Arguments à passer au membre à appeler. + + + + Obtient la propriété + + Nom de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Arguments à passer au membre à appeler. + Propriété. + + + + Obtient la propriété + + Nom de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + Propriété. + + + + Définit la propriété + + Nom de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + valeur à définir + Arguments à passer au membre à appeler. + + + + Définit la propriété + + Nom de la propriété + Masque de bits composé d'un ou de plusieurs qui spécifient la façon dont la recherche est effectuée. + valeur à définir + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + + + + Valide la chaîne d'accès + + chaîne d'accès + + + + Appelle le membre + + Nom du membre + Attributs supplémentaires + Arguments de l'appel + Culture + Résultat de l'appel + + + + Extrait la signature de méthode générique la plus appropriée à partir du type privé actuel. + + Nom de la méthode dans laquelle rechercher le cache de signatures. + Tableau de types correspondant aux types des paramètres où effectuer la recherche. + Tableau de types correspondant aux types des arguments génériques. + pour filtrer plus précisément les signatures de méthode. + Modificateurs des paramètres. + Instance de methodinfo. + + + + Cette classe représente une classe privée pour la fonctionnalité d'accesseur private. + + + + + Se lie à tout + + + + + Type inclus dans un wrapper. + + + + + Initialise une nouvelle instance de la classe qui contient le type privé. + + Nom de l'assembly + nom complet de + + + + Initialise une nouvelle instance de la classe qui contient + le type privé de l'objet de type + + Type inclus dans un wrapper à créer. + + + + Obtient le type référencé + + + + + Appelle un membre statique + + Nom du membre InvokeHelper + Arguments de l'appel + Résultat de l'appel + + + + Appelle un membre statique + + Nom du membre InvokeHelper + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Résultat de l'appel + + + + Appelle un membre statique + + Nom du membre InvokeHelper + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Tableau de types correspondant aux types des arguments génériques. + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Arguments de l'appel + Culture + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Informations sur la culture + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + Arguments de l'appel + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + Arguments de l'appel + Culture + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + /// Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Culture + Résultat de l'appel + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + /// Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la méthode à appeler + Arguments de l'appel + Culture + Tableau de types correspondant aux types des arguments génériques. + Résultat de l'appel + + + + Obtient l'élément dans le tableau statique + + Nom du tableau + + Tableau unidimensionnel d'entiers 32 bits qui représentent les index spécifiant + la position de l'élément à obtenir. Par exemple, pour accéder à a[10][11], les indices sont {10,11} + + élément à l'emplacement spécifié + + + + Définit le membre du tableau statique + + Nom du tableau + valeur à définir + + Tableau unidimensionnel d'entiers 32 bits qui représentent les index spécifiant + la position de l'élément à définir. Par exemple, pour accéder à a[10][11], le tableau est {10,11} + + + + + Obtient l'élément dans le tableau statique + + Nom du tableau + Attributs InvokeHelper supplémentaires + + Tableau unidimensionnel d'entiers 32 bits qui représentent les index spécifiant + la position de l'élément à obtenir. Par exemple, pour accéder à a[10][11], le tableau est {10,11} + + élément à l'emplacement spécifié + + + + Définit le membre du tableau statique + + Nom du tableau + Attributs InvokeHelper supplémentaires + valeur à définir + + Tableau unidimensionnel d'entiers 32 bits qui représentent les index spécifiant + la position de l'élément à définir. Par exemple, pour accéder à a[10][11], le tableau est {10,11} + + + + + Obtient le champ static + + Nom du champ + Champ static. + + + + Définit le champ static + + Nom du champ + Argument de l'appel + + + + Obtient le champ static à l'aide des attributs InvokeHelper spécifiés + + Nom du champ + Attributs d'appel supplémentaires + Champ static. + + + + Définit le champ static à l'aide des attributs de liaison + + Nom du champ + Attributs InvokeHelper supplémentaires + Argument de l'appel + + + + Obtient le champ ou la propriété statique + + Nom du champ ou de la propriété + Champ ou propriété statique. + + + + Définit le champ ou la propriété statique + + Nom du champ ou de la propriété + Valeur à affecter au champ ou à la propriété + + + + Obtient le champ ou la propriété statique à l'aide des attributs InvokeHelper spécifiés + + Nom du champ ou de la propriété + Attributs d'appel supplémentaires + Champ ou propriété statique. + + + + Définit le champ ou la propriété statique à l'aide des attributs de liaison + + Nom du champ ou de la propriété + Attributs d'appel supplémentaires + Valeur à affecter au champ ou à la propriété + + + + Obtient la propriété statique + + Nom du champ ou de la propriété + Arguments de l'appel + Propriété statique. + + + + Définit la propriété statique + + Nom de la propriété + Valeur à affecter au champ ou à la propriété + Arguments à passer au membre à appeler. + + + + Définit la propriété statique + + Nom de la propriété + Valeur à affecter au champ ou à la propriété + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + + + + Obtient la propriété statique + + Nom de la propriété + Attributs d'appel supplémentaires. + Arguments à passer au membre à appeler. + Propriété statique. + + + + Obtient la propriété statique + + Nom de la propriété + Attributs d'appel supplémentaires. + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + Propriété statique. + + + + Définit la propriété statique + + Nom de la propriété + Attributs d'appel supplémentaires. + Valeur à affecter au champ ou à la propriété + Valeurs d'index facultatives pour les propriétés indexées. Les index des propriétés indexées sont de base zéro. Cette valeur doit être null pour les propriétés non indexées. + + + + Définit la propriété statique + + Nom de la propriété + Attributs d'appel supplémentaires. + Valeur à affecter au champ ou à la propriété + Tableau qui contient des objets représentant le nombre, l'ordre et le type des paramètres de la propriété indexée. + Arguments à passer au membre à appeler. + + + + Appelle la méthode statique + + Nom du membre + Attributs d'appel supplémentaires + Arguments de l'appel + Culture + Résultat de l'appel + + + + Fournit la découverte de signatures de méthodes pour les méthodes génériques. + + + + + Compare les signatures de méthode de ces deux méthodes. + + Method1 + Method2 + True en cas de similitude. + + + + Obtient la profondeur de la hiérarchie à partir du type de base du type fourni. + + Type. + Profondeur. + + + + Recherche le type le plus dérivé à l'aide des informations fournies. + + Concordances. + Nombre de correspondances. + Méthode la plus dérivée. + + + + À partir d'un ensemble de méthodes qui correspondent aux critères de base, sélectionnez une méthode + reposant sur un tableau de types. Cette méthode doit retourner une valeur null, si aucune méthode ne correspond + aux critères. + + Spécification de liaison. + Concordances + Types + Modificateurs des paramètres. + Méthode de concordance. Null en l'absence de concordance. + + + + Recherche la méthode la plus spécifique parmi les deux méthodes fournies. + + Méthode 1 + Ordre des paramètres pour la méthode 1 + Type du tableau de paramètres. + Méthode 2 + Ordre des paramètres pour la méthode 2 + >Type du tableau de paramètres. + Types à rechercher. + Args. + Type int représentant la concordance. + + + + Recherche la méthode la plus spécifique parmi les deux méthodes fournies. + + Méthode 1 + Ordre des paramètres pour la méthode 1 + Type du tableau de paramètres. + Méthode 2 + Ordre des paramètres pour la méthode 2 + >Type du tableau de paramètres. + Types à rechercher. + Args. + Type int représentant la concordance. + + + + Recherche le type le plus spécifique parmi les deux types fournis. + + Type 1 + Type 2 + Type de définition + Type int représentant la concordance. + + + + Permet de stocker les informations fournies pour les tests unitaires. + + + + + Obtient les propriétés de test d'un test. + + + + + Obtient la ligne de données active quand le test est utilisé pour un test piloté par les données. + + + + + Obtient la ligne de la connexion de données active quand le test est utilisé pour un test piloté par les données. + + + + + Obtient le répertoire de base de la série de tests, sous lequel sont stockés les fichiers déployés et les fichiers de résultats. + + + + + Obtient le répertoire des fichiers déployés pour la série de tests. Généralement, il s'agit d'un sous-répertoire de . + + + + + Obtient le répertoire de base des résultats de la série de tests. Généralement, il s'agit d'un sous-répertoire de . + + + + + Obtient le répertoire des fichiers de résultats des séries de tests. Généralement, il s'agit d'un sous-répertoire de . + + + + + Obtient le répertoire des fichiers de résultats des tests. + + + + + Obtient le répertoire de base de la série de tests, sous lequel sont stockés les fichiers déployés et les fichiers de résultats. + Identique à . Utilisez cette propriété à la place. + + + + + Obtient le répertoire des fichiers déployés pour la série de tests. Généralement, il s'agit d'un sous-répertoire de . + Identique à . Utilisez cette propriété à la place. + + + + + Obtient le répertoire des fichiers de résultats des séries de tests. Généralement, il s'agit d'un sous-répertoire de . + Identique à . Utilisez cette propriété pour les fichiers de résultats des séries de tests, ou + pour les fichiers de résultats des tests spécifiques, à la place. + + + + + Obtient le nom complet de la classe contenant la méthode de test en cours d'exécution + + + + + Obtient le nom de la méthode de test en cours d'exécution + + + + + Obtient le résultat de test actuel. + + + + + Permet d'écrire des messages de suivi quand le test est en cours d'exécution + + chaîne de message mise en forme + + + + Permet d'écrire des messages de suivi quand le test est en cours d'exécution + + chaîne de format + arguments + + + + Ajoute un nom de fichier à la liste dans TestResult.ResultFileNames + + + Nom du fichier. + + + + + Démarre un minuteur ayant le nom spécifié + + Nom du minuteur. + + + + Met fin à un minuteur ayant le nom spécifié + + Nom du minuteur. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2d63dc0 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod pour exécution. + + + + + Obtient le nom de la méthode de test. + + + + + Obtient le nom de la classe de test. + + + + + Obtient le type de retour de la méthode de test. + + + + + Obtient les paramètres de la méthode de test. + + + + + Obtient le methodInfo de la méthode de test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Appelle la méthode de test. + + + Arguments à passer à la méthode de test. (Exemple : pour un test piloté par les données) + + + Résultat de l'appel de la méthode de test. + + + This call handles asynchronous test methods as well. + + + + + Obtient tous les attributs de la méthode de test. + + + Indique si l'attribut défini dans la classe parente est valide. + + + Tous les attributs. + + + + + Obtient l'attribut du type spécifique. + + System.Attribute type. + + Indique si l'attribut défini dans la classe parente est valide. + + + Attributs du type spécifié. + + + + + Assistance. + + + + + Paramètre de vérification non null. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws argument null exception when parameter is null. + + + + Paramètre de vérification non null ou vide. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws ArgumentException when parameter is null. + + + + Énumération liée à la façon dont nous accédons aux lignes de données dans les tests pilotés par les données. + + + + + Les lignes sont retournées dans un ordre séquentiel. + + + + + Les lignes sont retournées dans un ordre aléatoire. + + + + + Attribut permettant de définir les données inline d'une méthode de test. + + + + + Initialise une nouvelle instance de la classe . + + Objet de données. + + + + Initialise une nouvelle instance de la classe qui accepte un tableau d'arguments. + + Objet de données. + Plus de données. + + + + Obtient les données permettant d'appeler la méthode de test. + + + + + Obtient ou définit le nom d'affichage dans les résultats des tests à des fins de personnalisation. + + + + + Exception d'assertion non concluante. + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Classe InternalTestFailureException. Sert à indiquer l'échec interne d'un cas de test + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + + + + Initialise une nouvelle instance de la classe . + + + + + Attribut indiquant d'attendre une exception du type spécifié + + + + + Initialise une nouvelle instance de la classe avec le type attendu + + Type de l'exception attendue + + + + Initialise une nouvelle instance de la classe avec + le type attendu et le message à inclure quand aucune exception n'est levée par le test. + + Type de l'exception attendue + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient une valeur indiquant le type de l'exception attendue + + + + + Obtient ou définit une valeur indiquant si les types dérivés du type de l'exception attendue peuvent + être éligibles comme prévu + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Vérifie que le type de l'exception levée par le test unitaire est bien attendu + + Exception levée par le test unitaire + + + + Classe de base des attributs qui spécifient d'attendre une exception d'un test unitaire + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception par défaut + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception + + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une + exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message d'absence d'exception par défaut + + Nom du type de l'attribut ExpectedException + Message d'absence d'exception par défaut + + + + Détermine si l'exception est attendue. Si la méthode est retournée, cela + signifie que l'exception est attendue. Si la méthode lève une exception, cela + signifie que l'exception n'est pas attendue, et que le message de l'exception levée + est inclus dans le résultat de test. La classe peut être utilisée par + commodité. Si est utilisé et si l'assertion est un échec, + le résultat de test a la valeur Non concluant. + + Exception levée par le test unitaire + + + + Lève à nouveau l'exception, s'il s'agit de AssertFailedException ou de AssertInconclusiveException + + Exception à lever de nouveau, s'il s'agit d'une exception d'assertion + + + + Cette classe permet à l'utilisateur d'effectuer des tests unitaires pour les types basés sur des types génériques. + GenericParameterHelper répond à certaines contraintes usuelles des types génériques, + exemple : + 1. constructeur par défaut public + 2. implémentation d'une interface commune : IComparable, IEnumerable + + + + + Initialise une nouvelle instance de la classe qui + répond à la contrainte 'newable' dans les génériques C#. + + + This constructor initializes the Data property to a random value. + + + + + Initialise une nouvelle instance de la classe qui + initialise la propriété Data en lui assignant une valeur fournie par l'utilisateur. + + Valeur entière + + + + Obtient ou définit les données + + + + + Compare la valeur de deux objets GenericParameterHelper + + objet à comparer + true si obj a la même valeur que l'objet GenericParameterHelper de 'this'. + sinon false. + + + + Retourne un code de hachage pour cet objet. + + Code de hachage. + + + + Compare les données des deux objets . + + Objet à comparer. + + Nombre signé indiquant les valeurs relatives de cette instance et de cette valeur. + + + Thrown when the object passed in is not an instance of . + + + + + Retourne un objet IEnumerator dont la longueur est dérivée de + la propriété Data. + + Objet IEnumerator + + + + Retourne un objet GenericParameterHelper égal à + l'objet actuel. + + Objet cloné. + + + + Permet aux utilisateurs de journaliser/d'écrire des traces de tests unitaires à des fins de diagnostic. + + + + + Gestionnaire de LogMessage. + + Message à journaliser. + + + + Événement à écouter. Déclenché quand le writer de test unitaire écrit un message. + Sert principalement à être consommé par un adaptateur. + + + + + API à appeler par le writer de test pour journaliser les messages. + + Format de chaîne avec des espaces réservés. + Paramètres des espaces réservés. + + + + Attribut TestCategory utilisé pour spécifier la catégorie d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe et applique la catégorie au test. + + + Catégorie de test. + + + + + Obtient les catégories de test appliquées au test. + + + + + Classe de base de l'attribut "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialise une nouvelle instance de la classe . + Applique la catégorie au test. Les chaînes retournées par TestCategories + sont utilisées avec la commande /category pour filtrer les tests + + + + + Obtient la catégorie de test appliquée au test. + + + + + Classe AssertFailedException. Sert à indiquer l'échec d'un cas de test + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Collection de classes d'assistance permettant de tester diverses conditions dans + des tests unitaires. Si la condition testée n'est pas remplie, une exception + est levée. + + + + + Obtient l'instance singleton de la fonctionnalité Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is true. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null. + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if refers to the same object + as . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is not equal to . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Lève AssertFailedException. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Les surcharges statiques d'equals comparent les instances de deux types pour déterminer si leurs références sont + égales entre elles. Cette méthode ne doit pas être utilisée pour évaluer si deux instances sont + égales entre elles. Cet objet est toujours levé avec Assert.Fail. Utilisez + Assert.AreEqual et les surcharges associées dans vos tests unitaires. + + Objet A + Objet B + False, toujours. + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Remplace les caractères Null ('\0') par "\\0". + + + Chaîne à rechercher. + + + Chaîne convertie où les caractères null sont remplacés par "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Fonction d'assistance qui crée et lève AssertionFailedException + + + nom de l'assertion levant une exception + + + message décrivant les conditions de l'échec d'assertion + + + Paramètres. + + + + + Vérifie la validité des conditions du paramètre + + + Paramètre. + + + Nom de l'assertion. + + + nom du paramètre + + + message d'exception liée à un paramètre non valide + + + Paramètres. + + + + + Convertit en toute sécurité un objet en chaîne, en gérant les valeurs null et les caractères Null. + Les valeurs null sont converties en "(null)". Les caractères Null sont convertis en "\\0". + + + Objet à convertir en chaîne. + + + Chaîne convertie. + + + + + Assertion de chaîne. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if matches . + + + + + Collection de classes d'assistance permettant de tester diverses conditions associées + à des collections dans les tests unitaires. Si la condition testée n'est pas + remplie, une exception est levée. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is found in + . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is not found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if every element in is also found in + . + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Détermine si la première collection est un sous-ensemble de la seconde + collection. Si l'un des deux ensembles contient des éléments dupliqués, le nombre + d'occurrences de l'élément dans le sous-ensemble doit être inférieur ou + égal au nombre d'occurrences dans le sur-ensemble. + + + Collection dans laquelle le test est censé être contenu . + + + Collection que le test est censé contenir . + + + True si est un sous-ensemble de + , sinon false. + + + + + Construit un dictionnaire contenant le nombre d'occurrences de chaque + élément dans la collection spécifiée. + + + Collection à traiter. + + + Nombre d'éléments de valeur null dans la collection. + + + Dictionnaire contenant le nombre d'occurrences de chaque élément + dans la collection spécifiée. + + + + + Recherche un élément incompatible parmi les deux collections. Un élément incompatible + est un élément qui n'apparaît pas avec la même fréquence dans la + collection attendue et dans la collection réelle. Les + collections sont supposées être des références non null distinctes ayant le + même nombre d'éléments. L'appelant est responsable de ce niveau de + vérification. S'il n'existe aucun élément incompatible, la fonction retourne + la valeur false et les paramètres out ne doivent pas être utilisés. + + + Première collection à comparer. + + + Seconde collection à comparer. + + + Nombre attendu d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Nombre réel d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Élément incompatible (pouvant avoir une valeur null), ou valeur null s'il n'existe aucun + élément incompatible. + + + true si un élément incompatible est trouvé ; sinon, false. + + + + + compare les objets via object.Equals + + + + + Classe de base pour les exceptions de framework. + + + + + Initialise une nouvelle instance de la classe . + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées. + + + + + Retourne l'instance ResourceManager mise en cache utilisée par cette classe. + + + + + Remplace la propriété CurrentUICulture du thread actuel pour toutes + les recherches de ressources à l'aide de cette classe de ressource fortement typée. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne Access comporte une syntaxe non valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : La collection attendue contient {1} occurrence(s) de <{2}>. La collection réelle contient {3} occurrence(s). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Un élément dupliqué a été trouvé : <{1}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. La casse est différente pour la valeur réelle : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue non supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1} ({2})>. Réel : <{3} ({4})>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Toute valeur attendue sauf : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Ne passez pas de types valeur à AreSame(). Les valeurs converties en Object ne seront plus jamais les mêmes. Si possible, utilisez AreEqual(). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Échec de {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : async TestMethod utilisé avec UITestMethodAttribute n'est pas pris en charge. Supprimez async ou utilisez TestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections sont vides. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent des éléments identiques. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections Reference pointent vers le même objet Collection. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent les mêmes éléments. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0}({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : (null). + + + + + Recherche une chaîne localisée semblable à celle-ci : (objet). + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne contient pas la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} ({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : Assert.Equals ne doit pas être utilisé pour les assertions. Utilisez Assert.AreEqual et des surcharges à la place. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le nombre d'éléments dans les collections ne correspond pas. Attendu : <{1}>. Réel : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les éléments à l'index {0} ne correspondent pas. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} n'est pas du type attendu. Type attendu : <{2}>. Type réel : <{3}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} est (null). Type attendu : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne se termine pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Argument non valide - EqualsTester ne peut pas utiliser de valeurs null. + + + + + Recherche une chaîne localisée semblable à celle-ci : Impossible de convertir un objet de type {0} en {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'objet interne référencé n'est plus valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La propriété {0} a le type {1} ; type attendu {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} Type attendu : <{1}>. Type réel : <{2}>. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne correspond pas au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Type incorrect : <{1}>. Type réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' correspond au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucun DataRowAttribute spécifié. Au moins un DataRowAttribute est nécessaire avec DataTestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucune exception levée. Exception {1} attendue. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. La valeur ne peut pas être null. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Nombre d'éléments différent. + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le constructeur doté de la signature spécifiée est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le membre spécifié ({0}) est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne commence pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le type de l'exception attendue doit être System.Exception ou un type dérivé de System.Exception. + + + + + Recherche une chaîne localisée semblable à celle-ci : (Échec de la réception du message pour une exception de type {0} en raison d'une exception.). + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé l'exception attendue {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé d'exception. Une exception était attendue par l'attribut {0} défini sur la méthode de test. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} (ou un type dérivé de cette dernière) était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'exception {2} a été levée, mais l'exception {1} était attendue. {0} + Message d'exception : {3} + Arborescence des appels de procédure : {4}. + + + + + résultats du test unitaire + + + + + Le test a été exécuté mais des problèmes se sont produits. + Il peut s'agir de problèmes liés à des exceptions ou des échecs d'assertion. + + + + + Test effectué, mais nous ne pouvons pas dire s'il s'agit d'une réussite ou d'un échec. + Utilisable éventuellement pour les tests abandonnés. + + + + + Le test a été exécuté sans problème. + + + + + Le test est en cours d'exécution. + + + + + Une erreur système s'est produite pendant que nous tentions d'exécuter un test. + + + + + Délai d'expiration du test. + + + + + Test abandonné par l'utilisateur. + + + + + Le test est dans un état inconnu + + + + + Fournit une fonctionnalité d'assistance pour le framework de tests unitaires + + + + + Obtient les messages d'exception, notamment les messages de toutes les exceptions internes + de manière récursive + + Exception pour laquelle les messages sont obtenus + chaîne avec les informations du message d'erreur + + + + Énumération des délais d'expiration, qui peut être utilisée avec la classe . + Le type de l'énumération doit correspondre + + + + + Infini. + + + + + Attribut de la classe de test. + + + + + Obtient un attribut de méthode de test qui permet d'exécuter ce test. + + Instance d'attribut de méthode de test définie sur cette méthode. + Le à utiliser pour exécuter ce test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attribut de la méthode de test. + + + + + Exécute une méthode de test. + + Méthode de test à exécuter. + Tableau d'objets TestResult qui représentent le ou les résultats du test. + Extensions can override this method to customize running a TestMethod. + + + + Attribut d'initialisation du test. + + + + + Attribut de nettoyage du test. + + + + + Attribut ignore. + + + + + Attribut de la propriété de test. + + + + + Initialise une nouvelle instance de la classe . + + + Nom. + + + Valeur. + + + + + Obtient le nom. + + + + + Obtient la valeur. + + + + + Attribut d'initialisation de la classe. + + + + + Attribut de nettoyage de la classe. + + + + + Attribut d'initialisation de l'assembly. + + + + + Attribut de nettoyage de l'assembly. + + + + + Propriétaire du test + + + + + Initialise une nouvelle instance de la classe . + + + Propriétaire. + + + + + Obtient le propriétaire. + + + + + Attribut Priority utilisé pour spécifier la priorité d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Priorité. + + + + + Obtient la priorité. + + + + + Description du test + + + + + Initialise une nouvelle instance de la classe pour décrire un test. + + Description. + + + + Obtient la description d'un test. + + + + + URI de structure de projet CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI de structure de projet CSS. + + URI de structure de projet CSS. + + + + Obtient l'URI de structure de projet CSS. + + + + + URI d'itération CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI d'itération CSS. + + URI d'itération CSS. + + + + Obtient l'URI d'itération CSS. + + + + + Attribut WorkItem permettant de spécifier un élément de travail associé à ce test. + + + + + Initialise une nouvelle instance de la classe pour l'attribut WorkItem. + + ID d'un élément de travail. + + + + Obtient l'ID d'un élément de travail associé. + + + + + Attribut Timeout utilisé pour spécifier le délai d'expiration d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Délai d'expiration. + + + + + Initialise une nouvelle instance de la classe avec un délai d'expiration prédéfini + + + Délai d'expiration + + + + + Obtient le délai d'attente. + + + + + Objet TestResult à retourner à l'adaptateur. + + + + + Initialise une nouvelle instance de la classe . + + + + + Obtient ou définit le nom d'affichage du résultat. Utile pour retourner plusieurs résultats. + En cas de valeur null, le nom de la méthode est utilisé en tant que DisplayName. + + + + + Obtient ou définit le résultat de l'exécution du test. + + + + + Obtient ou définit l'exception levée en cas d'échec du test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit les traces de débogage du code de test. + + + + + Gets or sets the debug traces by test code. + + + + + Obtient ou définit la durée de l'exécution du test. + + + + + Obtient ou définit l'index de ligne de données dans la source de données. Défini uniquement pour les résultats de + l'exécution individuelle de la ligne de données d'un test piloté par les données. + + + + + Obtient ou définit la valeur renvoyée de la méthode de test. (Toujours null). + + + + + Obtient ou définit les fichiers de résultats attachés par le test. + + + + + Spécifie la chaîne de connexion, le nom de la table et la méthode d'accès aux lignes pour les tests pilotés par les données. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nom du fournisseur par défaut de DataSource. + + + + + Méthode d'accès aux données par défaut. + + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données, une chaîne de connexion, une table de données et une méthode d'accès aux données pour accéder à la source de données. + + Nom du fournisseur de données invariant, par exemple System.Data.SqlClient + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + Spécifie l'ordre d'accès aux données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec une chaîne de connexion et un nom de table. + Spécifiez la chaîne de connexion et la table de données permettant d'accéder à la source de données OLEDB. + + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données et une chaîne de connexion associés au nom du paramètre. + + Nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + Obtient une valeur représentant le fournisseur de données de la source de données. + + + Nom du fournisseur de données. Si aucun fournisseur de données n'a été désigné au moment de l'initialisation de l'objet, le fournisseur par défaut de System.Data.OleDb est retourné. + + + + + Obtient une valeur représentant la chaîne de connexion de la source de données. + + + + + Obtient une valeur indiquant le nom de la table qui fournit les données. + + + + + Obtient la méthode utilisée pour accéder à la source de données. + + + + Une des valeurs possibles. Si n'est pas initialisé, ce qui entraîne le retour de la valeur par défaut . + + + + + Obtient le nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + + Attribut du test piloté par les données, où les données peuvent être spécifiées inline. + + + + + Recherche toutes les lignes de données et les exécute. + + + Méthode de test. + + + Tableau des . + + + + + Exécute la méthode de test piloté par les données. + + Méthode de test à exécuter. + Ligne de données. + Résultats de l'exécution. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..d743158 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usato per specificare l'elemento di distribuzione (file o directory) per la distribuzione per singolo test. + Può essere specificato in classi o metodi di test. + Può contenere più istanze dell'attributo per specificare più di un elemento. + Il percorso dell'elemento può essere assoluto o relativo; se è relativo, è relativo rispetto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Inizializza una nuova istanza della classe . + + File o directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + + + + Inizializza una nuova istanza della classe + + Percorso relativo o assoluto del file o della directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + Percorso della directory in cui vengono copiati gli elementi. Può essere assoluto o relativo rispetto alla directory di distribuzione. Tutte le directory e tutti i file identificati da verranno copiati in questa directory. + + + + Ottiene il percorso della cartella o del file di origine da copiare. + + + + + Ottiene il percorso della directory in cui viene copiato l'elemento. + + + + + Contiene i valori letterali relativi ai nomi di sezioni, proprietà, attributi. + + + + + Nome della sezione di configurazione. + + + + + Nome della sezione della configurazione per Beta2. Opzione lasciata per garantire la compatibilità. + + + + + Nome della sezione per l'origine dati. + + + + + Nome di attributo per 'Name' + + + + + Nome di attributo per 'ConnectionString' + + + + + Nome di attributo per 'DataAccessMethod' + + + + + Nome di attributo per 'DataTable' + + + + + Elemento dell'origine dati. + + + + + Ottiene o imposta il nome di questa configurazione. + + + + + Ottiene o imposta l'elemento ConnectionStringSettings nella sezione <connectionStrings> del file con estensione config. + + + + + Ottiene o imposta il nome della tabella dati. + + + + + Ottiene o imposta il tipo di accesso ai dati. + + + + + Ottiene il nome della chiave. + + + + + Ottiene le proprietà di configurazione. + + + + + Raccolta di elementi dell'origine dati. + + + + + Inizializza una nuova istanza della classe . + + + + + Restituisce l'elemento di configurazione con la chiave specificata. + + Chiave dell'elemento da restituire. + Elemento System.Configuration.ConfigurationElement con la chiave specificata; in caso contrario, Null. + + + + Ottiene l'elemento di configurazione nella posizione di indice specificata. + + Posizione di indice dell'elemento System.Configuration.ConfigurationElement da restituire. + + + + Aggiunge un elemento di configurazione alla raccolta di elementi di configurazione. + + Elemento System.Configuration.ConfigurationElement da aggiungere. + + + + Rimuove un elemento System.Configuration.ConfigurationElement dalla raccolta. + + Elemento . + + + + Rimuove un elemento System.Configuration.ConfigurationElement dalla raccolta. + + Chiave dell'elemento System.Configuration.ConfigurationElement da rimuovere. + + + + Rimuove tutti gli oggetti degli elementi di configurazione dalla raccolta. + + + + + Crea un nuovo oggetto . + + Nuovo elemento . + + + + Ottiene la chiave dell'elemento per un elemento di configurazione specificato. + + Elemento System.Configuration.ConfigurationElement per cui restituire la chiave. + Elemento System.Object che funge da chiave per l'elemento System.Configuration.ConfigurationElement specificato. + + + + Aggiunge un elemento di configurazione alla raccolta di elementi di configurazione. + + Elemento System.Configuration.ConfigurationElement da aggiungere. + + + + Aggiunge un elemento di configurazione alla raccolta di elementi di configurazione. + + Posizione di indice in cui aggiungere l'elemento System.Configuration.ConfigurationElement specificato. + Elemento System.Configuration.ConfigurationElement da aggiungere. + + + + Supporto per le impostazioni di configurazione per Test. + + + + + Ottiene la sezione della configurazione per i test. + + + + + Sezione della configurazione per i test. + + + + + Ottiene le origini dati per questa sezione della configurazione. + + + + + Ottiene la raccolta di proprietà. + + + delle proprietà per l'elemento. + + + + + Questa classe rappresenta l'oggetto INTERNO attivo NON pubblico nel sistema + + + + + Inizializza una nuova istanza della classe che contiene + l'oggetto già esistente della classe privata + + oggetto che funge da punto di partenza per raggiungere i membri privati + stringa di deferenziazione che usa . e punta all'oggetto da recuperare come in m_X.m_Y.m_Z + + + + Inizializza una nuova istanza della classe che esegue il wrapping del + tipo specificato. + + Nome dell'assembly + nome completo + Argomenti da passare al costruttore + + + + Inizializza una nuova istanza della classe che esegue il wrapping del + tipo specificato. + + Nome dell'assembly + nome completo + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al costruttore da ottenere + Argomenti da passare al costruttore + + + + Inizializza una nuova istanza della classe che esegue il wrapping del + tipo specificato. + + tipo dell'oggetto da creare + Argomenti da passare al costruttore + + + + Inizializza una nuova istanza della classe che esegue il wrapping del + tipo specificato. + + tipo dell'oggetto da creare + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al costruttore da ottenere + Argomenti da passare al costruttore + + + + Inizializza una nuova istanza della classe che esegue il wrapping + dell'oggetto specificato. + + oggetto di cui eseguire il wrapping + + + + Inizializza una nuova istanza della classe che esegue il wrapping + dell'oggetto specificato. + + oggetto di cui eseguire il wrapping + Oggetto PrivateType + + + + Ottiene o imposta la destinazione + + + + + Ottiene il tipo dell'oggetto sottostante + + + + + restituisce il codice hash dell'oggetto di destinazione + + int che rappresenta il codice hash dell'oggetto di destinazione + + + + È uguale a + + Oggetto con cui eseguire il confronto + restituisce true se gli oggetti sono uguali. + + + + Richiama il metodo specificato + + Nome del metodo + Argomenti da passare al membro da richiamare. + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Matrice di tipi corrispondenti ai tipi degli argomenti generici. + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Argomenti da passare al membro da richiamare. + Info su impostazioni cultura + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Info su impostazioni cultura + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Argomenti da passare al membro da richiamare. + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Argomenti da passare al membro da richiamare. + Info su impostazioni cultura + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Info su impostazioni cultura + Risultato della chiamata al metodo + + + + Richiama il metodo specificato + + Nome del metodo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da ottenere. + Argomenti da passare al membro da richiamare. + Info su impostazioni cultura + Matrice di tipi corrispondenti ai tipi degli argomenti generici. + Risultato della chiamata al metodo + + + + Ottiene l'elemento di matrice usando la matrice di indici per ogni dimensione + + Nome del membro + indici della matrice + Matrice di elementi. + + + + Imposta l'elemento di matrice usando la matrice di indici per ogni dimensione + + Nome del membro + Valore da impostare + indici della matrice + + + + Ottiene l'elemento di matrice usando la matrice di indici per ogni dimensione + + Nome del membro + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + indici della matrice + Matrice di elementi. + + + + Imposta l'elemento di matrice usando la matrice di indici per ogni dimensione + + Nome del membro + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Valore da impostare + indici della matrice + + + + Ottiene il campo + + Nome del campo + Campo. + + + + Imposta il campo + + Nome del campo + valore da impostare + + + + Ottiene il campo + + Nome del campo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Campo. + + + + Imposta il campo + + Nome del campo + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + valore da impostare + + + + Ottiene il campo o la proprietà + + Nome del campo o della proprietà + Campo o proprietà. + + + + Imposta il campo o la proprietà + + Nome del campo o della proprietà + valore da impostare + + + + Ottiene il campo o la proprietà + + Nome del campo o della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Campo o proprietà. + + + + Imposta il campo o la proprietà + + Nome del campo o della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + valore da impostare + + + + Ottiene la proprietà + + Nome della proprietà + Argomenti da passare al membro da richiamare. + Proprietà. + + + + Ottiene la proprietà + + Nome della proprietà + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + Proprietà. + + + + Imposta la proprietà + + Nome della proprietà + valore da impostare + Argomenti da passare al membro da richiamare. + + + + Imposta la proprietà + + Nome della proprietà + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + valore da impostare + Argomenti da passare al membro da richiamare. + + + + Ottiene la proprietà + + Nome della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Argomenti da passare al membro da richiamare. + Proprietà. + + + + Ottiene la proprietà + + Nome della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + Proprietà. + + + + Imposta la proprietà + + Nome della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + valore da impostare + Argomenti da passare al membro da richiamare. + + + + Imposta la proprietà + + Nome della proprietà + Maschera di bit costituita da uno o più che specificano in che modo viene eseguita la ricerca. + valore da impostare + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + + + + Convalida la stringa di accesso + + stringa di accesso + + + + Richiama il membro + + Nome del membro + Attributi aggiuntivi + Argomenti della chiamata + Impostazioni cultura + Risultato della chiamata + + + + Estrae la firma del metodo generico più appropriata dal tipo privato corrente. + + Nome del metodo in cui cercare la cache delle firme. + Matrice di tipi corrispondenti ai tipi dei parametri in cui eseguire la ricerca. + Matrice di tipi corrispondenti ai tipi degli argomenti generici. + per filtrare ulteriormente le firme del metodo. + Modificatori per i parametri. + Istanza di MethodInfo. + + + + Questa classe rappresenta una classe privata per la funzionalità della funzione di accesso privata. + + + + + Esegue il binding a tutto + + + + + Tipo di cui è stato eseguito il wrapping. + + + + + Inizializza una nuova istanza della classe che contiene il tipo privato. + + Nome dell'assembly + nome completo del + + + + Inizializza una nuova istanza della classe che contiene + il tipo privato dell'oggetto tipo + + Oggetto Type con wrapping da creare. + + + + Ottiene il tipo di riferimento + + + + + Richiama il membro statico + + Nome del membro per InvokeHelper + Argomenti della chiamata + Risultato della chiamata + + + + Richiama il membro statico + + Nome del membro per InvokeHelper + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Risultato della chiamata + + + + Richiama il membro statico + + Nome del membro per InvokeHelper + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Matrice di tipi corrispondenti ai tipi degli argomenti generici. + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Argomenti della chiamata + Impostazioni cultura + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Info su impostazioni cultura + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + Argomenti della chiamata + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + Argomenti della chiamata + Impostazioni cultura + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + /// Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Impostazioni cultura + Risultato della chiamata + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + /// Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi al metodo da richiamare + Argomenti della chiamata + Impostazioni cultura + Matrice di tipi corrispondenti ai tipi degli argomenti generici. + Risultato della chiamata + + + + Ottiene l'elemento nella matrice statica + + Nome della matrice + + Matrice unidimensionale di valori interi a 32 bit che rappresentano gli indici che specificano + la posizione dell'elemento da ottenere. Ad esempio, per accedere a a[10][11], gli indici sono {10,11} + + elemento alla posizione specificata + + + + Imposta il membro della matrice statica + + Nome della matrice + valore da impostare + + Matrice unidimensionale di valori interi a 32 bit che rappresentano gli indici che specificano + la posizione dell'elemento da impostare. Ad esempio, per accedere a a[10][11], la matrice è {10,11} + + + + + Ottiene l'elemento nella matrice statica + + Nome della matrice + Attributi di InvokeHelper aggiuntivi + + Matrice unidimensionale di valori interi a 32 bit che rappresentano gli indici che specificano + la posizione dell'elemento da ottenere. Ad esempio, per accedere a a[10][11], la matrice è {10,11} + + elemento alla posizione specificata + + + + Imposta il membro della matrice statica + + Nome della matrice + Attributi di InvokeHelper aggiuntivi + valore da impostare + + Matrice unidimensionale di valori interi a 32 bit che rappresentano gli indici che specificano + la posizione dell'elemento da impostare. Ad esempio, per accedere a a[10][11], la matrice è {10,11} + + + + + Ottiene il campo statico + + Nome del campo + Campo statico. + + + + Imposta il campo statico + + Nome del campo + Argomento della chiamata + + + + Ottiene il campo statico usando gli attributi specificati di InvokeHelper + + Nome del campo + Attributi di chiamata aggiuntivi + Campo statico. + + + + Imposta il campo statico usando gli attributi di binding + + Nome del campo + Attributi di InvokeHelper aggiuntivi + Argomento della chiamata + + + + Ottiene la proprietà o il campo statico + + Nome del campo o della proprietà + Campo o proprietà statica. + + + + Imposta la proprietà o il campo statico + + Nome del campo o della proprietà + Valore da impostare sul campo o sulla proprietà + + + + Ottiene la proprietà o il campo statico usando gli attributi specificati di InvokeHelper + + Nome del campo o della proprietà + Attributi di chiamata aggiuntivi + Campo o proprietà statica. + + + + Imposta la proprietà o il campo statico usando gli attributi di binding + + Nome del campo o della proprietà + Attributi di chiamata aggiuntivi + Valore da impostare sul campo o sulla proprietà + + + + Ottiene la proprietà statica + + Nome del campo o della proprietà + Argomenti della chiamata + Proprietà statica. + + + + Imposta la proprietà statica + + Nome della proprietà + Valore da impostare sul campo o sulla proprietà + Argomenti da passare al membro da richiamare. + + + + Imposta la proprietà statica + + Nome della proprietà + Valore da impostare sul campo o sulla proprietà + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + + + + Ottiene la proprietà statica + + Nome della proprietà + Attributi di chiamata aggiuntivi. + Argomenti da passare al membro da richiamare. + Proprietà statica. + + + + Ottiene la proprietà statica + + Nome della proprietà + Attributi di chiamata aggiuntivi. + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + Proprietà statica. + + + + Imposta la proprietà statica + + Nome della proprietà + Attributi di chiamata aggiuntivi. + Valore da impostare sul campo o sulla proprietà + Valori di indice facoltativi per le proprietà indicizzate. Gli indici delle proprietà indicizzate sono in base zero. Questo valore deve essere Null per le proprietà non indicizzate. + + + + Imposta la proprietà statica + + Nome della proprietà + Attributi di chiamata aggiuntivi. + Valore da impostare sul campo o sulla proprietà + Matrice di oggetti che rappresentano numero, ordine e tipo dei parametri relativi alla proprietà indicizzata. + Argomenti da passare al membro da richiamare. + + + + Richiama il metodo statico + + Nome del membro + Attributi di chiamata aggiuntivi + Argomenti della chiamata + Impostazioni cultura + Risultato della chiamata + + + + Fornisce l'individuazione della firma del metodo per i metodi generici. + + + + + Confronta le firme di questi due metodi. + + Method1 + Method2 + True se sono simili. + + + + Ottiene la profondità della gerarchia dal tipo di base del tipo fornito. + + Tipo. + Profondità. + + + + Trova il tipo più derivato con le informazioni fornite. + + Corrispondenze possibili. + Numero di corrispondenze. + Metodo più derivato. + + + + Dato un set di metodi corrispondenti ai criteri di base, seleziona un metodo + basato su una matrice di tipi. Questo metodo deve restituire Null se nessun + metodo corrisponde ai criteri. + + Specifica del binding. + Corrispondenze possibili + Tipi + Modificatori di parametro. + Metodo corrispondente. È Null se non ci sono metodi corrispondenti. + + + + Trova il metodo più specifico tra i due metodi forniti. + + Metodo 1 + Ordine dei parametri per il metodo 1 + Tipo della matrice di parametri. + Metodo 2 + Ordine dei parametri per il metodo 2 + >Tipo della matrice di parametri. + Tipi in cui eseguire la ricerca. + Argomenti. + Tipo int che rappresenta la corrispondenza. + + + + Trova il metodo più specifico tra i due metodi forniti. + + Metodo 1 + Ordine dei parametri per il metodo 1 + Tipo della matrice di parametri. + Metodo 2 + Ordine dei parametri per il metodo 2 + >Tipo della matrice di parametri. + Tipi in cui eseguire la ricerca. + Argomenti. + Tipo int che rappresenta la corrispondenza. + + + + Trova il tipo più specifico tra i due tipi forniti. + + Tipo 1 + Tipo 2 + Tipo per la definizione + Tipo int che rappresenta la corrispondenza. + + + + Usata per archiviare le informazioni fornite agli unit test. + + + + + Ottiene le proprietà di un test. + + + + + Ottiene la riga di dati corrente quando il test viene usato per test basati sui dati. + + + + + Ottiene la riga di connessione dati corrente quando il test viene usato per test basati sui dati. + + + + + Ottiene la directory di base per l'esecuzione dei test, in cui vengono archiviati i file distribuiti e i file di risultati. + + + + + Ottiene la directory per i file distribuiti per l'esecuzione dei test. È in genere una sottodirectory di . + + + + + Ottiene la directory di base per i risultati dell'esecuzione dei test. È in genere una sottodirectory di . + + + + + Ottiene la directory per i file di risultati dell'esecuzione dei test. È in genere una sottodirectory di . + + + + + Ottiene la directory per i file di risultati del test. + + + + + Ottiene la directory di base per l'esecuzione dei test, in cui vengono archiviati i file distribuiti e i file di risultati. + Uguale a . In alternativa, usare tale proprietà. + + + + + Ottiene la directory per i file distribuiti per l'esecuzione dei test. È in genere una sottodirectory di . + Uguale a . In alternativa, usare tale proprietà. + + + + + Ottiene la directory per i file di risultati dell'esecuzione dei test. È in genere una sottodirectory di . + Uguale a . In alternativa, usare tale proprietà per i file di risultati dell'esecuzione dei test oppure + per file di risultati specifici del test. + + + + + Ottiene il nome completo della classe contenente il metodo di test attualmente in esecuzione + + + + + Ottiene il nome del metodo di test attualmente in esecuzione + + + + + Ottiene il risultato del test corrente. + + + + + Usato per scrivere messaggi di traccia durante l'esecuzione del test + + stringa del messaggio formattato + + + + Usato per scrivere messaggi di traccia durante l'esecuzione del test + + stringa di formato + argomenti + + + + Aggiunge un nome file all'elenco in TestResult.ResultFileNames + + + Nome file. + + + + + Avvia un timer con il nome specificato + + Nome del timer. + + + + Termina un timer con il nome specificato + + Nome del timer. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..d3540c8 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metodo di test per l'esecuzione. + + + + + Ottiene il nome del metodo di test. + + + + + Ottiene il nome della classe di test. + + + + + Ottiene il tipo restituito del metodo di test. + + + + + Ottiene i parametri del metodo di test. + + + + + Ottiene l'oggetto methodInfo per il metodo di test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Richiama il metodo di test. + + + Argomenti da passare al metodo di test, ad esempio per test basati sui dati + + + Risultato della chiamata del metodo di test. + + + This call handles asynchronous test methods as well. + + + + + Ottiene tutti gli attributi del metodo di test. + + + Indica se l'attributo definito nella classe padre è valido. + + + Tutti gli attributi. + + + + + Ottiene l'attributo di tipo specifico. + + System.Attribute type. + + Indica se l'attributo definito nella classe padre è valido. + + + Attributi del tipo specificato. + + + + + Helper. + + + + + Parametro check non Null. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws argument null exception when parameter is null. + + + + Parametro check non Null o vuoto. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws ArgumentException when parameter is null. + + + + Enumerazione relativa alla modalità di accesso alle righe di dati nei test basati sui dati. + + + + + Le righe vengono restituite in ordine sequenziale. + + + + + Le righe vengono restituite in ordine casuale. + + + + + Attributo per definire i dati inline per un metodo di test. + + + + + Inizializza una nuova istanza della classe . + + Oggetto dati. + + + + Inizializza una nuova istanza della classe che accetta una matrice di argomenti. + + Oggetto dati. + Altri dati. + + + + Ottiene i dati per chiamare il metodo di test. + + + + + Ottiene o imposta il nome visualizzato nei risultati del test per la personalizzazione. + + + + + Eccezione senza risultati dell'asserzione. + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Classe InternalTestFailureException. Usata per indicare un errore interno per un test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + + + + Inizializza una nuova istanza della classe . + + + + + Attributo che specifica di presupporre un'eccezione del tipo specificato + + + + + Inizializza una nuova istanza della classe con il tipo previsto + + Tipo dell'eccezione prevista + + + + Inizializza una nuova istanza della classe con + il tipo previsto e il messaggio da includere quando il test non genera alcuna eccezione. + + Tipo dell'eccezione prevista + + Messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene un valore che indica il tipo dell'eccezione prevista + + + + + Ottiene o imposta un valore che indica se consentire a tipi derivati dal tipo dell'eccezione prevista + di qualificarsi come previsto + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Verifica che il tipo dell'eccezione generata dallo unit test sia prevista + + Eccezione generata dallo unit test + + + + Classe di base per attributi che specificano se prevedere che uno unit test restituisca un'eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio per indicare nessuna eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio che indica nessuna eccezione + + + Messaggio da includere nel risultato del test se il test non riesce perché non + viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio predefinito per indicare nessuna eccezione + + Nome del tipo di attributo di ExpectedException + Messaggio predefinito per indicare nessuna eccezione + + + + Determina se l'eccezione è prevista. Se il metodo viene completato, si + presuppone che l'eccezione era prevista. Se il metodo genera un'eccezione, si + presuppone che l'eccezione non era prevista e il messaggio dell'eccezione generata + viene incluso nel risultato del test. Si può usare la classe per + comodità. Se si usa e l'asserzione non riesce, + il risultato del test viene impostato su Senza risultati. + + Eccezione generata dallo unit test + + + + Genera di nuovo l'eccezione se si tratta di un'eccezione AssertFailedException o AssertInconclusiveException + + Eccezione da generare di nuovo se si tratta di un'eccezione di asserzione + + + + Questa classe consente all'utente di eseguire testing unità per tipi che usano tipi generici. + GenericParameterHelper soddisfa alcuni dei vincoli di tipo generici più comuni, + ad esempio: + 1. costruttore predefinito pubblico + 2. implementa l'interfaccia comune: IComparable, IEnumerable + + + + + Inizializza una nuova istanza della classe che + soddisfa il vincolo 'newable' nei generics C#. + + + This constructor initializes the Data property to a random value. + + + + + Inizializza una nuova istanza della classe che + inizializza la proprietà Data con un valore fornito dall'utente. + + Qualsiasi valore Integer + + + + Ottiene o imposta i dati + + + + + Esegue il confronto dei valori di due oggetti GenericParameterHelper + + oggetto con cui eseguire il confronto + true se il valore di obj è uguale a quello dell'oggetto GenericParameterHelper 'this'; + in caso contrario, false. + + + + Restituisce un codice hash per questo oggetto. + + Codice hash. + + + + Confronta i dati dei due oggetti . + + Oggetto con cui eseguire il confronto. + + Numero con segno che indica i valori relativi di questa istanza e di questo valore. + + + Thrown when the object passed in is not an instance of . + + + + + Restituisce un oggetto IEnumerator la cui lunghezza viene derivata dalla + proprietà Data. + + L'oggetto IEnumerator + + + + Restituisce un oggetto GenericParameterHelper uguale a + quello corrente. + + Oggetto clonato. + + + + Consente agli utenti di registrare/scrivere tracce degli unit test per la diagnostica. + + + + + Gestore per LogMessage. + + Messaggio da registrare. + + + + Evento di cui rimanere in ascolto. Generato quando il writer di unit test scrive alcuni messaggi. + Utilizzato principalmente dall'adattatore. + + + + + API del writer di test da chiamare per registrare i messaggi. + + Formato stringa con segnaposto. + Parametri per segnaposto. + + + + Attributo TestCategory; usato per specificare la categoria di uno unit test. + + + + + Inizializza una nuova istanza della classe e applica la categoria al test. + + + Categoria di test. + + + + + Ottiene le categorie di test applicate al test. + + + + + Classe di base per l'attributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inizializza una nuova istanza della classe . + Applica la categoria al test. Le stringhe restituite da TestCategories + vengono usate con il comando /category per filtrare i test + + + + + Ottiene la categoria di test applicata al test. + + + + + Classe AssertFailedException. Usata per indicare un errore per un test case + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Raccolta di classi helper per testare diverse condizioni + negli unit test. Se la condizione da testare non viene soddisfatta, + viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is false. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is true. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null. + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if refers to the same object + as . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is not equal to . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Genera un'eccezione AssertFailedException. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Gli overload di uguaglianza statici vengono usati per confrontare istanze di due tipi e stabilire se + i riferimenti sono uguali. Questo metodo non deve essere usato per il confronto di uguaglianza tra due + istanze. Questo oggetto verrà sempre generato con Assert.Fail. Usare + Assert.AreEqual e gli overload associati negli unit test. + + Oggetto A + Oggetto B + Sempre false. + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Sostituisce caratteri Null ('\0') con "\\0". + + + Stringa da cercare. + + + Stringa convertita con caratteri Null sostituiti da "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funzione helper che crea e genera un'eccezione AssertionFailedException + + + nome dell'asserzione che genera un'eccezione + + + messaggio che descrive le condizioni per l'errore di asserzione + + + Parametri. + + + + + Verifica la validità delle condizioni nel parametro + + + Parametro. + + + Nome dell'asserzione. + + + nome del parametro + + + messaggio per l'eccezione di parametro non valido + + + Parametri. + + + + + Converte in modo sicuro un oggetto in una stringa, gestendo valori e caratteri Null. + I valori Null vengono convertiti in "(null)". I caratteri Null vengono convertiti in "\\0". + + + Oggetto da convertire in una stringa. + + + Stringa convertita. + + + + + Asserzione della stringa. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if matches . + + + + + Raccolta di classi helper per testare diverse condizioni associate + alle raccolte negli unit test. Se la condizione da testare non viene + soddisfatta, viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if every element in is also found in + . + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Determina se la prima raccolta è un subset della seconda raccolta. + Se entrambi i set contengono elementi duplicati, il numero delle + occorrenze dell'elemento nel subset deve essere minore o uguale + a quello delle occorrenze nel superset. + + + Raccolta che il test presuppone debba essere contenuta in . + + + Raccolta che il test presuppone debba contenere . + + + True se è un subset di + ; in caso contrario, false. + + + + + Costruisce un dizionario contenente il numero di occorrenze di ogni + elemento nella raccolta specificata. + + + Raccolta da elaborare. + + + Numero di elementi Null presenti nella raccolta. + + + Dizionario contenente il numero di occorrenze di ogni elemento + nella raccolta specificata. + + + + + Trova un elemento senza corrispondenza tra le due raccolte. Per elemento + senza corrispondenza si intende un elemento che appare nella raccolta prevista + un numero di volte diverso rispetto alla raccolta effettiva. Si presuppone + che le raccolte siano riferimenti non Null diversi con lo stesso + numero di elementi. Il chiamante è responsabile di questo livello di + verifica. Se non ci sono elementi senza corrispondenza, la funzione + restituisce false e i parametri out non devono essere usati. + + + Prima raccolta da confrontare. + + + Seconda raccolta da confrontare. + + + Numero previsto di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Numero effettivo di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Elemento senza corrispondenza (può essere Null) o Null se non ci sono elementi + senza corrispondenza. + + + true se è stato trovato un elemento senza corrispondenza; in caso contrario, false. + + + + + confronta gli oggetti usando object.Equals + + + + + Classe di base per le eccezioni del framework. + + + + + Inizializza una nuova istanza della classe . + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via. + + + + + Restituisce l'istanza di ResourceManager nella cache usata da questa classe. + + + + + Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte + le ricerche di risorse eseguite usando questa classe di risorse fortemente tipizzata. + + + + + Cerca una stringa localizzata simile a La sintassi della stringa di accesso non è valida. + + + + + Cerca una stringa localizzata simile a La raccolta prevista contiene {1} occorrenza/e di <{2}>, mentre quella effettiva ne contiene {3}. {0}. + + + + + Cerca una stringa localizzata simile a È stato trovato un elemento duplicato:<{1}>. {0}. + + + + + Cerca una stringa localizzata simile a Il valore previsto è <{1}>, ma la combinazione di maiuscole/minuscole è diversa per il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza minore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1} ({2})>. Valore effettivo: <{3} ({4})>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza maggiore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È previsto un valore qualsiasi eccetto <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Non passare tipi valore a AreSame(). I valori convertiti in Object non saranno mai uguali. Usare AreEqual(). {0}. + + + + + Cerca una stringa localizzata simile a {0} non riuscita. {1}. + + + + + Cerca una stringa localizzata simile ad async TestMethod con UITestMethodAttribute non supportata. Rimuovere async o usare TestMethodAttribute. + + + + + Cerca una stringa localizzata simile a Le raccolte sono entrambe vuote. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. + + + + + Cerca una stringa localizzata simile a I riferimenti a raccolte puntano entrambi allo stesso oggetto Collection. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. {0}. + + + + + Cerca una stringa localizzata simile a {0}({1}). + + + + + Cerca una stringa localizzata simile a (Null). + + + + + Cerca una stringa localizzata simile a (oggetto). + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non contiene la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a {0} ({1}). + + + + + Cerca una stringa localizzata simile a Per le asserzioni non usare Assert.Equals, ma preferire Assert.AreEqual e gli overload. + + + + + Cerca una stringa localizzata simile a Il numero di elementi nelle raccolte non corrisponde. Valore previsto: <{1}>. Valore effettivo: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {0} non corrisponde. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} non è del tipo previsto. Tipo previsto: <{2}>. Tipo effettivo: <{3}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} è (Null). Tipo previsto: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non termina con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Argomento non valido: EqualsTester non può usare valori Null. + + + + + Cerca una stringa localizzata simile a Non è possibile convertire un oggetto di tipo {0} in {1}. + + + + + Cerca una stringa localizzata simile a L'oggetto interno a cui si fa riferimento non è più valido. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. {1}. + + + + + Cerca una stringa localizzata simile a Il tipo della proprietà {0} è {1}, ma quello previsto è {2}. + + + + + Cerca una stringa localizzata simile a Tipo previsto di {0}: <{1}>. Tipo effettivo: <{2}>. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Tipo errato: <{1}>. Tipo effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Non è stato specificato alcun elemento DataRowAttribute. Con DataTestMethodAttribute è necessario almeno un elemento DataRowAttribute. + + + + + Cerca una stringa localizzata simile a Non è stata generata alcuna eccezione. Era prevista un'eccezione {1}. {0}. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. Il valore non può essere Null. {1}. + + + + + Cerca una stringa localizzata simile a Il numero di elementi è diverso. + + + + + Cerca una stringa localizzata simile a + Il costruttore con la firma specificata non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a + Il membro specificato ({0}) non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non inizia con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Il tipo di eccezione previsto deve essere System.Exception o un tipo derivato da System.Exception. + + + + + Cerca una stringa localizzata simile a Non è stato possibile ottenere il messaggio per un'eccezione di tipo {0} a causa di un'eccezione. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato l'eccezione prevista {0}. {1}. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato un'eccezione. È prevista un'eccezione dall'attributo {0} definito nel metodo di test. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1}. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1} o un tipo derivato da essa. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a È stata generata l'eccezione {2}, ma era prevista un'eccezione {1}. {0} + Messaggio dell'eccezione: {3} + Analisi dello stack: {4}. + + + + + risultati degli unit test + + + + + Il test è stato eseguito, ma si sono verificati errori. + Gli errori possono implicare eccezioni o asserzioni non riuscite. + + + + + Il test è stato completato, ma non è possibile determinare se è stato o meno superato. + Può essere usato per test interrotti. + + + + + Il test è stato eseguito senza problemi. + + + + + Il test è attualmente in corso. + + + + + Si è verificato un errore di sistema durante il tentativo di eseguire un test. + + + + + Timeout del test. + + + + + Il test è stato interrotto dall'utente. + + + + + Il test si trova in uno stato sconosciuto + + + + + Fornisce la funzionalità di helper per il framework degli unit test + + + + + Ottiene i messaggi di eccezione in modo ricorsivo, inclusi quelli relativi a + tutte le eccezioni interne + + Eccezione per cui ottenere i messaggi + stringa con le informazioni sul messaggio di errore + + + + Enumerazione per i timeout, che può essere usata con la classe . + Il tipo dell'enumerazione deve corrispondere + + + + + Valore infinito. + + + + + Attributo della classe di test. + + + + + Ottiene un attributo di metodo di test che consente di eseguire questo test. + + Istanza di attributo del metodo di test definita in questo metodo. + Oggetto da usare per eseguire questo test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attributo del metodo di test. + + + + + Esegue un metodo di test. + + Metodo di test da eseguire. + Matrice di oggetti TestResult che rappresentano il risultato o i risultati del test. + Extensions can override this method to customize running a TestMethod. + + + + Attributo di inizializzazione test. + + + + + Attributo di pulizia dei test. + + + + + Attributo ignore. + + + + + Attributo della proprietà di test. + + + + + Inizializza una nuova istanza della classe . + + + Nome. + + + Valore. + + + + + Ottiene il nome. + + + + + Ottiene il valore. + + + + + Attributo di inizializzazione classi. + + + + + Attributo di pulizia delle classi. + + + + + Attributo di inizializzazione assembly. + + + + + Attributo di pulizia degli assembly. + + + + + Proprietario del test + + + + + Inizializza una nuova istanza della classe . + + + Proprietario. + + + + + Ottiene il proprietario. + + + + + Attributo Priority; usato per specificare la priorità di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Priorità. + + + + + Ottiene la priorità. + + + + + Descrizione del test + + + + + Inizializza una nuova istanza della classe per descrivere un test. + + Descrizione. + + + + Ottiene la descrizione di un test. + + + + + URI della struttura di progetto CSS + + + + + Inizializza una nuova istanza della classe per l'URI della struttura di progetto CSS. + + URI della struttura di progetto CSS. + + + + Ottiene l'URI della struttura di progetto CSS. + + + + + URI dell'iterazione CSS + + + + + Inizializza una nuova istanza della classe per l'URI dell'iterazione CSS. + + URI dell'iterazione CSS. + + + + Ottiene l'URI dell'iterazione CSS. + + + + + Attributo WorkItem; usato per specificare un elemento di lavoro associato a questo test. + + + + + Inizializza una nuova istanza della classe per l'attributo WorkItem. + + ID di un elemento di lavoro. + + + + Ottiene l'ID di un elemento di lavoro associato. + + + + + Attributo Timeout; usato per specificare il timeout di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Timeout. + + + + + Inizializza una nuova istanza della classe con un timeout preimpostato + + + Timeout + + + + + Ottiene il timeout. + + + + + Oggetto TestResult da restituire all'adattatore. + + + + + Inizializza una nuova istanza della classe . + + + + + Ottiene o imposta il nome visualizzato del risultato. Utile quando vengono restituiti più risultati. + Se è Null, come nome visualizzato viene usato il nome del metodo. + + + + + Ottiene o imposta il risultato dell'esecuzione dei test. + + + + + Ottiene o imposta l'eccezione generata quando il test non viene superato. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta le tracce di debug in base al codice del test. + + + + + Gets or sets the debug traces by test code. + + + + + Ottiene o imposta la durata dell'esecuzione dei test. + + + + + Ottiene o imposta l'indice della riga di dati nell'origine dati. Impostare solo per risultati di singole + esecuzioni della riga di dati di un test basato sui dati. + + + + + Ottiene o imposta il valore restituito del metodo di test. Attualmente è sempre Null. + + + + + Ottiene o imposta i file di risultati allegati dal test. + + + + + Specifica la stringa di connessione, il nome tabella e il metodo di accesso alle righe per test basati sui dati. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nome del provider predefinito per DataSource. + + + + + Metodo predefinito di accesso ai dati. + + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati, la stringa di connessione, la tabella dati e il metodo di accesso ai dati per accedere all'origine dati. + + Nome del provider di dati non dipendente da paese/area geografica, ad esempio System.Data.SqlClient + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + Specifica l'ordine per l'accesso ai dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con una stringa di connessione e un nome tabella. + Specificare la stringa di connessione e la tabella dati per accedere all'origine dati OLEDB. + + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati e la stringa di connessione associata al nome dell'impostazione. + + Nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + Ottiene un valore che rappresenta il provider di dati dell'origine dati. + + + Nome del provider di dati. Se non è stato designato un provider di dati durante l'inizializzazione dell'oggetto, verrà restituito il provider predefinito di System.Data.OleDb. + + + + + Ottiene un valore che rappresenta la stringa di connessione per l'origine dati. + + + + + Ottiene un valore che indica il nome della tabella che fornisce i dati. + + + + + Ottiene il metodo usato per accedere all'origine dati. + + + + Uno dei valori di . Se non è inizializzato, restituirà il valore predefinito . + + + + + Ottiene il nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + + Attributo per il test basato sui dati in cui è possibile specificare i dati inline. + + + + + Trova tutte le righe di dati e le esegue. + + + Metodo di test. + + + Matrice di istanze di . + + + + + Esegue il metodo di test basato sui dati. + + Metodo di test da eseguire. + Riga di dati. + Risultati dell'esecuzione. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..629a4bc --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + テスト配置ごとに配置項目 (ファイルまたはディレクトリ) を指定するために使用されます。 + テスト クラスまたはテスト メソッドで指定できます。 + 属性に複数のインスタンスを指定して、2 つ以上の項目を指定することができます。 + 項目のパスには絶対パスまたは相対パスを指定できます。相対パスの場合は、RunConfig.RelativePathRoot からの相対パスです。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + クラスの新しいインスタンスを初期化します。 + + 配置するファイルまたはディレクトリ。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + + + + クラスの新しいインスタンスを初期化する + + 配置するファイルまたはディレクトリへの相対パスまたは絶対パス。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + アイテムのコピー先のディレクトリのパス。配置ディレクトリへの絶対パスまたは相対パスのいずれかを指定できます。次で識別されるすべてのファイルとディレクトリは このディレクトリにコピーされます。 + + + + コピーするソース ファイルまたはフォルダーのパスを取得します。 + + + + + 項目のコピー先のディレクトリのパスを取得します。 + + + + + セクション、プロパティ、属性の名前のリテラルが含まれています。 + + + + + 構成セクション名。 + + + + + Beta2 の構成セクション名。互換性のために残されています。 + + + + + データ ソースのセクション名。 + + + + + 'Name' の属性名 + + + + + 'ConnectionString' の属性名 + + + + + 'DataAccessMethod' の属性名 + + + + + 'DataTable' の属性名 + + + + + データ ソース要素。 + + + + + この構成の名前を取得または設定します。 + + + + + .config ファイルの <connectionStrings> セクションの ConnectionStringSettings 要素を取得または設定します。 + + + + + データ テーブルの名前を取得または設定します。 + + + + + データ アクセスの種類を取得または設定します。 + + + + + キー名を取得します。 + + + + + 構成プロパティを取得します。 + + + + + データ ソース要素コレクション。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + 指定したキーを含む構成要素を返します。 + + 返される要素のキー。 + 指定したキーを持つ System.Configuration.ConfigurationElement。それ以外の場合は、null。 + + + + 指定したインデックスの場所の構成要素を取得します。 + + 返される System.Configuration.ConfigurationElement のインデックスの場所。 + + + + 構成要素を構成要素コレクションに追加します。 + + 追加する System.Configuration.ConfigurationElement。 + + + + コレクションから System.Configuration.ConfigurationElement を削除します。 + + 。 + + + + コレクションから System.Configuration.ConfigurationElement を削除します。 + + 削除する System.Configuration.ConfigurationElement のキー。 + + + + コレクションからすべての構成要素オブジェクトを削除します。 + + + + + 新しい を作成します。 + + 新しい + + + + 指定した構成要素の要素キーを取得します。 + + キーを返す対象の System.Configuration.ConfigurationElement。 + 指定した System.Configuration.ConfigurationElement のキーとして機能する System.Object。 + + + + 構成要素を構成要素コレクションに追加します。 + + 追加する System.Configuration.ConfigurationElement。 + + + + 構成要素を構成要素コレクションに追加します。 + + 指定した System.Configuration.ConfigurationElement を追加するインデックスの場所。 + 追加する System.Configuration.ConfigurationElement。 + + + + テストの構成設定のサポート。 + + + + + テスト用の構成セクションを取得します。 + + + + + テスト用の構成セクション。 + + + + + この構成セクションのデータ ソースを取得します。 + + + + + プロパティのコレクションを取得します。 + + + その (要素のプロパティ)。 + + + + + このクラスは、システム内のパブリックでないライブ内部オブジェクトを表します + + + + + プライベート クラスの既存のオブジェクトを含んでいる + クラスの新しいインスタンスを初期化します + + プライベート メンバーに到達するための開始点となるオブジェクト + m_X.m_Y.m_Z として取得するオブジェクトを指し示す "." を使用する逆参照文字列 + + + + 指定された型をラップする クラスの新しいインスタンスを + 初期化します。 + + アセンブリの名前 + 完全修飾名 + コンストラクターに渡す引数 + + + + 指定された型をラップする クラスの新しいインスタンスを + 初期化します。 + + アセンブリの名前 + 完全修飾名 + 配列: 取得するコンストラクターのパラメーターの数、順番、型を表すオブジェクト + コンストラクターに渡す引数 + + + + 指定された型をラップする クラスの新しいインスタンスを + 初期化します。 + + 作成するオブジェクトの型 + コンストラクターに渡す引数 + + + + 指定された型をラップする クラスの新しいインスタンスを + 初期化します。 + + 作成するオブジェクトの型 + 配列: 取得するコンストラクターのパラメーターの数、順番、型を表すオブジェクト + コンストラクターに渡す引数 + + + + 指定されたオブジェクトをラップする クラスの新しいインスタンスを + 初期化します。 + + ラップするオブジェクト + + + + 指定されたオブジェクトをラップする クラスの新しいインスタンスを + 初期化します。 + + ラップするオブジェクト + PrivateType オブジェクト + + + + ターゲットを取得または設定します + + + + + 基になるオブジェクトの型を取得します + + + + + 対象オブジェクトのハッシュ コードを返す + + 対象オブジェクトのハッシュコードを表す int + + + + 次の値と等しい + + 比較対象のオブジェクト + オブジェクトが等しい場合は True を返します。 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 呼び出すメンバーに渡す引数。 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + ジェネリック引数の型に対応する型の配列。 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 呼び出すメンバーに渡す引数。 + カルチャ情報 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + カルチャ情報 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 呼び出すメンバーに渡す引数。 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 呼び出すメンバーに渡す引数。 + カルチャ情報 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + カルチャ情報 + メソッド呼び出しの結果 + + + + 指定されたメソッドを呼び出す + + メソッドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 配列: 取得するメソッドのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + カルチャ情報 + ジェネリック引数の型に対応する型の配列。 + メソッド呼び出しの結果 + + + + 各ディメンションに下付き文字の配列を使用して配列要素を取得する + + メンバーの名前 + 配列のインデックス + 要素の配列。 + + + + 各ディメンションに下付き文字の配列を使用して配列要素を設定する + + メンバーの名前 + 設定する値 + 配列のインデックス + + + + 各ディメンションに下付き文字の配列を使用して配列要素を取得する + + メンバーの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 配列のインデックス + 要素の配列。 + + + + 各ディメンションに下付き文字の配列を使用して配列要素を設定する + + メンバーの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 設定する値 + 配列のインデックス + + + + フィールドを取得する + + フィールドの名前 + フィールド。 + + + + フィールドを設定する + + フィールドの名前 + 設定する値 + + + + フィールドを取得する + + フィールドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + フィールド。 + + + + フィールドを設定する + + フィールドの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 設定する値 + + + + フィールドまたはプロパティを取得する + + フィールドまたはプロパティの名前 + フィールドまたはプロパティ。 + + + + フィールドまたはプロパティを設定する + + フィールドまたはプロパティの名前 + 設定する値 + + + + フィールドまたはプロパティを取得する + + フィールドまたはプロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + フィールドまたはプロパティ。 + + + + フィールドまたはプロパティを設定する + + フィールドまたはプロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 設定する値 + + + + プロパティを取得する + + プロパティの名前 + 呼び出すメンバーに渡す引数。 + プロパティ。 + + + + プロパティを取得する + + プロパティの名前 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + プロパティ。 + + + + プロパティを設定する + + プロパティの名前 + 設定する値 + 呼び出すメンバーに渡す引数。 + + + + プロパティを設定する + + プロパティの名前 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 設定する値 + 呼び出すメンバーに渡す引数。 + + + + プロパティを取得する + + プロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 呼び出すメンバーに渡す引数。 + プロパティ。 + + + + プロパティを取得する + + プロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + プロパティ。 + + + + プロパティを設定する + + プロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 設定する値 + 呼び出すメンバーに渡す引数。 + + + + プロパティを設定する + + プロパティの名前 + 1 つまたは複数の以下のもので構成されるビットマスク 検索の実行方法を指定します。 + 設定する値 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + + + + アクセス文字列を検証する + + アクセス文字列 + + + + メンバーを呼び出す + + メンバーの名前 + 追加の属性 + 呼び出しの引数 + カルチャ + 呼び出しの結果 + + + + 現在のプライベート型から最も適切なジェネリック メソッド シグネチャを抽出します。 + + シグネチャ キャッシュを検索するメソッドの名前。 + 検索対象のパラメーターの型に対応する型の配列。 + ジェネリック引数の型に対応する型の配列。 + メソッド シグネチャをさらにフィルターするため。 + パラメーターの修飾子。 + Methodinfo インスタンス。 + + + + このクラスは、プライベート アクセサー機能のプライベート クラスを表します。 + + + + + すべてにバインドする + + + + + ラップされた型。 + + + + + プライベート型を含む クラスの新しいインスタンスを初期化します。 + + アセンブリ名 + 完全修飾名: + + + + Initializes a new instance of the class that contains + the private type from the type object + + 作成するラップされた型。 + + + + 参照型を取得する + + + + + 静的メンバーを呼び出す + + InvokeHelper に対するメンバーの名前 + 呼び出しに対する引数 + 呼び出しの結果 + + + + 静的メンバーを呼び出す + + InvokeHelper に対するメンバーの名前 + 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + 呼び出しの結果 + + + + 静的メンバーを呼び出す + + InvokeHelper に対するメンバーの名前 + 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + ジェネリック引数の型に対応する型の配列。 + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 呼び出しに対する引数 + カルチャ + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + カルチャ情報 + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + 呼び出しに対する引数 + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + 呼び出しに対する引数 + カルチャ + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + /// 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + カルチャ + 呼び出しの結果 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + /// 配列: 呼び出すメソッドのパラメーターの数値、順序、および型を表すオブジェクト + 呼び出しに対する引数 + カルチャ + ジェネリック引数の型に対応する型の配列。 + 呼び出しの結果 + + + + 静的配列内の要素を取得する + + 配列の名前 + + 取得する要素の位置を指定するインデックスを表す 32 ビット整数 + の 1 次元配列。たとえば、[10][11] にアクセスする場合には、インデックスは {10,11} になります + + 指定した場所の要素 + + + + 静的配列のメンバーを設定する + + 配列の名前 + 設定する値 + + 設定する要素の位置を指定するインデックスを表す 32 ビット整数 + の 1 次元配列。たとえば、[10][11] にアクセスする場合には、配列は {10,11} になります + + + + + 静的配列の要素を取得します + + 配列の名前 + 追加の InvokeHelper 属性 + + 取得する要素の位置を指定するインデックスを表す 32 ビット整数 + の 1 次元配列。たとえば、[10][11] にアクセスする場合には、配列は {10,11} になります + + 指定した場所の要素 + + + + 静的配列のメンバーを設定する + + 配列の名前 + 追加の InvokeHelper 属性 + 設定する値 + + 設定する要素の位置を指定するインデックスを表す 32 ビット整数 + の 1 次元配列。たとえば、[10][11] にアクセスする場合には、配列は {10,11} になります + + + + + 静的フィールドを取得する + + フィールドの名前 + 静的フィールド。 + + + + 静的フィールドを設定する + + フィールドの名前 + 呼び出しに対する引数 + + + + 指定した InvokeHelper 属性を使用して静的フィールドを取得する + + フィールドの名前 + 追加の呼び出し属性 + 静的フィールド。 + + + + バインド属性を使用して静的フィールドを設定する + + フィールドの名前 + 追加の InvokeHelper 属性 + 呼び出しに対する引数 + + + + 静的フィールドまたは静的プロパティを取得する + + フィールドまたはプロパティの名前 + 静的フィールドまたはプロパティ。 + + + + 静的フィールドまたは静的プロパティを設定する + + フィールドまたはプロパティの名前 + フィールドまたはプロパティに設定する値 + + + + 指定した InvokeHelper 属性を使用して、静的フィールドまたは静的プロパティを取得する + + フィールドまたはプロパティの名前 + 追加の呼び出し属性 + 静的フィールドまたはプロパティ。 + + + + バインド属性を使用して、静的フィールドまたは静的プロパティを設定する + + フィールドまたはプロパティの名前 + 追加の呼び出し属性 + フィールドまたはプロパティに設定する値 + + + + 静的プロパティを取得する + + フィールドまたはプロパティの名前 + 呼び出しに対する引数 + 静的プロパティ。 + + + + 静的プロパティを設定する + + プロパティの名前 + フィールドまたはプロパティに設定する値 + 呼び出すメンバーに渡す引数。 + + + + 静的プロパティを設定する + + プロパティの名前 + フィールドまたはプロパティに設定する値 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + + + + 静的プロパティを取得する + + プロパティの名前 + 追加の呼び出し属性。 + 呼び出すメンバーに渡す引数。 + 静的プロパティ。 + + + + 静的プロパティを取得する + + プロパティの名前 + 追加の呼び出し属性。 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + 静的プロパティ。 + + + + 静的プロパティを設定する + + プロパティの名前 + 追加の呼び出し属性。 + フィールドまたはプロパティに設定する値 + インデックス付きプロパティのオプションのインデックス値。インデックス付きプロパティのインデックスは 0 から始まります。インデックスのないプロパティについては、この値は null である必要があります。 + + + + 静的プロパティを設定する + + プロパティの名前 + 追加の呼び出し属性。 + フィールドまたはプロパティに設定する値 + 配列: インデックス付きプロパティのパラメーターの数、順番、型を表すオブジェクト。 + 呼び出すメンバーに渡す引数。 + + + + 静的メソッドを呼び出す + + メンバーの名前 + 追加の呼び出し属性 + 呼び出しに対する引数 + カルチャ + 呼び出しの結果 + + + + ジェネリック メソッドのメソッド シグネチャを検出します。 + + + + + これらの 2 つのメソッドのメソッド シグネチャを比較します。 + + Method1 + Method2 + 類似している場合は True。 + + + + 指定した型の基本データ型から階層の深さを取得します。 + + 型。 + 深さ。 + + + + 指定された情報を使用して最派生型を検索します。 + + 候補の一致。 + 一致の数。 + 最派生メソッド。 + + + + 基本条件に一致するメソッドのセットを指定して、型の配列に + 基づいてメソッドを選択します。条件に + 一致するメソッドがない場合、このメソッドは null を返します。 + + バインドの指定。 + 候補の一致 + 型 + パラメーター修飾子。 + 一致するメソッド。一致が見つからない場合は null。 + + + + 指定されている 2 つのメソッドのうち、より特定性の高いメソッドを判別します。 + + メソッド 1 + メソッド 1 のパラメーターの順序 + パラメーターの配列型。 + メソッド 2 + メソッド 2 のパラメーターの順序 + >パラメーターの配列型。 + 検索する型。 + 引数。 + 一致を表す int。 + + + + 指定されている 2 つのメソッドのうち、より特定性の高いメソッドを判別します。 + + メソッド 1 + メソッド 1 のパラメーターの順序 + パラメーターの配列型。 + メソッド 2 + メソッド 2 のパラメーターの順序 + >パラメーターの配列型。 + 検索する型。 + 引数。 + 一致を表す int。 + + + + 指定されている 2 つのうち、より特定性の高い型を判別します。 + + 型 1 + 型 2 + 定義する型 + 一致を表す int。 + + + + 単体テストに提供される情報を保存するために使用されます。 + + + + + テストのテスト プロパティを取得します。 + + + + + テストがデータ ドリブン テストで使用されるときに現在のデータ行を取得します。 + + + + + テストがデータ ドリブン テストで使用されるときに現在のデータ接続行を取得します。 + + + + + テストの実行の基本ディレクトリを取得します。配置されたファイルと結果ファイルはそのディレクトリに格納されます。 + + + + + テストの実行のために配置されたファイルのディレクトリを取得します。通常は、 のサブディレクトリです。 + + + + + テストの実行の結果の基本ディレクトリを取得します。通常は、 のサブディレクトリです。 + + + + + テストの実行の結果ファイル用のディレクトリを取得します。通常は、 のサブディレクトリです。 + + + + + テスト結果ファイルのディレクトリを取得します。 + + + + + テストの実行の基本ディレクトリを取得します。配置されたファイルと結果ファイルはそのディレクトリに格納されます。 + と同じであり、代わりにそのプロパティをご使用ください。 + + + + + テストの実行のために配置されたファイルのディレクトリを取得します。通常は、 のサブディレクトリです。 + と同じであり、代わりにそのプロパティをご使用ください。 + + + + + テストの実行の結果ファイル用のディレクトリを取得します。通常は、 のサブディレクトリです。 + と同じであり、テストの実行の結果ファイルのそのプロパティを使用するか、 + その代わりにテスト固有の結果ファイルの をご使用ください。 + + + + + 現在実行されているテスト メソッドを含むクラスの完全修飾名を取得します + + + + + 現在実行中のテスト メソッドの名前を取得します + + + + + 現在のテスト成果を取得します。 + + + + + テストの実行中にトレース メッセージを書き込むために使用されます + + 書式設定されたメッセージ文字列 + + + + テストの実行中にトレース メッセージを書き込むために使用されます + + 書式設定文字列 + 引数 + + + + TestResult.ResultFileNames の一覧にファイル名を追加する + + + ファイル名。 + + + + + 指定した名前のタイマーを開始する + + タイマーの名前。 + + + + 指定した名前のタイマーを終了する + + タイマーの名前。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..922b5b1 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 実行用の TestMethod。 + + + + + テスト メソッドの名前を取得します。 + + + + + テスト クラスの名前を取得します。 + + + + + テスト メソッドの戻り値の型を取得します。 + + + + + テスト メソッドのパラメーターを取得します。 + + + + + テスト メソッドの methodInfo を取得します。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + テスト メソッドを呼び出します。 + + + テスト メソッドに渡す引数。(データ ドリブンの場合など) + + + テスト メソッド呼び出しの結果。 + + + This call handles asynchronous test methods as well. + + + + + テスト メソッドのすべての属性を取得します。 + + + 親クラスで定義されている属性が有効かどうか。 + + + すべての属性。 + + + + + 特定の型の属性を取得します。 + + System.Attribute type. + + 親クラスで定義されている属性が有効かどうか。 + + + 指定した種類の属性。 + + + + + ヘルパー。 + + + + + null でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws argument null exception when parameter is null. + + + + null または空でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws ArgumentException when parameter is null. + + + + データ ドリブン テストのデータ行にアクセスする方法の列挙型。 + + + + + 行は順番に返されます。 + + + + + 行はランダムに返されます。 + + + + + テスト メソッドのインライン データを定義する属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + + + + 引数の配列を受け入れる クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + 追加のデータ。 + + + + テスト メソッドを呼び出すデータを取得します。 + + + + + カスタマイズするために、テスト結果の表示名を取得または設定します。 + + + + + assert inconclusive 例外。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + InternalTestFailureException クラス。テスト ケースの内部エラーを示すために使用されます + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 指定した型の例外を予期するよう指定する属性 + + + + + 予期される型を指定して、 クラスの新しいインスタンスを初期化する + + 予期される例外の型 + + + + 予期される型と、テストで例外がスローされない場合に含めるメッセージとを指定して + クラスの新しいインスタンスを初期化します。 + + 予期される例外の型 + + 例外がスローされなかったことが原因でテストが失敗した場合に、テスト結果に含まれるメッセージ + + + + + 予期される例外の型を示す値を取得する + + + + + 予期される例外の型から派生した型を予期される型として使用できるかどうかを示す値を + 取得または設定する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 単体テストでスローされる例外の型が予期される型であることを検証する + + 単体テストでスローされる例外 + + + + 単体テストからの例外を予期するように指定する属性の基底クラス + + + + + 既定の例外なしメッセージを指定して クラスの新しいインスタンスを初期化する + + + + + 例外なしメッセージを指定して クラスの新しいインスタンスを初期化します + + + 例外がスローされなかったことが原因でテストが失敗した場合に、 + テスト結果に含まれるメッセージ + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 既定の例外なしメッセージを取得する + + ExpectedException 属性の型名 + 既定の例外なしメッセージ + + + + 例外が予期されているかどうかを判断します。メソッドが戻る場合は、 + 例外が予期されていたと解釈されます。メソッドが例外をスローする場合は、 + 例外が予期されていなかったと解釈され、スローされた例外のメッセージが + テスト結果に含められます。便宜上、 クラスを使用できます。 + が使用され、アサーションが失敗すると、 + テスト成果は [結果不確定] に設定されます。 + + 単体テストでスローされる例外 + + + + AssertFailedException または AssertInconclusiveException である場合に、例外を再スローする + + アサーション例外である場合に再スローされる例外 + + + + このクラスは、ジェネリック型を使用する型の単体テストを実行するユーザーを支援するように設計されています。 + GenericParameterHelper は、次のようないくつかの共通ジェネリック型制約を + 満たしています: + 1. パブリックの既定のコンストラクター + 2. 共通インターフェイスを実装します: IComparable、IEnumerable + + + + + C# ジェネリックの 'newable' 制約を満たす + クラスの新しいインスタンスを初期化します。 + + + This constructor initializes the Data property to a random value. + + + + + Data プロパティをユーザー指定の値に初期化する クラスの + 新しいインスタンスを初期化します。 + + 任意の整数値 + + + + データを取得または設定する + + + + + 2 つの GenericParameterHelper オブジェクトの値の比較を実行する + + 次との比較を実行するオブジェクト + オブジェクトの値が 'this' GenericParameterHelper オブジェクトと同じ値である場合は true。 + それ以外の場合は、false。 + + + + このオブジェクトのハッシュコードを返します。 + + ハッシュ コード。 + + + + 2 つの オブジェクトのデータを比較します。 + + 比較対象のオブジェクト。 + + このインスタンスと値の相対値を示す符号付きの数値。 + + + Thrown when the object passed in is not an instance of . + + + + + 長さが Data プロパティから派生している IEnumerator オブジェクト + を返します。 + + IEnumerator オブジェクト + + + + 現在のオブジェクトに相当する GenericParameterHelper + オブジェクトを返します。 + + 複製されたオブジェクト。 + + + + ユーザーが診断用に単体テストからトレースをログ記録/書き込みできるようにします。 + + + + + LogMessage のハンドラー。 + + ログに記録するメッセージ。 + + + + リッスンするイベント。単体テスト ライターがメッセージを書き込むときに発生します。 + 主にアダプターによって消費されます。 + + + + + テスト ライターがメッセージをログ記録するために呼び出す API。 + + プレースホルダーを含む文字列形式。 + プレースホルダーのパラメーター。 + + + + TestCategory 属性。単体テストのカテゴリを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化し、カテゴリをテストに適用します。 + + + テスト カテゴリ。 + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + "Category" 属性の基底クラス + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + クラスの新しいインスタンスを初期化します。 + カテゴリをテストに適用します。TestCategories で返される文字列は + テストをフィルター処理する /category コマンドで使用されます + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + AssertFailedException クラス。テスト ケースのエラーを示すために使用されます + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 単体テスト内のさまざまな条件をテストするヘルパー クラスの + コレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + Assert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is false. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is true. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null. + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not refer to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if refers to the same object + as . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is not equal to . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException をスローします。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + 静的な Equals オーバーロードは、2 つの型のインスタンスを比較して参照の等価性を調べる + ために使用されます。2 つのインスタンスを比較して等価性を調べるためにこのメソッドを使用 + することはできません。このオブジェクトは常に Assert.Fail を使用してスロー + します。単体テストでは、Assert.AreEqual および関連するオーバーロードをご使用ください。 + + オブジェクト A + オブジェクト B + 常に false。 + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + null 文字 ('\0') を "\\0" に置き換えます。 + + + 検索する文字列。 + + + "\\0" で置き換えられた null 文字を含む変換された文字列。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException を作成して、スローするヘルパー関数 + + + 例外をスローするアサーションの名前 + + + アサーション エラーの条件を記述するメッセージ + + + パラメーター。 + + + + + 有効な条件であるかパラメーターを確認します + + + パラメーター。 + + + アサーション名。 + + + パラメーター名 + + + 無効なパラメーター例外のメッセージ + + + パラメーター。 + + + + + 安全にオブジェクトを文字列に変換し、null 値と null 文字を処理します。 + null 値は "(null)" に変換されます。null 文字は "\\0" に変換されます。 + + + 文字列に変換するオブジェクト。 + + + 変換された文字列。 + + + + + 文字列のアサート。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if matches . + + + + + 単体テスト内のコレクションと関連付けられている + さまざまな条件をテストするヘルパー クラスのコレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is found in + . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a two or more equal elements are found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if every element in is also found in + . + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 最初のコレクションが 2 番目のコレクションのサブセットであるかどうかを + 決定します。いずれかのセットに重複する要素が含まれている場合は、 + サブセット内の要素の出現回数は + スーパーセット内の出現回数以下である必要があります。 + + + テストで次に含まれると予期されるコレクション 。 + + + テストで次を含むと予期されるコレクション 。 + + + 次の場合は true 次のサブセットの場合 + 、それ以外の場合は false。 + + + + + 指定したコレクションの各要素の出現回数を含む + 辞書を構築します。 + + + 処理するコレクション。 + + + コレクション内の null 要素の数。 + + + 指定したコレクション内の各要素の + 出現回数を含むディレクトリ。 + + + + + 2 つのコレクション間で一致しない要素を検索します。 + 一致しない要素とは、予期されるコレクションでの出現回数が + 実際のコレクションでの出現回数と異なる要素のことです。 + コレクションは、同じ数の要素を持つ、null ではない + さまざまな参照と見なされます。このレベルの検証を行う責任は + 呼び出し側にあります。一致しない要素がない場合、 + 関数は false を返し、out パラメーターは使用されません。 + + + 比較する最初のコレクション。 + + + 比較する 2 番目のコレクション。 + + + 次の予期される発生回数 + または一致しない要素がない場合は + 0 です。 + + + 次の実際の発生回数 + または一致しない要素がない場合は + 0 です。 + + + 一致しない要素 (null の場合があります)、または一致しない要素がない場合は + null です。 + + + 一致しない要素が見つかった場合は true、それ以外の場合は false。 + + + + + object.Equals を使用してオブジェクトを比較する + + + + + フレームワーク例外の基底クラス。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + ローカライズされた文字列などを検索するための、厳密に型指定されたリソース クラス。 + + + + + このクラスで使用されているキャッシュされた ResourceManager インスタンスを返します。 + + + + + 厳密に型指定されたこのリソース クラスを使用して、現在のスレッドの + CurrentUICulture プロパティをすべてのリソース ルックアップで無視します。 + + + + + "アクセス文字列は無効な構文を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "予期されたコレクションでは、<{2}> が {1} 回発生します。実際のコレクションでは、{3} 回発生します。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "重複する項目が見つかりました:<{1}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要です。実際の値: <{2}> では大文字と小文字が異なります。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> 以内の差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1} ({2})> が必要ですが、<{3} ({4})> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要ですが、<{2}> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> を超える差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> 以外の任意の値が必要ですが、<{2}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "AreSame() に値型を渡すことはできません。オブジェクトに変換された値は同じになりません。AreEqual() を使用することを検討してください。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0} に失敗しました。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "UITestMethodAttribute が指定された非同期の TestMethod はサポートされていません。非同期を削除するか、TestMethodAttribute を使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが空です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションの参照が、同じコレクション オブジェクトにポイントしています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0}({1})" に類似したローカライズされた文字列を検索します。 + + + + + "(null)" に類似したローカライズされた文字列を検索します。 + + + + + Looks up a localized string similar to (object). + + + + + "文字列 '{0}' は文字列 '{1}' を含んでいません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} ({1})" に類似したローカライズされた文字列を検索します。 + + + + + "アサーションには Assert.Equals を使用せずに、Assert.AreEqual とオーバーロードを使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "コレクション内の要素数が一致しません。<{1}> が必要ですが <{2}> が指定されています。{0}。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {0} の要素が一致しません。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は、必要な型ではありません。<{2}> が必要ですが、<{3}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は null です。必要な型:<{2}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は文字列 '{1}' で終わりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "無効な引数 - EqualsTester は null を使用することはできません。" に類似したローカライズされた文字列を検索します。 + + + + + "型 {0} のオブジェクトを {1} に変換できません。" に類似したローカライズされた文字列を検索します。 + + + + + "参照された内部オブジェクトは、現在有効ではありません。" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "プロパティ {0} は型 {1} を含んでいますが、型 {2} が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} には型 <{1}> が必要ですが、型 <{2}> が指定されました。" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は、パターン '{1}' と一致しません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "正しくない型は <{1}> であり、実際の型は <{2}> です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' はパターン '{1}' と一致します。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "DataRowAttribute が指定されていません。DataTestMethodAttribute では少なくとも 1 つの DataRowAttribute が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "例外がスローされませんでした。{1} の例外が予期されていました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。値を null にすることはできません。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "要素数が異なります。" に類似したローカライズされた文字列を検索します。 + + + + + "指定されたシグネチャを使用するコンストラクターが見つかりませんでした。 + プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + PrivateObject のコンストラクターに定義する型を渡す必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + + "指定されたメンバー ({0}) が見つかりませんでした。プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + 定義する型を PrivateObject のコンストラクターに渡す必要があります。" + に類似したローカライズされた文字列を検索します。 + + + + + + "文字列 '{0}' は文字列 '{1}' で始まりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "予期される例外の型は System.Exception または System.Exception の派生型である必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + "(例外が発生したため、型 {0} の例外のメッセージを取得できませんでした。)" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは予期された例外 {0} をスローしませんでした。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは例外をスローしませんでした。テスト メソッドで定義されている属性 {0} で例外が予期されていました。" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} またはその派生型が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "例外 {2} がスローされましたが、例外 {1} が予期されていました。{0} + 例外メッセージ: {3} + スタック トレース: {4}" に類似したローカライズされた文字列を検索します。 + + + + + 単体テストの成果 + + + + + テストを実行しましたが、問題が発生しました。 + 問題には例外または失敗したアサーションが関係している可能性があります。 + + + + + テストが完了しましたが、成功したか失敗したかは不明です。 + 中止したテストに使用される場合があります。 + + + + + 問題なくテストが実行されました。 + + + + + 現在テストを実行しています。 + + + + + テストを実行しようとしているときにシステム エラーが発生しました。 + + + + + テストがタイムアウトしました。 + + + + + ユーザーによってテストが中止されました。 + + + + + テストは不明な状態です + + + + + 単体テストのフレームワークのヘルパー機能を提供する + + + + + すべての内部例外のメッセージなど、例外メッセージを + 再帰的に取得します + + 次のメッセージを取得する例外 + エラー メッセージ情報を含む文字列 + + + + クラスで使用できるタイムアウトの列挙型。 + 列挙型の型は一致している必要があります + + + + + 無限。 + + + + + テスト クラス属性。 + + + + + このテストの実行を可能するテスト メソッド属性を取得します。 + + このメソッドで定義されているテスト メソッド属性インスタンス。 + The 。このテストを実行するために使用されます。 + Extensions can override this method to customize how all methods in a class are run. + + + + テスト メソッド属性。 + + + + + テスト メソッドを実行します。 + + 実行するテスト メソッド。 + テストの結果を表す TestResult オブジェクトの配列。 + Extensions can override this method to customize running a TestMethod. + + + + テスト初期化属性。 + + + + + テスト クリーンアップ属性。 + + + + + Ignore 属性。 + + + + + テストのプロパティ属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 名前。 + + + 値。 + + + + + 名前を取得します。 + + + + + 値を取得します。 + + + + + クラス初期化属性。 + + + + + クラス クリーンアップ属性。 + + + + + アセンブリ初期化属性。 + + + + + アセンブリ クリーンアップ属性。 + + + + + テストの所有者 + + + + + クラスの新しいインスタンスを初期化します。 + + + 所有者。 + + + + + 所有者を取得します。 + + + + + 優先順位属性。単体テストの優先順位を指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 優先順位。 + + + + + 優先順位を取得します。 + + + + + テストの説明 + + + + + テストを記述する クラスの新しいインスタンスを初期化します。 + + 説明。 + + + + テストの説明を取得します。 + + + + + CSS プロジェクト構造の URI + + + + + CSS プロジェクト構造の URI の クラスの新しいインスタンスを初期化します。 + + CSS プロジェクト構造の URI。 + + + + CSS プロジェクト構造の URI を取得します。 + + + + + CSS イテレーション URI + + + + + CSS イテレーション URI の クラスの新しいインスタンスを初期化します。 + + CSS イテレーション URI。 + + + + CSS イテレーション URI を取得します。 + + + + + WorkItem 属性。このテストに関連付けられている作業項目の指定に使用されます。 + + + + + WorkItem 属性の クラスの新しいインスタンスを初期化します。 + + 作業項目に対する ID。 + + + + 関連付けられている作業項目に対する ID を取得します。 + + + + + タイムアウト属性。単体テストのタイムアウトを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + タイムアウト。 + + + + + 事前設定するタイムアウトを指定して クラスの新しいインスタンスを初期化する + + + タイムアウト + + + + + タイムアウトを取得します。 + + + + + アダプターに返される TestResult オブジェクト。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + 結果の表示名を取得または設定します。複数の結果が返される場合に便利です。 + null の場合は、メソッド名が DisplayName として使用されます。 + + + + + テスト実行の成果を取得または設定します。 + + + + + テストが失敗した場合にスローされる例外を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでデバッグ トレースを取得または設定します。 + + + + + Gets or sets the debug traces by test code. + + + + + テスト実行の期間を取得または設定します。 + + + + + データ ソース内のデータ行インデックスを取得または設定します。データ ドリブン テストの一続きのデータ行の + それぞれの結果に対してのみ設定されます。 + + + + + テスト メソッドの戻り値を取得または設定します。(現在は、常に null です)。 + + + + + テストで添付された結果ファイルを取得または設定します。 + + + + + データ ドリブン テストの接続文字列、テーブル名、行アクセス方法を指定します。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource の既定のプロバイダー名。 + + + + + 既定のデータ アクセス方法。 + + + + + クラスの新しいインスタンスを初期化します。このインスタンスは、データ ソースにアクセスするためのデータ プロバイダー、接続文字列、データ テーブル、データ アクセス方法を指定して初期化されます。 + + System.Data.SqlClient などデータ プロバイダーの不変名 + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + データにアクセスする順番をしています。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは接続文字列とテーブル名を指定して初期化されます。 + OLEDB データ ソースにアクセスするには接続文字列とデータ テーブルを指定します。 + + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは設定名に関連付けられているデータ プロバイダーと接続文字列を使用して初期化されます。 + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションにあるデータ ソースの名前。 + + + + データ ソースのデータ プロバイダーを表す値を取得します。 + + + データ プロバイダー名。データ プロバイダーがオブジェクトの初期化時に指定されていなかった場合は、System.Data.OleDb の既定のプロバイダーが返されます。 + + + + + データ ソースの接続文字列を表す値を取得します。 + + + + + データを提供するテーブル名を示す値を取得します。 + + + + + データ ソースへのアクセスに使用するメソッドを取得します。 + + + + 次のいずれか 値。以下の場合 初期化されていない場合は、これは既定値を返します 。 + + + + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションで見つかるデータ ソースの名前を取得します。 + + + + + データをインラインで指定できるデータ ドリブン テストの属性。 + + + + + すべてのデータ行を検索して、実行します。 + + + テスト メソッド。 + + + 次の配列 。 + + + + + データ ドリブン テスト メソッドを実行します。 + + 実行するテスト メソッド。 + データ行. + 実行の結果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..621cef0 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 테스트 배포별 배포 항목(파일 또는 디렉터리)을 지정하는 데 사용됩니다. + 테스트 클래스 또는 테스트 메서드에서 지정할 수 있습니다. + 둘 이상의 항목을 지정하기 위한 여러 특성 인스턴스를 가질 수 있습니다. + 항목 경로는 절대 또는 상대 경로일 수 있으며, 상대 경로인 경우 RunConfig.RelativePathRoot가 기준입니다. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리에 대한 상대 또는 절대 경로. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + 항목을 복사할 디렉터리의 경로. 배포 디렉터리에 대한 절대 경로 또는 상대 경로일 수 있습니다.에 의해 식별되는 모든 파일 및 디렉터리는 이 디렉터리에 복사됩니다. + + + + 복사할 소스 파일 또는 폴더의 경로를 가져옵니다. + + + + + 항목을 복사할 디렉터리의 경로를 가져옵니다. + + + + + 섹션, 속성, 특성의 이름에 대한 리터럴을 포함합니다. + + + + + 구성 섹션 이름입니다. + + + + + Beta2의 구성 섹션 이름입니다. 호환성을 위해 남겨둡니다. + + + + + 데이터 소스의 섹션 이름입니다. + + + + + 'Name'의 특성 이름 + + + + + 'ConnectionString'의 특성 이름 + + + + + 'DataAccessMethod'의 특성 이름 + + + + + 'DataTable'의 특성 이름 + + + + + 데이터 소스 요소입니다. + + + + + 이 구성의 이름을 가져오거나 설정합니다. + + + + + .config 파일에서 <connectionStrings> 섹션의 ConnectionStringSettings 요소를 가져오거나 설정합니다. + + + + + 데이터 테이블의 이름을 가져오거나 설정합니다. + + + + + 데이터 액세스의 형식을 가져오거나 설정합니다. + + + + + 키 이름을 가져옵니다. + + + + + 구성 속성을 가져옵니다. + + + + + 데이터 소스 요소 컬렉션입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 지정한 키와 함께 구성 요소를 반환합니다. + + 반환할 요소의 키입니다. + 지정한 키가 있는 System.Configuration.ConfigurationElement입니다. 그렇지 않은 경우 null입니다. + + + + 지정한 인덱스 위치에서 구성 요소를 가져옵니다. + + 반환할 System.Configuration.ConfigurationElement의 인덱스 위치입니다. + + + + 구성 요소 컬렉션에 구성 요소를 추가합니다. + + 추가할 System.Configuration.ConfigurationElement입니다. + + + + 컬렉션에서 System.Configuration.ConfigurationElement를 제거합니다. + + . + + + + 컬렉션에서 System.Configuration.ConfigurationElement를 제거합니다. + + 제거할 System.Configuration.ConfigurationElement의 키입니다. + + + + 컬렉션에서 모든 구성 요소 개체를 제거합니다. + + + + + 새 을(를) 만듭니다. + + . + + + + 지정한 구성 요소의 요소 키를 가져옵니다. + + 키를 반환할 System.Configuration.ConfigurationElement입니다. + 지정한 System.Configuration.ConfigurationElement의 키로 작동하는 System.Object입니다. + + + + 구성 요소 컬렉션에 구성 요소를 추가합니다. + + 추가할 System.Configuration.ConfigurationElement입니다. + + + + 구성 요소 컬렉션에 구성 요소를 추가합니다. + + 지정한 System.Configuration.ConfigurationElement를 추가할 인덱스 위치입니다. + 추가할 System.Configuration.ConfigurationElement입니다. + + + + 테스트에 대한 구성 설정을 지원합니다. + + + + + 테스트에 대한 구성 섹션을 가져옵니다. + + + + + 테스트에 대한 구성 섹션입니다. + + + + + 이 구성 섹션의 데이터 소스를 가져옵니다. + + + + + 속성의 컬렉션을 가져옵니다. + + + 요소의 속성입니다. + + + + + 이 클래스는 시스템에 있는 public이 아닌 라이브 내부 개체를 나타냅니다. + + + + + private 클래스의 이미 존재하는 개체를 포함하는 클래스의 + 새 인스턴스를 초기화합니다. + + 전용 멤버에 도달하기 위한 시작 지점 역할을 하는 개체 + m_X.m_Y.m_Z 형식으로 검색할 개체를 가리키는 마침표(.)를 사용하는 역참조 문자열 + + + + 지정된 형식을 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 어셈블리의 이름 + 정규화된 이름 + 생성자에 전달할 인수 + + + + 지정된 형식을 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 어셈블리의 이름 + 정규화된 이름 + 다음의 배열: 가져올 생성자에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 생성자에 전달할 인수 + + + + 지정된 형식을 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 만들 개체의 형식 + 생성자에 전달할 인수 + + + + 지정된 형식을 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 만들 개체의 형식 + 다음의 배열: 가져올 생성자에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 생성자에 전달할 인수 + + + + 지정된 개체를 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 래핑할 개체 + + + + 지정된 개체를 래핑하는 클래스의 새 인스턴스를 + 초기화합니다. + + 래핑할 개체 + PrivateType 개체 + + + + 대상을 가져오거나 설정합니다. + + + + + 기본 개체의 형식을 가져옵니다. + + + + + 은(는) 대상 개체의 해시 코드를 반환합니다. + + 대상 개체의 해시 코드를 나타내는 INT + + + + 같음 + + 비교할 개체 + 개체가 같은 경우 true를 반환합니다. + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 호출할 멤버에 전달하기 위한 인수. + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 제네릭 인수의 형식에 해당하는 형식의 배열. + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 호출할 멤버에 전달하기 위한 인수. + 문화권 정보 + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 문화권 정보 + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 호출할 멤버에 전달하기 위한 인수. + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 호출할 멤버에 전달하기 위한 인수. + 문화권 정보 + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 문화권 정보 + 메서드 호출의 결과 + + + + 지정된 메서드를 호출합니다. + + 메서드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 다음의 배열: 메서드가 가져올 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 문화권 정보 + 제네릭 인수의 형식에 해당하는 형식의 배열. + 메서드 호출의 결과 + + + + 각 차원에 대한 첨자 배열을 사용하여 배열 요소를 가져옵니다 + + 멤버의 이름 + 구성된 비트마스크 + 요소의 배열입니다. + + + + 각 차원에 대해 첨자의 배열을 사용하여 배열 요소를 설정합니다. + + 멤버의 이름 + 설정할 값 + 구성된 비트마스크 + + + + 각 차원에 대한 첨자 배열을 사용하여 배열 요소를 가져옵니다 + + 멤버의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 구성된 비트마스크 + 요소의 배열입니다. + + + + 각 차원에 대해 첨자의 배열을 사용하여 배열 요소를 설정합니다. + + 멤버의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 설정할 값 + 구성된 비트마스크 + + + + 필드를 가져옵니다. + + 필드의 이름 + 필드입니다. + + + + 필드를 설정합니다. + + 필드의 이름 + 설정할 값 + + + + 필드를 가져옵니다. + + 필드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 필드입니다. + + + + 필드를 설정합니다. + + 필드의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 설정할 값 + + + + 필드 또는 속성을 가져옵니다. + + 필드 또는 속성의 이름 + 필드 또는 속성입니다. + + + + 필드 또는 속성을 설정합니다. + + 필드 또는 속성의 이름 + 설정할 값 + + + + 필드 또는 속성을 가져옵니다. + + 필드 또는 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 필드 또는 속성입니다. + + + + 필드 또는 속성을 설정합니다. + + 필드 또는 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 설정할 값 + + + + 속성을 가져옵니다 + + 속성의 이름 + 호출할 멤버에 전달하기 위한 인수. + 속성입니다. + + + + 속성을 가져옵니다 + + 속성의 이름 + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 속성입니다. + + + + 속성을 설정합니다. + + 속성의 이름 + 설정할 값 + 호출할 멤버에 전달하기 위한 인수. + + + + 속성을 설정합니다. + + 속성의 이름 + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 설정할 값 + 호출할 멤버에 전달하기 위한 인수. + + + + 속성을 가져옵니다 + + 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 호출할 멤버에 전달하기 위한 인수. + 속성입니다. + + + + 속성을 가져옵니다 + + 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 속성입니다. + + + + 속성을 설정합니다. + + 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 설정할 값 + 호출할 멤버에 전달하기 위한 인수. + + + + 속성을 설정합니다. + + 속성의 이름 + 하나 이상의 배열 인덱스로 검색 수행 방법을 지정. + 설정할 값 + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + + + + 액세스 문자열의 유효성을 검사합니다. + + 액세스 문자열 + + + + 멤버를 호출합니다. + + 멤버의 이름 + 추가 특성 + 호출에 대한 인수 + 문화권 + 호출의 결과 + + + + 현재 private 형식에서 가장 적절한 제네릭 메서드 시그니처를 추출합니다. + + 서명 캐시를 검색할 메서드의 이름. + 검색할 매개 변수의 형식에 해당하는 형식의 배열. + 제네릭 인수의 형식에 해당하는 형식의 배열. + 메서드 서명을 추가로 필터링. + 매개 변수에 대한 한정자입니다. + methodinfo 인스턴스입니다. + + + + 이 클래스는 전용 접근자 기능에 대한 private 클래스를 나타냅니다. + + + + + 모든 것에 바인딩됩니다. + + + + + 래핑된 형식입니다. + + + + + private 형식을 포함하는 클래스의 새 인스턴스를 초기화합니다. + + 어셈블리 이름 + 다음의 정규화된 이름: + + + + Initializes a new instance of the class that contains + the private type from the type object + + 만들어야 할 래핑된 형식. + + + + 참조된 형식을 가져옵니다. + + + + + 정적 멤버를 호출합니다. + + InvokeHelper에 대한 멤버의 이름 + 호출에 대한 인수 + 호출의 결과 + + + + 정적 멤버를 호출합니다. + + InvokeHelper에 대한 멤버의 이름 + 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 호출의 결과 + + + + 정적 멤버를 호출합니다. + + InvokeHelper에 대한 멤버의 이름 + 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 제네릭 인수의 형식에 해당하는 형식의 배열. + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 호출에 대한 인수 + 문화권 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 문화권 정보 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + 호출에 대한 인수 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + 호출에 대한 인수 + 문화권 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + /// 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 문화권 + 호출의 결과 + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + /// 다음의 배열: 호출할 메서드에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체 + 호출에 대한 인수 + 문화권 + 제네릭 인수의 형식에 해당하는 형식의 배열. + 호출의 결과 + + + + 정적 배열의 요소를 가져옵니다. + + 배열의 이름 + + 가져올 요소의 위치를 지정하는 인덱스를 나타내는 32비트 정수의 1차원 배열입니다. + 예를 들어 a[10][11]에 액세스하려면 인덱스는 {10,11}이 됩니다. + + 지정된 위치의 요소 + + + + 정적 배열의 멤버를 설정합니다. + + 배열의 이름 + 설정할 값 + + 설정할 요소의 위치를 지정하는 인덱스를 나타내는 32비트 정수의 1차원 배열입니다. + 예를 들어 a[10][11]에 액세스하려면 배열은 {10,11}이 됩니다. + + + + + 정적 배열의 요소를 가져옵니다. + + 배열의 이름 + 추가 InvokeHelper 특성 + + 가져올 요소의 위치를 지정하는 인덱스를 나타내는 32비트 정수의 1차원 배열입니다. + 예를 들어 a[10][11]에 액세스하려면 배열은 {10,11}이 됩니다. + + 지정된 위치의 요소 + + + + 정적 배열의 멤버를 설정합니다. + + 배열의 이름 + 추가 InvokeHelper 특성 + 설정할 값 + + 설정할 요소의 위치를 지정하는 인덱스를 나타내는 32비트 정수의 1차원 배열입니다. + 예를 들어 a[10][11]에 액세스하려면 배열은 {10,11}이 됩니다. + + + + + 정적 필드를 가져옵니다. + + 필드의 이름 + 정적 필드입니다. + + + + 정적 필드를 설정합니다. + + 필드의 이름 + 호출에 대한 인수 + + + + 지정된 InvokeHelper 특성을 사용하여 정적 필드를 가져옵니다. + + 필드의 이름 + 추가 호출 특성 + 정적 필드입니다. + + + + 바인딩 특성을 사용하여 정적 필드를 설정합니다. + + 필드의 이름 + 추가 InvokeHelper 특성 + 호출에 대한 인수 + + + + 정적 필드 또는 속성을 가져옵니다. + + 필드 또는 속성의 이름 + 정적 필드 또는 속성입니다. + + + + 정적 필드 또는 속성을 설정합니다. + + 필드 또는 속성의 이름 + 필드나 속성에 대해 설정할 값 + + + + 지정된 InvokeHelper 특성을 사용하여 정적 필드 또는 속성을 가져옵니다. + + 필드 또는 속성의 이름 + 추가 호출 특성 + 정적 필드 또는 속성입니다. + + + + 바인딩 특성을 사용하여 정적 필드 또는 속성을 설정합니다. + + 필드 또는 속성의 이름 + 추가 호출 특성 + 필드나 속성에 대해 설정할 값 + + + + 정적 속성을 가져옵니다. + + 필드 또는 속성의 이름 + 호출에 대한 인수 + 정적 속성입니다. + + + + 정적 속성을 설정합니다. + + 속성의 이름 + 필드나 속성에 대해 설정할 값 + 호출할 멤버에 전달하기 위한 인수. + + + + 정적 속성을 설정합니다. + + 속성의 이름 + 필드나 속성에 대해 설정할 값 + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + + + + 정적 속성을 가져옵니다. + + 속성의 이름 + 추가 호출 특성. + 호출할 멤버에 전달하기 위한 인수. + 정적 속성입니다. + + + + 정적 속성을 가져옵니다. + + 속성의 이름 + 추가 호출 특성. + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + 정적 속성입니다. + + + + 정적 속성을 설정합니다. + + 속성의 이름 + 추가 호출 특성. + 필드나 속성에 대해 설정할 값 + 인덱싱된 속성을 위한 선택적인 인덱스 값. 인덱싱된 속성의 인덱스는 0부터 시작합니다. 인덱싱되지 않은 속성에 대해서는 이 값이 null이어야 합니다. + + + + 정적 속성을 설정합니다. + + 속성의 이름 + 추가 호출 특성. + 필드나 속성에 대해 설정할 값 + 다음의 배열: 인덱싱된 속성에 대한 매개 변수의 수, 순서 및 형식을 나타내는 개체. + 호출할 멤버에 전달하기 위한 인수. + + + + 정적 메서드를 호출합니다. + + 멤버의 이름 + 추가 호출 특성 + 호출에 대한 인수 + 문화권 + 호출의 결과 + + + + 제네릭 메서드에 대한 메서드 시그니처 검색을 제공합니다. + + + + + 이 두 메서드의 메서드 시그니처를 비교합니다. + + Method1 + Method2 + 비슷한 경우 True입니다. + + + + 제공된 형식의 기본 형식에서 계층 구조 수준을 가져옵니다. + + 형식입니다. + 깊이입니다. + + + + 제공된 정보를 사용하여 가장 많이 파생된 형식을 찾습니다. + + 후보 일치 항목입니다. + 일치 항목 수입니다. + 가장 많이 파생된 메서드입니다. + + + + 기본 기준과 일치하는 메서드의 집합을 고려하여 형식 배열을 기반으로 + 메서드를 선택하세요. 기준과 일치하는 메서드가 없으면 이 메서드는 + Null을 반환합니다. + + 바인딩 사양입니다. + 후보 일치 항목 + 형식 + 매개 변수 한정자입니다. + 일치하는 메서드입니다. 일치 항목이 없는 경우 null입니다. + + + + 제공된 두 메서드에서 가장 한정적인 메서드를 찾습니다. + + 메서드 1 + 메서드 1에 대한 매개 변수 순서 + 매개 변수 배열 형식입니다. + 메서드 2 + 메서드 2에 대한 매개 변수 순서 + >매개 변수 배열 형식입니다. + 검색할 형식입니다. + Args. + 일치를 나타내는 int입니다. + + + + 제공된 두 메서드에서 가장 한정적인 메서드를 찾습니다. + + 메서드 1 + 메서드 1에 대한 매개 변수 순서 + 매개 변수 배열 형식입니다. + 메서드 2 + 메서드 2에 대한 매개 변수 순서 + >매개 변수 배열 형식입니다. + 검색할 형식입니다. + Args. + 일치를 나타내는 int입니다. + + + + 제공된 두 형식 중 가장 한정적인 형식을 찾습니다. + + 형식 1 + 형식 2 + 정의하는 형식 + 일치를 나타내는 int입니다. + + + + 단위 테스트에 제공되는 정보를 저장하는 데 사용됩니다. + + + + + 테스트에 대한 테스트 속성을 가져옵니다. + + + + + 테스트가 데이터 기반 테스트에 사용될 때 현재 데이터 행을 가져옵니다. + + + + + 테스트가 데이터 기반 테스트에 사용될 때 현재 데이터 연결 행을 가져옵니다. + + + + + 배포된 파일 및 결과 파일이 저장되는, 테스트 실행에 대한 기본 디렉터리를 가져옵니다. + + + + + 테스트 실행을 위해 배포되는 파일의 디렉터리를 가져옵니다. 일반적으로 의 하위 디렉터리입니다. + + + + + 테스트 실행의 결과에 대한 기본 디렉터리를 가져옵니다. 일반적으로 의 하위 디렉터리입니다. + + + + + 테스트 실행 결과 파일의 디렉터리를 가져옵니다. 일반적으로 의 하위 디렉터리입니다. + + + + + 테스트 결과 파일의 디렉터리를 가져옵니다. + + + + + 배포된 파일 및 결과 파일이 저장되는, 테스트 실행에 대한 기본 디렉터리를 가져옵니다. + 과(와) 같습니다. 해당 속성을 대신 사용하세요. + + + + + 테스트 실행에 대해 배포되는 파일의 디렉터리를 가져옵니다. 일반적으로 의 하위 디렉터리입니다. + 과(와) 같습니다. 해당 속성을 대신 사용하세요. + + + + + 테스트 실행 결과 파일의 디렉터리를 가져옵니다. 일반적으로 의 하위 디렉터리입니다. + 과(와) 같습니다. 테스트 실행 결과 파일의 해당 속성 또는 테스트 관련 결과 파일의 + 을(를) 대신 사용하세요. + + + + + 현재 실행 중인 테스트 메서드를 포함하는 클래스의 정규화된 이름을 가져옵니다. + + + + + 현재 실행 중인 테스트 메서드의 이름을 가져옵니다. + + + + + 현재 테스트 결과를 가져옵니다. + + + + + 테스트 실행 중에 추적 메시지를 쓰는 데 사용됩니다. + + 형식이 지정된 메시지 문자열 + + + + 테스트 실행 중에 추적 메시지를 쓰는 데 사용됩니다. + + 서식 문자열 + 인수 + + + + TestResult.ResultFileNames의 목록에 파일 이름을 추가합니다. + + + 파일 이름. + + + + + 지정된 이름으로 타이머를 시작합니다. + + 타이머의 이름입니다. + + + + 지정된 이름의 타이머를 종료합니다. + + 타이머의 이름입니다. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..22e769a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 실행을 위한 TestMethod입니다. + + + + + 테스트 메서드의 이름을 가져옵니다. + + + + + 테스트 클래스의 이름을 가져옵니다. + + + + + 테스트 메서드의 반환 형식을 가져옵니다. + + + + + 테스트 메서드의 매개 변수를 가져옵니다. + + + + + 테스트 메서드에 대한 methodInfo를 가져옵니다. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 테스트 메서드를 호출합니다. + + + 테스트 메서드에 전달할 인수(예: 데이터 기반의 경우) + + + 테스트 메서드 호출의 결과. + + + This call handles asynchronous test methods as well. + + + + + 테스트 메서드의 모든 특성을 가져옵니다. + + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 모든 특성. + + + + + 특정 형식의 특성을 가져옵니다. + + System.Attribute type. + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 지정한 형식의 특성입니다. + + + + + 도우미입니다. + + + + + 검사 매개 변수가 Null이 아닙니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws argument null exception when parameter is null. + + + + 검사 매개 변수가 Null이 아니거나 비어 있습니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws ArgumentException when parameter is null. + + + + 데이터 기반 테스트에서 데이터 행에 액세스하는 방법에 대한 열거형입니다. + + + + + 행이 순차적인 순서로 반환됩니다. + + + + + 행이 임의의 순서로 반환됩니다. + + + + + 테스트 메서드에 대한 인라인 데이터를 정의하는 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + + + + 인수 배열을 사용하는 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + 추가 데이터. + + + + 테스트 메서드 호출을 위한 데이터를 가져옵니다. + + + + + 사용자 지정을 위한 테스트 결과에서 표시 이름을 가져오거나 설정합니다. + + + + + 어설션 불확실 예외입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + InternalTestFailureException 클래스. 테스트 사례에 대한 내부 실패를 나타내는 데 사용됩니다. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 지정된 형식의 예외를 예상하도록 지정하는 특성 + + + + + 예상 형식이 있는 클래스의 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + + + 테스트에서 예외를 throw하지 않을 때 포함할 메시지 및 예상 형식이 있는 클래스의 + 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + 예외를 throw하지 않아 테스트가 실패할 경우 테스트 결과에 포함할 메시지 + + + + + 예상되는 예외의 형식을 나타내는 값을 가져옵니다. + + + + + 예상 예외의 형식에서 파생된 형식이 예상대로 자격을 얻도록 허용할지 여부를 나타내는 값을 가져오거나 + 설정합니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 단위 테스트에 의해 throw되는 예외의 형식이 예상되는지를 확인합니다. + + 단위 테스트에서 throw한 예외 + + + + 단위 테스트에서 예외를 예상하도록 지정하는 특성에 대한 기본 클래스 + + + + + 기본 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + + + 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + 예외를 throw하지 않아서 테스트가 실패할 경우 테스트 결과에 포함할 + 메시지 + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 기본 예외 없음 메시지를 가져옵니다. + + ExpectedException 특성 형식 이름 + 기본 예외 없음 메시지 + + + + 예외가 예상되는지 여부를 확인합니다. 메서드가 반환되면 예외가 + 예상되는 것으로 이해됩니다. 메서드가 예외를 throw하면 예외가 + 예상되지 않는 것으로 이해되고, throw된 예외의 메시지가 + 테스트 결과에 포함됩니다. 클래스는 편의를 위해 사용될 수 + 있습니다. 이(가) 사용되는 경우 어설션에 실패하며, + 테스트 결과가 [결과 불충분]으로 설정됩니다. + + 단위 테스트에서 throw한 예외 + + + + AssertFailedException 또는 AssertInconclusiveException인 경우 예외를 다시 throw합니다. + + 어설션 예외인 경우 예외를 다시 throw + + + + 이 클래스는 제네릭 형식을 사용하는 형식에 대한 사용자의 유닛 테스트를 지원하도록 설계되었습니다. + GenericParameterHelper는 몇 가지 공통된 제네릭 형식 제약 조건을 충족합니다. + 예: + 1. public 기본 생성자 + 2. 공통 인터페이스 구현: IComparable, IEnumerable + + + + + C# 제네릭의 '새로 입력할 수 있는' 제약 조건을 충족하는 클래스의 + 새 인스턴스를 초기화합니다. + + + This constructor initializes the Data property to a random value. + + + + + 데이터 속성을 사용자가 제공한 값으로 초기화하는 클래스의 + 새 인스턴스를 초기화합니다. + + 임의의 정수 값 + + + + 데이터를 가져오거나 설정합니다. + + + + + 두 GenericParameterHelper 개체의 값을 비교합니다. + + 비교할 개체 + 개체의 값이 '이' GenericParameterHelper 개체와 동일한 경우에는 true이고, + 동일하지 않은 경우에는 false입니다. + + + + 이 개체의 해시 코드를 반환합니다. + + 해시 코드입니다. + + + + 두 개체의 데이터를 비교합니다. + + 비교할 개체입니다. + + 이 인스턴스 및 값의 상대 값을 나타내는 부호 있는 숫자입니다. + + + Thrown when the object passed in is not an instance of . + + + + + 길이가 데이터 속성에서 파생된 IEnumerator 개체를 + 반환합니다. + + IEnumerator 개체 + + + + 현재 개체와 동일한 GenericParameterHelper 개체를 + 반환합니다. + + 복제된 개체입니다. + + + + 사용자가 진단을 위해 단위 테스트에서 추적을 로그하거나 쓸 수 있습니다. + + + + + LogMessage용 처리기입니다. + + 로깅할 메시지. + + + + 수신할 이벤트입니다. 단위 테스트 기록기에서 메시지를 기록할 때 발생합니다. + 주로 어댑터에서 사용합니다. + + + + + 메시지를 로그하기 위해 테스트 작성자가 호출하는 API입니다. + + 자리 표시자가 있는 문자열 형식. + 자리 표시자에 대한 매개 변수. + + + + TestCategory 특성 - 단위 테스트의 범주 지정에 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화하고 범주를 테스트에 적용합니다. + + + 테스트 범주. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + "Category" 특성을 위한 기본 클래스 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 클래스의 새 인스턴스를 초기화합니다. + 범주를 테스트에 적용합니다. TestCategories에 의해 반환된 문자열은 + 테스트 필터링을 위한 /category 명령과 함께 사용됩니다. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + AssertFailedException 클래스 - 테스트 사례에 대한 실패를 나타내는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 단위 테스트 내에서 다양한 조건을 테스트하기 위한 도우미 + 클래스의 컬렉션입니다. 테스트 중인 조건이 충족되지 않으면 예외가 + throw됩니다. + + + + + Assert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is false. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is true. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null. + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not refer to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if refers to the same object + as . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is not equal to . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException을 throw합니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + 참조 같음에 대해 두 형식의 인스턴스를 비교하는 데 정적 equals 오버로드가 + 사용됩니다. 이 메서드는 같음에 대해 두 인스턴스를 비교하는 데 사용되지 않습니다. + 이 개체는 항상 Assert.Fail과 함께 throw됩니다. 단위 테스트에서 + Assert.AreEqual 및 관련 오버로드를 사용하세요. + + 개체 A + 개체 B + 항상 False. + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + Null 문자('\0')를 "\\0"으로 바꿉니다. + + + 검색할 문자열. + + + Null 문자가 "\\0"으로 교체된 변환된 문자열. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException을 만들고 throw하는 도우미 함수 + + + 예외를 throw하는 어설션의 이름 + + + 어설션 실패에 대한 조건을 설명하는 메시지 + + + 매개 변수. + + + + + 유효한 조건의 매개 변수를 확인합니다. + + + 매개 변수. + + + 어셜선 이름. + + + 매개 변수 이름 + + + 잘못된 매개 변수 예외에 대한 메시지 + + + 매개 변수. + + + + + 개체를 문자열로 안전하게 변환하고, Null 값 및 Null 문자를 처리합니다. + Null 값은 "(null)"로 변환됩니다. Null 문자는 "\\0"으로 변환됩니다. + + + 문자열로 변환될 개체. + + + 변환된 문자열. + + + + + 문자열 어셜션입니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if matches . + + + + + 단위 테스트 내에서 컬렉션과 연결된 다양한 조건을 테스트하기 + 위한 도우미 클래스의 컬렉션. 테스트 중인 조건이 충족되지 않으면 + 예외가 throw됩니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is found in + . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a two or more equal elements are found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지입니다.. + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 모든 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if every element in is also found in + . + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 첫 번째 컬렉션이 두 번째 컬렉션의 하위 집합인지를 + 확인합니다. 한 집합에 중복된 요소가 포함된 경우, 하위 집합에 있는 요소의 + 발생 횟수는 상위 집합에 있는 발생 횟수와 같거나 + 작아야 합니다. + + + 테스트가 다음에 포함될 것으로 예상하는 컬렉션: . + + + 테스트가 다음을 포함할 것으로 예상하는 컬렉션: . + + + 다음의 경우 True 이(가) + 의 하위 집합인 경우 참, 나머지 경우는 거짓. + + + + + 지정된 컬렉션에서 각 요소의 발생 횟수를 포함하는 + 사전을 생성합니다. + + + 처리할 컬렉션. + + + 컬렉션에 있는 null 요소의 수. + + + 지정된 컬렉션에 있는 각 요소의 발생 횟수를 포함하는 + 딕셔너리. + + + + + 두 컬렉션 간의 불일치 요소를 찾습니다. 불일치 요소란 + 예상 컬렉션에 나타나는 횟수가 실제 컬렉션에 + 나타나는 횟수와 다른 요소를 말합니다. 컬렉션은 + 같은 수의 요소가 있는 Null이 아닌 다른 참조로 + 간주됩니다. 이 수준에서의 확인 작업은 호출자의 + 책임입니다. 불일치 요소가 없으면 함수는 false를 + 반환하고 출력 매개 변수가 사용되지 않습니다. + + + 비교할 첫 번째 컬렉션. + + + 비교할 두 번째 컬렉션. + + + 다음의 예상 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 다음의 실제 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 불일치 요소(null일 수 있음) 또는 불일치 요소가 없는 경우 + null. + + + 불일치 요소가 발견되면 참, 발견되지 않으면 거짓. + + + + + object.Equals를 사용하여 개체 비교합니다. + + + + + 프레임워크 예외에 대한 기본 클래스입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + + + + + 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + + + + + 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 + 대한 현재 스레드의 CurrentUICulture 속성을 재정의합니다. + + + + + [액세스 문자열의 구문이 잘못되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 컬렉션에 <{2}>은(는) {1}개가 포함되어야 하는데 실제 컬렉션에는 {3}개가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [중복된 항목이 있습니다. <{1}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 대/소문자가 다른 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 크지 않아야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}({2})>. 실제 값: <{3}({4})>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 커야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>을(를) 제외한 모든 값. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [AreSame()에 값 형식을 전달하면 안 됩니다. Object로 변환된 값은 동일한 값으로 간주되지 않습니다. AreEqual()을 사용해 보세요. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}이(가) 실패했습니다. {1}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [async TestMethod with UITestMethodAttribute는 지원되지 않습니다. async를 제거하거나 TestMethodAttribute를 사용하세요.]와 유사한 지역화된 문자열 조회합니다. + + + + + [두 컬렉션이 모두 비어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션 참조가 동일한 컬렉션 개체를 가리킵니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [(null)]과 유사한 지역화된 문자열을 조회합니다. + + + + + Looks up a localized string similar to (object). + + + + + ['{0}' 문자열이 '{1}' 문자열을 포함하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [어설션에 Assert.Equals를 사용할 수 없습니다. 대신 Assert.AreEqual 및 오버로드를 사용하세요.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [컬렉션의 요소 수가 일치하지 않습니다. 예상 값: <{1}>. 실제 값: <{2}>.{0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {0}에 있는 요소가 일치하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소는 예상 형식이 아닙니다. 예상 형식: <{2}>. 실제 형식: <{3}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소가 (null)입니다. 예상 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 문자열로 끝나지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 인수 - EqualsTester에는 Null을 사용할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 형식의 개체를 {1} 형식의 개체로 변환할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [참조된 내부 개체가 더 이상 유효하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. {1}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 속성의 형식은 {2}이어야 하는데 실제로는 {1}입니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 예상 형식: <{1}>. 실제 형식: <{2}>.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 형식: <{1}>. 실제 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치합니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [DataRowAttribute가 지정되지 않았습니다. DataTestMethodAttribute에는 하나 이상의 DataRowAttribute가 필요합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 예외가 throw되지 않았습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. 이 값은 Null일 수 없습니다. {1}.](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [요소 수가 다릅니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 시그니처를 가진 생성자를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 멤버({0})를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + ['{0}' 문자열이 '{1}' 문자열로 시작되지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 예외 형식은 System.Exception이거나 System.Exception에서 파생된 형식이어야 합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [(예외로 인해 {0} 형식의 예외에 대한 메시지를 가져오지 못했습니다.)]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외 {0}을(를) throw하지 않았습니다. {1}](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외를 throw하지 않았습니다. 예외는 테스트 메서드에 정의된 {0} 특성에 의해 예상되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외를 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외 또는 해당 예외에서 파생된 형식을 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 {2} 예외를 throw했습니다. {0} + 예외 메시지: {3} + 스택 추적: {4}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + 단위 테스트 결과 + + + + + 테스트가 실행되었지만 문제가 있습니다. + 예외 또는 실패한 어설션과 관련된 문제일 수 있습니다. + + + + + 테스트가 완료되었지만, 성공인지 실패인지를 알 수 없습니다. + 중단된 테스트에 사용된 것일 수 있습니다. + + + + + 아무 문제 없이 테스트가 실행되었습니다. + + + + + 테스트가 현재 실행 중입니다. + + + + + 테스트를 실행하려고 시도하는 동안 시스템 오류가 발생했습니다. + + + + + 테스트가 시간 초과되었습니다. + + + + + 테스트가 사용자에 의해 중단되었습니다. + + + + + 테스트의 상태를 알 수 없습니다. + + + + + 단위 테스트 프레임워크에 대한 도우미 기능을 제공합니다. + + + + + 재귀적으로 모든 내부 예외에 대한 메시지를 포함하여 예외 메시지를 + 가져옵니다. + + 오류 메시지 정보가 포함된 + 문자열에 대한 메시지 가져오기의 예외 + + + + 클래스와 함께 사용할 수 있는 시간 제한에 대한 열거형입니다. + 열거형의 형식은 일치해야 합니다. + + + + + 무제한입니다. + + + + + 테스트 클래스 특성입니다. + + + + + 이 테스트를 실행할 수 있는 테스트 메서드 특성을 가져옵니다. + + 이 메서드에 정의된 테스트 메서드 특성 인스턴스입니다. + 이 테스트를 실행하는 데 사용됩니다. + Extensions can override this method to customize how all methods in a class are run. + + + + 테스트 메서드 특성입니다. + + + + + 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드입니다. + 테스트 결과를 나타내는 TestResult 개체의 배열입니다. + Extensions can override this method to customize running a TestMethod. + + + + 테스트 초기화 특성입니다. + + + + + 테스트 정리 특성입니다. + + + + + 무시 특성입니다. + + + + + 테스트 속성 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 이름. + + + 값. + + + + + 이름을 가져옵니다. + + + + + 값을 가져옵니다. + + + + + 클래스 초기화 특성입니다. + + + + + 클래스 정리 특성입니다. + + + + + 어셈블리 초기화 특성입니다. + + + + + 어셈블리 정리 특성입니다. + + + + + 테스트 소유자 + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 소유자. + + + + + 소유자를 가져옵니다. + + + + + Priority 특성 - 단위 테스트의 우선 순위를 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 우선 순위. + + + + + 우선 순위를 가져옵니다. + + + + + 테스트의 설명 + + + + + 테스트를 설명하는 클래스의 새 인스턴스를 초기화합니다. + + 설명입니다. + + + + 테스트의 설명을 가져옵니다. + + + + + CSS 프로젝트 구조 URI + + + + + CSS 프로젝트 구조 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 프로젝트 구조 URI입니다. + + + + CSS 프로젝트 구조 URI를 가져옵니다. + + + + + CSS 반복 URI + + + + + CSS 반복 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 반복 URI입니다. + + + + CSS 반복 URI를 가져옵니다. + + + + + WorkItem 특성 - 이 테스트와 연결된 작업 항목을 지정하는 데 사용됩니다. + + + + + WorkItem 특성에 대한 클래스의 새 인스턴스를 초기화합니다. + + 작업 항목에 대한 ID입니다. + + + + 연결된 작업 항목에 대한 ID를 가져옵니다. + + + + + Timeout 특성 - 단위 테스트의 시간 제한을 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한. + + + + + 미리 설정된 시간 제한이 있는 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한 + + + + + 시간 제한을 가져옵니다. + + + + + 어댑터에 반환할 TestResult 개체입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 결과의 표시 이름을 가져오거나 설정합니다. 여러 결과를 반환할 때 유용합니다. + Null인 경우 메서드 이름은 DisplayName으로 사용됩니다. + + + + + 테스트 실행의 결과를 가져오거나 설정합니다. + + + + + 테스트 실패 시 throw할 예외를 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에 의한 디버그 추적을 가져오거나 설정합니다. + + + + + Gets or sets the debug traces by test code. + + + + + 테스트 실행의 지속 시간을 가져오거나 설정합니다. + + + + + 데이터 소스에서 데이터 행 인덱스를 가져오거나 설정합니다. 데이터 기반 테스트에서 + 개별 데이터 행 실행의 결과에 대해서만 설정합니다. + + + + + 테스트 메서드의 반환 값을 가져오거나 설정합니다(현재 항상 Null). + + + + + 테스트로 첨부한 결과 파일을 가져오거나 설정합니다. + + + + + 데이터 기반 테스트에 대한 연결 문자열, 테이블 이름 및 행 액세스 방법을 지정합니다. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource의 기본 공급자 이름입니다. + + + + + 기본 데이터 액세스 방법입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 데이터 소스에 액세스할 데이터 공급자, 연결 문자열, 데이터 테이블 및 데이터 액세스 방법으로 초기화됩니다. + + 고정 데이터 공급자 이름(예: System.Data.SqlClient) + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + 데이터에 액세스할 순서를 지정합니다. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 연결 문자열 및 테이블 이름으로 초기화됩니다. + OLEDB 데이터 소스에 액세스하기 위한 연결 문자열 및 데이터 테이블을 지정하세요. + + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 설정 이름과 연결된 연결 문자열 및 데이터 공급자로 초기화됩니다. + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에 있는 데이터 소스의 이름. + + + + 데이터 소스의 데이터 공급자를 나타내는 값을 가져옵니다. + + + 데이터 공급자 이름. 데이터 공급자를 개체 초기화에서 지정하지 않은 경우 System.Data.OleDb의 기본 공급자가 반환됩니다. + + + + + 데이터 소스의 연결 문자열을 나타내는 값을 가져옵니다. + + + + + 데이터를 제공하는 테이블 이름을 나타내는 값을 가져옵니다. + + + + + 데이터 소스에 액세스하는 데 사용되는 메서드를 가져옵니다. + + + + 값 중 하나입니다. 이(가) 초기화되지 않은 경우 다음 기본값이 반환됩니다. . + + + + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에서 찾은 데이터 소스의 이름을 가져옵니다. + + + + + 데이터를 인라인으로 지정할 수 있는 데이터 기반 테스트의 특성입니다. + + + + + 모든 데이터 행을 찾고 실행합니다. + + + 테스트 메서드. + + + 배열 . + + + + + 데이터 기반 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드. + 데이터 행. + 실행 결과. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..ec60083 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Służy do określenia elementu wdrożenia (pliku lub katalogu) dla wdrożenia testowego. + Może być określony w klasie testowej lub metodzie testowej. + Może mieć wiele wystąpień atrybutu w celu określenia więcej niż jednego elementu. + Ścieżka elementu może być bezwzględna lub względna. Jeśli jest względna, jest określana względem elementu RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Inicjuje nowe wystąpienie klasy . + + Plik lub katalog do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + + + + Inicjuje nowe wystąpienie klasy + + Względna lub bezwzględna ścieżka do pliku lub katalogu do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + Ścieżka katalogu, do którego mają być kopiowane elementy. Może być bezwzględna lub określana względem katalogu wdrażania. Wszystkie pliki i katalogi określone przez zostaną skopiowane do tego katalogu. + + + + Pobiera ścieżkę źródłowego pliku lub folderu do skopiowania. + + + + + Pobiera ścieżkę katalogu, do którego element jest kopiowany. + + + + + Zawiera literały nazw sekcji, właściwości, atrybutów. + + + + + Nazwa sekcji konfiguracji. + + + + + Nazwa sekcji konfiguracji dla Beta2. Pozostawiona w celu zapewnienia zgodności. + + + + + Nazwa sekcji dla źródła danych. + + + + + Nazwa atrybutu dla parametru „Name” + + + + + Nazwa atrybutu dla parametru „ConnectionString” + + + + + Nazwa atrybutu dla parametru „DataAccessMethod” + + + + + Nazwa atrybutu dla parametru „DataTable” + + + + + Element źródła danych. + + + + + Pobiera lub ustawia nazwę tej konfiguracji. + + + + + Pobiera lub ustawia element ConnectionStringSettings w sekcji <connectionStrings> w pliku config. + + + + + Pobiera lub ustawia nazwę tabeli danych. + + + + + Pobiera lub ustawia typ dostępu do danych. + + + + + Pobiera nazwę klucza. + + + + + Pobiera właściwości konfiguracji. + + + + + Kolekcja elementów źródła danych. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Zwraca element konfiguracji z określonym kluczem. + + Klucz elementu do zwrócenia. + Element System.Configuration.ConfigurationElement z określonym kluczem; w przeciwnym razie wartość null. + + + + Pobiera element konfiguracji pod określoną lokalizacją w indeksie. + + Lokalizacja w indeksie elementu System.Configuration.ConfigurationElement do zwrócenia. + + + + Dodaje element konfiguracji do kolekcji elementów konfiguracji. + + Element System.Configuration.ConfigurationElement do dodania. + + + + Usuwa element System.Configuration.ConfigurationElement z kolekcji. + + . + + + + Usuwa element System.Configuration.ConfigurationElement z kolekcji. + + Klucz elementu System.Configuration.ConfigurationElement do usunięcia. + + + + Usuwa wszystkie obiekty elementów konfiguracji z kolekcji. + + + + + Tworzy nowy element . + + Nowy element. + + + + Pobiera klucz elementu dla określnego elementu konfiguracji. + + Element System.Configuration.ConfigurationElement, dla którego ma zostać zwrócony klucz. + Element System.Object działający jako klucz dla określonego elementu System.Configuration.ConfigurationElement. + + + + Dodaje element konfiguracji do kolekcji elementów konfiguracji. + + Element System.Configuration.ConfigurationElement do dodania. + + + + Dodaje element konfiguracji do kolekcji elementów konfiguracji. + + Lokalizacja w indeksie, pod którą ma zostać dodany określony element System.Configuration.ConfigurationElement. + Element System.Configuration.ConfigurationElement do dodania. + + + + Obsługa ustawień konfiguracji na potrzeby testów. + + + + + Pobiera sekcję konfiguracji dla testów. + + + + + Sekcja konfiguracji dla testów. + + + + + Pobiera źródła danych dla tej sekcji konfiguracji. + + + + + Pobiera kolekcję właściwości. + + + Element właściwości dla elementu. + + + + + Ta klasa reprezentuje rzeczywisty NIEPUBLICZNY obiekt WEWNĘTRZNY w systemie + + + + + Inicjuje nowe wystąpienie klasy , które zawiera + już istniejący obiekt klasy prywatnej + + obiekt służący jako punkt początkowy na potrzeby dostępu do prywatnych elementów członkowskich + ciąg wyłuskujący używający elementu . wskazującego obiekt do pobrania, jak w wyrażeniu m_X.m_Y.m_Z + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony typ. + + Nazwa zestawu + w pełni kwalifikowana nazwa + Argumenty do przekazania do konstruktora + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony typ. + + Nazwa zestawu + w pełni kwalifikowana nazwa + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla konstruktora do pobrania + Argumenty do przekazania do konstruktora + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony typ. + + typ obiektu do utworzenia + Argumenty do przekazania do konstruktora + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony typ. + + typ obiektu do utworzenia + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla konstruktora do pobrania + Argumenty do przekazania do konstruktora + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony obiekt. + + obiekt do opakowania + + + + Inicjuje nowe wystąpienie klasy , które opakowuje + określony obiekt. + + obiekt do opakowania + Obiekt PrivateType + + + + Pobiera lub ustawia element docelowy + + + + + Pobiera typ obiektu bazowego + + + + + zwraca wartość skrótu docelowego obiektu + + wartość typu int reprezentująca wartość skrótu docelowego obiektu + + + + Jest równe + + Obiekt, z którym ma zostać wykonane porównanie + zwraca wartość true, jeśli obiekty są równe. + + + + Wywołuje określoną metodę + + Nazwa metody + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Tablica typów odpowiadających typom argumentów ogólnych. + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Informacje o kulturze + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Informacje o kulturze + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Informacje o kulturze + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Informacje o kulturze + Wynik wywołania metody + + + + Wywołuje określoną metodę + + Nazwa metody + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do pobrania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Informacje o kulturze + Tablica typów odpowiadających typom argumentów ogólnych. + Wynik wywołania metody + + + + Pobiera element tablicy przy użyciu tablicy indeksów dla każdego wymiaru + + Nazwa elementu członkowskiego + indeksy tablicy + Tablica elementów. + + + + Ustawia element tablicy przy użyciu tablicy indeksów dla każdego wymiaru + + Nazwa elementu członkowskiego + Wartość do ustawienia + indeksy tablicy + + + + Pobiera element tablicy przy użyciu tablicy indeksów dla każdego wymiaru + + Nazwa elementu członkowskiego + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + indeksy tablicy + Tablica elementów. + + + + Ustawia element tablicy przy użyciu tablicy indeksów dla każdego wymiaru + + Nazwa elementu członkowskiego + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Wartość do ustawienia + indeksy tablicy + + + + Pobierz pole + + Nazwa pola + Pole. + + + + Ustawia pole + + Nazwa pola + wartość do ustawienia + + + + Pobiera pole + + Nazwa pola + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Pole. + + + + Ustawia pole + + Nazwa pola + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + wartość do ustawienia + + + + Pobierz pole lub właściwość + + Nazwa pola lub właściwości + Pole lub właściwość. + + + + Ustawia pole lub właściwość + + Nazwa pola lub właściwości + wartość do ustawienia + + + + Pobiera pole lub właściwość + + Nazwa pola lub właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Pole lub właściwość. + + + + Ustawia pole lub właściwość + + Nazwa pola lub właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + wartość do ustawienia + + + + Pobiera właściwość + + Nazwa właściwości + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość. + + + + Pobiera właściwość + + Nazwa właściwości + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość. + + + + Ustaw właściwość + + Nazwa właściwości + wartość do ustawienia + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Ustaw właściwość + + Nazwa właściwości + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + wartość do ustawienia + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Pobiera właściwość + + Nazwa właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość. + + + + Pobiera właściwość + + Nazwa właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość. + + + + Ustawia właściwość + + Nazwa właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + wartość do ustawienia + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Ustawia właściwość + + Nazwa właściwości + Maska bitów składająca się z co najmniej jednego określający sposób wykonania wyszukiwania. + wartość do ustawienia + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Zweryfikuj ciąg dostępu + + ciąg dostępu + + + + Wywołuje element członkowski + + Nazwa elementu członkowskiego + Dodatkowe atrybuty + Argumenty wywołania + Kultura + Wynik wywołania + + + + Wyodrębnia najbardziej odpowiednią sygnaturę metody ogólnej z bieżącego typu prywatnego. + + Nazwa metody przeszukującej pamięć podręczną sygnatur. + Tablica typów odpowiadających typom przeszukiwanych parametrów. + Tablica typów odpowiadających typom argumentów ogólnych. + , aby bardziej szczegółowo filtrować sygnatury metod. + Modyfikatory dla parametrów. + Wystąpienie elementu methodinfo. + + + + Ta klasa reprezentuje klasę prywatną dla funkcjonalności prywatnej metody dostępu. + + + + + Wiąże się z każdym elementem + + + + + Opakowany typ. + + + + + Inicjuje nowe wystąpienie klasy , które zawiera typ prywatny. + + Nazwa zestawu + w pełni kwalifikowana nazwa + + + + Inicjuje nowe wystąpienie klasy , które zawiera + typ prywatny z obiektu typu + + Opakowany typ do utworzenia. + + + + Pobiera przywoływany typ + + + + + Wywołuje statyczny element członkowski + + Nazwa elementu członkowskiego dla elementu InvokeHelper + Argumenty wywołania + Wynik wywołania + + + + Wywołuje statyczny element członkowski + + Nazwa elementu członkowskiego dla elementu InvokeHelper + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Wynik wywołania + + + + Wywołuje statyczny element członkowski + + Nazwa elementu członkowskiego dla elementu InvokeHelper + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Tablica typów odpowiadających typom argumentów ogólnych. + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Argumenty wywołania + Kultura + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Informacje o kulturze + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + Argumenty wywołania + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + Argumenty wywołania + Kultura + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + /// Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Kultura + Wynik wywołania + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + /// Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów dla metody do wywołania + Argumenty wywołania + Kultura + Tablica typów odpowiadających typom argumentów ogólnych. + Wynik wywołania + + + + Pobiera element w tablicy statycznej + + Nazwa tablicy + + Jednowymiarowa tablica 32-bitowych liczb całkowitych reprezentujących indeksy określające + pozycję elementu do pobrania. Przykładowo aby uzyskać dostęp do elementu a[10][11], indeksem będzie {10,11} + + element w określonej lokalizacji + + + + Ustawia element członkowski tablicy statycznej + + Nazwa tablicy + wartość do ustawienia + + Jednowymiarowa tablica 32-bitowych liczb całkowitych reprezentujących indeksy określające + pozycję elementu do ustawienia. Przykładowo aby uzyskać dostęp do elementu a[10][11], tablicą będzie {10,11} + + + + + Pobiera element z tablicy statycznej + + Nazwa tablicy + Dodatkowe atrybuty elementu InvokeHelper + + Jednowymiarowa tablica 32-bitowych liczb całkowitych reprezentujących indeksy określające + pozycję elementu do pobrania. Przykładowo aby uzyskać dostęp do elementu a[10][11], tablicą będzie {10,11} + + element w określonej lokalizacji + + + + Ustawia element członkowski tablicy statycznej + + Nazwa tablicy + Dodatkowe atrybuty elementu InvokeHelper + wartość do ustawienia + + Jednowymiarowa tablica 32-bitowych liczb całkowitych reprezentujących indeksy określające + pozycję elementu do ustawienia. Przykładowo aby uzyskać dostęp do elementu a[10][11], tablicą będzie {10,11} + + + + + Pobiera pole statyczne + + Nazwa pola + Pole statyczne. + + + + Ustawia pole statyczne + + Nazwa pola + Argument wywołania + + + + Pobiera pole statyczne za pomocą określonych atrybutów elementu InvokeHelper + + Nazwa pola + Dodatkowe atrybuty wywołania + Pole statyczne. + + + + Ustawia pole statyczne za pomocą atrybutów powiązania + + Nazwa pola + Dodatkowe atrybuty elementu InvokeHelper + Argument wywołania + + + + Pobiera pole statyczne lub właściwość + + Nazwa pola lub właściwości + Statyczne pole lub właściwość. + + + + Ustawia pole statyczne lub właściwość + + Nazwa pola lub właściwości + Wartość do ustawienia dla pola lub właściwości + + + + Pobiera pole statyczne lub właściwość za pomocą określonych atrybutów elementu InvokeHelper + + Nazwa pola lub właściwości + Dodatkowe atrybuty wywołania + Statyczne pole lub właściwość. + + + + Ustawia pole statyczne lub właściwość za pomocą atrybutów powiązania + + Nazwa pola lub właściwości + Dodatkowe atrybuty wywołania + Wartość do ustawienia dla pola lub właściwości + + + + Pobiera właściwość statyczną + + Nazwa pola lub właściwości + Argumenty wywołania + Właściwość statyczna. + + + + Ustawia właściwość statyczną + + Nazwa właściwości + Wartość do ustawienia dla pola lub właściwości + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Ustawia właściwość statyczną + + Nazwa właściwości + Wartość do ustawienia dla pola lub właściwości + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Pobiera właściwość statyczną + + Nazwa właściwości + Dodatkowe atrybuty wywołania. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość statyczna. + + + + Pobiera właściwość statyczną + + Nazwa właściwości + Dodatkowe atrybuty wywołania. + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + Właściwość statyczna. + + + + Ustawia właściwość statyczną + + Nazwa właściwości + Dodatkowe atrybuty wywołania. + Wartość do ustawienia dla pola lub właściwości + Opcjonalne wartości indeksu dla właściwości indeksowanych. Indeksy właściwości indeksowanych są liczone od zera. W przypadku właściwości nieindeksowanych powinna to być wartość null. + + + + Ustawia właściwość statyczną + + Nazwa właściwości + Dodatkowe atrybuty wywołania. + Wartość do ustawienia dla pola lub właściwości + Tablica obiektów reprezentujących liczbę, kolejność i typ parametrów właściwości indeksowanej. + Argumenty do przekazania do elementu członkowskiego na potrzeby wywołania. + + + + Wywołuje metodę statyczną + + Nazwa elementu członkowskiego + Dodatkowe atrybuty wywołania + Argumenty wywołania + Kultura + Wynik wywołania + + + + Udostępnia odnajdywanie podpisu metody dla metod ogólnych. + + + + + Porównuje sygnatury tych dwóch metod. + + Method1 + Method2 + Ma wartość true, jeśli są one podobne. + + + + Pobiera głębokość hierarchii z typu podstawowego podanego typu. + + Typ. + Głębokość. + + + + Znajduje najbardziej pochodny typ z podanymi informacjami. + + Dopasowania kandydatów. + Liczba dopasowań. + Najbardziej pochodna metoda. + + + + Za pomocą podanego zbioru metod pasujących do podstawowych kryteriów wybierz metodę + opartą na tablicy typów. Ta metoda powinna zwracać wartość null, jeśli żadna metoda + nie pasuje do kryteriów. + + Specyfikacja powiązania. + Dopasowania kandydatów + Typy + Modyfikatory parametrów. + Zgodna metoda. Null, jeśli brak zgodności. + + + + Znajduje najbardziej specyficzną metodę spośród dwóch podanych metod. + + Metoda 1 + Kolejność parametrów dla metody 1 + Typ tablicy parametrów. + Metoda 2 + Kolejność parametrów dla metody 2 + >Typ tablicy parametrów. + Typy do przeszukania. + Argumenty. + Wartość int reprezentująca dopasowanie. + + + + Znajduje najbardziej specyficzną metodę spośród dwóch podanych metod. + + Metoda 1 + Kolejność parametrów dla metody 1 + Typ tablicy parametrów. + Metoda 2 + Kolejność parametrów dla metody 2 + >Typ tablicy parametrów. + Typy do przeszukania. + Argumenty. + Wartość int reprezentująca dopasowanie. + + + + Znajduje najbardziej specyficzny typ spośród dwóch podanych. + + Typ 1 + Typ 2 + Typ definiujący + Wartość int reprezentująca dopasowanie. + + + + Używane do przechowywania informacji udostępnianych testom jednostkowym. + + + + + Pobiera właściwości testu. + + + + + Pobiera bieżący wiersz danych, gdy test służy do testowania opartego na danych. + + + + + Pobiera bieżący wiersz połączenia danych, gdy test służy do testowania opartego na danych. + + + + + Pobiera katalog podstawowy dla uruchomienia testu, w którym są przechowywane wdrożone pliki i pliki wyników. + + + + + Pobiera katalog dla plików wdrożonych na potrzeby uruchomienia testu. Zazwyczaj jest to podkatalog . + + + + + Pobiera katalog podstawowy dla wyników uruchomienia testu. Zazwyczaj jest to podkatalog . + + + + + Pobiera katalog dla plików wyników uruchomienia testu. Zazwyczaj jest to podkatalog . + + + + + Pobiera katalog dla plików wyników testu. + + + + + Pobiera katalog podstawowy dla uruchomienia testu, w którym są przechowywane wdrożone pliki i pliki wyników. + Taki sam jak . Zamiast tego użyj tej właściwości. + + + + + Pobiera katalog dla plików wdrożonych na potrzeby uruchomienia testu. Zazwyczaj jest to podkatalog . + Taki sam jak . Zamiast tego użyj tej właściwości. + + + + + Pobiera katalog dla plików wyników uruchomienia testu. Zazwyczaj jest to podkatalog . + Taki sam jak . Użyj tej właściwości dla plików wyników uruchomienia testu lub zamiast tego użyj katalogu + dla plików wyników specyficznych dla testu. + + + + + Pobiera w pełni kwalifikowaną nazwę klasy zawierającej metodę testowania, która jest obecnie wykonywana + + + + + Pobiera nazwę aktualnie wykonywanej metody testowej + + + + + Pobiera wynik bieżącego testu. + + + + + Używane do zapisywania komunikatów śledzenia podczas działania testu + + ciąg sformatowanego komunikatu + + + + Używane do zapisywania komunikatów śledzenia podczas działania testu + + ciąg formatu + argumenty + + + + Dodaje nazwę pliku do listy w elemencie TestResult.ResultFileNames + + + Nazwa pliku. + + + + + Uruchamia czasomierz o określonej nazwie + + Nazwa czasomierza. + + + + Zatrzymuje czasomierz o określonej nazwie + + Nazwa czasomierza. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5593384 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metoda TestMethod do wykonania. + + + + + Pobiera nazwę metody testowej. + + + + + Pobiera nazwę klasy testowej. + + + + + Pobiera zwracany typ metody testowej. + + + + + Pobiera parametry metody testowej. + + + + + Pobiera element methodInfo dla metody testowej. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Wywołuje metodę testową. + + + Argumenty przekazywane do metody testowej (np. w przypadku opartej na danych) + + + Wynik wywołania metody testowej. + + + This call handles asynchronous test methods as well. + + + + + Pobierz wszystkie atrybuty metody testowej. + + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Wszystkie atrybuty. + + + + + Pobierz atrybut określonego typu. + + System.Attribute type. + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Atrybuty określonego typu. + + + + + Element pomocniczy. + + + + + Sprawdzany parametr nie ma wartości null. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws argument null exception when parameter is null. + + + + Sprawdzany parametr nie ma wartości null i nie jest pusty. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws ArgumentException when parameter is null. + + + + Wyliczenie dotyczące sposobu dostępu do wierszy danych w teście opartym na danych. + + + + + Wiersze są zwracane po kolei. + + + + + Wiersze są zwracane w kolejności losowej. + + + + + Atrybut do definiowania danych wbudowanych dla metody testowej. + + + + + Inicjuje nowe wystąpienie klasy . + + Obiekt danych. + + + + Inicjuje nowe wystąpienie klasy , które pobiera tablicę argumentów. + + Obiekt danych. + Więcej danych. + + + + Pobiera dane do wywoływania metody testowej. + + + + + Pobiera lub ustawia nazwę wyświetlaną w wynikach testu do dostosowania. + + + + + Wyjątek niejednoznacznej asercji. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Klasa InternalTestFailureException. Używana do określenia wewnętrznego błędu przypadku testowego + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Atrybut określający, że jest oczekiwany wyjątek określonego typu + + + + + Inicjuje nowe wystąpienie klasy z oczekiwanym typem + + Typ oczekiwanego wyjątku + + + + Inicjuje nowe wystąpienie klasy z + oczekiwanym typem i komunikatem do uwzględnienia, gdy test nie zgłasza żadnego wyjątku. + + Typ oczekiwanego wyjątku + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ nie zostanie zgłoszony wyjątek + + + + + Pobiera wartość wskazującą typ oczekiwanego wyjątku + + + + + Pobiera lub ustawia wartość wskazującą, czy typy pochodne typu oczekiwanego wyjątku + są traktowane jako oczekiwane + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Weryfikuje, czy typ wyjątku zgłoszonego przez test jednostkowy jest oczekiwany + + Wyjątek zgłoszony przez test jednostkowy + + + + Klasa podstawowa dla atrybutów, które określają, że jest oczekiwany wyjątek z testu jednostkowego + + + + + Inicjuje nowe wystąpienie klasy z domyślnym komunikatem o braku wyjątku + + + + + Inicjuje nowe wystąpienie klasy z komunikatem o braku wyjątku + + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ + nie zostanie zgłoszony wyjątek + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera domyślny komunikat bez wyjątku + + Nazwa typu atrybutu ExpectedException + Domyślny komunikat bez wyjątku + + + + Określa, czy wyjątek jest oczekiwany. Jeśli wykonanie metody zakończy się normalnie, oznacza to, + że wyjątek był oczekiwany. Jeśli metoda zgłosi wyjątek, oznacza to, + że wyjątek nie był oczekiwany, a komunikat zgłoszonego wyjątku + jest dołączony do wyniku testu. Klasy można użyć dla + wygody. Jeśli zostanie użyta klasa i asercja nie powiedzie się, + wynik testu zostanie ustawiony jako Niejednoznaczny. + + Wyjątek zgłoszony przez test jednostkowy + + + + Zgłoś ponownie wyjątek, jeśli jest to wyjątek AssertFailedException lub AssertInconclusiveException + + Wyjątek do ponownego zgłoszenia, jeśli jest to wyjątek asercji + + + + Ta klasa jest zaprojektowana w taki sposób, aby pomóc użytkownikowi wykonującemu testy jednostkowe dla typów używających typów ogólnych. + Element GenericParameterHelper zachowuje niektóre typowe ograniczenia typów ogólnych, + takie jak: + 1. publiczny konstruktor domyślny + 2. implementuje wspólny interfejs: IComparable, IEnumerable + + + + + Inicjuje nowe wystąpienie klasy , które + spełnia ograniczenie „newable” w typach ogólnych języka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicjuje nowe wystąpienie klasy , które + inicjuje właściwość Data wartością dostarczoną przez użytkownika. + + Dowolna liczba całkowita + + + + Pobiera lub ustawia element Data + + + + + Wykonuje porównanie wartości dwóch obiektów GenericParameterHelper + + obiekt, z którym ma zostać wykonane porównanie + Wartość true, jeśli obiekt ma tę samą wartość co obiekt „this” typu GenericParameterHelper. + W przeciwnym razie wartość false. + + + + Zwraca wartość skrótu tego obiektu. + + Kod skrótu. + + + + Porównuje dane dwóch obiektów . + + Obiekt do porównania. + + Liczba ze znakiem, która wskazuje wartości względne tego wystąpienia i wartości. + + + Thrown when the object passed in is not an instance of . + + + + + Zwraca obiekt IEnumerator, którego długość jest określona na podstawie + właściwości Data. + + Obiekt IEnumerator + + + + Zwraca obiekt GenericParameterHelper równy + bieżącemu obiektowi. + + Sklonowany obiekt. + + + + Umożliwia użytkownikom rejestrowanie/zapisywanie śladów z testów jednostek w celach diagnostycznych. + + + + + Procedura obsługi elementu LogMessage. + + Komunikat do zarejestrowania. + + + + Zdarzenie, które ma być nasłuchiwane. Zgłaszane, gdy składnik zapisywania testu jednostkowego zapisze jakiś komunikat. + Zwykle zużywane przez adapter. + + + + + Interfejs API składnika zapisywania testu do wywołania na potrzeby rejestrowania komunikatów. + + Format ciągu z symbolami zastępczymi. + Parametry dla symboli zastępczych. + + + + Atrybut TestCategory używany do określenia kategorii testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy i stosuje kategorię do testu. + + + Kategoria testu. + + + + + Pobiera kategorie testu, które zostały zastosowane do testu. + + + + + Klasa podstawowa atrybutu „Category” + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicjuje nowe wystąpienie klasy . + Stosuje kategorię do testu. Ciągi zwrócone przez element TestCategories + są używane w poleceniu /category do filtrowania testów + + + + + Pobiera kategorię testu, która została zastosowana do testu. + + + + + Klasa AssertFailedException. Używana do wskazania niepowodzenia przypadku testowego + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków w ramach + testów jednostkowych. Jeśli testowany warunek nie zostanie spełniony, zostanie zgłoszony + wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is true. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null. + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Zgłasza wyjątek AssertFailedException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Statyczne przeciążenia metody equals są używane do porównywania wystąpień dwóch typów pod kątem + równości odwołań. Ta metoda nie powinna być używana do porównywania dwóch wystąpień pod kątem + równości. Ten obiekt zawsze będzie zgłaszał wyjątek za pomocą metody Assert.Fail. Użyj metody + Assert.AreEqual i skojarzonych przeciążeń w testach jednostkowych. + + Obiekt A + Obiekt B + Zawsze wartość false. + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Zastępuje znaki null („\0”) ciągiem „\\0”. + + + Ciąg do wyszukania. + + + Przekonwertowany ciąg ze znakami null zastąpionymi ciągiem „\\0”. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funkcja pomocnicza, która tworzy i zgłasza wyjątek AssertionFailedException + + + nazwa asercji zgłaszającej wyjątek + + + komunikat opisujący warunki dla błędu asercji + + + Parametry. + + + + + Sprawdza parametry pod kątem prawidłowych warunków + + + Parametr. + + + Nazwa asercji. + + + nazwa parametru + + + komunikat dla wyjątku nieprawidłowego parametru + + + Parametry. + + + + + Bezpiecznie konwertuje obiekt na ciąg, obsługując wartości null i znaki null. + Wartości null są konwertowane na ciąg „(null)”. Znaki null są konwertowane na ciąg „\\0”. + + + Obiekt do przekonwertowania na ciąg. + + + Przekonwertowany ciąg. + + + + + Asercja ciągu. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if matches . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków skojarzonych + z kolekcjami w ramach testów jednostkowych. Jeśli testowany warunek + nie jest spełniony, zostanie zgłoszony wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is not found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if every element in is also found in + . + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Określa, czy pierwsza kolekcja jest podzbiorem drugiej kolekcji. + Jeśli któryś zbiór zawiera zduplikowane elementy, liczba wystąpień + elementu w podzbiorze musi być mniejsza lub równa liczbie + wystąpień w nadzbiorze. + + + Kolekcja, co do której test oczekuje, że powinna być zawarta w . + + + Kolekcja, co do której test oczekuje, że powinna zawierać . + + + Wartość true, jeśli jest podzbiorem kolekcji + , w przeciwnym razie wartość false. + + + + + Tworzy słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + Kolekcja do przetworzenia. + + + Liczba elementów o wartości null w kolekcji. + + + Słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + + + Znajduje niezgodny element w dwóch kolekcjach. Niezgodny + element to ten, którego liczba wystąpień w oczekiwanej kolekcji + jest inna niż w rzeczywistej kolekcji. Kolekcje + są uznawane za różne odwołania o wartości innej niż null z tą samą + liczbą elementów. Obiekt wywołujący jest odpowiedzialny za ten poziom weryfikacji. + Jeśli nie ma żadnego niezgodnego elementu, funkcja zwraca wynik + false i parametry wyjściowe nie powinny być używane. + + + Pierwsza kolekcja do porównania. + + + Druga kolekcja do porównania. + + + Oczekiwana liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Rzeczywista liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Niezgodny element (może mieć wartość null) lub wartość null, jeśli + nie ma żadnego niezgodnego elementu. + + + wartość true, jeśli znaleziono niezgodny element; w przeciwnym razie wartość false. + + + + + porównuje obiekty przy użyciu funkcji object.Equals + + + + + Klasa podstawowa dla wyjątków struktury. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Silnie typizowana klasa zasobów do wyszukiwania zlokalizowanych ciągów itp. + + + + + Zwraca buforowane wystąpienie ResourceManager używane przez tę klasę. + + + + + Przesłania właściwość CurrentUICulture bieżącego wątku dla wszystkich + przypadków przeszukiwania zasobów za pomocą tej silnie typizowanej klasy zasobów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg dostępu ma nieprawidłową składnię. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana kolekcja zawiera następującą liczbę wystąpień elementu <{2}>: {1}. Rzeczywista kolekcja zawiera następującą liczbę wystąpień: {3}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Znaleziono zduplikowany element: <{1}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano: <{1}>. Przypadek jest inny w wartości rzeczywistej: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy nie większej niż <{3}> między oczekiwaną wartością <{1}> i wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1} ({2})>. Rzeczywista wartość: <{3} ({4})>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1}>. Rzeczywista wartość: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy większej niż <{3}> między oczekiwaną wartością <{1}> a wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano dowolnej wartości z wyjątkiem: <{1}>. Wartość rzeczywista: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie przekazuj typów wartości do metody AreSame(). Wartości przekonwertowane na typ Object nigdy nie będą takie same. Rozważ użycie metody AreEqual(). {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} — niepowodzenie. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do asynchronicznej metody TestMethod z elementem UITestMethodAttribute, które nie są obsługiwane. Usuń element asynchroniczny lub użyj elementu TestMethodAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje są puste. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Odwołania do obu kolekcji wskazują ten sam obiekt kolekcji. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0}({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (null). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (object). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie zawiera ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} ({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można użyć metody Assert.Equals dla asercji. Zamiast tego użyj metody Assert.AreEqual i przeciążeń. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Liczba elementów w kolekcjach nie jest zgodna. Oczekiwana wartość: <{1}>. Wartość rzeczywista: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {0} nie jest zgodny. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} nie ma oczekiwanego typu. Oczekiwany typ: <{2}>. Rzeczywisty typ: <{3}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} ma wartość (null). Oczekiwany typ: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie kończy się ciągiem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nieprawidłowy argument. Element EqualsTester nie może używać wartości null. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można przekonwertować obiektu typu {0} na typ {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Przywoływany obiekt wewnętrzny nie jest już prawidłowy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Właściwość {0} ma typ {1}. Oczekiwano typu {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} Oczekiwany typ: <{1}>. Rzeczywisty typ: <{2}>. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Niepoprawny typ: <{1}>. Rzeczywisty typ: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie określono atrybutu DataRowAttribute. Atrybut DataTestMethodAttribute wymaga co najmniej jednego atrybutu DataRowAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie zgłoszono wyjątku. Oczekiwany wyjątek: {1}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. Wartość nie może być równa null. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Inna liczba elementów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć konstruktora z określoną sygnaturą. Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć określonego elementu członkowskiego ({0}). Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie rozpoczyna się od ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwanym typem wyjątku musi być typ System.Exception lub typ pochodzący od typu System.Exception. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (Nie można pobrać komunikatu dotyczącego wyjątku typu {0} z powodu wyjątku). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła oczekiwanego wyjątku {0}. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła wyjątku. Wyjątek był oczekiwany przez atrybut {0} zdefiniowany w metodzie testowej. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1}. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1} lub typu, który od niego pochodzi. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Zgłoszono wyjątek {2}, ale oczekiwano wyjątku {1}. {0} + Komunikat o wyjątku: {3} + Ślad stosu: {4}. + + + + + wyniki testu jednostkowego + + + + + Test został wykonany, ale wystąpiły problemy. + Problemy mogą obejmować wyjątki lub asercje zakończone niepowodzeniem. + + + + + Test został ukończony, ale nie można stwierdzić, czy zakończył się powodzeniem, czy niepowodzeniem. + Może być używany dla przerwanych testów. + + + + + Test został wykonany bez żadnych problemów. + + + + + Test jest obecnie wykonywany. + + + + + Wystąpił błąd systemu podczas próby wykonania testu. + + + + + Upłynął limit czasu testu. + + + + + Test został przerwany przez użytkownika. + + + + + Stan testu jest nieznany + + + + + Udostępnia funkcjonalność pomocnika dla platformy testów jednostkowych + + + + + Pobiera komunikaty wyjątku, w tym rekursywnie komunikaty wszystkich wewnętrznych + wyjątków + + Wyjątek, dla którego mają zostać pobrane komunikaty + ciąg z informacjami o komunikacie o błędzie + + + + Wyliczenie dla limitów czasu, które może być używane z klasą . + Typ wyliczenia musi być zgodny + + + + + Nieskończone. + + + + + Atrybut klasy testowej. + + + + + Pobiera atrybut metody testowej, który umożliwia uruchomienie tego testu. + + Wystąpienie atrybutu metody testowej zdefiniowane w tej metodzie. + do użycia do uruchamiania tego testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atrybut metody testowej. + + + + + Wykonuje metodę testową. + + Metoda testowa do wykonania. + Tablica obiektów TestResult reprezentujących wyniki testu. + Extensions can override this method to customize running a TestMethod. + + + + Atrybut inicjowania testu. + + + + + Atrybut oczyszczania testu. + + + + + Atrybut ignorowania. + + + + + Atrybut właściwości testu. + + + + + Inicjuje nowe wystąpienie klasy . + + + Nazwa. + + + Wartość. + + + + + Pobiera nazwę. + + + + + Pobiera wartość. + + + + + Atrybut inicjowania klasy. + + + + + Atrybut oczyszczania klasy. + + + + + Atrybut inicjowania zestawu. + + + + + Atrybut oczyszczania zestawu. + + + + + Właściciel testu + + + + + Inicjuje nowe wystąpienie klasy . + + + Właściciel. + + + + + Pobiera właściciela. + + + + + Atrybut priorytetu służący do określania priorytetu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Priorytet. + + + + + Pobiera priorytet. + + + + + Opis testu + + + + + Inicjuje nowe wystąpienie klasy do opisu testu. + + Opis. + + + + Pobiera opis testu. + + + + + Identyfikator URI struktury projektu CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI struktury projektu CSS. + + Identyfikator URI struktury projektu CSS. + + + + Pobiera identyfikator URI struktury projektu CSS. + + + + + Identyfikator URI iteracji CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI iteracji CSS. + + Identyfikator URI iteracji CSS. + + + + Pobiera identyfikator URI iteracji CSS. + + + + + Atrybut elementu roboczego służący do określania elementu roboczego skojarzonego z tym testem. + + + + + Inicjuje nowe wystąpienie klasy dla atrybutu WorkItem. + + Identyfikator dla elementu roboczego. + + + + Pobiera identyfikator dla skojarzonego elementu roboczego. + + + + + Atrybut limitu czasu służący do określania limitu czasu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Limit czasu. + + + + + Inicjuje nowe wystąpienie klasy ze wstępnie ustawionym limitem czasu + + + Limit czasu + + + + + Pobiera limit czasu. + + + + + Obiekt TestResult zwracany do adaptera. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Pobiera lub ustawia nazwę wyświetlaną wyniku. Przydatny w przypadku zwracania wielu wyników. + Jeśli ma wartość null, nazwa metody jest używana jako nazwa wyświetlana. + + + + + Pobiera lub ustawia wynik wykonania testu. + + + + + Pobiera lub ustawia wyjątek zgłoszony, gdy test kończy się niepowodzeniem. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia ślady debugowania przez kod testu. + + + + + Gets or sets the debug traces by test code. + + + + + Pobiera lub ustawia czas trwania wykonania testu. + + + + + Pobiera lub ustawia indeks wiersza danych w źródle danych. Ustawia tylko dla wyników oddzielnych + uruchomień wiersza danych w teście opartym na danych. + + + + + Pobiera lub ustawia wartość zwracaną metody testowej. (Obecnie zawsze wartość null). + + + + + Pobiera lub ustawia pliki wyników dołączone przez test. + + + + + Określa parametry połączenia, nazwę tabeli i metodę dostępu do wiersza w przypadku testowania opartego na danych. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nazwa domyślnego dostawcy dla źródła danych. + + + + + Domyślna metoda uzyskiwania dostępu do danych. + + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych, parametrami połączenia, tabelą danych i metodą dostępu do danych w celu uzyskania dostępu do źródła danych. + + Niezmienna nazwa dostawcy danych, taka jak System.Data.SqlClient + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + Określa kolejność dostępu do danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z parametrami połączenia i nazwą tabeli. + Określ parametry połączenia i tabelę danych w celu uzyskania dostępu do źródła danych OLEDB. + + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych i parametrami połączenia skojarzonymi z nazwą ustawienia. + + Nazwa źródła danych znaleziona w sekcji <microsoft.visualstudio.qualitytools> pliku app.config. + + + + Pobiera wartość reprezentującą dostawcę danych źródła danych. + + + Nazwa dostawcy danych. Jeśli dostawca danych nie został wyznaczony w czasie inicjowania obiektu, zostanie zwrócony domyślny dostawca obiektu System.Data.OleDb. + + + + + Pobiera wartość reprezentującą parametry połączenia dla źródła danych. + + + + + Pobiera wartość wskazującą nazwę tabeli udostępniającej dane. + + + + + Pobiera metodę używaną do uzyskiwania dostępu do źródła danych. + + + + Jedna z . Jeśli nie zainicjowano , zwróci wartość domyślną . + + + + + Pobiera nazwę źródła danych znajdującego się w sekcji <microsoft.visualstudio.qualitytools> w pliku app.config. + + + + + Atrybut dla testu opartego na danych, w którym dane można określić bezpośrednio. + + + + + Znajdź wszystkie wiersze danych i wykonaj. + + + Metoda testowa. + + + Tablica elementów . + + + + + Uruchamianie metody testowej dla testu opartego na danych. + + Metoda testowa do wykonania. + Wiersz danych. + Wyniki wykonania. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..e39df20 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usado para especificar o item de implantação (arquivo ou diretório) para implantação por teste. + Pode ser especificado em classe de teste ou em método de teste. + Pode ter várias instâncias do atributo para especificar mais de um item. + O caminho do item pode ser absoluto ou relativo. Se relativo, é relativo a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Inicializa uma nova instância da classe . + + O arquivo ou o diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + + + + Inicializa uma nova instância da classe + + O caminho relativo ou absoluto ao arquivo ou ao diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + O caminho do diretório para o qual os itens deverão ser copiados. Ele pode ser absoluto ou relativo ao diretório de implantação. Todos os arquivos e diretórios identificados por serão copiados para esse diretório. + + + + Obtém o caminho da pasta ou do arquivo de origem a ser copiado. + + + + + Obtém o caminho do diretório para o qual o item é copiado. + + + + + Contém literais dos nomes das seções, das propriedades e dos atributos. + + + + + O nome da seção de configuração. + + + + + O nome da seção de configuração para Beta2. Mantida para compatibilidade. + + + + + Nome da Seção para a Fonte de dados. + + + + + Nome do Atributo para 'Name' + + + + + Nome do Atributo para 'ConnectionString' + + + + + Nome do Atributo para 'DataAccessMethod' + + + + + Nome do Atributo para 'DataTable' + + + + + O elemento da Fonte de Dados. + + + + + Obtém ou define o nome para essa configuração. + + + + + Obtém ou define o elemento ConnectionStringSettings na seção <connectionStrings> no arquivo .config. + + + + + Obtém ou define o nome da tabela de dados. + + + + + Obtém ou define o tipo de acesso a dados. + + + + + Obtém o nome da chave. + + + + + Obtém as propriedades de configuração. + + + + + A coleção de elementos da Fonte de dados. + + + + + Inicializa uma nova instância da classe . + + + + + Retorna o elemento de configuração com a chave especificada. + + A chave do elemento a ser retornada. + O System.Configuration.ConfigurationElement com a chave especificada; caso contrário, nulo. + + + + Obtém o elemento de configuração no local do índice especificado. + + O local do índice do System.Configuration.ConfigurationElement a ser retornado. + + + + Adiciona um elemento de configuração à coleção de elementos de configuração. + + O System.Configuration.ConfigurationElement para adicionar. + + + + Remove um System.Configuration.ConfigurationElement da coleção. + + O . + + + + Remove um System.Configuration.ConfigurationElement da coleção. + + A chave do System.Configuration.ConfigurationElement a ser removida. + + + + Remove todos os objetos de elementos de configuração da coleção. + + + + + Cria o novo . + + Um novo . + + + + Obtém a chave do elemento para um elemento de configuração especificado. + + O System.Configuration.ConfigurationElement para o qual retornar a chave. + Um System.Object que age como a chave para o System.Configuration.ConfigurationElement especificado. + + + + Adiciona um elemento de configuração à coleção de elementos de configuração. + + O System.Configuration.ConfigurationElement para adicionar. + + + + Adiciona um elemento de configuração à coleção de elementos de configuração. + + O local do índice no qual adicionar o System.Configuration.ConfigurationElement especificado. + O System.Configuration.ConfigurationElement para adicionar. + + + + Suporte para as definições de configuração dos Testes. + + + + + Obtém a seção de configuração para testes. + + + + + A seção de configuração para testes. + + + + + Obtém as fontes de dados para essa seção da configuração. + + + + + Obtém a coleção de propriedades. + + + O de propriedades para o elemento. + + + + + Essa classe representa o objeto dinâmico INTERNO NÃO público no sistema + + + + + Inicializa a nova instância da classe que contém + o objeto já existente da classe particular + + objeto que serve como ponto inicial para alcançar os membros particulares + a cadeia de caracteres de desreferência usando . que aponta para o objeto a ser recuperado como em m_X.m_Y.m_Z + + + + Inicializa uma nova instância da classe que encapsula o + objeto especificado. + + Nome do assembly + nome totalmente qualificado + Argumentos a serem passados ao construtor + + + + Inicializa uma nova instância da classe que encapsula o + objeto especificado. + + Nome do assembly + nome totalmente qualificado + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo construtor + Argumentos a serem passados ao construtor + + + + Inicializa uma nova instância da classe que encapsula o + objeto especificado. + + o tipo do objeto a ser criado + Argumentos a serem passados ao construtor + + + + Inicializa uma nova instância da classe que encapsula o + objeto especificado. + + o tipo do objeto a ser criado + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo construtor + Argumentos a serem passados ao construtor + + + + Inicializa uma nova instância da classe que encapsula + o objeto fornecido. + + objeto a ser encapsulado + + + + Inicializa uma nova instância da classe que encapsula + o objeto fornecido. + + objeto a ser encapsulado + Objeto PrivateType + + + + Obtém ou define o destino + + + + + Obtém o tipo de objeto subjacente + + + + + retorna o código hash do objeto de destino + + int que representa o código hash do objeto de destino + + + + Igual a + + Objeto com o qual comparar + retorna verdadeiro se os objetos forem iguais. + + + + Invoca o método especificado + + Nome do método + Argumentos a serem passados para o membro a ser invocado. + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Uma matriz de tipos que correspondem aos tipos dos argumentos genéricos. + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Argumentos a serem passados para o membro a ser invocado. + Informações de cultura + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Informações de cultura + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Argumentos a serem passados para o membro a ser invocado. + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Argumentos a serem passados para o membro a ser invocado. + Informações de cultura + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Informações de cultura + Resultado da chamada de método + + + + Invoca o método especificado + + Nome do método + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem obtidos pelo método. + Argumentos a serem passados para o membro a ser invocado. + Informações de cultura + Uma matriz de tipos que correspondem aos tipos dos argumentos genéricos. + Resultado da chamada de método + + + + Obtém o elemento da matriz que usa a matriz de subscritos para cada dimensão + + Nome do membro + os índices da matriz + Uma matriz de elementos. + + + + Define o elemento da matriz que usa a matriz de subscritos para cada dimensão + + Nome do membro + Valor a ser definido + os índices da matriz + + + + Obtém o elemento da matriz que usa a matriz de subscritos para cada dimensão + + Nome do membro + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + os índices da matriz + Uma matriz de elementos. + + + + Define o elemento da matriz que usa a matriz de subscritos para cada dimensão + + Nome do membro + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Valor a ser definido + os índices da matriz + + + + Obter o campo + + Nome do campo + O campo. + + + + Define o campo + + Nome do campo + valor a ser definido + + + + Obtém o campo + + Nome do campo + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + O campo. + + + + Define o campo + + Nome do campo + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + valor a ser definido + + + + Obter o campo ou a propriedade + + Nome do campo ou da propriedade + O campo ou a propriedade. + + + + Define o campo ou a propriedade + + Nome do campo ou da propriedade + valor a ser definido + + + + Obtém o campo ou a propriedade + + Nome do campo ou da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + O campo ou a propriedade. + + + + Define o campo ou a propriedade + + Nome do campo ou da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + valor a ser definido + + + + Obtém a propriedade + + Nome da propriedade + Argumentos a serem passados para o membro a ser invocado. + A propriedade. + + + + Obtém a propriedade + + Nome da propriedade + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + A propriedade. + + + + Definir a propriedade + + Nome da propriedade + valor a ser definido + Argumentos a serem passados para o membro a ser invocado. + + + + Definir a propriedade + + Nome da propriedade + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + valor a ser definido + Argumentos a serem passados para o membro a ser invocado. + + + + Obtém a propriedade + + Nome da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Argumentos a serem passados para o membro a ser invocado. + A propriedade. + + + + Obtém a propriedade + + Nome da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + A propriedade. + + + + Define a propriedade + + Nome da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + valor a ser definido + Argumentos a serem passados para o membro a ser invocado. + + + + Define a propriedade + + Nome da propriedade + Um bitmask composto de um ou mais que especificam como a pesquisa é conduzida. + valor a ser definido + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + + + + Validar cadeia de caracteres de acesso + + cadeia de caracteres de acesso + + + + Invoca o membro + + Nome do membro + Atributos adicionais + Argumentos para a invocação + Cultura + Resultado da invocação + + + + Extrai a assinatura mais apropriada do método genérico do tipo particular atual. + + O nome do método no qual pesquisar o cache de assinatura. + Uma matriz de tipos que correspondem aos tipos dos parâmetros nos quais pesquisar. + Uma matriz de tipos que correspondem aos tipos dos argumentos genéricos. + para filtrar ainda mais as assinaturas de método. + Modificadores para parâmetros. + Uma instância methodinfo. + + + + Essa classe representa uma classe particular para a funcionalidade de Acessador Particular. + + + + + Associa-se a tudo + + + + + O tipo encapsulado. + + + + + Inicializa uma nova instância da classe que contém o tipo particular. + + Nome do assembly + nome totalmente qualificado da + + + + Inicializa a nova instância da classe que contém + o tipo particular do objeto de tipo + + O Tipo encapsulado a ser criado. + + + + Obtém o tipo referenciado + + + + + Invoca o membro estático + + Nome do membro para o InvokeHelper + Argumentos para a invocação + Resultado da invocação + + + + Invoca o membro estático + + Nome do membro para o InvokeHelper + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Resultado da invocação + + + + Invoca o membro estático + + Nome do membro para o InvokeHelper + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Uma matriz de tipos que correspondem aos tipos dos argumentos genéricos. + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Argumentos para a invocação + Cultura + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Informações de cultura + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + Argumentos para a invocação + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + Argumentos para a invocação + Cultura + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + /// Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Cultura + Resultado da invocação + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + /// Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros a serem invocados pelo método + Argumentos para a invocação + Cultura + Uma matriz de tipos que correspondem aos tipos dos argumentos genéricos. + Resultado da invocação + + + + Obtém o elemento na matriz estática + + Nome da matriz + + Uma matriz unidimensional com inteiros de 32 bits que representam os índices que especificam + a posição do elemento a ser obtido. Por exemplo, para acessar um [10][11], os índices seriam {10,11} + + elemento na localização especificada + + + + Define o membro da matriz estática + + Nome da matriz + valor a ser definido + + Uma matriz unidimensional com inteiros de 32 bits que representam os índices que especificam + a posição do elemento a ser configurado. Por exemplo, para acessar um [10][11], a matriz seria {10,11} + + + + + Obtém o elemento na matriz estática + + Nome da matriz + Atributos adicionais de InvokeHelper + + Uma matriz unidirecional com íntegros de 32 bits que representam os índices que especificam + a posição do elemento a ser obtido. Por exemplo, para acessar um [10][11], a matriz seria {10,11} + + elemento na localização especificada + + + + Define o membro da matriz estática + + Nome da matriz + Atributos adicionais de InvokeHelper + valor a ser definido + + Uma matriz unidimensional com inteiros de 32 bits que representam os índices que especificam + a posição do elemento a ser configurado. Por exemplo, para acessar um [10][11], a matriz seria {10,11} + + + + + Obtém o campo estático + + Nome do campo + O campo estático. + + + + Define o campo estático + + Nome do campo + Argumento para a invocação + + + + Obtém o campo estático usando os atributos especificados de InvokeHelper + + Nome do campo + Atributos adicionais de invocação + O campo estático. + + + + Define o campo estático usando atributos de associação + + Nome do campo + Atributos adicionais de InvokeHelper + Argumento para a invocação + + + + Obtém a propriedade ou o campo estático + + Nome do campo ou da propriedade + A propriedade ou o campo estático. + + + + Define a propriedade ou o campo estático + + Nome do campo ou da propriedade + Valor a ser definido para o campo ou para a propriedade + + + + Obtém a propriedade ou o campo estático usando os atributos especificados de InvokeHelper + + Nome do campo ou da propriedade + Atributos adicionais de invocação + A propriedade ou o campo estático. + + + + Define a propriedade ou o campo estático usando atributos de associação + + Nome do campo ou da propriedade + Atributos adicionais de invocação + Valor a ser definido para o campo ou para a propriedade + + + + Obtém a propriedade estática + + Nome do campo ou da propriedade + Argumentos para a invocação + A propriedade estática. + + + + Define a propriedade estática + + Nome da propriedade + Valor a ser definido para o campo ou para a propriedade + Argumentos a serem passados para o membro a ser invocado. + + + + Define a propriedade estática + + Nome da propriedade + Valor a ser definido para o campo ou para a propriedade + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + + + + Obtém a propriedade estática + + Nome da propriedade + Atributos adicionais de invocação. + Argumentos a serem passados para o membro a ser invocado. + A propriedade estática. + + + + Obtém a propriedade estática + + Nome da propriedade + Atributos adicionais de invocação. + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + A propriedade estática. + + + + Define a propriedade estática + + Nome da propriedade + Atributos adicionais de invocação. + Valor a ser definido para o campo ou para a propriedade + Valores opcionais de índice para as propriedades indexadas. Os índices das propriedades indexadas são baseados em zero. Esse valor deve ser nulo para as propriedades não indexadas. + + + + Define a propriedade estática + + Nome da propriedade + Atributos adicionais de invocação. + Valor a ser definido para o campo ou para a propriedade + Uma matriz de objetos que representam o número, a ordem e o tipo dos parâmetros da propriedade indexada. + Argumentos a serem passados para o membro a ser invocado. + + + + Invoca o método estático + + Nome do membro + Atributos adicionais de invocação + Argumentos para a invocação + Cultura + Resultado da invocação + + + + Fornece a descoberta da assinatura de método para os métodos genéricos. + + + + + Compara as assinaturas de método desses dois métodos. + + Method1 + Method2 + Verdadeiro se forem similares. + + + + Obtém a profundidade da hierarquia do tipo base do tipo fornecido. + + O tipo. + A profundidade. + + + + Localiza o tipo mais derivado com as informações fornecidas. + + Correspondências candidatas. + Número de correspondências. + O método mais derivado. + + + + Dado um conjunto de métodos que correspondem aos critérios base, selecione um método baseado + em uma matriz de tipos. Esse método deverá retornar nulo se nenhum método corresponder + aos critérios. + + Especificação de associação. + Correspondências candidatas + Tipos + Modificadores de parâmetro. + Método correspondente. Nulo se nenhum corresponder. + + + + Localiza o método mais específico nos dois métodos fornecidos. + + Método 1 + Ordem de parâmetro para o Método 1 + Tipo de matriz do parâmetro. + Método 2 + Ordem de parâmetro para o Método 2 + >Tipo de matriz do parâmetro. + Tipos em que pesquisar. + Args. + Um int representando a correspondência. + + + + Localiza o método mais específico nos dois métodos fornecidos. + + Método 1 + Ordem de parâmetro para o Método 1 + Tipo de matriz do parâmetro. + Método 2 + Ordem de parâmetro para o Método 2 + >Tipo de matriz do parâmetro. + Tipos em que pesquisar. + Args. + Um int representando a correspondência. + + + + Localiza o tipo mais específico nos dois fornecidos. + + Tipo 1 + Tipo 2 + A definição de tipo + Um int representando a correspondência. + + + + Usado para armazenar informações fornecidas aos testes de unidade. + + + + + Obtém as propriedades de teste para um teste. + + + + + Obtém a linha de dados atual quando o teste é usado para teste controlado por dados. + + + + + Obtém a linha da conexão de dados atual quando o teste é usado para teste controlado por dados. + + + + + Obtém o diretório base para a execução de teste, no qual os arquivos implantados e de resultado são armazenados. + + + + + Obtém o diretório para arquivos implantados para a execução de teste. Normalmente um subdiretório de . + + + + + Obtém o diretório base para resultados da execução de teste. Normalmente um subdiretório de . + + + + + Obtém o diretório para arquivos implantados para a execução do teste. Normalmente um subdiretório de . + + + + + Obtém o diretório para os arquivos de resultado do teste. + + + + + Obtém o diretório base para a execução de teste, no qual os arquivos implantados e de resultado são armazenados. + Igual a . Use essa propriedade em vez disso. + + + + + Obtém o diretório para arquivos implantados para a execução de teste. Normalmente um subdiretório de . + Igual a . Use essa propriedade em vez disso. + + + + + Obtém o diretório para arquivos implantados para a execução do teste. Normalmente um subdiretório de . + Igual a . Use essa propriedade para os arquivos de resultado da execução de teste ou + para os arquivos de resultados específicos de teste. + + + + + Obtém o nome totalmente qualificado da classe contendo o método de teste executado no momento + + + + + Obtém o nome do método de teste executado no momento + + + + + Obtém o resultado do teste atual. + + + + + Usado para gravar mensagens de rastreamento enquanto o teste está em execução + + cadeia de caracteres da mensagem formatada + + + + Usado para gravar mensagens de rastreamento enquanto o teste está em execução + + cadeia de caracteres de formato + os argumentos + + + + Adiciona um nome de arquivo à lista em TestResult.ResultFileNames + + + O Nome do arquivo. + + + + + Inicia um timer com o nome especificado + + Nome do temporizador. + + + + Encerra um timer com o nome especificado + + Nome do temporizador. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2b63dd5 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + O TestMethod para a execução. + + + + + Obtém o nome do método de teste. + + + + + Obtém o nome da classe de teste. + + + + + Obtém o tipo de retorno do método de teste. + + + + + Obtém os parâmetros do método de teste. + + + + + Obtém o methodInfo para o método de teste. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca o método de teste. + + + Argumentos a serem passados ao método de teste. (Por exemplo, para testes controlados por dados) + + + Resultado da invocação do método de teste. + + + This call handles asynchronous test methods as well. + + + + + Obter todos os atributos do método de teste. + + + Se o atributo definido na classe pai é válido. + + + Todos os atributos. + + + + + Obter atributo de tipo específico. + + System.Attribute type. + + Se o atributo definido na classe pai é válido. + + + Os atributos do tipo especificado. + + + + + O auxiliar. + + + + + O parâmetro de verificação não nulo. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws argument null exception when parameter is null. + + + + O parâmetro de verificação não nulo nem vazio. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws ArgumentException when parameter is null. + + + + Enumeração para como acessamos as linhas de dados no teste controlado por dados. + + + + + As linhas são retornadas em ordem sequencial. + + + + + As linhas são retornadas em ordem aleatória. + + + + + O atributo para definir dados embutidos para um método de teste. + + + + + Inicializa uma nova instância da classe . + + O objeto de dados. + + + + Inicializa a nova instância da classe que ocupa uma matriz de argumentos. + + Um objeto de dados. + Mais dados. + + + + Obtém Dados para chamar o método de teste. + + + + + Obtém ou define o nome de exibição nos resultados de teste para personalização. + + + + + A exceção inconclusiva da asserção. + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Classe InternalTestFailureException. Usada para indicar falha interna de um caso de teste + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + + + + Inicializa uma nova instância da classe . + + + + + Atributo que especifica que uma exceção do tipo especificado é esperada + + + + + Inicializa uma nova instância da classe com o tipo especificado + + Tipo da exceção esperada + + + + Inicializa uma nova instância da classe com + o tipo esperado e a mensagem a ser incluída quando nenhuma exceção é gerada pelo teste. + + Tipo da exceção esperada + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma exceção + + + + + Obtém um valor que indica o Tipo da exceção esperada + + + + + Obtém ou define um valor que indica se é para permitir tipos derivados do tipo da exceção esperada para + qualificá-la como esperada + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Verifica se o tipo da exceção gerada pelo teste de unidade é esperado + + A exceção gerada pelo teste de unidade + + + + Classe base para atributos que especificam que uma exceção de um teste de unidade é esperada + + + + + Inicializa uma nova instância da classe com uma mensagem de não exceção padrão + + + + + Inicializa a nova instância da classe com uma mensagem de não exceção + + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma + exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem de não exceção padrão + + O nome do tipo de atributo ExpectedException + A mensagem de não exceção padrão + + + + Determina se uma exceção é esperada. Se o método é retornado, entende-se + que a exceção era esperada. Se o método gera uma exceção, entende-se + que a exceção não era esperada e a mensagem de exceção gerada + é incluída no resultado do teste. A classe pode ser usada para + conveniência. Se é usada e há falha de asserção, + o resultado do teste é definido como Inconclusivo. + + A exceção gerada pelo teste de unidade + + + + Gerar a exceção novamente se for uma AssertFailedException ou uma AssertInconclusiveException + + A exceção a ser gerada novamente se for uma exceção de asserção + + + + Essa classe é projetada para ajudar o usuário a executar o teste de unidade para os tipos que usam tipos genéricos. + GenericParameterHelper satisfaz algumas restrições comuns de tipos genéricos, + como: + 1. construtor público padrão + 2. implementa interface comum: IComparable, IEnumerable + + + + + Inicializa a nova instância da classe que + satisfaz a restrição 'newable' em genéricos C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa a nova instância da classe que + inicializa a propriedade Data para um valor fornecido pelo usuário. + + Qualquer valor inteiro + + + + Obtém ou define Data + + + + + Executa a comparação de valores de dois objetos GenericParameterHelper + + objeto com o qual comparar + verdadeiro se o objeto tem o mesmo valor que 'esse' objeto GenericParameterHelper. + Caso contrário, falso. + + + + Retorna um código hash para esse objeto. + + O código hash. + + + + Compara os dados dos dois objetos . + + O objeto com o qual comparar. + + Um número assinado indicando os valores relativos dessa instância e valor. + + + Thrown when the object passed in is not an instance of . + + + + + Retorna um objeto IEnumerator cujo comprimento é derivado + da propriedade Data. + + O objeto IEnumerator + + + + Retorna um objeto GenericParameterHelper que é igual ao + objeto atual. + + O objeto clonado. + + + + Permite que usuários registrem/gravem rastros de testes de unidade para diagnósticos. + + + + + Manipulador para LogMessage. + + Mensagem a ser registrada. + + + + Evento a ser escutado. Acionado quando o gerador do teste de unidade escreve alguma mensagem. + Principalmente para ser consumido pelo adaptador. + + + + + API para o gravador de teste chamar Registrar mensagens. + + Formato de cadeia de caracteres com espaços reservados. + Parâmetros dos espaços reservados. + + + + Atributo TestCategory. Usado para especificar a categoria de um teste de unidade. + + + + + Inicializa a nova instância da classe e aplica a categoria ao teste. + + + A Categoria de teste. + + + + + Obtém as categorias de teste aplicadas ao teste. + + + + + Classe base para o atributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa a nova instância da classe . + Aplica a categoria ao teste. As cadeias de caracteres retornadas por TestCategories + são usadas com o comando /category para filtrar os testes + + + + + Obtém a categoria de teste aplicada ao teste. + + + + + Classe AssertFailedException. Usada para indicar falha em um caso de teste + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Uma coleção de classes auxiliares para testar várias condições nos + testes de unidade. Se a condição testada não é atendida, uma exceção + é gerada. + + + + + Obtém uma instância singleton da funcionalidade Asserção. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is false. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is true. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null. + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if refers to the same object + as . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is not equal to . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Gera uma AssertFailedException. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Os métodos estático igual a sobrecargas são usados para comparar instâncias de dois tipos em relação à igualdade de + referência. Esse método não deve ser usado para comparar a igualdade de + duas instâncias. Esse objeto sempre gerará Assert.Fail. Use + Assert.AreEqual e sobrecargas associadas nos testes de unidade. + + Objeto A + Objeto B + Sempre falso. + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Substitui os caracteres nulos ('\0') por "\\0". + + + A cadeia de caracteres a ser pesquisada. + + + A cadeia de caracteres convertida com os caracteres nulos substituídos por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Função auxiliar que cria e gera uma AssertionFailedException + + + nome da asserção que gera uma exceção + + + mensagem que descreve as condições da falha de asserção + + + Os parâmetros. + + + + + Verifica o parâmetro das condições válidas + + + O parâmetro. + + + O Nome da asserção. + + + nome do parâmetro + + + mensagem da exceção de parâmetro inválido + + + Os parâmetros. + + + + + Converte com segurança um objeto em uma cadeia de caracteres manipulando valores e caracteres nulos. + Os valores nulos são convertidos em "(null)". Os caracteres nulos são convertidos em "\\0". + + + O objeto a ser convertido em uma cadeia de caracteres. + + + A cadeia de caracteres convertida. + + + + + A asserção da cadeia de caracteres. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if matches . + + + + + Uma coleção de classes auxiliares para testar várias condições associadas + às coleções nos testes de unidade. Se a condição testada não é + atendida, uma exceção é gerada. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is found in + . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if every element in is also found in + . + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Determina se a primeira coleção é um subconjunto da segunda + coleção. Se os conjuntos contiverem elementos duplicados, o número + de ocorrências do elemento no subconjunto deverá ser menor ou igual + ao número de ocorrências no superconjunto. + + + A coleção que o teste espera que esteja contida em . + + + A coleção que o teste espera que contenha . + + + Verdadeiro se é um subconjunto de + , caso contrário, falso. + + + + + Cria um dicionário contendo o número de ocorrências de cada + elemento na coleção especificada. + + + A coleção a ser processada. + + + O número de elementos nulos na coleção. + + + Um dicionário contendo o número de ocorrências de cada elemento + na coleção especificada. + + + + + Encontra um elemento incompatível entre as duas coleções. Um elemento + incompatível é aquele que aparece um número diferente de vezes na + coleção esperada em relação à coleção real. É pressuposto que + as coleções sejam referências não nulas diferentes com o + mesmo número de elementos. O chamador é responsável por esse nível de + verificação. Se não houver nenhum elemento incompatível, a função retornará + falso e os parâmetros de saída não deverão ser usados. + + + A primeira coleção a ser comparada. + + + A segunda coleção a ser comparada. + + + O número esperado de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O número real de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O elemento incompatível (poderá ser nulo) ou nulo se não houver nenhum + elemento incompatível. + + + verdadeiro se um elemento incompatível foi encontrado. Caso contrário, falso. + + + + + compara os objetos usando object.Equals + + + + + Classe base para exceções do Framework. + + + + + Inicializa uma nova instância da classe . + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Uma classe de recurso fortemente tipada para pesquisar cadeias de caracteres localizadas, etc. + + + + + Retorna a instância de ResourceManager armazenada em cache usada por essa classe. + + + + + Substitui a propriedade CurrentUICulture do thread atual em todas + as pesquisas de recursos usando essa classe de recurso fortemente tipada. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres de acesso tem sintaxe inválida. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A coleção esperada contém {1} ocorrência(s) de <{2}>. A coleção real contém {3} ocorrência(s). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Item duplicado encontrado:<{1}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Maiúsculas e minúsculas diferentes para o valor real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença não maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1} ({2})>. Real:<{3} ({4})>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a É esperado qualquer valor, exceto:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não passe tipos de valores para AreSame(). Os valores convertidos em Object nunca serão os mesmos. Considere usar AreEqual(). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante à Falha em {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada similar a TestMethod assíncrono com UITestMethodAttribute sem suporte. Remova o assíncrono ou use o TestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções estão vazias. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as referências de coleções apontam para o mesmo objeto de coleção. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0}({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (nulo). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (objeto). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não contém a cadeia de caracteres '{1}'. {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} ({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Assert.Equals não deve ser usado para Asserções. Use Assert.AreEqual e sobrecargas em seu lugar. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O número de elementos nas coleções não corresponde. Esperado:<{1}>. Real:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {0} não corresponde. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} não é de tipo esperado. Tipo esperado:<{2}>. Tipo real:<{3}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} é (nulo). Tipo esperado:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não termina com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Argumento inválido – EqualsTester não pode usar nulos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não é possível converter objeto do tipo {0} em {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O objeto interno referenciado não é mais válido. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A propriedade {0} é do tipo {1}; tipo esperado {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} Tipo esperado:<{1}>. Tipo real:<{2}>.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Tipo incorreto:<{1}>. Tipo real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhum DataRowAttribute especificado. Pelo menos um DataRowAttribute é necessário com DataTestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhuma exceção gerada. A exceção {1} era esperada. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. O valor não pode ser nulo. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Número diferente de elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O construtor com a assinatura especificada não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O membro especificado ({0}) não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não começa com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O tipo de exceção esperado deve ser System.Exception ou um tipo derivado de System.Exception. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (Falha ao obter a mensagem para uma exceção do tipo {0} devido a uma exceção.). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou a exceção esperada {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou uma exceção. Uma exceção era esperada pelo atributo {0} definido no método de teste. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperada a exceção {1}. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperado a exceção {1} ou um tipo derivado dela. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Exceção gerada {2}, mas a exceção {1} era esperada. {0} + Mensagem de Exceção: {3} + Rastreamento de Pilha: {4}. + + + + + resultados de teste de unidade + + + + + O teste foi executado, mas ocorreram problemas. + Os problemas podem envolver exceções ou asserções com falha. + + + + + O teste foi concluído, mas não é possível dizer se houve aprovação ou falha. + Pode ser usado para testes anulados. + + + + + O teste foi executado sem nenhum problema. + + + + + O teste está em execução no momento. + + + + + Ocorreu um erro de sistema ao tentarmos executar um teste. + + + + + O tempo limite do teste foi atingido. + + + + + O teste foi anulado pelo usuário. + + + + + O teste está em um estado desconhecido + + + + + Fornece funcionalidade auxiliar para a estrutura do teste de unidade + + + + + Obtém as mensagens de exceção, incluindo as mensagens para todas as exceções internas + recursivamente + + Exceção ao obter mensagens para + cadeia de caracteres com informações de mensagem de erro + + + + Enumeração para tempos limite, a qual pode ser usada com a classe . + O tipo de enumeração deve corresponder + + + + + O infinito. + + + + + O atributo da classe de teste. + + + + + Obtém um atributo de método de teste que habilita a execução desse teste. + + A instância de atributo do método de teste definida neste método. + O a ser usado para executar esse teste. + Extensions can override this method to customize how all methods in a class are run. + + + + O atributo do método de teste. + + + + + Executa um método de teste. + + O método de teste a ser executado. + Uma matriz de objetos TestResult que representam resultados do teste. + Extensions can override this method to customize running a TestMethod. + + + + O atributo de inicialização do teste. + + + + + O atributo de limpeza do teste. + + + + + O atributo ignorar. + + + + + O atributo de propriedade de teste. + + + + + Inicializa uma nova instância da classe . + + + O nome. + + + O valor. + + + + + Obtém o nome. + + + + + Obtém o valor. + + + + + O atributo de inicialização de classe. + + + + + O atributo de limpeza de classe. + + + + + O atributo de inicialização de assembly. + + + + + O atributo de limpeza de assembly. + + + + + Proprietário do Teste + + + + + Inicializa uma nova instância da classe . + + + O proprietário. + + + + + Obtém o proprietário. + + + + + Atributo de prioridade. Usado para especificar a prioridade de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + A prioridade. + + + + + Obtém a prioridade. + + + + + Descrição do teste + + + + + Inicializa uma nova instância da classe para descrever um teste. + + A descrição. + + + + Obtém a descrição de um teste. + + + + + URI de Estrutura do Projeto de CSS + + + + + Inicializa a nova instância da classe para o URI da Estrutura do Projeto CSS. + + O URI da Estrutura do Projeto ECSS. + + + + Obtém o URI da Estrutura do Projeto CSS. + + + + + URI de Iteração de CSS + + + + + Inicializa uma nova instância da classe para o URI de Iteração do CSS. + + O URI de iteração do CSS. + + + + Obtém o URI de Iteração do CSS. + + + + + Atributo WorkItem. Usado para especificar um item de trabalho associado a esse teste. + + + + + Inicializa a nova instância da classe para o Atributo WorkItem. + + A ID para o item de trabalho. + + + + Obtém a ID para o item de trabalho associado. + + + + + Atributo de tempo limite. Usado para especificar o tempo limite de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + O tempo limite. + + + + + Inicializa a nova instância da classe com um tempo limite predefinido + + + O tempo limite + + + + + Obtém o tempo limite. + + + + + O objeto TestResult a ser retornado ao adaptador. + + + + + Inicializa uma nova instância da classe . + + + + + Obtém ou define o nome de exibição do resultado. Útil ao retornar vários resultados. + Se for nulo, o nome do Método será usado como o DisplayName. + + + + + Obtém ou define o resultado da execução de teste. + + + + + Obtém ou define a exceção gerada quando o teste falha. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define os rastreamentos de depuração pelo código de teste. + + + + + Gets or sets the debug traces by test code. + + + + + Obtém ou define a duração de execução do teste. + + + + + Obtém ou define o índice de linha de dados na fonte de dados. Defina somente para os resultados de execuções + individuais de um teste controlado por dados. + + + + + Obtém ou define o valor retornado do método de teste. (Sempre nulo no momento). + + + + + Obtém ou define os arquivos de resultado anexados pelo teste. + + + + + Especifica a cadeia de conexão, o nome de tabela e o método de acesso de linha para teste controlado por dados. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + O nome do provedor padrão para a DataSource. + + + + + O método de acesso a dados padrão. + + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados, uma cadeia de conexão, uma tabela de dados e um método de acesso a dados para acessar a fonte de dados. + + Nome do provedor de dados invariável, como System.Data.SqlClient + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + Especifica a ordem para acessar os dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com uma cadeia de conexão e um nome da tabela. + Especifique a cadeia de conexão e a tabela de dados para acessar a fonte de dados OLEDB. + + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados e com uma cadeia de conexão associada ao nome da configuração. + + O nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> do arquivo app.config. + + + + Obtém o valor que representa o provedor de dados da fonte de dados. + + + O nome do provedor de dados. Se um provedor de dados não foi designado na inicialização do objeto, o provedor de dados padrão de System.Data.OleDb será retornado. + + + + + Obtém o valor que representa a cadeia de conexão da fonte de dados. + + + + + Obtém um valor que indica o nome da tabela que fornece dados. + + + + + Obtém o método usado para acessar a fonte de dados. + + + + Um dos valores. Se o não for inicializado, o valor padrão será retornado . + + + + + Obtém o nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> no arquivo app.config. + + + + + O atributo para teste controlado por dados em que os dados podem ser especificados de maneira embutida. + + + + + Encontrar todas as linhas de dados e executar. + + + O Método de teste. + + + Uma matriz de . + + + + + Executa o método de teste controlado por dados. + + O método de teste a ser executado. + Linha de Dados. + Resultados de execução. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..58bcdd9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Используется для указания элемента развертывания (файл или каталог) для развертывания каждого теста. + Может указываться для тестового класса или метода теста. + Чтобы указать несколько элементов, можно использовать несколько экземпляров атрибута. + Путь к элементу может быть абсолютным или относительным, в последнем случае он указывается по отношению к RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + Инициализирует новый экземпляр класса . + + Файл или каталог для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + + + + Инициализирует новый экземпляр класса + + Относительный или абсолютный путь к файлу или каталогу для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + Путь к каталогу, в который должны быть скопированы элементы. Он может быть абсолютным или относительным (по отношению к каталогу развертывания). Все файлы и каталоги, обозначенные при помощи будет скопировано в этот каталог. + + + + Получает путь к копируемым исходному файлу или папке. + + + + + Получает путь к каталогу, в который копируется элемент. + + + + + Содержит литералы для имен разделов, свойств и атрибутов. + + + + + Имя раздела конфигурации. + + + + + Имя раздела конфигурации для Beta2. Оставлено для совместимости. + + + + + Имя раздела для источника данных. + + + + + Имя атрибута для "Name" + + + + + Имя атрибута для "ConnectionString" + + + + + Имя атрибута для "DataAccessMethod" + + + + + Имя атрибута для "DataTable" + + + + + Элемент источника данных. + + + + + Возвращает или задает имя этой конфигурации. + + + + + Возвращает или задает элемент ConnectionStringSettings в разделе <connectionStrings> файла .config. + + + + + Возвращает или задает имя таблицы данных. + + + + + Возвращает или задает тип доступа к данным. + + + + + Возвращает имя ключа. + + + + + Получает свойства конфигурации. + + + + + Коллекция элементов источника данных. + + + + + Инициализирует новый экземпляр класса . + + + + + Возвращает элемент конфигурации с указанным ключом. + + Ключ возвращаемого элемента. + System.Configuration.ConfigurationElement с указанным ключом; в противном случае — NULL. + + + + Получает элемент конфигурации по указанному индексу. + + Индекс возвращаемого элемента System.Configuration.ConfigurationElement. + + + + Добавляет элемент конфигурации в коллекцию элементов конфигурации. + + Добавляемый элемент System.Configuration.ConfigurationElement. + + + + Удаляет System.Configuration.ConfigurationElement из коллекции. + + . + + + + Удаляет System.Configuration.ConfigurationElement из коллекции. + + Ключ удаляемого элемента System.Configuration.ConfigurationElement. + + + + Удаляет все объекты элементов конфигурации из коллекции. + + + + + Создает новый . + + Новый . + + + + Получает ключ элемента для указанного элемента конфигурации. + + Элемент System.Configuration.ConfigurationElement, для которого возвращается ключ. + Объект System.Object, действующий как ключ для указанного элемента System.Configuration.ConfigurationElement. + + + + Добавляет элемент конфигурации в коллекцию элементов конфигурации. + + Добавляемый элемент System.Configuration.ConfigurationElement. + + + + Добавляет элемент конфигурации в коллекцию элементов конфигурации. + + Индекс, по которому следует добавить указанный элемент System.Configuration.ConfigurationElement. + Добавляемый элемент System.Configuration.ConfigurationElement. + + + + Поддержка параметров конфигурации для тестов. + + + + + Получает раздел конфигурации для тестов. + + + + + Раздел конфигурации для тестов. + + + + + Возвращает источники данных для этого раздела конфигурации. + + + + + Получает коллекцию свойств. + + + свойств для элемента. + + + + + Этот класс представляет существующий закрытый внутренний объект в системе + + + + + Инициализирует новый экземпляр класса , содержащий + уже существующий объект закрытого типа + + объект, который служит начальной точкой для доступа к закрытым элементам. + Строка разыменования, в которой получаемый объект обозначается точкой, например m_X.m_Y.m_Z + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + указанный тип. + + Имя сборки + полное имя + Аргументы, передаваемые в конструктор + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + указанный тип. + + Имя сборки + полное имя + Массив объектов, представляющих число, порядок и тип параметров, получаемых конструктором + Аргументы, передаваемые в конструктор + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + указанный тип. + + тип создаваемого объекта + Аргументы, передаваемые в конструктор + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + указанный тип. + + тип создаваемого объекта + Массив объектов, представляющих число, порядок и тип параметров, получаемых конструктором + Аргументы, передаваемые в конструктор + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + заданный объект. + + упаковываемый объект + + + + Инициализирует новый экземпляр класса , который заключает в оболочку + заданный объект. + + упаковываемый объект + Объект PrivateType + + + + Возвращает или задает целевой объект + + + + + Возвращает тип базового объекта + + + + + возвращает хэш-код целевого объекта + + целочисленное значение, представляющее хэш-код целевого объекта + + + + Равенство + + Объект, с которым будет выполняться сравнение + возвращает true, если объекты равны. + + + + Вызывает указанный метод + + Имя метода + Аргументы, передаваемые в элемент для вызова. + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Массив типов, соответствующих типам универсальных аргументов. + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Аргументы, передаваемые в элемент для вызова. + Информация о языке и региональных параметрах + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Информация о языке и региональных параметрах + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Аргументы, передаваемые в элемент для вызова. + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Аргументы, передаваемые в элемент для вызова. + Информация о языке и региональных параметрах + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Информация о языке и региональных параметрах + Результат вызова метода + + + + Вызывает указанный метод + + Имя метода + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Массив объектов, представляющих число, порядок и тип параметров, получаемых методом. + Аргументы, передаваемые в элемент для вызова. + Информация о языке и региональных параметрах + Массив типов, соответствующих типам универсальных аргументов. + Результат вызова метода + + + + Возвращает элемент массива с использованием массива нижних индексов для каждого измерения + + Имя члена + индексы массива + Массив элементов. + + + + Задает элемент массива с использованием массива нижних индексов для каждого измерения + + Имя члена + Задаваемое значение + индексы массива + + + + Возвращает элемент массива с использованием массива нижних индексов для каждого измерения + + Имя члена + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + индексы массива + Массив элементов. + + + + Задает элемент массива с использованием массива нижних индексов для каждого измерения + + Имя члена + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Задаваемое значение + индексы массива + + + + Получить поле + + Имя поля + Поле. + + + + Присваивает значение полю + + Имя поля + задаваемое значение + + + + Получает поле + + Имя поля + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Поле. + + + + Присваивает значение полю + + Имя поля + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + задаваемое значение + + + + Получает поле или свойство + + Имя поля или свойства + Поле или свойство. + + + + Присваивает значение полю или свойству + + Имя поля или свойства + задаваемое значение + + + + Получает поле или свойство + + Имя поля или свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Поле или свойство. + + + + Присваивает значение полю или свойству + + Имя поля или свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + задаваемое значение + + + + Получает свойство + + Имя свойства + Аргументы, передаваемые в элемент для вызова. + Свойство. + + + + Получает свойство + + Имя свойства + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + Свойство. + + + + Задать свойство + + Имя свойства + задаваемое значение + Аргументы, передаваемые в элемент для вызова. + + + + Задать свойство + + Имя свойства + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + задаваемое значение + Аргументы, передаваемые в элемент для вызова. + + + + Получает свойство + + Имя свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Аргументы, передаваемые в элемент для вызова. + Свойство. + + + + Получает свойство + + Имя свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + Свойство. + + + + Присваивает значение свойству + + Имя свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + задаваемое значение + Аргументы, передаваемые в элемент для вызова. + + + + Присваивает значение свойству + + Имя свойства + Битовая маска, состоящая из одного или нескольких объектов которые определяют, как выполняется поиск. + задаваемое значение + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + + + + Проверка строки доступа + + строка доступа + + + + Вызывает элемент + + Имя члена + Дополнительные атрибуты + Аргумент для вызова + Язык и региональные параметры + Результат вызова + + + + Извлекает наиболее подходящую сигнатуру универсального метода из текущего закрытого типа. + + Имя метода, в котором будет искаться кэш сигнатуры. + Массив типов, соответствующих типам параметров, в которых будет осуществляться поиск. + Массив типов, соответствующих типам универсальных аргументов. + для дальнейшей фильтрации сигнатур методов. + Модификаторы для параметров. + Экземпляр methodinfo. + + + + Этот класс представляет закрытый класс для функции закрытого метода доступа. + + + + + Привязывается ко всему + + + + + Упакованный тип. + + + + + Инициализирует новый экземпляр класса , содержащий закрытый тип. + + Имя сборки + полное имя + + + + Инициализирует новый экземпляр класса , содержащий + закрытый тип из объекта типа + + Упакованный создаваемый тип. + + + + Получает тип, на который была сделана ссылка + + + + + Вызывает статический элемент + + Имя элемента InvokeHelper + Аргументы для вызова + Результат вызова + + + + Вызывает статический элемент + + Имя элемента InvokeHelper + Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Результат вызова + + + + Вызывает статический элемент + + Имя элемента InvokeHelper + Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Массив типов, соответствующих типам универсальных аргументов. + Результат вызова + + + + Вызывает статический метод + + Имя члена + Аргументы для вызова + Язык и региональные параметры + Результат вызова + + + + Вызывает статический метод + + Имя члена + Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Информация о языке и региональных параметрах + Результат вызова + + + + Вызывает статический метод + + Имя члена + Дополнительные атрибуты вызова + Аргументы для вызова + Результат вызова + + + + Вызывает статический метод + + Имя члена + Дополнительные атрибуты вызова + Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Результат вызова + + + + Вызывает статический метод + + Имя элемента + Дополнительные атрибуты вызова + Аргументы для вызова + Язык и региональные параметры + Результат вызова + + + + Вызывает статический метод + + Имя элемента + Дополнительные атрибуты вызова + /// Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Язык и региональные параметры + Результат вызова + + + + Вызывает статический метод + + Имя элемента + Дополнительные атрибуты вызова + /// Массив объектов, представляющих число, порядок и тип параметров для вызываемого метода + Аргументы для вызова + Язык и региональные параметры + Массив типов, соответствующих типам универсальных аргументов. + Результат вызова + + + + Получает элемент в статическом массиве + + Имя массива + + Одномерный массив 32-разрядных целых чисел, которые являются индексами, указывающими + положение получаемого элемента. Например, чтобы получить доступ к a[10][11], нужны индексы {10,11} + + элемент в указанном расположении + + + + Присваивает значение элементу статического массива + + Имя массива + задаваемое значение + + Одномерный массив 32-разрядных целых чисел, которые представляют индексы, указывающие + положение задаваемого элемента. Например, чтобы получить доступ к a[10][11], нужен массив {10,11} + + + + + Получает элемент в статическом массиве + + Имя массива + Дополнительные атрибуты InvokeHelper + + Одномерный массив 32-разрядных целых чисел, которые представляют индексы, указывающие + положение получаемого элемента. Например, чтобы получить доступ к a[10][11], нужен массив {10,11} + + элемент в указанном расположении + + + + Присваивает значение элементу статического массива + + Имя массива + Дополнительные атрибуты InvokeHelper + задаваемое значение + + Одномерный массив 32-разрядных целых чисел, которые представляют индексы, указывающие + положение задаваемого элемента. Например, чтобы получить доступ к a[10][11], нужен массив {10,11} + + + + + Получает статическое поле + + Имя поля + Статическое поле. + + + + Присваивает значение статическому полю + + Имя поля + Аргумент для вызова + + + + Получает статическое поле с использованием указанных атрибутов InvokeHelper + + Имя поля + Дополнительные атрибуты вызова + Статическое поле. + + + + Присваивает значение статическому полю при помощи атрибутов привязки + + Имя поля + Дополнительные атрибуты InvokeHelper + Аргумент для вызова + + + + Получает статическое поле или свойство + + Имя поля или свойства + Статическое поле или свойство. + + + + Присваивает значение статическому полю или свойству + + Имя поля или свойства + Значение, присваиваемое полю или свойству + + + + Получает статическое поле или свойство с использованием указанных атрибутов InvokeHelper + + Имя поля или свойства + Дополнительные атрибуты вызова + Статическое поле или свойство. + + + + Присваивает значение статическому полю или свойству при помощи атрибутов привязки + + Имя поля или свойства + Дополнительные атрибуты вызова + Значение, присваиваемое полю или свойству + + + + Получает статическое свойство + + Имя поля или свойства + Аргументы для вызова + Статическое свойство. + + + + Присваивает значение статическому свойству + + Имя свойства + Значение, присваиваемое полю или свойству + Аргументы, передаваемые в элемент для вызова. + + + + Присваивает значение статическому свойству + + Имя свойства + Значение, присваиваемое полю или свойству + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + + + + Получает статическое свойство + + Имя свойства + Дополнительные атрибуты вызова. + Аргументы, передаваемые в элемент для вызова. + Статическое свойство. + + + + Получает статическое свойство + + Имя свойства + Дополнительные атрибуты вызова. + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + Статическое свойство. + + + + Присваивает значение статическому свойству + + Имя свойства + Дополнительные атрибуты вызова. + Значение, присваиваемое полю или свойству + Необязательные значения индекса для индексируемых свойств. Индексы для индексируемых свойств отсчитываются от нуля. Для неиндексируемых свойств это значение должно быть равно NULL. + + + + Присваивает значение статическому свойству + + Имя свойства + Дополнительные атрибуты вызова. + Значение, присваиваемое полю или свойству + Массив объектов, представляющих число, порядок и тип параметров для проиндексированного свойства. + Аргументы, передаваемые в элемент для вызова. + + + + Вызывает статический метод + + Имя элемента + Дополнительные атрибуты вызова + Аргументы для вызова + Язык и региональные параметры + Результат вызова + + + + Предоставляет обнаружение сигнатуры методов для универсальных методов. + + + + + Сравнивает сигнатуры двух этих методов. + + Method1 + Method2 + Значение true, если они одинаковые. + + + + Получает значение глубины иерархии из базового типа предоставленного типа. + + Тип. + Глубина. + + + + Находит самый производный тип с указанной информацией. + + Потенциальные совпадения. + Число совпадений. + Самый производный метод. + + + + Выбор метода на основе массива типов с учетом набора методов, соответствующих базовым условиям. + Если методов, соответствующих условиям, нет, + метод должен возвращать NULL. + + Спецификация привязки. + Потенциальные совпадения + Типы + Модификаторы параметров. + Метод сопоставления. Значение NULL при отсутствии совпадений. + + + + Находит наиболее точный метод из двух предоставленных. + + Метод 1 + Порядок параметров для метода 1 + Тип массива параметров. + Метод 2 + Порядок параметров для метода 2 + >Тип массива параметров. + Типы для поиска. + Аргументы + Значение int, представляющее совпадение. + + + + Находит наиболее точный метод из двух предоставленных. + + Метод 1 + Порядок параметров для метода 1 + Тип массива параметров. + Метод 2 + Порядок параметров для метода 2 + >Тип массива параметров. + Типы для поиска. + Аргументы + Значение int, представляющее совпадение. + + + + Находит наиболее конкретный тип из двух предоставленных. + + Тип 1 + Тип 2 + Определяющий тип + Значение int, представляющее совпадение. + + + + Используется для хранения данных, предоставляемых модульным тестам. + + + + + Получает свойства теста. + + + + + Возвращает текущую строку данных, когда тест используется для тестирования, управляемого данными. + + + + + Возвращает текущую строку подключения к данным, когда тест используется для тестирования, управляемого данными. + + + + + Возвращает базовый каталог для тестового запуска, в котором хранятся развернутые файлы и файлы результатов. + + + + + Получает каталог для файлов, развернутых для тестового запуска. Обычно это подкаталог . + + + + + Получает базовый каталог для результатов тестового запуска. Обычно это подкаталог . + + + + + Получает каталог для файлов результата теста. Обычно это подкаталог . + + + + + Возвращает каталог для файлов результатов теста. + + + + + Получает базовый каталог для тестового запуска, в котором хранятся развернутые файлы и файлы результатов. + То же, что и . Следует использовать это свойство. + + + + + Получает каталог для файлов, развернутых для тестового запуска. Обычто это подкаталог . + То же, что и . Следует использовать это свойство. + + + + + Получает каталог для файлов результата тестового запуска. Обычно это подкаталог . + То же, что и . Используйте это свойство для файлов результата тестового запуска или + для файлов результата определенного теста. + + + + + Возвращает полное имя класса, содержащего используемый сейчас метод теста + + + + + Возвращает имя метода теста, выполняемого в данный момент + + + + + Получает текущий результат теста. + + + + + Используется для записи сообщений трассировки во время теста + + отформатированная строка сообщения + + + + Используется для записи сообщений трассировки во время теста + + строка формата + аргументы + + + + Добавляет имя файла в список TestResult.ResultFileNames + + + Имя файла. + + + + + Запускает таймер с указанным именем + + Имя таймера. + + + + Останавливает таймер с указанным именем + + Имя таймера. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..f278594 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4202 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod для выполнения. + + + + + Получает имя метода теста. + + + + + Получает имя тестового класса. + + + + + Получает тип возвращаемого значения метода теста. + + + + + Получает параметры метода теста. + + + + + Получает methodInfo для метода теста. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Вызывает метод теста. + + + Аргументы, передаваемые методу теста (например, для управляемых данными тестов). + + + Результат вызова метода теста. + + + This call handles asynchronous test methods as well. + + + + + Получить все атрибуты метода теста. + + + Допустим ли атрибут, определенный в родительском классе. + + + Все атрибуты. + + + + + Получить атрибут указанного типа. + + System.Attribute type. + + Допустим ли атрибут, определенный в родительском классе. + + + Атрибуты указанного типа. + + + + + Вспомогательный метод. + + + + + Параметр проверки не имеет значения NULL. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws argument null exception when parameter is null. + + + + Параметр проверки не равен NULL или не пуст. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws ArgumentException when parameter is null. + + + + Перечисление, описывающее способ доступа к строкам данных в тестах, управляемых данными. + + + + + Строки возвращаются в последовательном порядке. + + + + + Строки возвращаются в случайном порядке. + + + + + Атрибут для определения встроенных данных для метода теста. + + + + + Инициализирует новый экземпляр класса . + + Объект данных. + + + + Инициализирует новый экземпляр класса , принимающий массив аргументов. + + Объект данных. + Дополнительные данные. + + + + Получает данные для вызова метода теста. + + + + + Получает или задает отображаемое имя в результатах теста для настройки. + + + + + Исключение утверждения с неопределенным результатом. + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Класс InternalTestFailureException. Используется для указания внутреннего сбоя для тестового случая + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + + + + Инициализирует новый экземпляр класса . + + + + + Атрибут, который указывает, что ожидается исключение указанного типа + + + + + Инициализирует новый экземпляр класса ожидаемого типа + + Тип ожидаемого исключения + + + + Инициализирует новый экземпляр класса + ожидаемого типа c сообщением для включения, когда тест не создает исключение. + + Тип ожидаемого исключения + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал исключение + + + + + Получает значение, указывающее тип ожидаемого исключения + + + + + Получает или задает значение, которое означает, являются ли ожидаемыми типы, производные + от типа ожидаемого исключения + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Проверяет, является ли ожидаемым тип исключения, созданного модульным тестом + + Исключение, созданное модульным тестом + + + + Базовый класс для атрибутов, которые указывают ожидать исключения из модульного теста + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений по умолчанию + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений + + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал + исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение по умолчанию об отсутствии исключений + + Название типа для атрибута ExpectedException + Сообщение об отсутствии исключений по умолчанию + + + + Определяет, ожидается ли исключение. Если метод возвращает управление, то + считается, что ожидалось исключение. Если метод создает исключение, то + считается, что исключение не ожидалось, и сообщение созданного исключения + включается в результат теста. Для удобства можно использовать класс . + Если используется и утверждение завершается с ошибкой, + то результат теста будет неопределенным. + + Исключение, созданное модульным тестом + + + + Повторно создать исключение при возникновении исключения AssertFailedException или AssertInconclusiveException + + Исключение, которое необходимо создать повторно, если это исключение утверждения + + + + Этот класс предназначен для пользователей, выполняющих модульное тестирование для универсальных типов. + GenericParameterHelper удовлетворяет некоторым распространенным ограничениям для универсальных типов, + например. + 1. Открытый конструктор по умолчанию + 2. Реализует общий интерфейс: IComparable, IEnumerable + + + + + Инициализирует новый экземпляр класса , который + удовлетворяет ограничению newable в универсальных типах C#. + + + This constructor initializes the Data property to a random value. + + + + + Инициализирует новый экземпляр класса , который + инициализирует свойство Data в указанное пользователем значение. + + Любое целочисленное значение + + + + Получает или задает данные + + + + + Сравнить значения двух объектов GenericParameterHelper + + объект, с которым будет выполнено сравнение + True, если obj имеет то же значение, что и объект "this" GenericParameterHelper. + В противном случае False. + + + + Возвращает хэш-код для этого объекта. + + Хэш-код. + + + + Сравнивает данные двух объектов . + + Объект для сравнения. + + Число со знаком, указывающее относительные значения этого экземпляра и значения. + + + Thrown when the object passed in is not an instance of . + + + + + Возвращает объект IEnumerator, длина которого является производной + от свойства Data. + + Объект IEnumerator + + + + Возвращает объект GenericParameterHelper, равный + текущему объекту. + + Клонированный объект. + + + + Позволяет пользователям регистрировать/записывать трассировки от модульных тестов для диагностики. + + + + + Обработчик LogMessage. + + Сообщение для записи в журнал. + + + + Прослушиваемое событие. Возникает, когда средство записи модульных тестов записывает сообщение. + Главным образом используется адаптером. + + + + + API, при помощи которого средство записи теста будет обращаться к сообщениям журнала. + + Строка формата с заполнителями. + Параметры для заполнителей. + + + + Атрибут TestCategory; используется для указания категории модульного теста. + + + + + Инициализирует новый экземпляр класса и применяет категорию к тесту. + + + Категория теста. + + + + + Возвращает или задает категории теста, которые были применены к тесту. + + + + + Базовый класс для атрибута Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Инициализирует новый экземпляр класса . + Применяет к тесту категорию. Строки, возвращаемые TestCategories , + используются с командой /category для фильтрации тестов + + + + + Возвращает или задает категорию теста, которая была применена к тесту. + + + + + Класс AssertFailedException. Используется для указания сбоя тестового случая + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Коллекция вспомогательных классов для тестирования различных условий в + модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is true. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is null. + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if refers to the same object + as . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is not equal to . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Создает исключение AssertFailedException. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Статические переопределения равенства используются для сравнения экземпляров двух типов на равенство + ссылок. Этот метод не должен использоваться для сравнения двух экземпляров на + равенство. Этот объект всегда создает исключение с Assert.Fail. Используйте в ваших модульных тестах + Assert.AreEqual и связанные переопределения. + + Объект A + Объект B + False (всегда). + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Заменяет NULL-символы ("\0") символами "\\0". + + + Искомая строка. + + + Преобразованная строка, в которой NULL-символы были заменены на "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Вспомогательная функция, которая создает и вызывает AssertionFailedException + + + имя утверждения, создавшего исключение + + + сообщение с описанием условий для сбоя утверждения + + + Параметры. + + + + + Проверяет параметр на допустимые условия + + + Параметр. + + + Имя утверждения. + + + имя параметра + + + сообщение об исключении, связанном с недопустимым параметром + + + Параметры. + + + + + Безопасно преобразует объект в строку, обрабатывая значения NULL и NULL-символы. + Значения NULL преобразуются в "(null)", NULL-символы — в "\\0". + + + Объект для преобразования в строку. + + + Преобразованная строка. + + + + + Утверждение строки. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not begin with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not end with + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not match + . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if matches . + + + + + Коллекция вспомогательных классов для тестирования различных условий, связанных + с коллекциями в модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is found in + . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a null element is found in . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is not found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if every element in is also found in + . + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Определяет, является ли первая коллекция подмножеством второй + коллекции. Если любое из множеств содержит одинаковые элементы, то число + вхождений элемента в подмножестве должно быть меньше или + равно количеству вхождений в супермножестве. + + + Коллекция, которая с точки зрения теста должна содержаться в . + + + Коллекция, которая с точки зрения теста должна содержать . + + + Значение True, если является подмножеством + , в противном случае — False. + + + + + Создает словарь с числом вхождений каждого элемента + в указанной коллекции. + + + Обрабатываемая коллекция. + + + Число элементов, имеющих значение NULL, в коллекции. + + + Словарь с числом вхождений каждого элемента + в указанной коллекции. + + + + + Находит несоответствующий элемент между двумя коллекциями. Несоответствующий + элемент — это элемент, количество вхождений которого в ожидаемой коллекции отличается + от фактической коллекции. В качестве коллекций + ожидаются различные ссылки, отличные от null, с одинаковым + количеством элементов. За этот уровень проверки отвечает + вызывающий объект. Если несоответствующих элементов нет, функция возвращает + False, и выходные параметры использовать не следует. + + + Первая сравниваемая коллекция. + + + Вторая сравниваемая коллекция. + + + Ожидаемое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Фактическое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Несоответствующий элемент (может иметь значение NULL) или значение NULL, если несоответствующий + элемент отсутствует. + + + Значение True, если был найден несоответствующий элемент, в противном случае — False. + + + + + сравнивает объекты при помощи object.Equals + + + + + Базовый класс для исключений платформы. + + + + + Инициализирует новый экземпляр класса . + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Строго типизированный класс ресурса для поиска локализованных строк и т. д. + + + + + Возвращает кэшированный экземпляр ResourceManager, использованный этим классом. + + + + + Переопределяет свойство CurrentUICulture текущего потока для всех операций + поиска ресурсов, в которых используется этот строго типизированный класс. + + + + + Ищет локализованную строку, похожую на "Синтаксис строки доступа неверен". + + + + + Ищет локализованную строку, похожую на "Ожидаемая коллекция содержит {1} вхождений <{2}>. Фактическая коллекция содержит {3} вхождений. {0}". + + + + + Ищет локализованную строку, похожую на "Обнаружен элемент-дубликат: <{1}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое значение имеет другой регистр: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять не больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1} ({2})>. Фактическое: <{3} ({4})>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидалось любое значение, кроме: <{1}>. Фактическое значение: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Не передавайте типы значений в AreSame(). Значения, преобразованные в объекты, никогда не будут одинаковыми. Воспользуйтесь методом AreEqual(). {0}". + + + + + Ищет локализованную строку, похожую на "Сбой {0}. {1}". + + + + + Ищет локализованную строку, аналогичную "Асинхронный метод TestMethod с UITestMethodAttribute не поддерживается. Удалите async или используйте TestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Обе коллекции пусты. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы". + + + + + Ищет локализованную строку, похожую на "Ссылки на обе коллекции указывают на один объект коллекции. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы. {0}". + + + + + Ищет локализованную строку, похожую на "{0}({1})". + + + + + Ищет локализованную строку, похожую на "(NULL)". + + + + + Ищет локализованную строку, похожую на "(объект)". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не содержит строку "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "{0} ({1})". + + + + + Ищет локализованную строку, похожую на "Assert.Equals не следует использовать для Assertions. Используйте Assert.AreEqual и переопределения". + + + + + Ищет локализованную строку, похожую на "Число элементов в коллекциях не совпадает. Ожидаемое число: <{1}>. Фактическое: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {0} не соответствует". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет непредвиденный тип. Ожидаемый тип: <{2}>. Фактический тип: <{3}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет значение (NULL). Ожидаемый тип: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не заканчивается строкой "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Недопустимый аргумент — EqualsTester не может использовать значения NULL". + + + + + Ищет локализованную строку, похожую на "Невозможно преобразовать объект типа {0} в {1}". + + + + + Ищет локализованную строку, похожую на "Внутренний объект, на который была сделана ссылка, более не действителен". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. {1}". + + + + + Ищет локализованную строку, похожую на "Свойство {0} имеет тип {1}; ожидаемый тип: {2}". + + + + + Ищет локализованную строку, похожую на "{0} Ожидаемый тип: <{1}>. Фактический тип: <{2}>". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Неправильный тип: <{1}>. Фактический тип: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Не указан атрибут DataRowAttribute. Необходимо указать как минимум один атрибут DataRowAttribute с атрибутом DataTestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Исключение не было создано. Ожидалось исключение {1}. {0}". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. Значение не может быть равно NULL. {1}". + + + + + Ищет локализованную строку, похожую на "Число элементов различается". + + + + + Ищет локализованную строку, похожую на + "Не удалось найти конструктор с указанной сигнатурой. Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор класса PrivateObject". + . + + + + + Ищет локализованную строку, похожую на + "Не удалось найти указанный элемент ({0}). Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор PrivateObject". + . + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не начинается со строки "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое исключение должно иметь тип System.Exception или производный от него тип". + + + + + Ищет локализованную строку, похожую на "(Не удалось получить сообщение для исключения типа {0} из-за исключения.)". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал ожидаемое исключение {0}. {1}". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал исключение. Исключение ожидалось атрибутом {0}, определенным в методе теста". + + + + + Ищет локализованную строку, похожую на "Метод теста создан исключение {0}, а ожидалось исключение {1}. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Метод теста создал исключение {0}, а ожидалось исключение {1} или производный от него тип. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Создано исключение {2}, а ожидалось исключение {1}. {0} + Сообщение исключения: {3} + Стек трассировки: {4}". + + + + + результаты модульного теста + + + + + Тест был выполнен, но при его выполнении возникли проблемы. + Эти проблемы могут включать исключения или сбой утверждений. + + + + + Тест завершен, но результат его завершения неизвестен. + Может использоваться для прерванных тестов. + + + + + Тест был выполнен без проблем. + + + + + Тест выполняется в данный момент. + + + + + При попытке выполнения теста возникла ошибка в системе. + + + + + Время ожидания для теста истекло. + + + + + Тест прерван пользователем. + + + + + Тест находится в неизвестном состоянии + + + + + Предоставляет вспомогательные функции для платформы модульных тестов + + + + + Получает сообщения с исключениями, включая сообщения для всех внутренних исключений + (рекурсивно) + + Исключение, для которого следует получить сообщения + строка с сообщением об ошибке + + + + Перечисление для времен ожидания, которое можно использовать с классом . + Тип перечисления должен соответствовать + + + + + Бесконечно. + + + + + Атрибут тестового класса. + + + + + Получает атрибут метода теста, включающий выполнение этого теста. + + Для этого метода определен экземпляр атрибута метода теста. + + для использования для выполнения этого теста. + Extensions can override this method to customize how all methods in a class are run. + + + + Атрибут метода теста. + + + + + Выполняет метод теста. + + Выполняемый метод теста. + Массив объектов TestResult, представляющих результаты теста. + Extensions can override this method to customize running a TestMethod. + + + + Атрибут инициализации теста. + + + + + Атрибут очистки теста. + + + + + Атрибут игнорирования. + + + + + Атрибут свойства теста. + + + + + Инициализирует новый экземпляр класса . + + + Имя. + + + Значение. + + + + + Получает имя. + + + + + Получает значение. + + + + + Атрибут инициализации класса. + + + + + Атрибут очистки класса. + + + + + Атрибут инициализации сборки. + + + + + Атрибут очистки сборки. + + + + + Владелец теста + + + + + Инициализирует новый экземпляр класса . + + + Владелец. + + + + + Получает владельца. + + + + + Атрибут Priority; используется для указания приоритета модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Приоритет. + + + + + Получает приоритет. + + + + + Описание теста + + + + + Инициализирует новый экземпляр класса для описания теста. + + Описание. + + + + Получает описание теста. + + + + + URI структуры проекта CSS + + + + + Инициализирует новый экземпляр класса для URI структуры проекта CSS. + + URI структуры проекта CSS. + + + + Получает URI структуры проекта CSS. + + + + + URI итерации CSS + + + + + Инициализирует новый экземпляр класса для URI итерации CSS. + + URI итерации CSS. + + + + Получает URI итерации CSS. + + + + + Атрибут WorkItem; используется для указания рабочего элемента, связанного с этим тестом. + + + + + Инициализирует новый экземпляр класса для атрибута WorkItem. + + Идентификатор рабочего элемента. + + + + Получает идентификатор связанного рабочего элемента. + + + + + Атрибут Timeout; используется для указания времени ожидания модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Время ожидания. + + + + + Инициализирует новый экземпляр класса с заданным временем ожидания + + + Время ожидания + + + + + Получает время ожидания. + + + + + Объект TestResult, который возвращается адаптеру. + + + + + Инициализирует новый экземпляр класса . + + + + + Получает или задает отображаемое имя результата. Удобно для возврата нескольких результатов. + Если параметр равен NULL, имя метода используется в качестве DisplayName. + + + + + Получает или задает результат выполнения теста. + + + + + Получает или задает исключение, создаваемое, если тест не пройден. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает трассировки отладки для кода теста. + + + + + Gets or sets the debug traces by test code. + + + + + Получает или задает продолжительность выполнения теста. + + + + + Возвращает или задает индекс строки данных в источнике данных. Задается только для результатов выполнения + отдельных строк данных для теста, управляемого данными. + + + + + Получает или задает возвращаемое значение для метода теста. (Сейчас всегда равно NULL.) + + + + + Возвращает или задает файлы результатов, присоединенные во время теста. + + + + + Задает строку подключения, имя таблицы и метод доступа к строкам для тестов, управляемых данными. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Имя поставщика по умолчанию для DataSource. + + + + + Метод доступа к данным по умолчанию. + + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных, строкой подключения, таблицей данных и методом доступа к данным для доступа к источнику данных. + + Имя инвариантного поставщика данных, например System.Data.SqlClient + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + Задает порядок доступа к данным. + + + + Инициализирует новый экземпляр класса . Этот экземпляр будет инициализирован с строкой подключения и именем таблицы. + Укажите строку подключения и таблицу данных для доступа к источнику данных OLEDB. + + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных и строкой подключения, связанной с именем параметра. + + Имя источника данных, обнаруженного в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + Получает значение, представляющее поставщик данных для источника данных. + + + Имя поставщика данных. Если поставщик данных не был определен при инициализации объекта, будет возвращен поставщик по умолчанию, System.Data.OleDb. + + + + + Получает значение, представляющее строку подключения для источника данных. + + + + + Получает значение с именем таблицы, содержащей данные. + + + + + Возвращает метод, используемый для доступа к источнику данных. + + + + Один из значений. Если не инициализировано, возвращается значение по умолчанию . + + + + + Возвращает имя источника данных, обнаруженное в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + + Атрибут для тестов, управляемых данными, в которых данные могут быть встроенными. + + + + + Найти все строки данных и выполнить. + + + Метод теста. + + + Массив . + + + + + Выполнение метода теста, управляемого данными. + + Выполняемый метод теста. + Строка данных. + Результаты выполнения. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..b864a5e --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Test başına dağıtım için dağıtım öğesi (dosya veya dizin) belirtmek üzere kullanılır. + Test sınıfında veya test metodunda belirtilebilir. + Birden fazla öğe belirtmek için özniteliğin birden fazla örneğini içerebilir. + Öğe yolu mutlak veya göreli olabilir; göreli ise RunConfig.RelativePathRoot ile görelidir. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + sınıfının yeni bir örneğini başlatır. + + Dağıtılacak dosya veya dizin. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + + + + sınıfının yeni bir örneğini başlatır + + Dağıtılacak dosya veya dizinin göreli ya da mutlak yolu. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + Öğelerin kopyalanacağı dizinin yolu. Dağıtım dizinine göre mutlak veya göreli olabilir. Tüm dosyalar ve dizinler şuna göre tanımlanır: bu dizine kopyalanacak. + + + + Kopyalanacak kaynak dosya veya klasörün yolunu alır. + + + + + Öğenin kopyalandığı dizinin yolunu alır. + + + + + Bölüm, özellik ve özniteliklerin adlarına ait sabit değerleri içerir. + + + + + Yapılandırma bölümünün adı. + + + + + Beta2 için yapılandırma bölümü adı. Uyumluluk için kullanımda tutuluyor. + + + + + Veri kaynağının bölüm adı. + + + + + 'Name' için öznitelik adı + + + + + 'ConnectionString' için öznitelik adı + + + + + 'DataAccessMethod' için öznitelik adı + + + + + 'DataTable' için öznitelik adı + + + + + Veri Kaynağı öğesi. + + + + + Bu yapılandırmanın adını alır veya ayarlar. + + + + + .config dosyasındaki <connectionStrings> bölümünde bulunan ConnectionStringSettings öğesini alır veya ayarlar. + + + + + Veri tablosunun adını alır veya ayarlar. + + + + + Veri erişiminin türünü alır veya ayarlar. + + + + + Anahtarın adını alır. + + + + + Yapılandırma özelliklerini alır. + + + + + Veri kaynağı öğe koleksiyonu. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + Belirtilen anahtara sahip yapılandırma öğesini döndürür. + + Döndürülecek öğenin anahtarı. + Belirtilen anahtar ile System.Configuration.ConfigurationElement; aksi takdirde, null. + + + + Belirtilen dizin konumundaki yapılandırma öğesini alır. + + Döndürülecek System.Configuration.ConfigurationElement öğesinin dizin konumu. + + + + Yapılandırma öğesi koleksiyonuna bir yapılandırma öğesi ekler. + + Eklenecek System.Configuration.ConfigurationElement öğesi. + + + + Bir System.Configuration.ConfigurationElement öğesini koleksiyondan kaldırır. + + . + + + + Bir System.Configuration.ConfigurationElement öğesini koleksiyondan kaldırır. + + Kaldırılacak System.Configuration.ConfigurationElement anahtarı. + + + + Tüm yapılandırma öğesi nesnelerini koleksiyondan kaldırır. + + + + + Yeni bir oluşturur. + + Yeni bir . + + + + Belirtilen yapılandırma öğesi için öğe anahtarını alır. + + Anahtarı döndürülecek System.Configuration.ConfigurationElement. + Belirtilen System.Configuration.ConfigurationElement için anahtar görevi gören bir System.Object. + + + + Yapılandırma öğesi koleksiyonuna bir yapılandırma öğesi ekler. + + Eklenecek System.Configuration.ConfigurationElement öğesi. + + + + Yapılandırma öğesi koleksiyonuna bir yapılandırma öğesi ekler. + + Belirtilen System.Configuration.ConfigurationElement öğesinin ekleneceği dizin konumu. + Eklenecek System.Configuration.ConfigurationElement öğesi. + + + + Testler için yapılandırma ayarları desteği. + + + + + Testler için yapılandırma bölümünü alır. + + + + + Testler için yapılandırma bölümü. + + + + + Bu yapılandırma bölümünün veri kaynaklarını alır. + + + + + Özellik koleksiyonunu alır. + + + Bir koleksiyonu. + + + + + Bu sınıf, sistemde çalışan, genel OLMAYAN İÇ nesneyi temsil eder + + + + + sınıfının, özel sınıfın zaten mevcut olan nesnesini + içeren yeni bir örneğini başlatır + + özel üyelere ulaşmak için başlangıç noktası olarak hizmet veren nesne + Alınacak nesneyi . ile gösteren, başvuru kaldırma dizesi. Örnek: m_X.m_Y.m_Z + + + + sınıfının, belirtilen türü sarmalayan yeni bir örneğini + başlatır. + + Bütünleştirilmiş kodun adı + tam adı + Oluşturucuya geçirilecek bağımsız değişken + + + + sınıfının, belirtilen türü sarmalayan yeni bir örneğini + başlatır. + + Bütünleştirilmiş kodun adı + tam adı + Bir dizi alınacak oluşturucuya ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Oluşturucuya geçirilecek bağımsız değişken + + + + sınıfının, belirtilen türü sarmalayan yeni bir örneğini + başlatır. + + oluşturulacak nesnenin türü + Oluşturucuya geçirilecek bağımsız değişken + + + + sınıfının, belirtilen türü sarmalayan yeni bir örneğini + başlatır. + + oluşturulacak nesnenin türü + Bir dizi alınacak oluşturucuya ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Oluşturucuya geçirilecek bağımsız değişken + + + + sınıfının, belirtilen nesneyi sarmalayan yeni bir + örneğini başlatır. + + kaydırılacak nesne + + + + sınıfının, belirtilen nesneyi sarmalayan yeni bir + örneğini başlatır. + + kaydırılacak nesne + PrivateType nesnesi + + + + Hedefi alır veya ayarlar + + + + + Temel alınan nesnenin türünü alır + + + + + hedef nesnenin karma kodunu döndürür + + hedef nesnenin karma kodunu temsil eden tamsayı + + + + Eşittir + + Karşılaştırma yapılacak nesneler + nesneler eşit ise true döndürür. + + + + Belirtilen metodu çağırır + + Metodun adı + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Genel bağımsız değişkenlerin türlerine karşılık gelen bir tür dizisi. + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Kültür bilgisi + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Kültür bilgisi + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Kültür bilgisi + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Metodun adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Kültür bilgisi + Yöntem çağrısı sonucu + + + + Belirtilen metodu çağırır + + Yöntem adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Bir dizi alınacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Kültür bilgisi + Genel bağımsız değişkenlerin türlerine karşılık gelen bir tür dizisi. + Yöntem çağrısı sonucu + + + + Her boyut için alt simge dizisini kullanarak dizi öğesini alır + + Üyenin adı + dizi dizinleri + Öğe dizisi. + + + + Her boyut için alt simge dizisi kullanarak dizi öğesini ayarlar + + Üyenin adı + Ayarlanacak değer + dizi dizinleri + + + + Her boyut için alt simge dizisini kullanarak dizi öğesini alır + + Üyenin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + dizi dizinleri + Öğe dizisi. + + + + Her boyut için alt simge dizisi kullanarak dizi öğesini ayarlar + + Üyenin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Ayarlanacak değer + dizi dizinleri + + + + Alanı alır + + Alanın adı + Alan. + + + + Alanı ayarlar + + Alanın adı + ayarlanacak değer + + + + Alanı alır + + Alanın adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Alan. + + + + Alanı ayarlar + + Alanın adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + ayarlanacak değer + + + + Alanı veya özelliği alır + + Alan veya özelliğin adı + Alan veya özellik. + + + + Alanı veya özelliği ayarlar + + Alan veya özelliğin adı + ayarlanacak değer + + + + Alanı veya özelliği alır + + Alan veya özelliğin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Alan veya özellik. + + + + Alanı veya özelliği ayarlar + + Alan veya özelliğin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + ayarlanacak değer + + + + Özelliği alır + + Özellik adı + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Özellik. + + + + Özelliği alır + + Özellik adı + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Özellik. + + + + Özelliği ayarlar + + Özellik adı + ayarlanacak değer + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Özelliği ayarlar + + Özellik adı + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + ayarlanacak değer + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Özelliği alır + + Özelliğin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Özellik. + + + + Özelliği alır + + Özelliğin adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Özellik. + + + + Özelliği ayarlar + + Özellik adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + ayarlanacak değer + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Özelliği ayarlar + + Özellik adı + Bir veya daha fazla içeren bit maskesi aramanın nasıl yürütüldüğünü belirtir. + ayarlanacak değer + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Erişim dizesini doğrular + + erişim dizesi + + + + Üyeyi çağırır + + Üyenin adı + Ek öznitelikler + Çağrı bağımsız değişkenleri + Kültür + Çağrı sonucu + + + + Geçerli özel türden en uygun genel metot imzasını ayıklar. + + İmza önbelleğinin aranacağı yöntemin adı. + İçinde arama yapılacak parametrelerin türlerine karşılık gelen bir tür dizisi. + Genel bağımsız değişkenlerin türlerine karşılık gelen bir tür dizisi. + yöntem imzalarını daha fazla filtrelemek için. + Parametreler için değiştiriciler. + Bir methodinfo örneği. + + + + Bu sınıf, Özel Erişimci işlevselliği için özel bir sınıfı temsil eder. + + + + + Her şeye bağlar + + + + + Sarmalanan tür. + + + + + sınıfının, özel türü içeren yeni bir örneğini başlatır. + + Bütünleştirilmiş kod adı + şunun tam adı: + + + + sınıfının, tür nesnesindeki özel türü içeren yeni bir + örneğini başlatır + + Oluşturulacak kaydırılmış Tür. + + + + Başvurulan türü alır + + + + + Statik üyeyi çağırır + + InvokeHelper üyesinin adı + Çağrı bağımsız değişkenleri + Çağrı sonucu + + + + Statik üyeyi çağırır + + InvokeHelper üyesinin adı + Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Çağrı sonucu + + + + Statik üyeyi çağırır + + InvokeHelper üyesinin adı + Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Genel bağımsız değişkenlerin türlerine karşılık gelen bir tür dizisi. + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Çağrı bağımsız değişkenleri + Kültür + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Kültür bilgisi + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + Çağrı bağımsız değişkenleri + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + Çağrı bağımsız değişkenleri + Kültür + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + /// Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Kültür + Çağrı sonucu + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + /// Bir dizi çağrılacak yönteme ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler + Çağrı bağımsız değişkenleri + Kültür + Genel bağımsız değişkenlerin türlerine karşılık gelen bir tür dizisi. + Çağrı sonucu + + + + Statik dizideki öğeyi alır + + Dizinin adı + + Alınacak öğenin konumunu belirten dizinleri temsil eden tek boyutlu bir 32 bit + tamsayı dizisi. Örneğin, a[10][11] öğesine erişmek için dizinler {10,11} olur + + belirtilen konumdaki öğe + + + + Statik dizinin üyesini ayarlar + + Dizinin adı + ayarlanacak değer + + Ayarlanacak öğenin konumunu belirten dizinleri temsil eden tek boyutlu bir 32 bit + tamsayı dizisi. Örneğin, a[10][11] öğesine erişmek için dizi {10,11} olur + + + + + Statik dizideki öğeyi alır + + Dizinin adı + Ek InvokeHelper öznitelikleri + + Alınacak öğenin konumunu belirten dizinleri temsil eden tek boyutlu bir 32 bit + tamsayı dizisi. Örneğin, a[10][11] öğesine erişmek için dizi {10,11} olur + + belirtilen konumdaki öğe + + + + Statik dizinin üyesini ayarlar + + Dizinin adı + Ek InvokeHelper öznitelikleri + ayarlanacak değer + + Ayarlanacak öğenin konumunu belirten dizinleri temsil eden tek boyutlu bir 32 bit + tamsayı dizisi. Örneğin, a[10][11] öğesine erişmek için dizi {10,11} olur + + + + + Statik alanı alır + + Alanın adı + Statik alan. + + + + Statik alanı ayarlar + + Alanın adı + Çağrı bağımsız değişkeni + + + + Belirtilen InvokeHelper özniteliklerini kullanarak statik alanı alır + + Alanın adı + Ek çağrı öznitelikleri + Statik alan. + + + + Bağlama özniteliklerini kullanarak statik alanı ayarlar + + Alanın adı + Ek InvokeHelper öznitelikleri + Çağrı bağımsız değişkeni + + + + Statik alanı veya özelliği alır + + Alan veya özelliğin adı + Statik alan veya özellik. + + + + Statik alanı veya özelliği ayarlar + + Alan veya özelliğin adı + Alan veya özelliğe ayarlanacak değer + + + + Belirtilen InvokeHelper özniteliklerini kullanarak statik alanı veya özelliği alır + + Alan veya özelliğin adı + Ek çağrı öznitelikleri + Statik alan veya özellik. + + + + Bağlama özniteliklerini kullanarak statik alanı veya özelliği ayarlar + + Alan veya özelliğin adı + Ek çağrı öznitelikleri + Alan veya özelliğe ayarlanacak değer + + + + Statik özelliği alır + + Alan veya özelliğin adı + Çağrı bağımsız değişkenleri + Statik özellik. + + + + Statik özelliği ayarlar + + Özellik adı + Alan veya özelliğe ayarlanacak değer + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Statik özelliği ayarlar + + Özellik adı + Alan veya özelliğe ayarlanacak değer + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Statik özelliği alır + + Özellik adı + Ek çağrı öznitelikleri. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Statik özellik. + + + + Statik özelliği alır + + Özellik adı + Ek çağrı öznitelikleri. + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + Statik özellik. + + + + Statik özelliği ayarlar + + Özellik adı + Ek çağrı öznitelikleri. + Alan veya özelliğe ayarlanacak değer + Dizini oluşturulmuş özellikler için isteğe bağlı dizin değerleri. Dizini oluşturulmuş özelliklerin dizinleri sıfır tabanlıdır. Bu değer, dizini oluşturulmamış özellikler için null olmalıdır. + + + + Statik özelliği ayarlar + + Özellik adı + Ek çağrı öznitelikleri. + Alan veya özelliğe ayarlanacak değer + Bir dizi dizini oluşturulmuş özelliğe ait parametrelerin sayısını, sırasını ve türünü temsil eden nesneler. + Çağrılacak üyeye geçirilecek bağımsız değişkenler. + + + + Statik metodu çağırır + + Üyenin adı + Ek çağrı öznitelikleri + Çağrı bağımsız değişkenleri + Kültür + Çağrı sonucu + + + + Genel metotlar için metot imzası bulmayı sağlar. + + + + + Bu iki metodun metot imzalarını karşılaştırır. + + Method1 + Method2 + Benzer olduklarında true. + + + + Sağlanan türün temel türünden hiyerarşi derinliğini alır. + + Tür. + Derinlik. + + + + Sağlanan bilgilerle en çok türetilen türü bulur. + + Aday eşleşmeleri. + Eşleşme sayısı. + En çok türetilen metot. + + + + Temel ölçütlerle eşleşen bir metot kümesini göz önünde bulundurarak + bir tür dizisini temel alan bir metot seçin. Hiçbir metot ölçütlerle eşleşmezse bu metot + null döndürmelidir. + + Bağlama belirtimi. + Aday eşleşmeleri + Türler + Parametre değiştiriciler. + Eşleştirme metodu. Eşleşen yoksa null. + + + + Sağlanan iki metot arasından en belirli olanını bulur. + + Metot 1 + Metot 1 için parametre sırası + Parametre dizi türü. + Metot 2 + Metot 2 için parametre sırası + >Parametre dizi türü. + İçinde aramanın yapılacağı türler. + Bağımsız Değişkenler + Eşleşmeyi temsil eden bir int. + + + + Sağlanan iki metot arasından en belirli olanını bulur. + + Metot 1 + Metot 1 için parametre sırası + Parametre dizi türü. + Metot 2 + Metot 2 için parametre sırası + >Parametre dizi türü. + İçinde aramanın yapılacağı türler. + Bağımsız Değişkenler + Eşleşmeyi temsil eden bir int. + + + + Sağlanan iki tür arasından en belirli olanını bulur. + + Tür 1 + Tür 2 + Tanımlama türü + Eşleşmeyi temsil eden bir int. + + + + Birim testlerinde sağlanan bilgileri depolamak için kullanılır. + + + + + Bir testin test özelliklerini alır. + + + + + Test, veri tabanlı test için kullanıldığında geçerli veri satırını alır. + + + + + Test, veri tabanlı test için kullanıldığında geçerli veri bağlantısı satırını alır. + + + + + Test çalıştırması için, dağıtılan dosyaların ve sonuç dosyalarının depolandığı temel dizini alır. + + + + + Test çalıştırması için dağıtılan dosyaların dizinini alır. Genellikle dizininin bir alt dizinidir. + + + + + Test çalıştırmasından sonuçlar için temel dizini alır. Genellikle dizininin bir alt dizinidir. + + + + + Test çalıştırması sonuç dosyalarının dizinini alır. Genellikle dizininin bir alt dizinidir. + + + + + Test sonucu dosyalarının dizinini alır. + + + + + Test çalıştırması için dağıtılan dosyaların ve sonuç dosyalarının depolandığı temel dizini alır. + ile aynıdır. Bunun yerine bu özelliği kullanın. + + + + + Test çalıştırması için dağıtılan dosyaların dizinini alır. Genellikle dizininin bir alt dizinidir. + ile aynıdır. Bunun yerine bu özelliği kullanın. + + + + + Test çalıştırması sonuç dosyalarının dizini alır. Genellikle dizininin bir alt dizinidir. + ile aynıdır. Test çalıştırması sonuç dosyaları için bu özelliği veya + teste özgü sonuç dosyaları için kullanın. + + + + + Şu anda yürütülen test metodunu içeren sınıfın tam adını alır + + + + + Yürütülmekte olan test metodunun adını alır + + + + + Geçerli test sonucunu alır. + + + + + Test çalışırken izleme iletileri yazmak için kullanılır + + biçimlendirilmiş ileti dizesi + + + + Test çalışırken izleme iletileri yazmak için kullanılır + + biçim dizesi + bağımsız değişkenler + + + + TestResult.ResultFileNames içindeki listeye bir dosya adı ekler + + + Dosya Adı. + + + + + Belirtilen ada sahip bir zamanlayıcı başlatır + + Zamanlayıcının adı. + + + + Belirtilen ada sahip zamanlayıcıyı sonlandırır + + Zamanlayıcının adı. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..b7a0029 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Yürütülecek TestMethod. + + + + + Test metodunun adını alır. + + + + + Test sınıfının adını alır. + + + + + Test metodunun dönüş türünü alır. + + + + + Test metodunun parametrelerini alır. + + + + + Test metodu için methodInfo değerini alır. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Test metodunu çağırır. + + + Test metoduna geçirilecek bağımsız değişkenler. (Örn. Veri temelli için) + + + Test yöntemi çağırma sonucu. + + + This call handles asynchronous test methods as well. + + + + + Test metodunun tüm özniteliklerini alır. + + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Tüm öznitelikler. + + + + + Belirli bir türdeki özniteliği alır. + + System.Attribute type. + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Belirtilen türün öznitelikleri. + + + + + Yardımcı. + + + + + Denetim parametresi null değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws argument null exception when parameter is null. + + + + Denetim parametresi null veya boş değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws ArgumentException when parameter is null. + + + + Veri tabanlı testlerde veri satırlarına erişme şekline yönelik sabit listesi. + + + + + Satırlar sıralı olarak döndürülür. + + + + + Satırlar rastgele sırayla döndürülür. + + + + + Bir test metodu için satır içi verileri tanımlayan öznitelik. + + + + + sınıfının yeni bir örneğini başlatır. + + Veri nesnesi. + + + + Bir bağımsız değişken dizisi alan sınıfının yeni bir örneğini başlatır. + + Bir veri nesnesi. + Daha fazla veri. + + + + Çağıran test metodu verilerini alır. + + + + + Özelleştirme için test sonuçlarında görünen adı alır veya ayarlar. + + + + + Onay sonuçlandırılmadı özel durumu. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + InternalTestFailureException sınıfı. Bir test çalışmasının iç hatasını belirtmek için kullanılır + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Belirtilen türde bir özel durum beklemeyi belirten öznitelik + + + + + Beklenen tür ile sınıfının yeni bir örneğini başlatır + + Beklenen özel durum türü + + + + Beklenen tür ve test tarafından özel durum oluşturulmadığında eklenecek ileti ile sınıfının + yeni bir örneğini başlatır. + + Beklenen özel durum türü + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna dahil edilecek ileti + + + + + Beklenen özel durumun Türünü belirten bir değer alır + + + + + Beklenen özel durumun türünden türetilmiş türlerin beklenen özel durum türü olarak değerlendirilmesine izin verilip verilmeyeceğini + belirten değeri alır veya ayarlar + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Birim testi tarafından oluşturulan özel durum türünün beklendiğini doğrular + + Birim testi tarafından oluşturulan özel durum + + + + Birim testinden bir özel durum beklemek için belirtilen özniteliklerin temel sınıfı + + + + + Varsayılan bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + + + Bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna + dahil edilecek özel durum + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Varsayılan 'özel durum yok' iletisini alır + + ExpectedException özniteliği tür adı + Özel durum olmayan varsayılan ileti + + + + Özel durumun beklenip beklenmediğini belirler. Metot dönüş yapıyorsa, özel + durumun beklendiği anlaşılır. Metot bir özel durum oluşturuyorsa, özel durumun + beklenmediği anlaşılır ve oluşturulan özel durumun iletisi test sonucuna + eklenir. Kolaylık sağlamak amacıyla sınıfı kullanılabilir. + kullanılırsa ve onaylama başarısız olursa, + test sonucu Belirsiz olarak ayarlanır. + + Birim testi tarafından oluşturulan özel durum + + + + Özel durum bir AssertFailedException veya AssertInconclusiveException ise özel durumu yeniden oluşturur + + Bir onaylama özel durumu ise yeniden oluşturulacak özel durum + + + + Bu sınıf, kullanıcının genel türler kullanan türlere yönelik birim testleri yapmasına yardımcı olmak üzere tasarlanmıştır. + GenericParameterHelper bazı genel tür kısıtlamalarını yerine getirir; + örneğin: + 1. genel varsayılan oluşturucu + 2. ortak arabirim uygular: IComparable, IEnumerable + + + + + sınıfının C# genel türlerindeki 'newable' + kısıtlamasını karşılayan yeni bir örneğini başlatır. + + + This constructor initializes the Data property to a random value. + + + + + sınıfının, Data özelliğini kullanıcı + tarafından sağlanan bir değerle başlatan yeni bir örneğini başlatır. + + Herhangi bir tamsayı değeri + + + + Verileri alır veya ayarlar + + + + + İki GenericParameterHelper nesnesi için değer karşılaştırması yapar + + karşılaştırma yapılacak nesne + nesne bu 'this' GenericParameterHelper nesnesiyle aynı değere sahipse true. + aksi takdirde false. + + + + Bu nesne için bir karma kod döndürür. + + Karma kod. + + + + İki nesnesinin verilerini karşılaştırır. + + Karşılaştırılacak nesne. + + Bu örnek ve değerin göreli değerlerini gösteren, işaretli sayı. + + + Thrown when the object passed in is not an instance of . + + + + + Uzunluğu Data özelliğinden türetilmiş bir IEnumerator nesnesi + döndürür. + + IEnumerator nesnesi + + + + Geçerli nesneye eşit olan bir GenericParameterHelper nesnesi + döndürür. + + Kopyalanan nesne. + + + + Kullanıcıların tanılama amacıyla birim testlerindeki izlemeleri günlüğe kaydetmesini/yazmasını sağlar. + + + + + LogMessage işleyicisi. + + Günlüğe kaydedilecek ileti. + + + + Dinlenecek olay. Birim testi yazıcı bir ileti yazdığında oluşturulur. + Genellikle bağdaştırıcı tarafından kullanılır. + + + + + İletileri günlüğe kaydetmek için çağrılacak test yazıcısı API'si. + + Yer tutucuları olan dize biçimi. + Yer tutucu parametreleri. + + + + TestCategory özniteliği; bir birim testinin kategorisini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır ve kategoriyi teste uygular. + + + Test Kategorisi. + + + + + Teste uygulanan test kategorilerini alır. + + + + + "Category" özniteliğinin temel sınıfı + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + sınıfının yeni bir örneğini başlatır. + Kategoriyi teste uygular. TestCategories tarafından döndürülen + dizeler /category komutu içinde testleri filtrelemek için kullanılır + + + + + Teste uygulanan test kategorisini alır. + + + + + AssertFailedException sınıfı. Test çalışmasının başarısız olduğunu göstermek için kullanılır + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Birim testleri içindeki çeşitli koşulları test etmeye yönelik yardımcı + sınıf koleksiyonu. Test edilen koşul karşılanmazsa bir özel durum + oluşturulur. + + + + + Assert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is false. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is true. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null. + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if refers to the same object + as . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is not equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Bir AssertFailedException oluşturur. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Statik eşit aşırı yüklemeler iki türün örneklerini başvuru eşitliği bakımından + karşılaştırmak için kullanılır. Bu metot iki örneği eşitlik bakımından karşılaştırmak için + kullanılmamalıdır. Bu nesne her zaman Assert.Fail ile oluşturulur. + Lütfen birim testlerinizde Assert.AreEqual ve ilişkili aşırı yüklemelerini kullanın. + + Nesne A + Nesne B + Her zaman false. + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + Null karakterleri ('\0'), "\\0" ile değiştirir. + + + Aranacak dize. + + + Null karakterler içeren dönüştürülmüş dize "\\0" ile değiştirildi. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException oluşturan yardımcı işlev + + + özel durum oluşturan onaylamanın adı + + + onaylama hatası koşullarını açıklayan ileti + + + Parametreler. + + + + + Parametreyi geçerli koşullar için denetler + + + Parametre. + + + Onaylama Adı. + + + parametre adı + + + iletisi geçersiz parametre özel durumu içindir + + + Parametreler. + + + + + Bir nesneyi güvenli bir şekilde dizeye dönüştürür, null değerleri ve null karakterleri işler. + Null değerler "(null)" değerine dönüştürülür. Null karakterler "\\0" değerine dönüştürülür. + + + Dizeye dönüştürülecek nesne. + + + Dönüştürülmüş dize. + + + + + Dize onayı. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if matches . + + + + + Birim testleri içindeki koleksiyonlarla ilişkili çeşitli koşulları test etmeye + yönelik yardımcı sınıf koleksiyonu. Test edilen koşul karşılanmazsa + bir özel durum oluşturulur. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a two or more equal elements are found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if every element in is also found in + . + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Şu parametre biçimlendirilirken kullanılacak parametre dizisi: . + + + Thrown if is equal to . + + + + + Birinci koleksiyonun ikinci koleksiyona ait bir alt küme olup + olmadığını belirler. Kümelerden biri yinelenen öğeler içeriyorsa, + öğenin alt kümedeki oluşum sayısı üst kümedeki oluşum sayısına + eşit veya bu sayıdan daha az olmalıdır. + + + Testin içinde bulunmasını beklediği koleksiyon . + + + Testin içermesini beklediği koleksiyon . + + + Şu durumda true: şunun bir alt kümesidir: + , aksi takdirde false. + + + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren bir + sözlük oluşturur. + + + İşlenecek koleksiyon. + + + Koleksiyondaki null öğe sayısı. + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren + bir sözlük. + + + + + İki koleksiyon arasında eşleşmeyen bir öğe bulur. Eşleşmeyen öğe, + beklenen koleksiyonda gerçek koleksiyondakinden farklı sayıda görünen + öğedir. Koleksiyonların, + aynı sayıda öğeye sahip null olmayan farklı başvurular olduğu + varsayılır. Bu doğrulama düzeyinden + çağıran sorumludur. Eşleşmeyen bir öğe yoksa işlev + false değerini döndürür ve dış parametreler kullanılmamalıdır. + + + Karşılaştırılacak birinci koleksiyon. + + + Karşılaştırılacak ikinci koleksiyon. + + + Şunun için beklenen oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Gerçek oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Uyumsuz öğe (null olabilir) veya uyumsuz bir + öğe yoksa null. + + + uyumsuz bir öğe bulunduysa true; aksi takdirde false. + + + + + object.Equals kullanarak nesneleri karşılaştırır + + + + + Çerçeve Özel Durumları için temel sınıf. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + Yerelleştirilmiş dizeleri aramak gibi işlemler için, türü kesin olarak belirtilmiş kaynak sınıfı. + + + + + Bu sınıf tarafından kullanılan, önbelleğe alınmış ResourceManager örneğini döndürür. + + + + + Türü kesin olarak belirlenmiş bu kaynak sınıfını kullanan + tüm kaynak aramaları için geçerli iş parçacığının CurrentUICulture özelliğini geçersiz kılar. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Erişim dizesinde geçersiz söz dizimi var. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen koleksiyon {1} <{2}> oluşumu içeriyor. Gerçek koleksiyon {3} oluşum içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yinelenen öğe bulundu:<{1}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek değer için büyük/küçük harf kullanımı farklı:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında en fazla <{3}> fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1} ({2})>. Gerçek:<{3} ({4})>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında <{3}> değerinden büyük bir fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: <{1}> dışında bir değer bekleniyordu. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Değer türlerini AreSame() metoduna geçirmeyin. Object türüne dönüştürülen değerler hiçbir zaman aynı olmaz. AreEqual(). kullanmayı deneyin {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} başarısız oldu. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: UITestMethodAttribute özniteliğine sahip async TestMethod metodu desteklenmiyor. async ifadesini kaldırın ya da TestMethodAttribute özniteliğini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da boş. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon başvurusu da aynı koleksiyon nesnesini işaret ediyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0}({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: null. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: nesne. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesini içermiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} ({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Assert.Equals, Onaylamalar için kullanılmamalıdır. Lütfen bunun yerine Assert.AreEqual ve aşırı yüklemelerini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Koleksiyonlardaki öğe sayıları eşleşmiyor. Beklenen:<{1}>. Gerçek:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} dizinindeki öğe eşleşmiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {1} dizinindeki öğe beklenen türde değil. Beklenen tür:<{2}>. Gerçek tür:<{3}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dizeyi arar: {1} dizinindeki öğe (null). Beklenen tür:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle bitmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Geçersiz bağımsız değişken. EqualsTester null değerler kullanamaz. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} türündeki nesne {1} türüne dönüştürülemiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Başvurulan iç nesne artık geçerli değil. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} özelliği {1} türüne sahip; beklenen tür {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} Beklenen tür:<{1}>. Gerçek tür:<{2}>. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yanlış Tür:<{1}>. Gerçek tür:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: No DataRowAttribute belirtilmedi. DataTestMethodAttribute ile en az bir DataRowAttribute gereklidir. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Özel durum oluşturulmadı. {1} özel durumu bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. Değer null olamaz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Farklı sayıda öğe. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen imzaya sahip oluşturucu bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi + tanımlayan türü PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen üye ({0}) bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi tanımlayan türü + PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle başlamıyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen özel durum türü System.Exception veya System.Exception'dan türetilmiş bir tür olmalıdır. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Bir özel durum nedeniyle {0} türündeki özel durum için ileti alınamadı. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu beklenen {0} özel durumunu oluşturmadı. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu bir özel durum oluşturmadı. Test metodunda tanımlanan {0} özniteliği tarafından bir özel durum bekleniyordu. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu veya bundan türetilmiş bir tür bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {2} özel durumu oluşturuldu, ancak {1} özel durumu bekleniyordu. {0} + Özel Durum İletisi: {3} + Yığın İzleme: {4}. + + + + + birim testi sonuçları + + + + + Test yürütüldü ancak sorunlar oluştu. + Sorunlar özel durumları veya başarısız onaylamaları içerebilir. + + + + + Test tamamlandı ancak başarılı olup olmadığı belli değil. + İptal edilen testler için kullanılabilir. + + + + + Test bir sorun olmadan yürütüldü. + + + + + Test şu anda yürütülüyor. + + + + + Test yürütülmeye çalışılırken bir sistem hatası oluştu. + + + + + Test zaman aşımına uğradı. + + + + + Test, kullanıcı tarafından iptal edildi. + + + + + Test bilinmeyen bir durumda + + + + + Birim testi çerçevesi için yardımcı işlevini sağlar + + + + + Yinelemeli olarak tüm iç özel durumların iletileri dahil olmak üzere + özel durum iletilerini alır + + Şunun için iletilerin alınacağı özel durum: + hata iletisi bilgilerini içeren dize + + + + Zaman aşımları için sınıfı ile birlikte kullanılabilen sabit listesi. + Sabit listesinin türü eşleşmelidir + + + + + Sonsuz. + + + + + Test sınıfı özniteliği. + + + + + Bu testi çalıştırmayı sağlayan bir test metodu özniteliği alır. + + Bu metot üzerinde tanımlanan test metodu özniteliği örneği. + The bu testi çalıştırmak için kullanılabilir. + Extensions can override this method to customize how all methods in a class are run. + + + + Test metodu özniteliği. + + + + + Bir test metodu yürütür. + + Yürütülecek test metodu. + Testin sonuçlarını temsil eden bir TestResult nesneleri dizisi. + Extensions can override this method to customize running a TestMethod. + + + + Test başlatma özniteliği. + + + + + Test temizleme özniteliği. + + + + + Ignore özniteliği. + + + + + Test özelliği özniteliği. + + + + + sınıfının yeni bir örneğini başlatır. + + + Ad. + + + Değer. + + + + + Adı alır. + + + + + Değeri alır. + + + + + Sınıf başlatma özniteliği. + + + + + Sınıf temizleme özniteliği. + + + + + Bütünleştirilmiş kod başlatma özniteliği. + + + + + Bütünleştirilmiş kod temizleme özniteliği. + + + + + Test Sahibi + + + + + sınıfının yeni bir örneğini başlatır. + + + Sahip. + + + + + Sahibi alır. + + + + + Priority özniteliği; birim testinin önceliğini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Öncelik. + + + + + Önceliği alır. + + + + + Testin açıklaması + + + + + Bir testi açıklamak için kullanılan sınıfının yeni bir örneğini başlatır. + + Açıklama. + + + + Bir testin açıklamasını alır. + + + + + CSS Proje Yapısı URI'si + + + + + CSS Proje Yapısı URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Proje Yapısı URI'si. + + + + CSS Proje Yapısı URI'sini alır. + + + + + CSS Yineleme URI'si + + + + + CSS Yineleme URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Yineleme URI'si. + + + + CSS Yineleme URI'sini alır. + + + + + WorkItem özniteliği; bu testle ilişkili bir çalışma öğesini belirtmek için kullanılır. + + + + + WorkItem Özniteliği için sınıfının yeni bir örneğini başlatır. + + Bir iş öğesinin kimliği. + + + + İlişkili bir iş öğesinin kimliğini alır. + + + + + Timeout özniteliği; bir birim testinin zaman aşımını belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Zaman aşımı. + + + + + sınıfının önceden ayarlanmış bir zaman aşımı ile yeni bir örneğini başlatır + + + Zaman aşımı + + + + + Zaman aşımını alır. + + + + + Bağdaştırıcıya döndürülecek TestResult nesnesi. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + Sonucun görünen adını alır veya ayarlar. Birden fazla sonuç döndürürken yararlıdır. + Null ise Metot adı DisplayName olarak kullanılır. + + + + + Test yürütmesinin sonucunu alır veya ayarlar. + + + + + Test başarısız olduğunda oluşturulan özel durumu alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test koduna göre hata ayıklama izlemelerini alır veya ayarlar. + + + + + Gets or sets the debug traces by test code. + + + + + Test yürütme süresini alır veya ayarlar. + + + + + Veri kaynağındaki veri satırı dizinini alır veya ayarlar. Yalnızca, veri tabanlı bir testin tek bir veri satırının + çalıştırılmasına ait sonuçlar için ayarlayın. + + + + + Test metodunun dönüş değerini alır veya ayarlar. (Şu anda her zaman null). + + + + + Test tarafından eklenen sonuç dosyalarını alır veya ayarlar. + + + + + Veri tabanlı test için bağlantı dizesini, tablo adını ve satır erişim metodunu belirtir. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource için varsayılan sağlayıcı adı. + + + + + Varsayılan veri erişimi metodu. + + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı, bağlantı dizesi, veri tablosu ve veri kaynağına erişmek için kullanılan veri erişimi metodu ile başlatılır. + + System.Data.SqlClient gibi değişmez veri sağlayıcısı adı + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + Verilere erişme sırasını belirtir. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir bağlantı dizesi ve tablo adı ile başlatılır. + OLEDB veri kaynağına erişmek için kullanılan bağlantı dizesini ve veri tablosunu belirtin. + + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı ile ve ayar adıyla ilişkili bir bağlantı dizesi ile başlatılır. + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan veri kaynağının adı. + + + + Veri kaynağının veri sağlayıcısını temsil eden bir değer alır. + + + Veri sağlayıcısı adı. Nesne başlatılırken bir veri sağlayıcısı belirtilmemişse varsayılan System.Data.OleDb sağlayıcısı döndürülür. + + + + + Veri kaynağının bağlantı dizesini temsil eden bir değer alır. + + + + + Verileri sağlayan tablo adını belirten bir değer alır. + + + + + Veri kaynağına erişmek için kullanılan metodu alır. + + + + Bir değerlerdir. Eğer başlatılmazsa, varsayılan değeri döndürür . + + + + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan bir veri kaynağının adını alır. + + + + + Verilerin satır içi belirtilebileceği veri tabanlı testin özniteliği. + + + + + Tüm veri satırlarını bulur ve yürütür. + + + Test Yöntemi. + + + Bir . + + + + + Veri tabanlı test metodunu çalıştırır. + + Yürütülecek test yöntemi. + Veri Satırı. + Yürütme sonuçları. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..35e3696 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用于为预测试部署指定部署项(文件或目录)。 + 可在测试类或测试方法上指定。 + 可使用多个特性实例来指定多个项。 + 项路径可以是绝对路径或相对路径,如果为相对路径,则相对于 RunConfig.RelativePathRoot。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + 初始化 类的新实例。 + + 要部署的文件或目录。路径与生成输出目录相关。将项复制到与已部署测试程序集相同的目录。 + + + + 初始化 类的新实例 + + 要部署的文件或目录的相对路径或绝对路径。该路径相对于生成输出目录。将项复制到与已部署测试程序集相同的目录。 + 要将项复制到其中的目录路径。它可以是绝对部署目录或相对部署目录。所有由以下对象标识的文件和目录: 将复制到此目录。 + + + + 获取要复制的源文件或文件夹的路径。 + + + + + 获取将项复制到其中的目录路径。 + + + + + 包含节名称、属性名称、特性名称的文本。 + + + + + 配置节名称。 + + + + + Beta2 的配置节名称。保留以兼容。 + + + + + 数据源的节名称。 + + + + + "Name" 的属性名称 + + + + + "ConnectionString" 的属性名称 + + + + + "DataAccessMethod" 的属性名称 + + + + + "DataTable" 的属性名称 + + + + + 数据源元素。 + + + + + 获取或设置此配置的名称。 + + + + + 获取或设置 .config 文件 <connectionStrings> 部分中的 ConnectionStringSettings 元素。 + + + + + 获取或设置数据表的名称。 + + + + + 获取或设置数据访问的类型。 + + + + + 获取密钥名称。 + + + + + 获取配置属性。 + + + + + 数据源元素集合。 + + + + + 初始化 类的新实例。 + + + + + 返回具有指定密钥的配置元素。 + + 要返回的元素的密钥。 + 具有指定密钥的 System.Configuration.ConfigurationElement;否则,为空。 + + + + 在指定索引位置获取配置元素。 + + 要返回的 System.Configuration.ConfigurationElement 的索引位置。 + + + + 向配置元素集合添加一个配置元素。 + + 要添加的 System.Configuration.ConfigurationElement。 + + + + 从集合中删除一个 System.Configuration.ConfigurationElement。 + + . + + + + 从集合中删除一个 System.Configuration.ConfigurationElement。 + + 要删除的 System.Configuration.ConfigurationElement 的密钥。 + + + + 从集合中删所有配置元素对象。 + + + + + 创建一个新 。 + + 一个新的. + + + + 获取指定配置元素的元素密钥。 + + 返回密钥的 System.Configuration.ConfigurationElement。 + 充当指定 System.Configuration.ConfigurationElement 密钥的 System.Object。 + + + + 向配置元素集合添加一个配置元素。 + + 要添加的 System.Configuration.ConfigurationElement。 + + + + 向配置元素集合添加一个配置元素。 + + 要添加指定 System.Configuration.ConfigurationElement 的索引位置。 + 要添加的 System.Configuration.ConfigurationElement。 + + + + 支持对测试进行配置设置。 + + + + + 获取测试的配置节。 + + + + + 测试的配置节。 + + + + + 获取此配置节的数据源。 + + + + + 获取属性集合。 + + + 该 元素的属性。 + + + + + 此类表示系统中活动的非公共内部对象 + + + + + 初始化 类的新实例, + 该类包含已存在的私有类对象 + + 充当访问私有成员的起点的对象 + 非关联化字符串 using,指向要以 m_X.m_Y.m_Z 形式检索的对象 + + + + 初始化包装 + 指定类型的 类的新实例。 + + 程序集名称 + 完全限定名称 + 要传递到构造函数的参数 + + + + 初始化包装 + 指定类型的 类的新实例。 + + 程序集名称 + 完全限定名称 + 表示供方法调用的 表示供构造函数获取的参数编号、顺序和类型的对象 + 要传递到构造函数的参数 + + + + 初始化包装 + 指定类型的 类的新实例。 + + 要创建的对象的类型 + 要传递到构造函数的参数 + + + + 初始化包装 + 指定类型的 类的新实例。 + + 要创建的对象的类型 + 表示供方法调用的 表示供构造函数获取的参数编号、顺序和类型的对象 + 要传递到构造函数的参数 + + + + 初始化包装 + 给定对象的 类的新实例。 + + 要包装的对象 + + + + 初始化包装 + 给定对象的 类的新实例。 + + 要包装的对象 + PrivateType 对象 + + + + 获取或设置目标 + + + + + 获取基础对象的类型 + + + + + 返回目标对象的哈希代码 + + 表示目标对象的哈希代码的 int + + + + 等于 + + 要与其比较的对象 + 如果对象相等,则返回 true。 + + + + 调用指定方法 + + 方法名称 + 要传递到成员以调用的参数。 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 与泛型参数的类型对应的类型数组。 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 要传递到成员以调用的参数。 + 区域性信息 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 区域性信息 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要传递到成员以调用的参数。 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要传递到成员以调用的参数。 + 区域性信息 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 区域性信息 + 方法调用的结果 + + + + 调用指定方法 + + 方法名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 表示供方法调用的 表示供方法获取的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 区域性信息 + 与泛型参数的类型对应的类型数组。 + 方法调用的结果 + + + + 使用每个维度的子脚本数组获取数组元素 + + 成员名称 + 数组的索引 + 元素数组。 + + + + 使用每个维度的子脚本数组设置数组元素 + + 成员名称 + 要设置的值 + 数组的索引 + + + + 使用每个维度的子脚本数组获取数组元素 + + 成员名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 数组的索引 + 元素数组。 + + + + 使用每个维度的子脚本数组设置数组元素 + + 成员名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要设置的值 + 数组的索引 + + + + 获取字段 + + 字段名称 + 字段。 + + + + 设置字段 + + 字段名称 + 要设置的值 + + + + 获取字段 + + 字段名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 字段。 + + + + 设置字段 + + 字段名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要设置的值 + + + + 获取字段或属性 + + 字段或属性的名称 + 字段或属性。 + + + + 设置字段或属性 + + 字段或属性的名称 + 要设置的值 + + + + 获取字段或属性 + + 字段或属性的名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 字段或属性。 + + + + 设置字段或属性 + + 字段或属性的名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要设置的值 + + + + 获取属性 + + 属性名称 + 要传递到成员以调用的参数。 + 属性。 + + + + 获取属性 + + 属性名称 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 属性。 + + + + 设置属性 + + 属性名称 + 要设置的值 + 要传递到成员以调用的参数。 + + + + 设置属性 + + 属性名称 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要设置的值 + 要传递到成员以调用的参数。 + + + + 获取属性 + + 属性名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要传递到成员以调用的参数。 + 属性。 + + + + 获取属性 + + 属性名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 属性。 + + + + 设置属性 + + 属性名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要设置的值 + 要传递到成员以调用的参数。 + + + + 设置属性 + + 属性名称 + 由一个或多个以下对象组成的位掩码: 指定如何执行搜索。 + 要设置的值 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + + + + 验证访问字符串 + + 访问字符串 + + + + 调用成员 + + 成员名称 + 其他特性 + 调用的参数 + 区域性 + 调用的结果 + + + + 从当前私有类型中提取最合适的泛型方法签名。 + + 要在其中搜索签名缓存的方法的名称。 + 与要在其中进行搜索的参数类型对应的类型数组。 + 与泛型参数的类型对应的类型数组。 + 以进一步筛选方法签名。 + 参数的修饰符。 + methodinfo 实例。 + + + + 此类表示专用访问器功能的私有类。 + + + + + 绑定到所有内容 + + + + + 包装的类型。 + + + + + 初始化包含私有类型的 类的新实例。 + + 程序集名称 + 其完全限定的名称 + + + + 初始化 类的新实例, + 该类包含类型对象中的 + 私有类型 + 要创建的包装类型。 + + + + 获取引用的类型 + + + + + 调用静态成员 + + InvokeHelper 的成员的名称 + 调用的参数 + 调用的结果 + + + + 调用静态成员 + + InvokeHelper 的成员的名称 + 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 调用的结果 + + + + 调用静态成员 + + InvokeHelper 的成员的名称 + 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 与泛型参数的类型对应的类型数组。 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 调用的参数 + 区域性 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 区域性信息 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + 调用的参数 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + 调用的参数 + 区域性 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + /// 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 区域性 + 调用的结果 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + /// 表示供方法调用的参数编号、顺序和类型的对象数组 + 调用的参数 + 区域性 + 与泛型参数的类型对应的类型数组。 + 调用的结果 + + + + 获取静态数组中的元素 + + 数组名称 + + 一个 32 位整数的一维数组,表示指定要获取的 + 元素位置的索引。例如,要访问 a[10][11],则索引为 {10,11} + + 指定位置处的元素 + + + + 设置静态数组的成员 + + 数组名称 + 要设置的值 + + 一个 32 位整数的一维数组,表示指定要设置的 + 元素位置的索引。例如,要访问 a[10][11],则数组为 {10,11} + + + + + 获取静态数组中的元素 + + 数组名称 + 其他 InvokeHelper 特性 + + 一个 32 位整数的一维数组,表示指定要获取的 + 元素位置的索引。例如,要访问 a[10][11],则数组为 {10,11} + + 指定位置处的元素 + + + + 设置静态数组的成员 + + 数组名称 + 其他 InvokeHelper 特性 + 要设置的值 + + 一个 32 位整数的一维数组,表示指定要设置的 + 元素位置的索引。例如,要访问 a[10][11],则数组为 {10,11} + + + + + 获取静态字段 + + 字段名称 + 静态字段。 + + + + 设置静态字段 + + 字段名称 + 调用的参数 + + + + 使用指定的 InvokeHelper 属性获取静态字段 + + 字段名称 + 其他调用特性 + 静态字段。 + + + + 使用绑定属性设置静态字段 + + 字段名称 + 其他 InvokeHelper 特性 + 调用的参数 + + + + 获取静态字段或属性 + + 字段或属性的名称 + 静态字段或属性。 + + + + 设置静态字段或属性 + + 字段或属性的名称 + 要设置到字段或属性的值 + + + + 使用指定的 InvokeHelper 属性获取静态字段或属性 + + 字段或属性的名称 + 其他调用特性 + 静态字段或属性。 + + + + 使用绑定属性设置静态字段或属性 + + 字段或属性的名称 + 其他调用特性 + 要设置到字段或属性的值 + + + + 获取静态属性 + + 字段或属性的名称 + 调用的参数 + 静态属性。 + + + + 设置静态属性 + + 属性名称 + 要设置到字段或属性的值 + 要传递到成员以调用的参数。 + + + + 设置静态属性 + + 属性名称 + 要设置到字段或属性的值 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + + + + 获取静态属性 + + 属性名称 + 其他调用特性。 + 要传递到成员以调用的参数。 + 静态属性。 + + + + 获取静态属性 + + 属性名称 + 其他调用特性。 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + 静态属性。 + + + + 设置静态属性 + + 属性名称 + 其他调用特性。 + 要设置到字段或属性的值 + 索引属性的可选索引值。索引属性的索引以零为基础。对于非索引属性此值应为 null。 + + + + 设置静态属性 + + 属性名称 + 其他调用特性。 + 要设置到字段或属性的值 + 表示供方法调用的 表示索引属性的参数编号、顺序和类型的对象。 + 要传递到成员以调用的参数。 + + + + 调用静态方法 + + 成员名称 + 其他调用特性 + 调用的参数 + 区域性 + 调用的结果 + + + + 为泛型方法提供方法签名发现。 + + + + + 比较这两种方法的方法签名。 + + Method1 + Method2 + 如果相似则为 true。 + + + + 从所提供类型的基类型获取层次结构深度。 + + 类型。 + 深度。 + + + + 通过提供的信息查找高度派生的类型。 + + 候选匹配。 + 匹配数。 + 派生程度最高的方法。 + + + + 如果给定了一组与基础条件匹配的方法,则基于 + 类型数组选择一个方法。如果没有方法与条件匹配,此方法应 + 返回 null。 + + 绑定规范。 + 候选匹配 + 类型 + 参数修饰符。 + 匹配方法。如无匹配则为 null。 + + + + 在提供的两种方法中找到最具有针对性的方法。 + + 方法 1 + 方法 1 的参数顺序 + 参数数组类型。 + 方法 2 + 方法 2 的参数顺序 + >Paramter 数组类型。 + 要在其中进行搜索的类型。 + 参数。 + 表示匹配的 int。 + + + + 在提供的两种方法中找到最具有针对性的方法。 + + 方法 1 + 方法 1 的参数顺序 + 参数数组类型。 + 方法 2 + 方法 2 的参数顺序 + >参数数组类型。 + 要在其中进行搜索的类型。 + 参数。 + 表示匹配的 int。 + + + + 在提供的两种类型中找到一种最具针对性的类型。 + + 类型 1 + 类型 2 + 定义类型 + 表示匹配的 int。 + + + + 用于存储提供给单元测试的信息。 + + + + + 获取测试的测试属性。 + + + + + 测试用于数据驱动测试时获取当前数据行。 + + + + + 测试用于数据驱动测试时获取当前数据连接行。 + + + + + 获取测试运行的基目录,该目录下存储有部署文件和结果文件。 + + + + + 获取为测试运行部署的文件的目录。通常是 的子目录。 + + + + + 获取测试运行结果的基目录。通常是 的子目录。 + + + + + 获取测试运行结果文件的目录。通常为 的子目录。 + + + + + 获取测试结果文件的目录。 + + + + + 获取测试运行的基目录,该目录下存储有部署的文件和结果文件。 + 与 相同。请改用该属性。 + + + + + 获取为测试运行部署的文件的目录。通常为 的子目录。 + 与 相同。请改用该属性。 + + + + + 获取测试运行结果文件的目录。通常为 的子目录。 + 与 相同。请改用测试运行结果文件的该属性,或使用特定测试结果文件的 + 。 + + + + + 获取包含当前正在执行的测试方法的类的完全限定名称 + + + + + 获取当前正在执行的测试方法的名称 + + + + + 获取当前测试结果。 + + + + + 用于在测试运行时写入跟踪消息 + + 格式化消息字符串 + + + + 用于在测试运行时写入跟踪消息 + + 格式字符串 + 参数 + + + + 将文件名添加到 TestResult.ResultFileNames 中的列表 + + + 文件名。 + + + + + 启动具有指定名称的计时器 + + 计时器名称。 + + + + 终止具有指定名称的计时器 + + 计时器名称。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..0ccce3f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用于执行的 TestMethod。 + + + + + 获取测试方法的名称。 + + + + + 获取测试类的名称。 + + + + + 获取测试方法的返回类型。 + + + + + 获取测试方法的参数。 + + + + + 获取测试方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 调用测试方法。 + + + 传递到测试方法的参数(例如,对于数据驱动) + + + 测试方法调用的结果。 + + + This call handles asynchronous test methods as well. + + + + + 获取测试方法的所有属性。 + + + 父类中定义的任何属性都有效。 + + + 所有特性。 + + + + + 获取特定类型的属性。 + + System.Attribute type. + + 父类中定义的任何属性都有效。 + + + 指定类型的属性。 + + + + + 帮助程序。 + + + + + 非 null 的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws argument null exception when parameter is null. + + + + 不为 null 或不为空的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws ArgumentException when parameter is null. + + + + 枚举在数据驱动测试中访问数据行的方式。 + + + + + 按连续顺序返回行。 + + + + + 按随机顺序返回行。 + + + + + 用于定义测试方法内联数据的属性。 + + + + + 初始化 类的新实例。 + + 数据对象。 + + + + 初始化采用参数数组的 类的新实例。 + + 一个数据对象。 + 更多数据。 + + + + 获取数据以调用测试方法。 + + + + + 在测试结果中为自定义获取或设置显示名称。 + + + + + 断言无结论异常。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + InternalTestFailureException 类。用来指示测试用例的内部错误 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 类的新实例。 + + 异常消息。 + 异常。 + + + + 初始化 类的新实例。 + + 异常消息。 + + + + 初始化 类的新实例。 + + + + + 指定引发指定类型异常的属性 + + + + + 初始化含有预期类型的 类的新实例 + + 预期异常的类型 + + + + 初始化 类的新实例, + 测试未引发异常时,该类中会包含预期类型和消息。 + + 预期异常的类型 + + 测试由于未引发异常而失败时测试结果中要包含的消息 + + + + + 获取指示预期异常类型的值 + + + + + 获取或设置一个值,指示是否允许将派生自预期异常类型的类型 + 作为预期类型 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 验证由单元测试引发的异常类型是否为预期类型 + + 由单元测试引发的异常 + + + + 指定应从单元测试引发异常的属性基类 + + + + + 初始化含有默认无异常消息的 类的新实例 + + + + + 初始化含有一条无异常消息的 类的新实例 + + + 测试由于未引发异常而失败时测试结果中要包含的 + 消息 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 获取默认无异常消息 + + ExpectedException 特性类型名称 + 默认非异常消息 + + + + 确定该异常是否为预期异常。如果返回了方法,则表示 + 该异常为预期异常。如果方法引发异常,则表示 + 该异常不是预期异常,且引发的异常消息 + 包含在测试结果中。为了方便, + 可使用 类。如果使用了 且断言失败, + 则表示测试结果设置为了“无结论”。 + + 由单元测试引发的异常 + + + + 如果异常为 AssertFailedException 或 AssertInconclusiveException,则再次引发该异常 + + 如果是断言异常则要重新引发的异常 + + + + 此类旨在帮助用户使用泛型类型为类型执行单元测试。 + GenericParameterHelper 满足某些常见的泛型类型限制, + 如: + 1.公共默认构造函数 + 2.实现公共接口: IComparable,IEnumerable + + + + + 初始化 类的新实例, + 该类满足 C# 泛型中的“可续订”约束。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 类的新实例, + 该类将数据属性初始化为用户提供的值。 + + 任意整数值 + + + + 获取或设置数据 + + + + + 比较两个 GenericParameterHelper 对象的值 + + 要进行比较的对象 + 如果 obj 与“此”GenericParameterHelper 对象具有相同的值,则为 true。 + 反之则为 false。 + + + + 为此对象返回哈希代码。 + + 哈希代码。 + + + + 比较两个 对象的数据。 + + 要比较的对象。 + + 有符号的数字表示此实例和值的相对值。 + + + Thrown when the object passed in is not an instance of . + + + + + 返回一个 IEnumerator 对象,该对象的长度派生自 + 数据属性。 + + IEnumerator 对象 + + + + 返回与当前对象相同的 GenericParameterHelper + 对象。 + + 克隆对象。 + + + + 允许用户记录/编写单元测试的跟踪以进行诊断。 + + + + + 用于 LogMessage 的处理程序。 + + 要记录的消息。 + + + + 要侦听的事件。单元测试编写器编写某些消息时引发。 + 主要供适配器使用。 + + + + + 测试编写器要将其调用到日志消息的 API。 + + 带占位符的字符串格式。 + 占位符的参数。 + + + + TestCategory 属性;用于指定单元测试的分类。 + + + + + 初始化 类的新实例并将分类应用到该测试。 + + + 测试类别。 + + + + + 获取已应用到测试的测试类别。 + + + + + "Category" 属性的基类 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 类的新实例。 + 将分类应用到测试。TestCategories 返回的字符串 + 与 /category 命令一起使用,以筛选测试 + + + + + 获取已应用到测试的测试分类。 + + + + + AssertFailedException 类。用于指示测试用例失败 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + 帮助程序类的集合,用于测试单元测试中 + 的各种条件。如果不满足被测条件,则引发 + 一个异常。 + + + + + 获取 Assert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is false. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is true. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null. + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if refers to the same object + as . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is not equal to . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 引发 AssertFailedException。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 静态相等重载用于比较两种类型实例的引用 + 相等。此方法应用于比较两个实例的 + 相等。此对象始终会引发 Assert.Fail。请在单元测试中使用 + Assert.AreEqual 和关联的重载。 + + 对象 A + 对象 B + 始终为 False。 + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + + 在格式化时使用的参数数组 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 将 null 字符("\0")替换为 "\\0"。 + + + 要搜索的字符串。 + + + 其中 null 字符替换为 "\\0" 的转换字符串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 用于创建和引发 AssertionFailedException 的帮助程序函数 + + + 引发异常的断言名称 + + + 描述断言失败条件的消息 + + + 参数。 + + + + + 检查有效条件的参数 + + + 参数。 + + + 断言名称。 + + + 参数名称 + + + 无效参数异常的消息 + + + 参数。 + + + + + 将对象安全地转换为字符串,处理 null 值和 null 字符。 + 将 null 值转换为 "(null)"。将 null 字符转换为 "\\0"。 + + + 要转换为字符串的对象。 + + + 转换的字符串。 + + + + + 字符串断言。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not begin with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not end with + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not match + . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if matches . + + + + + 帮助程序类的集合,用于测试与单元测试内的集合相关联的 + 多种条件。如果不满足被测条件, + 则引发一个异常。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is found in + . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a null element is found in . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if every element in is also found in + . + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组。 + + + Thrown if is equal to . + + + + + 确定第一个集合是否为第二个 + 集合的子集。如果任一集合包含重复元素,则子集中元素 + 出现的次数必须小于或 + 等于在超集中元素出现的次数。 + + + 测试预期包含在以下对象中的集合: 。 + + + 测试预期要包含的集合 。 + + + 为 True,如果 是一个子集 + ,反之则为 False。 + + + + + 构造包含指定集合中每个元素的出现次数 + 的字典。 + + + 要处理的集合。 + + + 集合中 null 元素的数量。 + + + 包含指定集合中每个元素的发生次数 + 的字典。 + + + + + 在两个集合之间查找不匹配的元素。不匹配的元素是指 + 在预期集合中显示的次数与 + 在实际集合中显示的次数不相同的元素。假定 + 集合是具有相同元素数目 + 的不同非 null 引用。 调用方负责此级别的验证。 + 如果存在不匹配的元素,函数将返回 + false,并且不会使用 out 参数。 + + + 要比较的第一个集合。 + + + 要比较的第二个集合。 + + + 预期出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 实际出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 不匹配元素(可能为 null),或者如果没有不匹配元素, + 则为 null。 + + + 如果找到不匹配的元素,则为 True;反之则为 False。 + + + + + 使用 Object.Equals 比较对象 + + + + + 框架异常的基类。 + + + + + 初始化 类的新实例。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 一个强类型资源类,用于查找已本地化的字符串等。 + + + + + 返回此类使用的缓存的 ResourceManager 实例。 + + + + + 使用此强类型资源类为所有资源查找替代 + 当前线程的 CurrentUICulture 属性。 + + + + + 查找类似于“访问字符串具有无效语法。”的已本地化字符串。 + + + + + 查找类似于“预期集合包含 {1} 个 <{2}> 的匹配项。实际集合包含 {3} 个匹配项。{0}”的已本地化字符串。 + + + + + 查找类似于“找到了重复项: <{1}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际值的大小写有所不同: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应不大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1} ({2})>。实际为: <{3} ({4})>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为除 <{1}>外的任何值。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“不要向 AreSame() 传递值类型。转换为对象的值永远不会相同。请考虑使用 AreEqual()。{0}”的已本地化字符串。 + + + + + 查找类似于“{0} 失败。{1}”的已本地化字符串。 + + + + + 查找类似于“不支持具有 UITestMethodAttribute 的异步 TestMethod。请删除异步或使用 TestMethodAttribute。” 的已本地化字符串。 + + + + + 查找类似于“这两个集合都为空。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同元素。”的已本地化字符串。 + + + + + 查找类似于“这两个集合引用指向同一个集合对象。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同的元素。{0}”的已本地化字符串。 + + + + + 查找类似于“{0}({1})”的已本地化字符串。 + + + + + 查找类似于 "(null)" 的已本地化字符串。 + + + + + 查找类似于“(对象)”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不包含字符串“{1}”。{2}。”的已本地化字符串。 + + + + + 查找类似于“{0} ({1})”的已本地化字符串。 + + + + + 查找类似于“Assert.Equals 不应用于断言。请改用 Assert.AreEqual 和重载。”的已本地化字符串。 + + + + + 查找类似于“集合中的元素数目不匹配。预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {0} 处的元素不匹配。”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素不是预期类型。预期类型为: <{2}>。实际类型为: <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素为 (null)。预期类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”结尾。{2}。”的已本地化字符串。 + + + + + 查找类似于“参数无效 - EqualsTester 不能使用 null。”的已本地化字符串。 + + + + + 查找类似于“无法将类型 {0} 的对象转换为 {1}。”的本地化字符串。 + + + + + 查找类似于“引用的内部对象不再有效。”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。{1}。”的已本地化字符串。 + + + + + 查找类似于“属性 {0} 具有类型 {1};预期类型为 {2}。”的已本地化字符串。 + + + + + 查找类似于“{0} 预期类型: <{1}>。实际类型: <{2}>。”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”不匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“错误类型: <{1}>。实际类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“未指定 DataRowAttribute。DataTestMethodAttribute 至少需要一个 DataRowAttribute。”的已本地化字符串。 + + + + + 查找类似于“未引发异常。预期为 {1} 异常。{0}”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。值不能为 null。{1}。”的已本地化字符串。 + + + + + 查找类似于“不同元素数。”的已本地化字符串。 + + + + + 查找类似于 + “找不到具有指定签名的构造函数。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型传递到 + PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于 + “找不到指定成员({0})。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型 + 传递到 PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”开头。{2}。”的已本地化字符串。 + + + + + 查找类似于“预期异常类型必须是 System.Exception 或派生自 System.Exception 的类型。”的已本地化字符串。 + + + + + 查找类似于“(由于出现异常,未能获取 {0} 类型异常的消息。)”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发预期异常 {0}。{1}”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发异常。预期测试方法上定义的属性 {0} 会引发异常。”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1}。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1} 或从其派生的类型。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“引发异常 {2},但预期为异常 {1}。{0} + 异常消息: {3} + 堆栈跟踪: {4}”的已本地化字符串。 + + + + + 单元测试结果 + + + + + 测试已执行,但出现问题。 + 问题可能涉及异常或失败的断言。 + + + + + 测试已完成,但无法确定它是已通过还是失败。 + 可用于已中止的测试。 + + + + + 测试已执行,未出现任何问题。 + + + + + 当前正在执行测试。 + + + + + 尝试执行测试时出现了系统错误。 + + + + + 测试已超时。 + + + + + 用户中止了测试。 + + + + + 测试处于未知状态 + + + + + 为单元测试框架提供帮助程序功能 + + + + + 以递归方式获取包括所有内部异常消息在内的 + 异常消息 + + 获取消息的异常 + 包含错误消息信息的字符串 + + + + 超时枚举,可与 类共同使用。 + 枚举类型必须相符 + + + + + 无限。 + + + + + 测试类属性。 + + + + + 获取可运行此测试的测试方法属性。 + + 在此方法上定义的测试方法属性实例。 + 将用于运行此测试。 + Extensions can override this method to customize how all methods in a class are run. + + + + 测试方法属性。 + + + + + 执行测试方法。 + + 要执行的测试方法。 + 表示测试结果的 TestResult 对象数组。 + Extensions can override this method to customize running a TestMethod. + + + + 测试初始化属性。 + + + + + 测试清理属性。 + + + + + 忽略属性。 + + + + + 测试属性特性。 + + + + + 初始化 类的新实例。 + + + 名称。 + + + 值。 + + + + + 获取名称。 + + + + + 获取值。 + + + + + 类初始化属性。 + + + + + 类清理属性。 + + + + + 程序集初始化属性。 + + + + + 程序集清理属性。 + + + + + 测试所有者 + + + + + 初始化 类的新实例。 + + + 所有者。 + + + + + 获取所有者。 + + + + + 优先级属性;用于指定单元测试的优先级。 + + + + + 初始化 类的新实例。 + + + 属性。 + + + + + 获取属性。 + + + + + 测试的描述 + + + + + 初始化 类的新实例,描述测试。 + + 说明。 + + + + 获取测试的说明。 + + + + + CSS 项目结构 URI + + + + + 为 CSS 项目结构 URI 初始化 类的新实例。 + + CSS 项目结构 URI。 + + + + 获取 CSS 项目结构 URI。 + + + + + CSS 迭代 URI + + + + + 为 CSS 迭代 URI 初始化 类的新实例。 + + CSS 迭代 URI。 + + + + 获取 CSS 迭代 URI。 + + + + + 工作项属性;用来指定与此测试关联的工作项。 + + + + + 为工作项属性初始化 类的新实例。 + + 工作项的 ID。 + + + + 获取关联工作项的 ID。 + + + + + 超时属性;用于指定单元测试的超时。 + + + + + 初始化 类的新实例。 + + + 超时。 + + + + + 初始化含有预设超时的 类的新实例 + + + 超时 + + + + + 获取超时。 + + + + + 要返回到适配器的 TestResult 对象。 + + + + + 初始化 类的新实例。 + + + + + 获取或设置结果的显示名称。这在返回多个结果时很有用。 + 如果为 null,则表示方法名用作了 DisplayName。 + + + + + 获取或设置测试执行的结果。 + + + + + 获取或设置测试失败时引发的异常。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 通过测试代码获取或设置调试跟踪。 + + + + + Gets or sets the debug traces by test code. + + + + + 获取或设置测试执行的持续时间。 + + + + + 获取或设置数据源中的数据行索引。仅对数据驱动测试的数据行单次运行结果 + 进行设置。 + + + + + 获取或设置测试方法的返回值。(当前始终为 null)。 + + + + + 获取或设置测试附加的结果文件。 + + + + + 为数据驱动测试指定连接字符串、表名和行访问方法。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource 的默认提供程序名称。 + + + + + 默认数据访问方法。 + + + + + 初始化 类的新实例。将使用数据提供程序、连接字符串、数据表和访问数据源的数据访问方法初始化此实例。 + + 不变的数据提供程序名称,例如 System.Data.SqlClient + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + 指定访问数据的顺序。 + + + + 初始化 类的新实例。将使用连接字符串和表名初始化此实例。 + 指定连接字符串和数据表,访问 OLEDB 数据源。 + + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + + + + 初始化 类的新实例。将使用数据提供程序和与设置名称关联的连接字符串初始化此实例。 + + 在 app.config 文件中 <microsoft.visualstudio.qualitytools> 部分找到的数据源的名称。 + + + + 获取表示数据源的数据提供程序的值。 + + + 数据提供程序名称。如果数据提供程序未在对象初始化时进行指定,则将返回 System.Data.OleDb 的默认提供程序。 + + + + + 获取表示数据源的连接字符串的值。 + + + + + 获取指示提供数据的表名的值。 + + + + + 获取用于访问数据源的方法。 + + + + 其中一个 值。如果 未初始化,这将返回默认值。 + + + + + 获取 app.config 文件的 <microsoft.visualstudio.qualitytools> 部分中找到的数据源的名称。 + + + + + 可在其中将数据指定为内联的数据驱动测试的属性。 + + + + + 查找所有数据行并执行。 + + + 测试方法。 + + + 一系列。 + + + + + 运行数据驱动测试方法。 + + 要执行的测试方法。 + 数据行。 + 执行的结果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..2d6cc37 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,1097 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用來指定每個測試部署的部署項目 (檔案或目錄)。 + 可以指定於測試類別或測試方法。 + 可以有屬性的多個執行個體來指定多個項目。 + 項目路徑可以是相對或絕對路徑,如果是相對路徑,則是 RunConfig.RelativePathRoot 的相對路徑。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + + + 初始化 類別的新執行個體。 + + 要部署的檔案或目錄。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + + + + 初始化 類別的新執行個體 + + 要部署之檔案或目錄的相對或絕對路徑。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + 要將項目複製到其中之目錄的路徑。它可以是部署目錄的絕對或相對路徑。下者所識別的所有檔案和目錄: 將會複製到這個目錄中。 + + + + 取得要複製之來源檔案或資料夾的路徑。 + + + + + 取得要將項目複製到其中之目錄的路徑。 + + + + + 包含區段、屬性 (property)、屬性 (attribute) 名稱的常值。 + + + + + 組態區段名稱。 + + + + + Beta2 的組態區段名稱。為相容性而保留。 + + + + + 資料來源的區段名稱。 + + + + + 'Name' 的屬性名稱 + + + + + 'ConnectionString' 的屬性名稱 + + + + + 'DataAccessMethod' 的屬性名稱 + + + + + 'DataTable' 的屬性名稱 + + + + + 資料來源元素。 + + + + + 取得或設定此組態的名稱。 + + + + + 取得或設定 .config 檔 <connectionStrings> 區段的 ConnectionStringSettings 元素。 + + + + + 取得或設定運算列表的名稱。 + + + + + 取得或設定資料存取的類型。 + + + + + 取得金鑰名稱。 + + + + + 取得組態屬性。 + + + + + 資料來源元素集合。 + + + + + 初始化 類別的新執行個體。 + + + + + 傳回具有指定索引鍵的組態元素。 + + 要傳回之元素的索引鍵。 + 具有指定索引鍵的 System.Configuration.ConfigurationElement; 否則為 null。 + + + + 取得位在指定索引位置的組態元素。 + + 要傳回之 System.Configuration.ConfigurationElement 的索引位置。 + + + + 將組態元素新增至組態元素集合。 + + 要新增的 System.Configuration.ConfigurationElement。 + + + + 從集合移除 System.Configuration.ConfigurationElement。 + + 。 + + + + 從集合移除 System.Configuration.ConfigurationElement。 + + 要移除之 System.Configuration.ConfigurationElement 的索引鍵。 + + + + 從集合移除所有組態元素物件。 + + + + + 建立新的 。 + + 新的 + + + + 取得指定組態元素的元素索引鍵。 + + 要為其傳回索引鍵的 System.Configuration.ConfigurationElement。 + 用作指定 System.Configuration.ConfigurationElement 之索引鍵的 System.Object。 + + + + 將組態元素新增至組態元素集合。 + + 要新增的 System.Configuration.ConfigurationElement。 + + + + 將組態元素新增至組態元素集合。 + + 要新增指定 System.Configuration.ConfigurationElement 的索引位置。 + 要新增的 System.Configuration.ConfigurationElement。 + + + + 支援測試的組態設定。 + + + + + 取得測試的組態區段。 + + + + + 測試的組態區段。 + + + + + 取得此組態區段的資料來源。 + + + + + 取得屬性集合。 + + + (屬於元素的屬性)。 + + + + + 這個類別代表系統中的即時非公用 INTERNAL 物件 + + + + + 初始化 類別 (內含 + 私用類別的現有物件) 的新執行個體 + + 作為連絡 Private 成員之起點的物件 + 使用 . 的取值字串,指向要以 m_X.m_Y.m_Z 形式擷取的物件 + + + + 初始化 類別 (其包裝 + 指定的類型) 的新執行個體。 + + 組件的名稱 + 完整名稱 + 要傳遞給建構函式的引數 + + + + 初始化 類別 (其包裝 + 指定的類型) 的新執行個體。 + + 組件的名稱 + 完整名稱 + 物件陣列, 物件陣列,代表要取得之建構函式的參數數目、順序和類型 + 要傳遞給建構函式的引數 + + + + 初始化 類別 (其包裝 + 指定的類型) 的新執行個體。 + + 要建立的物件類型 + 要傳遞給建構函式的引數 + + + + 初始化 類別 (其包裝 + 指定的類型) 的新執行個體。 + + 要建立的物件類型 + 物件陣列, 物件陣列,代表要取得之建構函式的參數數目、順序和類型 + 要傳遞給建構函式的引數 + + + + 初始化 類別 (其包裝 + 給定的物件) 的新執行個體。 + + 要包裝的物件 + + + + 初始化 類別 (其包裝 + 給定的物件) 的新執行個體。 + + 要包裝的物件 + PrivateType 物件 + + + + 取得或設定目標 + + + + + 取得基礎物件的類型 + + + + + 傳回目標物件的雜湊碼 + + int,代表目標物件的雜湊碼 + + + + 等於 + + 要與之比較的物件 + 若物件相等則傳回 true。 + + + + 叫用指定的方法 + + 方法的名稱 + 要傳遞給要叫用之成員的引數。 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 對應至泛型引數類型的類型陣列。 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 要傳遞給要叫用之成員的引數。 + 文化特性 (Culture) 資訊 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 文化特性 (Culture) 資訊 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要傳遞給要叫用之成員的引數。 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要傳遞給要叫用之成員的引數。 + 文化特性 (Culture) 資訊 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 文化特性 (Culture) 資訊 + 方法呼叫結果 + + + + 叫用指定的方法 + + 方法名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 物件陣列, 物件陣列,代表要取得之方法的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 文化特性 (Culture) 資訊 + 對應至泛型引數類型的類型陣列。 + 方法呼叫結果 + + + + 取得使用每個維度的下標陣列的陣列元素 + + 成員的名稱 + 陣列索引 + 元素陣列。 + + + + 設定使用每個維度的下標陣列的陣列元素 + + 成員的名稱 + 要設定的值 + 陣列索引 + + + + 取得使用每個維度的下標陣列的陣列元素 + + 成員的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 陣列索引 + 元素陣列。 + + + + 設定使用每個維度的下標陣列的陣列元素 + + 成員的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要設定的值 + 陣列索引 + + + + 取得欄位 + + 欄位的名稱 + 欄位。 + + + + 設定欄位 + + 欄位的名稱 + 要設定的值 + + + + 取得欄位 + + 欄位的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 欄位。 + + + + 設定欄位 + + 欄位的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要設定的值 + + + + 取得欄位或屬性 + + 欄位或屬性名稱 + 欄位或屬性。 + + + + 設定欄位或屬性 + + 欄位或屬性名稱 + 要設定的值 + + + + 取得欄位或屬性 + + 欄位或屬性名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 欄位或屬性。 + + + + 設定欄位或屬性 + + 欄位或屬性名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要設定的值 + + + + 取得屬性 + + 屬性名稱 + 要傳遞給要叫用之成員的引數。 + 屬性。 + + + + 取得屬性 + + 屬性名稱 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 屬性。 + + + + 設定屬性 + + 屬性名稱 + 要設定的值 + 要傳遞給要叫用之成員的引數。 + + + + 設定屬性 + + 屬性名稱 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要設定的值 + 要傳遞給要叫用之成員的引數。 + + + + 取得屬性 + + 屬性的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要傳遞給要叫用之成員的引數。 + 屬性。 + + + + 取得屬性 + + 屬性的名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 屬性。 + + + + 設定屬性 + + 屬性名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要設定的值 + 要傳遞給要叫用之成員的引數。 + + + + 設定屬性 + + 屬性名稱 + 位元遮罩包含一或多個物件 ,這些物件指定如何進行搜尋。 + 要設定的值 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + + + + 驗證存取字串 + + 存取字串 + + + + 叫用成員 + + 成員的名稱 + 其他屬性 + 引動過程的引數 + 文化特性 (Culture) + 引動過程結果 + + + + 從目前私用類型中擷取最適當的泛型方法簽章。 + + 要在其中搜尋簽章快取的方法名稱。 + 對應至要在其中進行搜尋之參數類型的類型陣列。 + 對應至泛型引數類型的類型陣列。 + 進一步篩選方法簽章。 + 參數的修飾詞。 + methodinfo 執行個體。 + + + + 此類別代表私用存取子功能的私用類別。 + + + + + 繫結至所有項目 + + + + + 包裝的類型。 + + + + + 初始化 類別 (其內含私人類型) 的新執行個體。 + + 組件名稱 + 下列項目的完整名稱: + + + + 初始化 類別 (內含 + 類型物件的私用類型) 的新執行個體 + + 要建立的已包裝「類型」。 + + + + 取得參考的類型 + + + + + 叫用靜態成員 + + InvokeHelper 的成員名稱 + 引動過程的引數 + 引動過程結果 + + + + 叫用靜態成員 + + InvokeHelper 的成員名稱 + 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 引動過程結果 + + + + 叫用靜態成員 + + InvokeHelper 的成員名稱 + 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 對應至泛型引數類型的類型陣列。 + 引動過程結果 + + + + 叫用靜態方法 + + 成員的名稱 + 引動過程的引數 + 文化特性 (Culture) + 引動過程結果 + + + + 叫用靜態方法 + + 成員的名稱 + 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 文化特性 (Culture) 資訊 + 引動過程結果 + + + + 叫用靜態方法 + + 成員的名稱 + 其他引動過程屬性 + 引動過程的引數 + 引動過程結果 + + + + 叫用靜態方法 + + 成員的名稱 + 其他引動過程屬性 + 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 引動過程結果 + + + + 叫用靜態方法 + + 成員名稱 + 其他引動過程屬性 + 引動過程的引數 + 文化特性 (Culture) + 引動過程結果 + + + + 叫用靜態方法 + + 成員名稱 + 其他引動過程屬性 + /// 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 文化特性 (Culture) + 引動過程結果 + + + + 叫用靜態方法 + + 成員名稱 + 其他引動過程屬性 + /// 物件陣列, 代表要叫用之方法的參數數目、順序和類型 + 引動過程的引數 + 文化特性 (Culture) + 對應至泛型引數類型的類型陣列。 + 引動過程結果 + + + + 取得靜態陣列中的元素 + + 陣列的名稱 + + 32 位元整數的一維陣列,代表指定要取得之元素的位置索引。 + 例如,若要存取 a[10][11],索引即為 {10,11} + + 元素 (位於指定的位置) + + + + 設定靜態陣列的成員 + + 陣列的名稱 + 要設定的值 + + 32 位元整數的一維陣列,代表指定要設定之元素的位置索引。 + 例如,若要存取 a[10][11],陣列即為 {10,11} + + + + + 取得靜態陣列中的元素 + + 陣列的名稱 + 其他 InvokeHelper 屬性 + + 32 位元整數的一維陣列,代表指定要取得之元素的位置索引。 + 例如,若要存取 a[10][11],陣列即為 {10,11} + + 元素 (位於指定的位置) + + + + 設定靜態陣列的成員 + + 陣列的名稱 + 其他 InvokeHelper 屬性 + 要設定的值 + + 32 位元整數的一維陣列,代表指定要設定之元素的位置索引。 + 例如,若要存取 a[10][11],陣列即為 {10,11} + + + + + 取得靜態欄位 + + 欄位名稱 + 靜態欄位。 + + + + 設定靜態欄位 + + 欄位名稱 + 引動過程的引數 + + + + 取得使用所指定 InvokeHelper 屬性的靜態欄位 + + 欄位名稱 + 其他引動過程屬性 + 靜態欄位。 + + + + 設定使用繫結屬性的靜態欄位 + + 欄位名稱 + 其他 InvokeHelper 屬性 + 引動過程的引數 + + + + 取得靜態欄位或屬性 + + 欄位或屬性名稱 + 靜態欄位或屬性。 + + + + 設定靜態欄位或屬性 + + 欄位或屬性名稱 + 要設定為欄位或屬性的值 + + + + 取得使用所指定 InvokeHelper 屬性 (attribute) 的靜態欄位或屬性 (property) + + 欄位或屬性名稱 + 其他引動過程屬性 + 靜態欄位或屬性。 + + + + 設定使用繫結屬性 (attribute) 的靜態欄位或屬性 (property) + + 欄位或屬性名稱 + 其他引動過程屬性 + 要設定為欄位或屬性的值 + + + + 取得靜態屬性 + + 欄位或屬性名稱 + 引動過程的引數 + 靜態屬性。 + + + + 設定靜態屬性 + + 屬性名稱 + 要設定為欄位或屬性的值 + 要傳遞給要叫用之成員的引數。 + + + + 設定靜態屬性 + + 屬性名稱 + 要設定為欄位或屬性的值 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + + + + 取得靜態屬性 + + 屬性名稱 + 其他引動過程屬性。 + 要傳遞給要叫用之成員的引數。 + 靜態屬性。 + + + + 取得靜態屬性 + + 屬性名稱 + 其他引動過程屬性。 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + 靜態屬性。 + + + + 設定靜態屬性 + + 屬性名稱 + 其他引動過程屬性。 + 要設定為欄位或屬性的值 + 索引屬性的選擇性索引值。索引屬性的索引是以零為起始。非索引屬性的這個值應該是 null。 + + + + 設定靜態屬性 + + 屬性名稱 + 其他引動過程屬性。 + 要設定為欄位或屬性的值 + 物件陣列, 物件陣列,代表索引屬性的參數數目、順序和類型。 + 要傳遞給要叫用之成員的引數。 + + + + 叫用靜態方法 + + 成員名稱 + 其他引動過程屬性 + 引動過程的引數 + 文化特性 (Culture) + 引動過程結果 + + + + 提供泛型方法的方法簽章探索。 + + + + + 比對這兩種方法的方法簽章。 + + Method1 + Method2 + 若類似即為 true。 + + + + 取得所提供之類型的基底類型階層深度。 + + 類型。 + 深度。 + + + + 使用提供的資訊找出最具衍生性的類型。 + + 候選相符項目。 + 相符項目數目。 + 最具衍生性的方法。 + + + + 如果有一組方法符合基底準則,請根據類型陣列 + 來選取方法。如果沒有方法符合準則,則這個方法 + 應該傳回 null。 + + 繫結規格。 + 候選相符項目 + 類型 + 參數修飾詞。 + 相符方法。若無符合項則為 Null。 + + + + 從提供的兩個方法中,找出最明確的方法。 + + 方法 1 + 方法 1 的參數順序 + 參數陣列類型。 + 方法 2 + 方法 2 的參數順序 + >參數陣列類型。 + 要搜尋的類型。 + 引數 + 代表相符項目的 int。 + + + + 從提供的兩個方法中,找出最明確的方法。 + + 方法 1 + 方法 1 的參數順序 + 參數陣列類型。 + 方法 2 + 方法 2 的參數順序 + >參數陣列類型。 + 要搜尋的類型。 + 引數 + 代表相符項目的 int。 + + + + 在提供的兩項中找出最明確的類型。 + + 類型 1 + 類型 2 + 定義類型 + 代表相符項目的 int。 + + + + 用來儲存提供給單元測試的資訊。 + + + + + 取得測試的測試屬性。 + + + + + 在測試用於資料驅動測試時,取得目前資料連線資料列。 + + + + + 在測試用於資料驅動測試時,取得目前資料連線資料列。 + + + + + 取得測試回合的基底目錄,部署的檔案及結果檔案或儲存在其下。 + + + + + 為部署用於測試回合的檔案取得目錄。通常為 的子目錄。 + + + + + 取得測試回合結果的基底目錄。通常為 的子目錄。 + + + + + 為測試回合結果檔案取得目錄。通常為 的子目錄。 + + + + + 取得測試結果檔案的目錄。 + + + + + 取得測試回合的基底目錄,部署的檔案及結果檔案或儲存在其下。 + 如同 。請改用該屬性。 + + + + + 為部署用於測試回合的檔案取得目錄。通常為 的子目錄。 + 如同 。請改用該屬性。 + + + + + 為測試回合結果檔案取得目錄。通常為 的子目錄。 + 如同 。請改成將該屬性用於測試回合結果檔案,或將 + 用於測試特定結果檔案。 + + + + + 取得包含目前正在執行之測試方法的類別完整名稱 + + + + + 取得目前正在執行的測試方法名稱 + + + + + 取得目前測試結果。 + + + + + 用來在測試執行時寫入追蹤訊息 + + 格式化訊息字串 + + + + 用來在測試執行時寫入追蹤訊息 + + 格式字串 + 引數 + + + + 將檔案名稱新增至 TestResult.ResultFileNames 的清單中 + + + 檔案名稱。 + + + + + 開始具有所指定名稱的計時器 + + 計時器名稱。 + + + + 結束具有所指定名稱的計時器 + + 計時器名稱。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..611e17b --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/net45/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用於執行的 TestMethod。 + + + + + 取得測試方法的名稱。 + + + + + 取得測試類別的名稱。 + + + + + 取得測試方法的傳回型別。 + + + + + 取得測試方法的參數。 + + + + + 取得測試方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 叫用測試方法。 + + + 要傳遞至測試方法的引數。(例如,針對資料驅動) + + + 測試方法引動過程結果。 + + + This call handles asynchronous test methods as well. + + + + + 取得測試方法的所有屬性。 + + + 父類別中定義的屬性是否有效。 + + + 所有屬性。 + + + + + 取得特定類型的屬性。 + + System.Attribute type. + + 父類別中定義的屬性是否有效。 + + + 指定類型的屬性。 + + + + + 協助程式。 + + + + + 檢查參數不為 null。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws argument null exception when parameter is null. + + + + 檢查參數不為 null 或為空白。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws ArgumentException when parameter is null. + + + + 如何在資料驅動測試中存取資料列的列舉。 + + + + + 會以循序順序傳回資料列。 + + + + + 會以隨機順序傳回資料列。 + + + + + 用以定義測試方法之內嵌資料的屬性。 + + + + + 初始化 類別的新執行個體。 + + 資料物件。 + + + + 初始化 類別 (其採用引數的陣列) 的新執行個體。 + + 資料物件。 + 其他資料。 + + + + 取得用於呼叫測試方法的資料。 + + + + + 取得或設定測試結果中的顯示名稱來進行自訂。 + + + + + 判斷提示結果不明例外狀況。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + InternalTestFailureException 類別。用來表示測試案例的內部失敗 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 屬性,其指定預期所指定類型的例外狀況 + + + + + 初始化具預期類型之 類別的新執行個體 + + 預期的例外狀況類型 + + + + 初始化 類別 + (其具預期類型及訊息,用以在測試未擲回任何例外狀況時予以納入) 的新執行個體。 + + 預期的例外狀況類型 + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的訊息 + + + + + 取得值,指出預期例外狀況的類型 + + + + + 取得或設定值,指出是否允許類型衍生自預期例外狀況類型, + 以符合預期 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 驗證預期有單元測試所擲回的例外狀況類型 + + 單元測試所擲回的例外狀況 + + + + 指定以預期單元測試發生例外狀況之屬性的基底類別 + + + + + 使用預設無例外狀況訊息初始化 類別的新執行個體 + + + + + 初始化具無例外狀況訊息之 類別的新執行個體 + + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的 + 訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 取得預設無例外狀況訊息 + + ExpectedException 屬性類型名稱 + 預設無例外狀況訊息 + + + + 判斷是否預期會發生例外狀況。如果傳回方法,則了解 + 預期會發生例外狀況。如果方法擲回例外狀況,則了解 + 預期不會發生例外狀況,而且測試結果中 + 會包含所擲回例外狀況的訊息。 類別可以基於便利 + 使用。如果使用 並且判斷提示失敗, + 則測試結果設定為 [結果不明]。 + + 單元測試所擲回的例外狀況 + + + + 如果它是 AssertFailedException 或 AssertInconclusiveException,會重新擲回例外狀況 + + 如果是判斷提示例外狀況,則重新擲回例外狀況 + + + + 這個類別的設計目的是要協助使用者執行使用泛型型別之類型的單元測試。 + GenericParameterHelper 滿足一些常用泛型型別條件約束 + 例如: + 1. 公用預設建構函式 + 2. 實作公用介面: IComparable、IEnumerable + + + + + 初始化 類別 (其符合 C# 泛型中的 'newable' 限制式) + 的新執行個體。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 類別 (其將 Data 屬性初始化為使用者提供的值) + 的新執行個體。 + + 任何整數值 + + + + 取得或設定資料 + + + + + 執行兩個 GenericParameterHelper 物件的值比較 + + 要與之執行比較的物件 + 如果 obj 的值與 'this' GenericParameterHelper 物件相同,則為 true。 + 否則為 false。 + + + + 傳回這個物件的雜湊碼。 + + 雜湊碼。 + + + + 比較這兩個 物件的資料。 + + 要比較的物件。 + + 已簽署的編號,表示此執行個體及值的相對值。 + + + Thrown when the object passed in is not an instance of . + + + + + 傳回長度衍生自 Data 屬性的 + IEnumerator 物件。 + + IEnumerator 物件 + + + + 傳回等於目前物件的 + GenericParameterHelper 物件。 + + 複製的物件。 + + + + 讓使用者從單位測試記錄/寫入追蹤以進行診斷。 + + + + + LogMessage 的處理常式。 + + 要記錄的訊息。 + + + + 要接聽的事件。在單元測試寫入器寫入一些訊息時引發。 + 主要由配接器取用。 + + + + + API,供測試寫入者呼叫以記錄訊息。 + + 含預留位置的字串格式。 + 預留位置的參數。 + + + + TestCategory 屬性; 用來指定單元測試的分類。 + + + + + 初始化 類別的新執行個體,並將分類套用至測試。 + + + 測試「分類」。 + + + + + 取得已套用至測試的測試分類。 + + + + + "Category" 屬性的基底類別 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 類別的新執行個體。 + 將分類套用至測試。TestCategories 所傳回的字串 + 會與 /category 命令搭配使用,以篩選測試 + + + + + 取得已套用至測試的測試分類。 + + + + + AssertFailedException 類別。用來表示測試案例失敗 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 要測試單元測試內各種條件的協助程式類別集合。 + 如果不符合正在測試的條件,則會擲回 + 例外狀況。 + + + + + 取得 Assert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is true. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null. + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is not equal to . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 擲回 AssertFailedException。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 「靜態等於多載」用於比較兩種類型的執行個體的參考 + 相等。這種方法不應該用於比較兩個執行個體是否 + 相等。這個物件一律會擲出 Assert.Fail。請在單元測試中使用 + Assert.AreEqual 和相關聯多載。 + + 物件 A + 物件 B + 一律為 False。 + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 以 "\\0" 取代 null 字元 ('\0')。 + + + 要搜尋的字串。 + + + null 字元以 "\\0" 取代的已轉換字串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 建立並擲回 AssertionFailedException 的 Helper 函數 + + + 擲回例外狀況的判斷提示名稱 + + + 描述判斷提示失敗條件的訊息 + + + 參數。 + + + + + 檢查參數的有效條件 + + + 參數。 + + + 判斷提示「名稱」。 + + + 參數名稱 + + + 無效參數例外狀況的訊息 + + + 參數。 + + + + + 將物件安全地轉換成字串,並處理 null 值和 null 字元。 + Null 值會轉換成 "(null)"。Null 字元會轉換成 "\\0"。 + + + 要轉換為字串的物件。 + + + 已轉換的字串。 + + + + + 字串判斷提示。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if matches . + + + + + 要測試與單元測試內集合相關聯之各種條件的 + 協助程式類別集合。如果不符合正在測試的條件, + 則會擲回例外狀況。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is found in + . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if every element in is also found in + . + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 參數陣列,使用時機為格式 。 + + + Thrown if is equal to . + + + + + 判斷第一個集合是否為第二個集合的子集。 + 如果任一個集合包含重複的元素,則元素 + 在子集中的出現次數必須小於或 + 等於在超集中的出現次數。 + + + 測試預期包含在下者中的集合: 。 + + + 測試預期包含下者的集合: 。 + + + True 的情況為 是下者的子集: + ,否則為 false。 + + + + + 建構字典,內含每個元素在所指定集合中 + 的出現次數。 + + + 要處理的集合。 + + + 集合中的 null 元素數目。 + + + 包含每個元素在所指定集合內之出現次數 + 的字典。 + + + + + 尋找兩個集合之間不相符的元素。不相符的元素 + 為出現在預期集合中的次數 + 不同於它在實際集合中出現的次數。 + 集合假設為具有數目相同之元素的不同非 null 參考。 + 呼叫者負責這個層級的驗證。 + 如果沒有不相符的元素,則函數會傳回 false, + 而且不應該使用 out 參數。 + + + 要比較的第一個集合。 + + + 要比較的第二個集合。 + + + 下者的預期出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 下者的實際出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 不相符的元素 (可能為 null) 或 null (如果沒有 + 不相符的元素)。 + + + 如果找到不相符的元素,則為 true,否則為 false。 + + + + + 使用 object.Equals 來比較物件 + + + + + 架構例外狀況的基底類別。 + + + + + 初始化 類別的新執行個體。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 強型別資源類別,用於查詢當地語系化字串等。 + + + + + 傳回這個類別所使用的快取的 ResourceManager 執行個體。 + + + + + 針對使用這個強型別資源類別的所有資源查閱, + 覆寫目前執行緒的 CurrentUICulture 屬性。 + + + + + 查閱與「存取字串有無效的語法。」類似的當地語系化字串。 + + + + + 查閱與「預期在集合中包含 {1} 項 <{2}>,但實際的集合卻有 {3} 項。{0}」類似的當地語系化字串。 + + + + + 查閱與「找到重複的項目:<{1}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。大小寫與下列實際值不同:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異不大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1} ({2})>。實際:<{3} ({4})>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期任何值 (<{1}> 除外)。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「不要將實值型別傳遞給 AreSame()。轉換成 Object 的值從此不再一樣。請考慮使用 AreEqual()。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0} 失敗。{1}」類似的當地語系化字串。 + + + + + 不支援查詢類似非同步處理 TestMethod 與 UITestMethodAttribute 的當地語系化字串。移除非同步處理或使用 TestMethodAttribute。 + + + + + 查閱與「兩個集合都是空的。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。」類似的當地語系化字串。 + + + + + 查閱與「兩個集合參考都指向同一個集合物件。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「(null)」類似的當地語系化字串。 + + + + + 查閱與「(物件)」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 未包含字串 '{1}'。{2}。」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「Assert.Equals 不應使用於判斷提示。請改用 Assert.AreEqual 及多載。」類似的當地語系化字串。 + + + + + 查閱與「集合中的元素數目不符。預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {0} 的元素不符。」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的項目不是預期的類型。預期的類型:<{2}>。實際的類型:<{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的元素是 (null)。預期的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 結尾。{2}。」類似的當地語系化字串。 + + + + + 查閱與「無效的引數 - EqualsTester 無法使用 null。」類似的當地語系化字串。 + + + + + 查閱與「無法將 {0} 類型的物件轉換為 {1}。」類似的當地語系化字串。 + + + + + 查閱與「所參考的內部物件已不再有效。」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。{1}。」類似的當地語系化字串。 + + + + + 查閱與「屬性 {0} 具有類型 {1}; 預期為類型 {2}。」類似的當地語系化字串。 + + + + + 查閱與「{0} 預期的類型:<{1}>。實際的類型:<{2}>。」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 不符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「錯誤的類型:<{1}>。實際的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 相符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「未指定 DataRowAttribute。至少一個 DataRowAttribute 必須配合 DataTestMethodAttribute 使用。」類似的當地語系化字串。 + + + + + 查閱與「未擲回任何例外狀況。預期為 {1} 例外狀況。{0}」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。值不能為 null。{1}。」類似的當地語系化字串。 + + + + + 查閱與「元素數目不同。」類似的當地語系化字串。 + + + + + 查閱與「找不到具有所指定簽章的建構函式。 + 您可能必須重新產生私用存取子,或者該成員可能為私用, + 並且定義在基底類別上。如果是後者,您必須將定義 + 該成員的類型傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「找不到所指定的成員 ({0})。 + 您可能必須重新產生私用存取子, + 或者該成員可能為私用,並且定義在基底類別上。如果是後者,您必須將定義該成員的類型 + 傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 開頭。{2}。」類似的當地語系化字串。 + + + + + 查閱與「預期的例外狀況類型必須是 System.Exception 或衍生自 System.Exception 的類型。」類似的當地語系化字串。 + + + + + 查閱與「(由於發生例外狀況,所以無法取得 {0} 類型之例外狀況的訊息。)」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回預期的例外狀況 {0}。{1}」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回例外狀況。測試方法上定義的屬性 {0} 需要例外狀況。」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1}。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1} 或由它衍生的類型。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「擲回例外狀況 {2},但需要的是例外狀況 {1}。{0} + 例外狀況訊息: {3} + 堆疊追蹤: {4}」類似的當地語系化字串。 + + + + + 單元測試結果 + + + + + 已執行測試,但發生問題。 + 問題可能包含例外狀況或失敗的判斷提示。 + + + + + 測試已完成,但是無法指出成功還是失敗。 + 可能用於已中止測試。 + + + + + 已執行測試且沒有任何問題。 + + + + + 目前正在執行測試。 + + + + + 嘗試執行測試時發生系統錯誤。 + + + + + 測試逾時。 + + + + + 使用者已中止測試。 + + + + + 測試處於未知狀態 + + + + + 提供單元測試架構的協助程式功能 + + + + + 遞迴地取得例外狀況訊息 (包含所有內部例外狀況 + 的訊息) + + 要為其取得訊息的例外狀況 + 含有錯誤訊息資訊的字串 + + + + 逾時的列舉,可以與 類別搭配使用。 + 列舉的類型必須相符 + + + + + 無限。 + + + + + 測試類別屬性。 + + + + + 取得可讓您執行此測試的測試方法屬性。 + + 此方法上所定義的測試方法屬性執行個體。 + 要用來執行此測試。 + Extensions can override this method to customize how all methods in a class are run. + + + + 測試方法屬性。 + + + + + 執行測試方法。 + + 要執行的測試方法。 + 代表測試結果的 TestResult 物件陣列。 + Extensions can override this method to customize running a TestMethod. + + + + 測試初始化屬性。 + + + + + 測試清除屬性。 + + + + + Ignore 屬性。 + + + + + 測試屬性 (property) 屬性 (attribute)。 + + + + + 初始化 類別的新執行個體。 + + + 名稱。 + + + 值。 + + + + + 取得名稱。 + + + + + 取得值。 + + + + + 類別會將屬性初始化。 + + + + + 類別清除屬性。 + + + + + 組件會將屬性初始化。 + + + + + 組件清除屬性。 + + + + + 測試擁有者 + + + + + 初始化 類別的新執行個體。 + + + 擁有者。 + + + + + 取得擁有者。 + + + + + Priority 屬性; 用來指定單元測試的優先順序。 + + + + + 初始化 類別的新執行個體。 + + + 優先順序。 + + + + + 取得優先順序。 + + + + + 測試描述 + + + + + 初始化 類別的新執行個體來描述測試。 + + 描述。 + + + + 取得測試的描述。 + + + + + CSS 專案結構 URI + + + + + 初始化用於 CSS 專案結構 URI 之 類別的新執行個體。 + + CSS 專案結構 URI。 + + + + 取得 CSS 專案結構 URI。 + + + + + CSS 反覆項目 URI + + + + + 初始化用於 CSS 反覆項目 URI 之 類別的新執行個體。 + + CSS 反覆項目 URI。 + + + + 取得 CSS 反覆項目 URI。 + + + + + 工作項目屬性; 用來指定與這個測試相關聯的工作項目。 + + + + + 初始化用於工作項目屬性之 類別的新執行個體。 + + 工作項目的識別碼。 + + + + 取得建立關聯之工作項目的識別碼。 + + + + + Timeout 屬性; 用來指定單元測試的逾時。 + + + + + 初始化 類別的新執行個體。 + + + 逾時。 + + + + + 初始化具有預設逾時之 類別的新執行個體 + + + 逾時 + + + + + 取得逾時。 + + + + + 要傳回給配接器的 TestResult 物件。 + + + + + 初始化 類別的新執行個體。 + + + + + 取得或設定結果的顯示名稱。適用於傳回多個結果時。 + 如果為 null,則使用「方法名稱」當成 DisplayName。 + + + + + 取得或設定測試執行的結果。 + + + + + 取得或設定測試失敗時所擲回的例外狀況。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 透過測試程式碼取得或設定偵錯追蹤。 + + + + + Gets or sets the debug traces by test code. + + + + + 取得或設定測試執行的持續時間。 + + + + + 取得或設定資料來源中的資料列索引。僅針對個別執行資料驅動測試之資料列 + 的結果所設定。 + + + + + 取得或設定測試方法的傳回值 (目前一律為 null)。 + + + + + 取得或設定測試所附加的結果檔案。 + + + + + 指定連接字串、表格名稱和資料列存取方法來進行資料驅動測試。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + 資料來源的預設提供者名稱。 + + + + + 預設資料存取方法。 + + + + + 初始化 類別的新執行個體。將使用資料提供者、連接字串、運算列表和資料存取方法將這個執行個體初始化,以存取資料來源。 + + 非變異資料提供者名稱 (例如 System.Data.SqlClient) + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + 指定資料的存取順序。 + + + + 初始化 類別的新執行個體。此執行個體將使用連接字串和表格名稱進行初始化。 + 指定連接字串和運算列表以存取 OLEDB 資料來源。 + + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + + + + 初始化 類別的新執行個體。將使用與設定名稱相關聯的資料提供者和連接字串將這個執行個體初始化。 + + 在 app.config 檔案的 <microsoft.visualstudio.qualitytools> 區段中找到資料來源名稱。 + + + + 取得值,代表資料來源的資料提供者。 + + + 資料提供者名稱。如果未在物件初始化時指定資料提供者,將會傳回 System.Data.OleDb 的預設提供者。 + + + + + 取得值,代表資料來源的連接字串。 + + + + + 取得值,指出提供資料的表格名稱。 + + + + + 取得用來存取資料來源的方法。 + + + + 下列其中之一: 值。如果 未進行初始化,則這會傳回預設值 。 + + + + + 取得在 app.config 檔案 <microsoft.visualstudio.qualitytools> 區段中找到的資料來源名稱。 + + + + + 可在其中內嵌指定資料之資料驅動測試的屬性。 + + + + + 尋找所有資料列,並執行。 + + + 測試「方法」。 + + + 下列項目的陣列: 。 + + + + + 執行資料驅動測試方法。 + + 要執行的測試方法。 + 資料列。 + 執行結果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML new file mode 100644 index 0000000..b16ff3f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Used to specify deployment item (file or directory) for per-test deployment. + Can be specified on test class or test method. + Can have multiple instances of the attribute to specify more than one item. + The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Initializes a new instance of the class. + + The file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + + + + Initializes a new instance of the class + + The relative or absolute path to the file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + The path of the directory to which the items are to be copied. It can be either absolute or relative to the deployment directory. All files and directories identified by will be copied to this directory. + + + + Gets the path of the source file or folder to be copied. + + + + + Gets the path of the directory to which the item is copied. + + + + + TestContext class. This class should be fully abstract and not contain any + members. The adapter will implement the members. Users in the framework should + only access this via a well-defined interface. + + + + + Gets test properties for a test. + + + + + Gets Fully-qualified name of the class containing the test method currently being executed + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Gets the Name of the test method currently being executed + + + + + Gets the current test outcome. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll new file mode 100644 index 0000000000000000000000000000000000000000..f706d6d5bed48cbf7c598608ff7b39aee1117b69 GIT binary patch literal 22672 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

    x`0DnyYs$P+aiHwDDT|M*Yi~7oJ7ft)95K zdN>kQwQ)>GdE)xX^J)+03J)*obb%is6Hzk zBABzX)jM#jL+!<2BkaZYPTI` zDvW-ggjf`wsn8Gdp3L+$ayX@M3uJWw-NExCUAQX621UYP(O|m4zTaO42ULh7=noI5 zSgwj$?_zN;y1EB=Gsdd?L|Xs1cvF?(1z?8+4y7M1vfzENQIpcVXUei8*etVv!6#=$w+;#K z)_r6U7y+ty#qfb-_G#$Q`vi22CD(u{uFbE2l51DM&a-qtSvjqR%p zUw#X|eYr}JV7nM0M_x>B@s1r4E=S0t5@4V!$4b)pb==Giw`0a z2)a5!0YA7$Y$5}nIkVkl9-gbOFJD70y&8?q{^P^0-=0NLqG+u1E}+gcj#xy0{Scx7 z>ubOUEEfrJ`m2G9WEt!RyG*Bni)7lD{KpMUpLhL96Lhe1nD#`WLFm`4^Jg%fF-)*! zW*3v~_PpfWtl(7W5_e~4?8~(ax9i@0lJppIYYtt)cDu24u#{T6}WbnDNv^S_LzKghTSN%@3VC#toaJyx(+iEeF{ z4md@d^Q0?b0l(@ls}e$z@h)Re+gOFPuT=t9Hb3JOb!k%b#`_qC?J7N(8oo=J@~-jN z%L`U>+x#6FHSQ8iw&fO+>mrpdk15GE58=vqs@`4a*`3uFwl6fPK<^G2_ci(Uw}#U> zdR$+PMCx-z%IZ?u-Z1NrEK{_YS7VbLm(ua6bDxR$J(0Bj^aCM^sUeHXt|U4x=;xHP z5BRcor>KK=jmIjdJ4??PZ2PA9u*&bCMR-eGd)2w{jHHN7)Wa`}Ck{N6=ra5q*g`hu ze6}{Js{DM>*){FEJPsx-ZxveN-zoRz^WsK4�DhV6i@Bm9xny%S@+yo-G&GFaLNY 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 CoFvo$ literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML new file mode 100644 index 0000000..a71d66c --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML @@ -0,0 +1,4391 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + +

    + Specification to disable parallelization. + + + + + Enum to specify whether the data is stored as property or in method. + + + + + Data is declared as property. + + + + + Data is declared in method. + + + + + Attribute to define dynamic data for a test method. + + + + + Initializes a new instance of the class. + + + The name of method or property having test data. + + + Specifies whether the data is stored as property or in method. + + + + + Initializes a new instance of the class when the test data is present in a class different + from test method's class. + + + The name of method or property having test data. + + + The declaring type of property or method having data. Useful in cases when declaring type is present in a class different from + test method's class. If null, declaring type defaults to test method's class type. + + + Specifies whether the data is stored as property or in method. + + + + + Gets or sets the name of method used to customize the display name in test results. + + + + + Gets or sets the declaring type used to customize the display name in test results. + + + + + + + + + + + Specification for parallelization level for a test run. + + + + + The default scope for the parallel run. Although method level gives maximum parallelization, the default is set to + class level to enable maximum number of customers to easily convert their tests to run in parallel. In most cases within + a class tests aren't thread safe. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the number of workers to be used for the parallel run. + + + + + Gets or sets the scope of the parallel run. + + + To enable all classes to run in parallel set this to . + To get the maximum parallelization level set this to . + + + + + Parallel execution mode. + + + + + Each thread of execution will be handed a TestClass worth of tests to execute. + Within the TestClass, the test methods will execute serially. + + + + + Each thread of execution will be handed TestMethods to execute. + + + + + Test data source for data driven tests. + + + + + Gets the test data from custom test data source. + + + The method info of test method. + + + Test data for calling test method. + + + + + Gets the display name corresponding to test data row for displaying in TestResults. + + + The method info of test method. + + + The test data which is passed to test method. + + + The . + + + + + TestMethod for execution. + + + + + Gets the name of test method. + + + + + Gets the name of test class. + + + + + Gets the return type of test method. + + + + + Gets the arguments with which test method is invoked. + + + + + Gets the parameters of test method. + + + + + Gets the methodInfo for test method. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invokes the test method. + + + Arguments to pass to test method. (E.g. For data driven) + + + Result of test method invocation. + + + This call handles asynchronous test methods as well. + + + + + Get all attributes of the test method. + + + Whether attribute defined in parent class is valid. + + + All attributes. + + + + + Get attribute of specific type. + + System.Attribute type. + + Whether attribute defined in parent class is valid. + + + The attributes of the specified type. + + + + + The helper. + + + + + The check parameter not null. + + + The parameter. + + + The parameter name. + + + The message. + + Throws argument null exception when parameter is null. + + + + The check parameter not null or empty. + + + The parameter. + + + The parameter name. + + + The message. + + Throws ArgumentException when parameter is null. + + + + Enumeration for how how we access data rows in data driven testing. + + + + + Rows are returned in sequential order. + + + + + Rows are returned in random order. + + + + + Attribute to define inline data for a test method. + + + + + Initializes a new instance of the class. + + The data object. + + + + Initializes a new instance of the class which takes in an array of arguments. + + A data object. + More data. + + + + Gets data for calling test method. + + + + + Gets or sets display name in test results for customization. + + + + + + + + + + + The assert inconclusive exception. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + InternalTestFailureException class. Used to indicate internal failure for a test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initializes a new instance of the class. + + The exception message. + The exception. + + + + Initializes a new instance of the class. + + The exception message. + + + + Initializes a new instance of the class. + + + + + Attribute that specifies to expect an exception of the specified type + + + + + Initializes a new instance of the class with the expected type + + Type of the expected exception + + + + Initializes a new instance of the class with + the expected type and the message to include when no exception is thrown by the test. + + Type of the expected exception + + Message to include in the test result if the test fails due to not throwing an exception + + + + + Gets a value indicating the Type of the expected exception + + + + + Gets or sets a value indicating whether to allow types derived from the type of the expected exception to + qualify as expected + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Verifies that the type of the exception thrown by the unit test is expected + + The exception thrown by the unit test + + + + Base class for attributes that specify to expect an exception from a unit test + + + + + Initializes a new instance of the class with a default no-exception message + + + + + Initializes a new instance of the class with a no-exception message + + + Message to include in the test result if the test fails due to not throwing an + exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the default no-exception message + + The ExpectedException attribute type name + The default no-exception message + + + + Determines whether the exception is expected. If the method returns, then it is + understood that the exception was expected. If the method throws an exception, then it + is understood that the exception was not expected, and the thrown exception's message + is included in the test result. The class can be used for + convenience. If is used and the assertion fails, + then the test outcome is set to Inconclusive. + + The exception thrown by the unit test + + + + Rethrow the exception if it is an AssertFailedException or an AssertInconclusiveException + + The exception to rethrow if it is an assertion exception + + + + This class is designed to help user doing unit testing for types which uses generic types. + GenericParameterHelper satisfies some common generic type constraints + such as: + 1. public default constructor + 2. implements common interface: IComparable, IEnumerable + + + + + Initializes a new instance of the class that + satisfies the 'newable' constraint in C# generics. + + + This constructor initializes the Data property to a random value. + + + + + Initializes a new instance of the class that + initializes the Data property to a user-supplied value. + + Any integer value + + + + Gets or sets the Data + + + + + Do the value comparison for two GenericParameterHelper object + + object to do comparison with + true if obj has the same value as 'this' GenericParameterHelper object. + false otherwise. + + + + Returns a hashcode for this object. + + The hash code. + + + + Compares the data of the two objects. + + The object to compare with. + + A signed number indicating the relative values of this instance and value. + + + Thrown when the object passed in is not an instance of . + + + + + Returns an IEnumerator object whose length is derived from + the Data property. + + The IEnumerator object + + + + Returns a GenericParameterHelper object that is equal to + the current object. + + The cloned object. + + + + Enables users to log/write traces from unit tests for diagnostics. + + + + + Handler for LogMessage. + + Message to log. + + + + Event to listen. Raised when unit test writer writes some message. + Mainly to consume by adapter. + + + + + API for test writer to call to Log messages. + + String format with placeholders. + Parameters for placeholders. + + + + TestCategory attribute; used to specify the category of a unit test. + + + + + Initializes a new instance of the class and applies the category to the test. + + + The test Category. + + + + + Gets the test categories that has been applied to the test. + + + + + Base class for the "Category" attribute + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initializes a new instance of the class. + Applies the category to the test. The strings returned by TestCategories + are used with the /category command to filter tests + + + + + Gets the test category that has been applied to the test. + + + + + AssertFailedException class. Used to indicate failure for a test case + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + A collection of helper classes to test various conditions within + unit tests. If the condition being tested is not met, an exception + is thrown. + + + + + Gets the singleton instance of the Assert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is false. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is true. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null. + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is not equal to . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Throws an AssertFailedException. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Static equals overloads are used for comparing instances of two types for reference + equality. This method should not be used for comparison of two instances for + equality. This object will always throw with Assert.Fail. Please use + Assert.AreEqual and associated overloads in your unit tests. + + Object A + Object B + False, always. + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Replaces null characters ('\0') with "\\0". + + + The string to search. + + + The converted string with null characters replaced by "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Helper function that creates and throws an AssertionFailedException + + + name of the assertion throwing an exception + + + message describing conditions for assertion failure + + + The parameters. + + + + + Checks the parameter for valid conditions + + + The parameter. + + + The assertion Name. + + + parameter name + + + message for the invalid parameter exception + + + The parameters. + + + + + Safely converts an object to a string, handling null values and null characters. + Null values are converted to "(null)". Null characters are converted to "\\0". + + + The object to convert to a string. + + + The converted string. + + + + + The string assert. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert customAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not end with + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if does not match + . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if matches . + + + + + A collection of helper classes to test various conditions associated + with collections within unit tests. If the condition being tested is not + met, an exception is thrown. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if is found in + . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if every element in is also found in + . + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Determines whether the first collection is a subset of the second + collection. If either set contains duplicate elements, the number + of occurrences of the element in the subset must be less than or + equal to the number of occurrences in the superset. + + + The collection the test expects to be contained in . + + + The collection the test expects to contain . + + + True if is a subset of + , false otherwise. + + + + + Constructs a dictionary containing the number of occurrences of each + element in the specified collection. + + + The collection to process. + + + The number of null elements in the collection. + + + A dictionary containing the number of occurrences of each element + in the specified collection. + + + + + Finds a mismatched element between the two collections. A mismatched + element is one that appears a different number of times in the + expected collection than it does in the actual collection. The + collections are assumed to be different non-null references with the + same number of elements. The caller is responsible for this level of + verification. If there is no mismatched element, the function returns + false and the out parameters should not be used. + + + The first collection to compare. + + + The second collection to compare. + + + The expected number of occurrences of + or 0 if there is no mismatched + element. + + + The actual number of occurrences of + or 0 if there is no mismatched + element. + + + The mismatched element (may be null) or null if there is no + mismatched element. + + + true if a mismatched element was found; false otherwise. + + + + + compares the objects using object.Equals + + + + + Base class for Framework Exceptions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access string has invalid syntax.. + + + + + Looks up a localized string similar to The expected collection contains {1} occurrence(s) of <{2}>. The actual collection contains {3} occurrence(s). {0}. + + + + + Looks up a localized string similar to Duplicate item found:<{1}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Case is different for actual value:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference no greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1} ({2})>. Actual:<{3} ({4})>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected any value except:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Do not pass value types to AreSame(). Values converted to Object will never be the same. Consider using AreEqual(). {0}. + + + + + Looks up a localized string similar to {0} failed. {1}. + + + + + Looks up a localized string similar to async TestMethod with UITestMethodAttribute are not supported. Either remove async or use TestMethodAttribute.. + + + + + Looks up a localized string similar to Both collections are empty. {0}. + + + + + Looks up a localized string similar to Both collection contain same elements.. + + + + + Looks up a localized string similar to Both collection references point to the same collection object. {0}. + + + + + Looks up a localized string similar to Both collections contain the same elements. {0}. + + + + + Looks up a localized string similar to {0}({1}). + + + + + Looks up a localized string similar to (null). + + + + + Looks up a localized string similar to (object). + + + + + Looks up a localized string similar to String '{0}' does not contain string '{1}'. {2}.. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Assert.Equals should not be used for Assertions. Please use Assert.AreEqual & overloads instead.. + + + + + Looks up a localized string similar to Method {0} must match the expected signature: public static {1} {0}({2}).. + + + + + Looks up a localized string similar to Property or method {0} on {1} does not return IEnumerable<object[]>.. + + + + + Looks up a localized string similar to Value returned by property or method {0} shouldn't be null.. + + + + + Looks up a localized string similar to The number of elements in the collections do not match. Expected:<{1}>. Actual:<{2}>.{0}. + + + + + Looks up a localized string similar to Element at index {0} do not match.. + + + + + Looks up a localized string similar to Element at index {1} is not of expected type. Expected type:<{2}>. Actual type:<{3}>.{0}. + + + + + Looks up a localized string similar to Element at index {1} is (null). Expected type:<{2}>.{0}. + + + + + Looks up a localized string similar to String '{0}' does not end with string '{1}'. {2}.. + + + + + Looks up a localized string similar to Invalid argument- EqualsTester can't use nulls.. + + + + + Looks up a localized string similar to Cannot convert object of type {0} to {1}.. + + + + + Looks up a localized string similar to The internal object referenced is no longer valid.. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. {1}.. + + + + + Looks up a localized string similar to The property {0} has type {1}; expected type {2}.. + + + + + Looks up a localized string similar to {0} Expected type:<{1}>. Actual type:<{2}>.. + + + + + Looks up a localized string similar to String '{0}' does not match pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to Wrong Type:<{1}>. Actual type:<{2}>. {0}. + + + + + Looks up a localized string similar to String '{0}' matches pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to No test data source specified. Atleast one TestDataSource is required with DataTestMethodAttribute.. + + + + + Looks up a localized string similar to No exception thrown. {1} exception was expected. {0}. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. The value cannot be null. {1}.. + + + + + Looks up a localized string similar to Different number of elements.. + + + + + Looks up a localized string similar to + The constructor with the specified signature could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to + The member specified ({0}) could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to String '{0}' does not start with string '{1}'. {2}.. + + + + + Looks up a localized string similar to The expected exception type must be System.Exception or a type derived from System.Exception.. + + + + + Looks up a localized string similar to (Failed to get the message for an exception of type {0} due to an exception.). + + + + + Looks up a localized string similar to Test method did not throw expected exception {0}. {1}. + + + + + Looks up a localized string similar to Test method did not throw an exception. An exception was expected by attribute {0} defined on the test method.. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} or a type derived from it was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Threw exception {2}, but exception {1} was expected. {0} + Exception Message: {3} + Stack Trace: {4}. + + + + + unit test outcomes + + + + + Test was executed, but there were issues. + Issues may involve exceptions or failed assertions. + + + + + Test has completed, but we can't say if it passed or failed. + May be used for aborted tests. + + + + + Test was executed without any issues. + + + + + Test is currently executing. + + + + + There was a system error while we were trying to execute a test. + + + + + The test timed out. + + + + + Test was aborted by the user. + + + + + Test is in an unknown state + + + + + Test cannot be executed. + + + + + Provides helper functionality for the unit test framework + + + + + Gets the exception messages, including the messages for all inner exceptions + recursively + + Exception to get messages for + string with error message information + + + + Enumeration for timeouts, that can be used with the class. + The type of the enumeration must match + + + + + The infinite. + + + + + The test class attribute. + + + + + Gets a test method attribute that enables running this test. + + The test method attribute instance defined on this method. + The to be used to run this test. + Extensions can override this method to customize how all methods in a class are run. + + + + The test method attribute. + + + + + Executes a test method. + + The test method to execute. + An array of TestResult objects that represent the outcome(s) of the test. + Extensions can override this method to customize running a TestMethod. + + + + Attribute for data driven test where data can be specified inline. + + + + + The test initialize attribute. + + + + + The test cleanup attribute. + + + + + The ignore attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + Message specifies reason for ignoring. + + + + + Gets the owner. + + + + + The test property attribute. + + + + + Initializes a new instance of the class. + + + The name. + + + The value. + + + + + Gets the name. + + + + + Gets the value. + + + + + The class initialize attribute. + + + + + The class cleanup attribute. + + + + + The assembly initialize attribute. + + + + + The assembly cleanup attribute. + + + + + Test Owner + + + + + Initializes a new instance of the class. + + + The owner. + + + + + Gets the owner. + + + + + Priority attribute; used to specify the priority of a unit test. + + + + + Initializes a new instance of the class. + + + The priority. + + + + + Gets the priority. + + + + + Description of the test + + + + + Initializes a new instance of the class to describe a test. + + The description. + + + + Gets the description of a test. + + + + + CSS Project Structure URI + + + + + Initializes a new instance of the class for CSS Project Structure URI. + + The CSS Project Structure URI. + + + + Gets the CSS Project Structure URI. + + + + + CSS Iteration URI + + + + + Initializes a new instance of the class for CSS Iteration URI. + + The CSS Iteration URI. + + + + Gets the CSS Iteration URI. + + + + + WorkItem attribute; used to specify a work item associated with this test. + + + + + Initializes a new instance of the class for the WorkItem Attribute. + + The Id to a work item. + + + + Gets the Id to a workitem associated. + + + + + Timeout attribute; used to specify the timeout of a unit test. + + + + + Initializes a new instance of the class. + + + The timeout. + + + + + Initializes a new instance of the class with a preset timeout + + + The timeout + + + + + Gets the timeout. + + + + + TestResult object to be returned to adapter. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the display name of the result. Useful when returning multiple results. + If null then Method name is used as DisplayName. + + + + + Gets or sets the outcome of the test execution. + + + + + Gets or sets the exception thrown when test is failed. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the execution id of the result. + + + + + Gets or sets the parent execution id of the result. + + + + + Gets or sets the inner results count of the result. + + + + + Gets or sets the duration of test execution. + + + + + Gets or sets the data row index in data source. Set only for results of individual + run of data row of a data driven test. + + + + + Gets or sets the return value of the test method. (Currently null always). + + + + + Gets or sets the result files attached by the test. + + + + + Specifies connection string, table name and row access method for data driven testing. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + The default provider name for DataSource. + + + + + The default data access method. + + + + + Initializes a new instance of the class. This instance will be initialized with a data provider, connection string, data table and data access method to access the data source. + + Invariant data provider name, such as System.Data.SqlClient + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + Specifies the order to access data. + + + + Initializes a new instance of the class.This instance will be initialized with a connection string and table name. + Specify connection string and data table to access OLEDB data source. + + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + + + + Initializes a new instance of the class. This instance will be initialized with a data provider and connection string associated with the setting name. + + The name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + Gets a value representing the data provider of the data source. + + + The data provider name. If a data provider was not designated at object initialization, the default provider of System.Data.OleDb will be returned. + + + + + Gets a value representing the connection string for the data source. + + + + + Gets a value indicating the table name providing data. + + + + + Gets the method used to access the data source. + + + + One of the values. If the is not initialized, this will return the default value . + + + + + Gets the name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..740d01fd3857259353f56a8c44745531ec2ebd99 GIT binary patch literal 73384 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 LZzAJ}Rd)Ul&m9{B literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..5b20a57 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Používá se pro určení položky nasazení (souboru nebo adresáře) za účelem nasazení podle testu. + Lze zadat na testovací třídě nebo testovací metodě. + Může mít více instancí atributu pro zadání více než jedné položky. + Cesta k položce může být absolutní nebo relativní. Pokud je relativní, je relativní ve vztahu k RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Inicializuje novou instanci třídy . + + Soubor nebo adresář, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do adresáře, ve kterém jsou nasazená testovací sestavení. + + + + Inicializuje novou instanci třídy . + + Relativní nebo absolutní cesta k souboru nebo adresáři, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do stejného adresáře jako nasazená testovací sestavení. + Cesta k adresáři, do kterého se mají položky kopírovat. Může být absolutní nebo relativní ve vztahu k adresáři nasazení. Všechny soubory a adresáře určené cestou budou zkopírovány do tohoto adresáře. + + + + Získá cestu ke zdrojovému souboru nebo složce, které se mají kopírovat. + + + + + Získá cestu adresáře, do kterého se položka zkopíruje. + + + + + Třída TestContext. Tato třída by měla být zcela abstraktní a neměla by obsahovat žádné + členy. Členy implementuje adaptér. Uživatelé rozhraní by měli + k této funkci přistupovat jenom prostřednictvím dobře definovaného rozhraní. + + + + + Získá vlastnosti testu. + + + + + Získá plně kvalifikovaný název třídy obsahující aktuálně prováděnou testovací metodu. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Získá název aktuálně prováděné testovací metody. + + + + + Získá aktuální výsledek testu. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..3f446b4 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4197 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atribut TestMethod pro provádění + + + + + Získá název testovací metody. + + + + + Získá název třídy testu. + + + + + Získá návratový typ testovací metody. + + + + + Získá parametry testovací metody. + + + + + Získá methodInfo pro testovací metodu. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Vyvolá testovací metodu. + + + Argumenty pro testovací metodu (např. pro testování řízené daty) + + + Výsledek vyvolání testovací metody + + + This call handles asynchronous test methods as well. + + + + + Získá všechny atributy testovací metody. + + + Jestli je platný atribut definovaný v nadřazené třídě + + + Všechny atributy + + + + + Získá atribut konkrétního typu. + + System.Attribute type. + + Jestli je platný atribut definovaný v nadřazené třídě + + + Atributy zadaného typu + + + + + Pomocná služba + + + + + Kontrolní parametr není null. + + + Parametr + + + Název parametru + + + Zpráva + + Throws argument null exception when parameter is null. + + + + Ověřovací parametr není null nebo prázdný. + + + Parametr + + + Název parametru + + + Zpráva + + Throws ArgumentException when parameter is null. + + + + Výčet způsobů přístupu k datovým řádkům při testování řízeném daty + + + + + Řádky se vrací v sekvenčním pořadí. + + + + + Řádky se vrátí v náhodném pořadí. + + + + + Atribut pro definování vložených dat pro testovací metodu + + + + + Inicializuje novou instanci třídy . + + Datový objekt + + + + Inicializuje novou instanci třídy , která přijímá pole argumentů. + + Datový objekt + Další data + + + + Získá data pro volání testovací metody. + + + + + Získá nebo nastaví zobrazovaný název ve výsledcích testu pro přizpůsobení. + + + + + Výjimka s neprůkazným kontrolním výrazem + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Třída InternalTestFailureException. Používá se pro označení interní chyby testovacího případu. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + + + + Inicializuje novou instanci třídy . + + + + + Atribut, podle kterého se má očekávat výjimka zadaného typu + + + + + Inicializuje novou instanci třídy s očekávaným typem. + + Typ očekávané výjimky + + + + Inicializuje novou instanci třídy + s očekávaným typem a zprávou, která se zahrne v případě, že test nevyvolá žádnou výjimku. + + Typ očekávané výjimky + + Zpráva, která má být zahrnuta do výsledku testu, pokud se test nezdaří z důvodu nevyvolání výjimky + + + + + Načte hodnotu, která označuje typ očekávané výjimky. + + + + + Získá nebo načte hodnotu, která označuje, jestli je možné typy odvozené od typu očekávané výjimky + považovat za očekávané. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Ověří, jestli se očekává typ výjimky vyvolané testem jednotek. + + Výjimka vyvolaná testem jednotek + + + + Základní třída pro atributy, které určují, že se má očekávat výjimka testu jednotek + + + + + Inicializuje novou instanci třídy s výchozí zprávou no-exception. + + + + + Inicializuje novou instanci třídy se zprávou no-exception. + + + Zprávy, které mají být zahrnuty ve výsledku testu, pokud se test nezdaří z důvodu nevyvolání + výjimky + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá výchozí zprávu no-exception. + + Název typu atributu ExpectedException + Výchozí zpráva neobsahující výjimku + + + + Určuje, jestli se daná výjimka očekává. Pokud metoda skončí, rozumí se tomu tak, + že se výjimka očekávala. Pokud metoda vyvolá výjimku, rozumí se tím, + že se výjimka neočekávala a součástí výsledku testu + je zpráva vyvolané výjimky. Pomocí třídy je možné si usnadnit + práci. Pokud se použije a kontrolní výraz selže, + výsledek testu se nastaví na Neprůkazný. + + Výjimka vyvolaná testem jednotek + + + + Znovu vyvolá výjimku, pokud se jedná o atribut AssertFailedException nebo AssertInconclusiveException. + + Výjimka, která se má znovu vyvolat, pokud se jedná výjimku kontrolního výrazu + + + + Tato třída je koncipovaná tak, aby uživatelům pomáhala při testování jednotek typů, které využívá obecné typy. + Atribut GenericParameterHelper řeší některá běžná omezení obecných typů, + jako jsou: + 1. veřejný výchozí konstruktor + 2. implementace společného rozhraní: IComparable, IEnumerable + + + + + Inicializuje novou instanci třídy , která + splňuje omezení newable v obecných typech jazyka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializuje novou instanci třídy , která + inicializuje vlastnost Data na hodnotu zadanou uživatelem. + + Libovolné celé číslo + + + + Získá nebo nastaví data. + + + + + Provede porovnání hodnot pro dva objekty GenericParameterHelper. + + objekt, se kterým chcete porovnávat + pravda, pokud má objekt stejnou hodnotu jako „tento“ objekt GenericParameterHelper. + V opačném případě nepravda. + + + + Vrátí pro tento objekt hodnotu hash. + + Kód hash + + + + Porovná data daných dvou objektů . + + Objekt pro porovnání + + Číslo se znaménkem označující relativní hodnoty této instance a hodnoty + + + Thrown when the object passed in is not an instance of . + + + + + Vrátí objekt IEnumerator, jehož délka je odvozená od + vlastnosti dat. + + Objekt IEnumerator + + + + Vrátí objekt GenericParameterHelper, který se rovná + aktuálnímu objektu. + + Klonovaný objekt + + + + Umožňuje uživatelům protokolovat/zapisovat trasování z testů jednotek pro účely diagnostiky. + + + + + Obslužná rutina pro LogMessage + + Zpráva, kterou chcete zaprotokolovat + + + + Událost pro naslouchání. Dojde k ní, když autor testů jednotek napíše zprávu. + Určeno především pro použití adaptérem. + + + + + Rozhraní API pro volání zpráv protokolu zapisovačem testu + + Formátovací řetězec se zástupnými symboly + Parametry pro zástupné symboly + + + + Atribut TestCategory, používá se pro zadání kategorie testu jednotek. + + + + + Inicializuje novou instanci třídy a zavede pro daný test kategorii. + + + Kategorie testu + + + + + Získá kategorie testu, které se nastavily pro test. + + + + + Základní třída atributu Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializuje novou instanci třídy . + Tuto kategorii zavede pro daný test. Řetězce vrácené z TestCategories + se použijí spolu s příkazem /category k filtrování testů. + + + + + Získá kategorii testu, která se nastavila pro test. + + + + + Třída AssertFailedException. Používá se pro značení chyby testovacího případu. + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Kolekce pomocných tříd pro testování nejrůznějších podmínek v rámci + testů jednotek. Pokud se testovaná podmínka nesplní, vyvolá se + výjimka. + + + + + Získá instanci typu singleton funkce Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is false. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is true. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null. + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Vyvolá výjimku AssertFailedException. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Statická přetížení operátoru rovnosti se používají k porovnání rovnosti odkazů na instance + dvou typů. Tato metoda by se neměla používat k porovnání rovnosti dvou + instancí. Tento objekt vždy vyvolá Assert.Fail. Ve svých testech + jednotek prosím použijte Assert.AreEqual a přidružená přetížení. + + Objekt A + Objekt B + Vždy nepravda. + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Nahradí znaky null ('\0') řetězcem "\\0". + + + Řetězec, který se má hledat + + + Převedený řetězec se znaky Null nahrazený řetězcem "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Pomocná funkce, která vytváří a vyvolává výjimku AssertionFailedException + + + název kontrolního výrazu, který vyvolává výjimku + + + zpráva popisující podmínky neplatnosti kontrolního výrazu + + + Parametry + + + + + Ověří parametr pro platné podmínky. + + + Parametr + + + Název kontrolního výrazu + + + název parametru + + + zpráva pro neplatnou výjimku parametru + + + Parametry + + + + + Bezpečně převede objekt na řetězec, včetně zpracování hodnot null a znaků null. + Hodnoty null se převádějí na formát (null). Znaky null se převádějí na \\0. + + + Objekt, který chcete převést na řetězec + + + Převedený řetězec + + + + + Kontrolní výraz řetězce + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not end with + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if matches . + + + + + Kolekce tříd pomocných služeb pro ověřování nejrůznějších podmínek vztahujících se + na kolekce v rámci testů jednotek. Pokud se testovaná podmínka + nesplní, vyvolá se výjimka. + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is found in + . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a null element is found in . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Určuje, jestli první kolekce je podmnožinou druhé + kolekce. Pokud některá z množin obsahuje duplicitní prvky, musí počet + výskytů prvku v podmnožině být menší, nebo + se musí rovnat počtu výskytů v nadmnožině. + + + Kolekce, která podle testu má být obsažena v nadmnožině . + + + Kolekce, která podle testu má obsahovat . + + + Pravda, pokud je podmnožinou + , jinak nepravda. + + + + + Vytvoří slovník obsahující počet výskytů jednotlivých + prvků v zadané kolekci. + + + Kolekce, kterou chcete zpracovat + + + Počet prvků Null v kolekci + + + Slovník obsahující počet výskytů jednotlivých prvků + v zadané kolekci. + + + + + Najde mezi dvěma kolekcemi neshodný prvek. Neshodný + prvek je takový, který má v očekávané kolekci + odlišný počet výskytů ve srovnání se skutečnou kolekcí. Kolekce + se považují za rozdílné reference bez hodnoty null se + stejným počtem prvků. Za tuto úroveň ověření odpovídá + volající. Pokud neexistuje žádný neshodný prvek, funkce vrátí + false a neměli byste použít parametry Out. + + + První kolekce, která se má porovnat + + + Druhá kolekce k porovnání + + + Očekávaný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Skutečný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Neshodný prvek (může být Null) nebo Null, pokud neexistuje žádný + neshodný prvek. + + + pravda, pokud je nalezen nevyhovující prvek; v opačném případě nepravda. + + + + + Porovná objekt pomocí atributu object.Equals. + + + + + Základní třída pro výjimky architektury + + + + + Inicializuje novou instanci třídy . + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Třída prostředků se silnými typy pro vyhledávání lokalizovaných řetězců atd. + + + + + Vrátí v mezipaměti uloženou instanci ResourceManager použitou touto třídou. + + + + + Přepíše vlastnost CurrentUICulture aktuálního vlákna pro všechna + vyhledávání prostředků pomocí této třídy prostředků silného typu. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Přístupový řetězec má neplatnou syntaxi. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekávaná kolekce obsahuje počet výskytů {1} <{2}>. Skutečná kolekce obsahuje tento počet výskytů: {3}. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Našla se duplicitní položka:<{1}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekáváno:<{1}>. Případ je rozdílný pro skutečnou hodnotu:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekává rozdíl maximálně <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekáváno:<{1} ({2})>. Skutečnost:<{3} ({4})>. {0}. + + + + + Vyhledá řetězec podobný řetězci Očekáváno:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekával rozdíl větší než <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávala se libovolná hodnota s výjimkou:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevkládejte hodnotu typů do AreSame(). Hodnoty převedené na typ Object nebudou nikdy stejné. Zvažte možnost použít AreEqual(). {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Chyba {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: async TestMethod s atributem UITestMethodAttribute se nepodporují. Buď odeberte async, nebo použijte TestMethodAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce jsou prázdné. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejný prvek. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě reference kolekce odkazují na stejný objekt kolekce. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejné prvky. {0}. + + + + + Vyhledá řetězec podobný řetězci {0}({1}). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (null). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (objekt). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} neobsahuje řetězec {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} ({1}). + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Atribut Assert.Equals by se neměl používat pro kontrolní výrazy. Použijte spíše Assert.AreEqual a přetížení. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Počet prvků v kolekci se neshoduje. Očekáváno:<{1}>. Skutečnost:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {0} se neshoduje. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Prvek indexu {1} je neočekávaného typu. Očekávaný typ:<{2}>. Skutečný typ:<{3}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {1} je (null). Očekávaný typ:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nekončí řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Neplatný argument: EqualsTester nemůže použít hodnoty null. + + + + + Vyhledá řetězec podobný řetězci Nejde převést objekt typu {0} na {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Interní odkazovaný objekt už není platný. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Parametr {0} je neplatný. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Vlastnost {0} má typ {1}; očekávaný typ {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} Očekávaný typ:<{1}>. Skutečný typ:<{2}>. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se neshoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Nesprávný typ:<{1}>. Skutečný typ:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se shoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nezadal se žádný atribut DataRowAttribute. K atributu DataTestMethodAttribute se vyžaduje aspoň jeden atribut DataRowAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevyvolala se žádná výjimka. Očekávala se výjimka {1}. {0}. + + + + + Vyhledá lokalizované řetězce podobné tomuto: Parametr {0} je neplatný. Hodnota nemůže být null. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Rozdílný počet prvků. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Konstruktor se zadaným podpisem se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru objektu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Zadaný člen ({0}) se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru atributu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nezačíná řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávaný typ výjimky musí být System.Exception nebo typ odvozený od System.Exception. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (Z důvodu výjimky se nepodařilo získat zprávu pro výjimku typu {0}.). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Testovací metoda nevyvolala očekávanou výjimku {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda nevyvolala výjimku. Atribut {0} definovaný testovací metodou očekával výjimku. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, ale očekávala se výjimka {1}. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, očekávala se ale odvozená výjimka {1} nebo typ. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Vyvolala se výjimka {2}, ale očekávala se výjimka {1}. {0} + Zpráva o výjimce: {3} + Trasování zásobníku: {4} + + + + + Výsledky testu jednotek + + + + + Test se provedl, ale došlo k problémům. + Problémy se můžou týkat výjimek nebo neúspěšných kontrolních výrazů. + + + + + Test se dokončil, ale není možné zjistit, jestli byl úspěšný, nebo ne. + Dá se použít pro zrušené testy. + + + + + Test se provedl zcela bez problémů. + + + + + V tuto chvíli probíhá test. + + + + + Při provádění testu došlo k chybě systému. + + + + + Časový limit testu vypršel. + + + + + Test byl zrušen uživatelem. + + + + + Test je v neznámém stavu. + + + + + Poskytuje pomocnou funkci pro systém pro testy jednotek. + + + + + Rekurzivně získá zprávy o výjimce, včetně zpráv pro všechny vnitřní + výjimky. + + Výjimka pro načítání zpráv pro + řetězec s informacemi v chybové zprávě + + + + Výčet pro časové limity, který se dá použít spolu s třídou . + Typ výčtu musí odpovídat + + + + + Nekonečno + + + + + Atribut třídy testu + + + + + Získá atribut testovací metody, který umožní spustit tento test. + + Instance atributu testovací metody definované v této metodě. + Typ Použije se ke spuštění tohoto testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atribut testovací metody + + + + + Spustí testovací metodu. + + Testovací metoda, která se má spustit. + Pole objektů TestResult, které představuje výsledek (nebo výsledky) daného testu. + Extensions can override this method to customize running a TestMethod. + + + + Atribut inicializace testu + + + + + Atribut vyčištění testu + + + + + Atribut ignore + + + + + Atribut vlastnosti testu + + + + + Inicializuje novou instanci třídy . + + + Název + + + Hodnota + + + + + Získá název. + + + + + Získá hodnotu. + + + + + Atribut inicializace třídy + + + + + Atribut vyčištění třídy + + + + + Atribut inicializace sestavení + + + + + Atribut vyčištění sestavení + + + + + Vlastník testu + + + + + Inicializuje novou instanci třídy . + + + Vlastník + + + + + Získá vlastníka. + + + + + Atribut priority, používá se pro určení priority testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Priorita + + + + + Získá prioritu. + + + + + Popis testu + + + + + Inicializuje novou instanci třídy , která popíše test. + + Popis + + + + Získá popis testu. + + + + + Identifikátor URI struktury projektů CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI struktury projektů CSS. + + Identifikátor URI struktury projektů CSS + + + + Získá identifikátor URI struktury projektů CSS. + + + + + Identifikátor URI iterace CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI iterace CSS. + + Identifikátor URI iterace CSS + + + + Získá identifikátor URI iterace CSS. + + + + + Atribut WorkItem, používá se pro zadání pracovní položky přidružené k tomuto testu. + + + + + Inicializuje novou instanci třídy pro atribut WorkItem. + + ID pro pracovní položku + + + + Získá ID k přidružené pracovní položce. + + + + + Atribut časového limitu, používá se pro zadání časového limitu testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Časový limit + + + + + Inicializuje novou instanci třídy s předem nastaveným časovým limitem. + + + Časový limit + + + + + Získá časový limit. + + + + + Objekt TestResult, který se má vrátit adaptéru + + + + + Inicializuje novou instanci třídy . + + + + + Získá nebo nastaví zobrazovaný název výsledku. Vhodné pro vrácení většího počtu výsledků. + Pokud je null, jako DisplayName se použije název metody. + + + + + Získá nebo nastaví výsledek provedení testu. + + + + + Získá nebo nastaví výjimku vyvolanou při chybě testu. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo načte trasování ladění testovacího kódu. + + + + + Gets or sets the debug traces by test code. + + + + + Získá nebo nastaví délku trvání testu. + + + + + Získá nebo nastaví index řádku dat ve zdroji dat. Nastavte pouze pro výsledky jednoho + spuštění řádku dat v testu řízeném daty. + + + + + Získá nebo nastaví návratovou hodnotu testovací metody. (Aktuálně vždy null) + + + + + Získá nebo nastaví soubory s výsledky, které připojil test. + + + + + Určuje připojovací řetězec, název tabulky a metodu přístupu řádku pro testování řízené daty. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Název výchozího poskytovatele pro DataSource + + + + + Výchozí metoda pro přístup k datům + + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat, připojovacím řetězcem, tabulkou dat a přístupovou metodou k datům, pomocí kterých se získá přístup ke zdroji dat. + + Název poskytovatele neutrálních dat, jako je System.Data.SqlClient + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + Určuje pořadí přístupu k datům. + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s připojovacím řetězcem a názvem tabulky. + Zadejte připojovací řetězec a tabulku dat, pomocí kterých se získá přístup ke zdroji dat OLEDB. + + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat a připojovacím řetězcem přidruženým k názvu nastavení. + + Název zdroje dat nalezený v oddílu <microsoft.visualstudio.qualitytools> souboru app.config. + + + + Získá hodnotu představující poskytovatele dat zdroje dat. + + + Název poskytovatele dat. Pokud poskytovatel dat nebyl při inicializaci objektu zadán, bude vrácen výchozí poskytovatel System.Data.OleDb. + + + + + Získá hodnotu představující připojovací řetězec zdroje dat. + + + + + Získá hodnotu označující název tabulky poskytující data. + + + + + Získá metodu používanou pro přístup ke zdroji dat. + + + + Jedna z těchto položek: . Pokud není inicializován, vrátí výchozí hodnotu . + + + + + Získá název zdroje dat nalezeného v části <microsoft.visualstudio.qualitytools> v souboru app.config. + + + + + Atribut testu řízeného daty, kde se data dají zadat jako vložená. + + + + + Vyhledá všechny datové řádky a spustí je. + + + Testovací metoda + + + Pole . + + + + + Spustí testovací metodu řízenou daty. + + Testovací metoda, kterou chcete provést. + Datový řádek + Výsledek provedení + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..81af003 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Wird zum Angeben des Bereitstellungselements (Datei oder Verzeichnis) für eine Bereitstellung pro Test verwendet. + Kann für eine Testklasse oder Testmethode angegeben werden. + Kann mehrere Instanzen des Attributs besitzen, um mehrere Elemente anzugeben. + Der Elementpfad kann absolut oder relativ sein. Wenn er relativ ist, dann relativ zu "RunConfig.RelativePathRoot". + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die bereitzustellende Datei oder das Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + + + + Initialisiert eine neue Instanz der -Klasse. + + Der relative oder absolute Pfad zur bereitzustellenden Datei oder zum Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + Der Pfad des Verzeichnisses, in das die Elemente kopiert werden sollen. Er kann absolut oder relativ zum Bereitstellungsverzeichnis sein. Alle Dateien und Verzeichnisse, die identifiziert werden durch werden in dieses Verzeichnis kopiert. + + + + Ruft den Pfad der Quelldatei oder des -ordners ab, die bzw. der kopiert werden soll. + + + + + Ruft den Pfad des Verzeichnisses ab, in das das Element kopiert werden soll. + + + + + Die TestContext-Klasse. Diese Klasse muss vollständig abstrakt sein und keine + Member enthalten. Der Adapter implementiert die Member. Benutzer im Framework sollten + darauf nur über eine klar definierte Schnittstelle zugreifen. + + + + + Ruft Testeigenschaften für einen Test ab. + + + + + Ruft den vollqualifizierten Namen der Klasse ab, die die Testmethode enthält, die zurzeit ausgeführt wird. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Ruft den Namen der zurzeit ausgeführten Testmethode ab. + + + + + Ruft das aktuelle Testergebnis ab. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..ae68026 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod für die Ausführung. + + + + + Ruft den Namen der Testmethode ab. + + + + + Ruft den Namen der Testklasse ab. + + + + + Ruft den Rückgabetyp der Testmethode ab. + + + + + Ruft die Parameter der Testmethode ab. + + + + + Ruft die methodInfo der Testmethode ab. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Ruft die Testmethode auf. + + + An die Testmethode zu übergebende Argumente (z. B. für datengesteuerte Tests). + + + Das Ergebnis des Testmethodenaufrufs. + + + This call handles asynchronous test methods as well. + + + + + Ruft alle Attribute der Testmethode ab. + + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Alle Attribute. + + + + + Ruft ein Attribut eines bestimmten Typs ab. + + System.Attribute type. + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Die Attribute des angegebenen Typs. + + + + + Das Hilfsprogramm. + + + + + Der check-Parameter ungleich null. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws argument null exception when parameter is null. + + + + Der check-Parameter ungleich null oder leer. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws ArgumentException when parameter is null. + + + + Enumeration für die Art des Zugriffs auf Datenzeilen in datengesteuerten Tests. + + + + + Zeilen werden in sequenzieller Reihenfolge zurückgegeben. + + + + + Zeilen werden in zufälliger Reihenfolge zurückgegeben. + + + + + Attribut zum Definieren von Inlinedaten für eine Testmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Das Datenobjekt. + + + + Initialisiert eine neue Instanz der -Klasse, die ein Array aus Argumenten akzeptiert. + + Ein Datenobjekt. + Weitere Daten. + + + + Ruft Daten für den Aufruf der Testmethode ab. + + + + + Ruft den Anzeigenamen in den Testergebnissen für die Anpassung ab. + + + + + Die nicht eindeutige Assert-Ausnahme. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Die InternalTestFailureException-Klasse. Wird zum Angeben eines internen Fehlers für einen Testfall verwendet. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ein Attribut, das angibt, dass eine Ausnahme des angegebenen Typs erwartet wird + + + + + Initialisiert eine neue Instanz der -Klasse mit dem erwarteten Typ + + Der Typ der erwarteten Ausnahme. + + + + Initialisiert eine neue Instanz der-Klasse mit + dem erwarteten Typ und der einzuschließenden Meldung, wenn vom Test keine Ausnahme ausgelöst wurde. + + Der Typ der erwarteten Ausnahme. + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft einen Wert ab, der den Typ der erwarteten Ausnahme angibt. + + + + + Ruft einen Wert ab, der angibt, ob es zulässig ist, dass vom Typ der erwarteten Ausnahme abgeleitete Typen + als erwartet qualifiziert werden. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Überprüft, ob der Typ der vom Komponententest ausgelösten Ausnahme erwartet wird. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Basisklasse für Attribute, die angeben, dass eine Ausnahme aus einem Komponententest erwartet wird. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer standardmäßigen "no-exception"-Meldung. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer 2no-exception"-Meldung + + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, + weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die standardmäßige Nichtausnahmemeldung ab. + + Der Typname des ExpectedException-Attributs. + Die standardmäßige Nichtausnahmemeldung. + + + + Ermittelt, ob die Annahme erwartet ist. Wenn die Methode zurückkehrt, wird davon ausgegangen, + dass die Annahme erwartet war. Wenn die Methode eine Ausnahme auslöst, + wird davon ausgegangen, dass die Ausnahme nicht erwartet war, und die Meldung + der ausgelösten Ausnahme wird in das Testergebnis eingeschlossen. Die -Klasse wird aus Gründen der + Zweckmäßigkeit bereitgestellt. Wenn verwendet wird und ein Fehler der Assertion auftritt, + wird das Testergebnis auf Inconclusive festgelegt. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Löst die Ausnahme erneut aus, wenn es sich um eine AssertFailedException oder eine AssertInconclusiveException handelt. + + Die Ausnahme, die erneut ausgelöst werden soll, wenn es sich um eine Assertionausnahme handelt. + + + + Diese Klasse unterstützt Benutzer beim Ausführen von Komponententests für Typen, die generische Typen verwenden. + GenericParameterHelper erfüllt einige allgemeine generische Typeinschränkungen, + beispielsweise: + 1. öffentlicher Standardkonstruktor + 2. implementiert allgemeine Schnittstellen: IComparable, IEnumerable + + + + + Initialisiert eine neue Instanz der -Klasse, die + die Einschränkung "newable" in C#-Generika erfüllt. + + + This constructor initializes the Data property to a random value. + + + + + Initialisiert eine neue Instanz der-Klasse, die + die Data-Eigenschaft mit einem vom Benutzer bereitgestellten Wert initialisiert. + + Ein Integerwert + + + + Ruft die Daten ab oder legt sie fest. + + + + + Führt den Wertvergleich für zwei GenericParameterHelper-Objekte aus. + + Das Objekt, mit dem der Vergleich ausgeführt werden soll. + TRUE, wenn das Objekt den gleichen Wert wie "dieses" GenericParameterHelper-Objekt aufweist. + Andernfalls FALSE. + + + + Gibt einen Hashcode für diese Objekt zurück. + + Der Hash. + + + + Vergleicht die Daten der beiden -Objekte. + + Das Objekt, mit dem verglichen werden soll. + + Eine signierte Zahl, die die relativen Werte dieser Instanz und dieses Werts angibt. + + + Thrown when the object passed in is not an instance of . + + + + + Gibt ein IEnumerator-Objekt zurück, dessen Länge aus + der Data-Eigenschaft abgeleitet ist. + + Das IEnumerator-Objekt + + + + Gibt ein GenericParameterHelper-Objekt zurück, das gleich + dem aktuellen Objekt ist. + + Das geklonte Objekt. + + + + Ermöglicht Benutzern das Protokollieren/Schreiben von Ablaufverfolgungen aus Komponententests für die Diagnose. + + + + + Handler für LogMessage. + + Die zu protokollierende Meldung. + + + + Zu überwachendes Ereignis. Wird ausgelöst, wenn der Komponententestwriter eine Meldung schreibt. + Wird hauptsächlich von Adaptern verwendet. + + + + + Vom Testwriter aufzurufende API zum Protokollieren von Meldungen. + + Das Zeichenfolgenformat mit Platzhaltern. + Parameter für Platzhalter. + + + + Das TestCategory-Attribut. Wird zum Angeben der Kategorie eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse und wendet die Kategorie auf den Test an. + + + Die test-Kategorie. + + + + + Ruft die Testkategorien ab, die auf den Test angewendet wurden. + + + + + Die Basisklasse für das Category-Attribut. + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialisiert eine neue Instanz der -Klasse. + Wendet die Kategorie auf den Test an. Die von TestCategories + zurückgegebenen Zeichenfolgen werden mit dem Befehl "/category" zum Filtern von Tests verwendet. + + + + + Ruft die Testkategorie ab, die auf den Test angewendet wurde. + + + + + Die AssertFailedException-Klasse. Wird zum Angeben eines Fehlers für einen Testfall verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen in + Komponententests. Wenn die getestete Bedingung nicht erfüllt wird, wird eine Ausnahme + ausgelöst. + + + + + Ruft die Singleton-Instanz der Assert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is true. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null. + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Löst eine AssertFailedException aus. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Statische equals-Überladungen werden zum Vergleichen von Instanzen zweier Typen für + Verweisgleichheit verwendet. Diese Methode sollte nicht zum Vergleichen von zwei Instanzen auf + Gleichheit verwendet werden. Dieses Objekt löst immer einen Assert.Fail aus. Verwenden Sie + Assert.AreEqual und zugehörige Überladungen in Ihren Komponententests. + + Objekt A + Objekt B + Immer FALSE. + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Ersetzt Nullzeichen ("\0") durch "\\0". + + + Die Zeichenfolge, nach der gesucht werden soll. + + + Die konvertierte Zeichenfolge, in der Nullzeichen durch "\\0" ersetzt wurden. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Eine Hilfsfunktion, die eine AssertionFailedException erstellt und auslöst. + + + Der Name der Assertion, die eine Ausnahme auslöst. + + + Eine Meldung, die Bedingungen für den Assertionfehler beschreibt. + + + Die Parameter. + + + + + Überprüft den Parameter auf gültige Bedingungen. + + + Der Parameter. + + + Der Name der Assertion. + + + Parametername + + + Meldung für die ungültige Parameterausnahme. + + + Die Parameter. + + + + + Konvertiert ein Objekt sicher in eine Zeichenfolge und verarbeitet dabei NULL-Werte und Nullzeichen. + NULL-Werte werden in "(null)" konvertiert. Nullzeichen werden in "\\0" konvertiert". + + + Das Objekt, das in eine Zeichenfolge konvertiert werden soll. + + + Die konvertierte Zeichenfolge. + + + + + Die Zeichenfolgenassertion. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if matches . + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen, die + Sammlungen in Komponententests zugeordnet sind. Wenn die getestete Bedingung nicht + erfüllt wird, wird eine Ausnahme ausgelöst. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if every element in is also found in + . + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Ermittelt, ob die erste Sammlung eine Teilmenge der zweiten + Sammlung ist. Wenn eine der Mengen Elementduplikate enthält, muss die Anzahl + der Vorkommen des Elements in der Teilmenge kleiner oder + gleich der Anzahl der Vorkommen in der Obermenge sein. + + + Die Sammlung, von der der Test erwartet, dass sie enthalten ist in . + + + Die Sammlung, von der der Test erwartet, dass sie Folgendes enthält: . + + + TRUE, wenn: eine Teilmenge ist von + , andernfalls FALSE. + + + + + Generiert ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + Die zu verarbeitende Sammlung. + + + Die Anzahl der Nullelemente in der Sammlung. + + + Ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + + + Findet ein nicht übereinstimmendes Element in den beiden Sammlungen. Ein nicht übereinstimmendes + Element ist ein Element, für das sich die Anzahl der Vorkommen in der + erwarteten Sammlung von der Anzahl der Vorkommen in der tatsächlichen Sammlung unterscheidet. Von den + Sammlungen wird angenommen, dass unterschiedliche Verweise ungleich null mit der + gleichen Anzahl von Elementen vorhanden sind. Der Aufrufer ist für diese Ebene + der Überprüfung verantwortlich. Wenn kein nicht übereinstimmendes Element vorhanden ist, gibt die Funktion FALSE + zurück, und die out-Parameter sollten nicht verwendet werden. + + + Die erste zu vergleichende Sammlung. + + + Die zweite zu vergleichende Sammlung. + + + Die erwartete Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Die tatsächliche Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Das nicht übereinstimmende Element (kann NULL sein) oder NULL, wenn kein nicht + übereinstimmendes Element vorhanden ist. + + + TRUE, wenn ein nicht übereinstimmendes Element gefunden wurde, andernfalls FALSE. + + + + + vergleicht die Objekte mithilfe von object.Equals + + + + + Basisklasse für Frameworkausnahmen. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Eine stark typisierte Ressourcenklasse zum Suchen nach lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcensuchen mithilfe dieser stark typisierten Ressourcenklasse. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zugriffszeichenfolge weist ungültige Syntax auf." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartete Sammlung enthält {1} Vorkommen von <{2}>. Die tatsächliche Sammlung enthält {3} Vorkommen. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Elementduplikat gefunden: <{1}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Groß-/Kleinschreibung unterscheidet sich für den tatsächlichen Wert: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz nicht größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1} ({2})>. Tatsächlich: <{3} ({4})>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beliebiger Wert erwartet, ausgenommen: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Übergeben Sie keine Werttypen an AreSame(). In Object konvertierte Werte sind nie gleich. Verwenden Sie ggf. AreEqual(). {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Fehler von {0}. {1}" nach. + + + + + Sucht nach einer lokalisierten Zeichenfolge ähnlich der folgenden: "async TestMethod" wird mit UITestMethodAttribute nicht unterstützt. Entfernen Sie "async", oder verwenden Sie TestMethodAttribute. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen sind leer. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungsverweise zeigen auf das gleiche Sammlungsobjekt. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0}({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(null)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(object)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' enthält nicht Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} ({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Assert.Equals sollte für Assertionen nicht verwendet werden. Verwenden Sie stattdessen Assert.AreEqual & Überladungen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Anzahl der Elemente in den Sammlungen stimmt nicht überein. Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {0} stimmt nicht überein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} weist nicht den erwarteten Typ auf. Erwarteter Typ: <{2}>. Tatsächlicher Typ: <{3}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} ist (null). Erwarteter Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' endet nicht mit Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ungültiges Argument: EqualsTester darf keine NULL-Werte verwenden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Objekt vom Typ {0} kann nicht in {1} konvertiert werden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Das referenzierte interne Objekt ist nicht mehr gültig." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Eigenschaft {0} weist den Typ {1} auf. Erwartet wurde der Typ {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} Erwarteter Typ: <{1}>. Tatsächlicher Typ: <{2}>." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt nicht mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Falscher Typ: <{1}>. Tatsächlicher Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Kein DataRowAttribute angegeben. Mindestens ein DataRowAttribute ist mit DataTestMethodAttribute erforderlich." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Keine Ausnahme ausgelöst. {1}-Ausnahme wurde erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. Der Wert darf nicht NULL sein. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Unterschiedliche Anzahl von Elementen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der Konstruktor mit der angegebenen Signatur wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der angegebene Member ({0}) wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Zeichenfolge '{0}' beginnt nicht mit der Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der erwartete Ausnahmetyp muss System.Exception oder ein von System.Exception abgeleiteter Typ sein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(Fehler beim Abrufen der Meldung vom Typ {0} aufgrund einer Ausnahme.)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat erwartete Ausnahme {0} nicht ausgelöst. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Testmethode hat keine Ausnahme ausgelöst. Vom Attribut {0}, das für die Testmethode definiert ist, wurde eine Ausnahme erwartet." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} oder ein davon abgeleiteter Typ wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ausnahme {2} wurde ausgelöst, aber Ausnahme {1} wurde erwartet. {0} + Ausnahmemeldung: {3} + Stapelüberwachung: {4}" nach. + + + + + Ergebnisse des Komponententests + + + + + Der Test wurde ausgeführt, aber es gab Probleme. + Möglicherweise liegen Ausnahmen oder Assertionsfehler vor. + + + + + Der Test wurde abgeschlossen, es lässt sich aber nicht sagen, ob er bestanden wurde oder fehlerhaft war. + Kann für abgebrochene Tests verwendet werden. + + + + + Der Test wurde ohne Probleme ausgeführt. + + + + + Der Test wird zurzeit ausgeführt. + + + + + Systemfehler beim Versuch, einen Test auszuführen. + + + + + Timeout des Tests. + + + + + Der Test wurde vom Benutzer abgebrochen. + + + + + Der Test weist einen unbekannten Zustand auf. + + + + + Stellt Hilfsfunktionen für das Komponententestframework bereit. + + + + + Ruft die Ausnahmemeldungen (einschließlich der Meldungen für alle inneren Ausnahmen) + rekursiv ab. + + Ausnahme, für die Meldungen abgerufen werden sollen + Zeichenfolge mit Fehlermeldungsinformationen + + + + Enumeration für Timeouts, die mit der -Klasse verwendet werden kann. + Der Typ der Enumeration muss entsprechen: + + + + + Unendlich. + + + + + Das Testklassenattribut. + + + + + Erhält ein Testmethodenattribut, das die Ausführung des Tests ermöglicht. + + Die für diese Methode definierte Attributinstanz der Testmethode. + Diezum Ausführen dieses Tests + Extensions can override this method to customize how all methods in a class are run. + + + + Das Testmethodenattribut. + + + + + Führt eine Testmethode aus. + + Die auszuführende Textmethode. + Ein Array aus TestResult-Objekten, die für die Ergebnisses des Tests stehen. + Extensions can override this method to customize running a TestMethod. + + + + Das Testinitialisierungsattribut. + + + + + Das Testbereinigungsattribut. + + + + + Das Ignorierattribut. + + + + + Das Testeigenschaftattribut. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Der Name. + + + Der Wert. + + + + + Ruft den Namen ab. + + + + + Ruft den Wert ab. + + + + + Das Klasseninitialisierungsattribut. + + + + + Das Klassenbereinigungsattribut. + + + + + Das Assemblyinitialisierungsattribut. + + + + + Das Assemblybereinigungsattribut. + + + + + Der Testbesitzer. + + + + + Initialisiert eine neue Instanz der-Klasse. + + + Der Besitzer. + + + + + Ruft den Besitzer ab. + + + + + Prioritätsattribut. Wird zum Angeben der Priorität eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Die Priorität. + + + + + Ruft die Priorität ab. + + + + + Die Beschreibung des Tests. + + + + + Initialisiert eine neue Instanz der -Klasse zum Beschreiben eines Tests. + + Die Beschreibung. + + + + Ruft die Beschreibung eines Tests ab. + + + + + Der URI der CSS-Projektstruktur. + + + + + Initialisiert eine neue Instanz der -Klasse der CSS Projektstruktur-URI. + + Der CSS-Projektstruktur-URI. + + + + Ruft den CSS-Projektstruktur-URI ab. + + + + + Der URI der CSS-Iteration. + + + + + Initialisiert eine neue Instanz der-Klasse für den CSS Iterations-URI. + + Der CSS-Iterations-URI. + + + + Ruft den CSS-Iterations-URI ab. + + + + + WorkItem-Attribut. Wird zum Angeben eines Arbeitselements verwendet, das diesem Test zugeordnet ist. + + + + + Initialisiert eine neue Instanz der-Klasse für das WorkItem-Attribut. + + Die ID eines Arbeitselements. + + + + Ruft die ID für ein zugeordnetes Arbeitselement ab. + + + + + Timeoutattribut. Wird zum Angeben des Timeouts eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Das Timeout. + + + + + Initialisiert eine neue Instanz der -Klasse mit einem voreingestellten Timeout. + + + Das Timeout. + + + + + Ruft das Timeout ab. + + + + + Das TestResult-Objekt, das an den Adapter zurückgegeben werden soll. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ruft den Anzeigenamen des Ergebnisses ab oder legt ihn fest. Hilfreich, wenn mehrere Ergebnisse zurückgegeben werden. + Wenn NULL, wird der Methodenname als DisplayName verwendet. + + + + + Ruft das Ergebnis der Testausführung ab oder legt es fest. + + + + + Ruft die Ausnahme ab, die bei einem Testfehler ausgelöst wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Debugablaufverfolgungen nach Testcode fest oder legt sie fest. + + + + + Gets or sets the debug traces by test code. + + + + + Ruft die Dauer der Testausführung ab oder legt sie fest. + + + + + Ruft den Datenzeilenindex in der Datenquelle ab, oder legt ihn fest. Nur festgelegt für Ergebnisse einer individuellen + Ausführung einer Datenzeile eines datengesteuerten Tests. + + + + + Ruft den Rückgabewert der Testmethode ab (zurzeit immer NULL). + + + + + Ruft die vom Test angehängten Ergebnisdateien ab, oder legt sie fest. + + + + + Gibt die Verbindungszeichenfolge, den Tabellennamen und die Zeilenzugriffsmethode für datengesteuerte Tests an. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Der Standardanbietername für DataSource. + + + + + Die standardmäßige Datenzugriffsmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter, einer Verbindungszeichenfolge, einer Datentabelle und einer Datenzugriffsmethode für den Zugriff auf die Daten initialisiert. + + Invarianter Datenanbietername, z. B. "System.Data.SqlClient" + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + Gibt die Reihenfolge für den Datenzugriff an. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einer Verbindungszeichenfolge und einem Tabellennamen initialisiert. + Geben Sie eine Verbindungszeichenfolge und Datentabelle an, um auf die OLEDB-Datenquelle zuzugreifen. + + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter und einer Verbindungszeichenfolge mit dem Namen der Einstellung initialisiert. + + Der Name einer Datenquelle, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + Ruft einen Wert ab, der den Datenanbieter der Datenquelle darstellt. + + + Der Name des Datenanbieters. Wenn kein Datenanbieter während der Objektinitialisierung festgelegt wurde, wird der Standardanbieter "System.Data.OleDb" zurückgegeben. + + + + + Ruft einen Wert ab, der die Verbindungszeichenfolge für die Datenquelle darstellt. + + + + + Ruft einen Wert ab, der den Tabellennamen angibt, der Daten bereitstellt. + + + + + Ruft die Methode ab, die für den Zugriff auf die Datenquelle verwendet wird. + + + + Einer der-Werte. Wenn das nicht initialisiert wurde, wird der Standardwert zurückgegeben. . + + + + + Ruft den Namen einer Datenquelle ab, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + + Ein Attribut für datengesteuerte Tests, in denen Daten inline angegeben werden können. + + + + + Ermittelt alle Datenzeilen und beginnt mit der Ausführung. + + + Die test-Methode. + + + Ein Array aus . + + + + + Führt die datengesteuerte Testmethode aus. + + Die auszuführende Testmethode. + Die Datenzeile. + Ergebnisse der Ausführung. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..47b3d8c --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Se usa para especificar el elemento (archivo o directorio) para la implementación por prueba. + Puede especificarse en la clase de prueba o en el método de prueba. + Puede tener varias instancias del atributo para especificar más de un elemento. + La ruta de acceso del elemento puede ser absoluta o relativa. Si es relativa, lo es respecto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Inicializa una nueva instancia de la clase . + + Archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + + + + Inicializa una nueva instancia de la clase . + + Ruta de acceso relativa o absoluta al archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + Ruta de acceso del directorio en el que se van a copiar los elementos. Puede ser absoluta o relativa respecto al directorio de implementación. Todos los archivos y directorios que identifica se copiarán en este directorio. + + + + Obtiene la ruta de acceso al archivo o carpeta de origen que se debe copiar. + + + + + Obtiene la ruta de acceso al directorio donde se copia el elemento. + + + + + Clase TestContext. Esta clase debe ser totalmente abstracta y no contener ningún + miembro. El adaptador implementará los miembros. Los usuarios del marco solo deben + tener acceso a esta clase a través de una interfaz bien definida. + + + + + Obtiene las propiedades de una prueba. + + + + + Obtiene el nombre completo de la clase que contiene el método de prueba que se está ejecutando. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtiene el nombre del método de prueba que se está ejecutando. + + + + + Obtiene el resultado de la prueba actual. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5b05af9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4199 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atributo TestMethod para la ejecución. + + + + + Obtiene el nombre del método de prueba. + + + + + Obtiene el nombre de la clase de prueba. + + + + + Obtiene el tipo de valor devuelto del método de prueba. + + + + + Obtiene los parámetros del método de prueba. + + + + + Obtiene el valor de methodInfo para el método de prueba. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca el método de prueba. + + + Argumentos que se pasan al método de prueba (por ejemplo, controlada por datos) + + + Resultado de la invocación del método de prueba. + + + This call handles asynchronous test methods as well. + + + + + Obtiene todos los atributos del método de prueba. + + + Indica si el atributo definido en la clase primaria es válido. + + + Todos los atributos. + + + + + Obtiene un atributo de un tipo específico. + + System.Attribute type. + + Indica si el atributo definido en la clase primaria es válido. + + + Atributos del tipo especificado. + + + + + Elemento auxiliar. + + + + + Parámetro de comprobación no NULL. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws argument null exception when parameter is null. + + + + Parámetro de comprobación no NULL o vacío. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws ArgumentException when parameter is null. + + + + Enumeración de cómo se accede a las filas de datos en las pruebas controladas por datos. + + + + + Las filas se devuelven en orden secuencial. + + + + + Las filas se devuelven en orden aleatorio. + + + + + Atributo para definir los datos insertados de un método de prueba. + + + + + Inicializa una nueva instancia de la clase . + + Objeto de datos. + + + + Inicializa una nueva instancia de la clase , que toma una matriz de argumentos. + + Objeto de datos. + Más datos. + + + + Obtiene datos para llamar al método de prueba. + + + + + Obtiene o establece el nombre para mostrar en los resultados de pruebas para personalizarlo. + + + + + Excepción de aserción no concluyente. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Clase InternalTestFailureException. Se usa para indicar un error interno de un caso de prueba. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + + + + Inicializa una nueva instancia de la clase . + + + + + Atributo que indica que debe esperarse una excepción del tipo especificado. + + + + + Inicializa una nueva instancia de la clase con el tipo esperado. + + Tipo de la excepción esperada + + + + Inicializa una nueva instancia de la clase + con el tipo esperado y el mensaje para incluir cuando la prueba no produce una excepción. + + Tipo de la excepción esperada + + Mensaje que se incluye en el resultado de la prueba si esta no se supera debido a que no se inicia una excepción + + + + + Obtiene un valor que indica el tipo de la excepción esperada. + + + + + Obtiene o establece un valor que indica si se permite que los tipos derivados del tipo de la excepción esperada + se consideren también como esperados. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Comprueba que el tipo de la excepción producida por la prueba unitaria es el esperado. + + Excepción que inicia la prueba unitaria + + + + Clase base para atributos que especifican que se espere una excepción de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción predeterminado. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción. + + + Mensaje para incluir en el resultado de la prueba si esta no se supera debido a que no se inicia una + excepción + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje de ausencia de excepción predeterminado. + + Nombre del tipo de atributo ExpectedException + Mensaje de ausencia de excepción predeterminado + + + + Determina si se espera la excepción. Si el método devuelve un valor, se entiende + que se esperaba la excepción. Si el método produce una excepción, + se entiende que no se esperaba la excepción y se incluye el mensaje + de la misma en el resultado de la prueba. Se puede usar para mayor + comodidad. Si se utiliza y la aserción no funciona, + el resultado de la prueba se establece como No concluyente. + + Excepción que inicia la prueba unitaria + + + + Produce de nuevo la excepción si es de tipo AssertFailedException o AssertInconclusiveException. + + La excepción que se va a reiniciar si es una excepción de aserción + + + + Esta clase está diseñada para ayudar al usuario a realizar pruebas unitarias para tipos con tipos genéricos. + GenericParameterHelper satisface algunas de las restricciones de tipo genérico comunes, + como: + 1. Constructor predeterminado público. + 2. Implementa una interfaz común: IComparable, IEnumerable. + + + + + Inicializa una nueva instancia de la clase que + satisface la restricción "renovable" en genéricos de C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa una nueva instancia de la clase que + inicializa la propiedad Data con un valor proporcionado por el usuario. + + Cualquier valor entero + + + + Obtiene o establece los datos. + + + + + Compara el valor de dos objetos GenericParameterHelper. + + objeto con el que hacer la comparación + Es true si el objeto tiene el mismo valor que el objeto GenericParameterHelper "this". + De lo contrario, false. + + + + Devuelve un código hash para este objeto. + + El código hash. + + + + Compara los datos de los dos objetos . + + Objeto con el que se va a comparar. + + Número con signo que indica los valores relativos de esta instancia y valor. + + + Thrown when the object passed in is not an instance of . + + + + + Devuelve un objeto IEnumerator cuya longitud se deriva de + la propiedad Data. + + El objeto IEnumerator + + + + Devuelve un objeto GenericParameterHelper que es igual al + objeto actual. + + El objeto clonado. + + + + Permite a los usuarios registrar o escribir el seguimiento de las pruebas unitarias con fines de diagnóstico. + + + + + Controlador para LogMessage. + + Mensaje para registrar. + + + + Evento que se debe escuchar. Se genera cuando el autor de las pruebas unitarias escribe algún mensaje. + Lo consume principalmente el adaptador. + + + + + API del escritor de la prueba para llamar a los mensajes de registro. + + Formato de cadena con marcadores de posición. + Parámetros para los marcadores de posición. + + + + Atributo TestCategory. Se usa para especificar la categoría de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase y le aplica la categoría a la prueba. + + + Categoría de prueba. + + + + + Obtiene las categorías que se le han aplicado a la prueba. + + + + + Clase base del atributo "Category". + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa una nueva instancia de la clase . + Aplica la categoría a la prueba. Las cadenas que devuelve TestCategories + se usan con el comando /category para filtrar las pruebas. + + + + + Obtiene la categoría que se le ha aplicado a la prueba. + + + + + Clase AssertFailedException. Se usa para indicar el error de un caso de prueba. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Colección de clases auxiliares para probar varias condiciones en las + pruebas unitarias. Si la condición que se está probando no se cumple, se produce + una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad de Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is false. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is true. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null. + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is not equal to . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Produce una excepción AssertFailedException. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Las sobrecargas de igualdad estáticas se usan para comparar la igualdad de referencia de + instancias de dos tipos. Este método no debe usarse para comparar la igualdad de dos instancias. + Este objeto se devolverá siempre con Assert.Fail. Utilice + Assert.AreEqual y las sobrecargas asociadas en pruebas unitarias. + + Objeto A + Objeto B + False, siempre. + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Reemplaza los caracteres NULL "\0" por "\\0". + + + Cadena para buscar. + + + La cadena convertida con los caracteres NULL reemplazados por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Función auxiliar que produce una excepción AssertionFailedException. + + + nombre de la aserción que inicia una excepción + + + mensaje que describe las condiciones del error de aserción + + + Los parámetros. + + + + + Comprueba el parámetro para las condiciones válidas. + + + El parámetro. + + + Nombre de la aserción. + + + nombre de parámetro + + + mensaje de la excepción de parámetro no válido + + + Los parámetros. + + + + + Convierte un objeto en cadena de forma segura, con control de los valores y caracteres NULL. + Los valores NULL se convierten en "NULL". Los caracteres NULL se convierten en "\\0". + + + Objeto que se va a convertir en cadena. + + + La cadena convertida. + + + + + Aserción de cadena. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if matches . + + + + + Colección de clases auxiliares para probar varias condiciones asociadas + a las colecciones en las pruebas unitarias. Si la condición que se está probando no se + cumple, se produce una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is found in + . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a null element is found in . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if every element in is also found in + . + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Determina si la primera colección es un subconjunto de la + segunda. Si cualquiera de los conjuntos contiene elementos duplicados, el número + de repeticiones del elemento en el subconjunto debe ser inferior o + igual al número de repeticiones en el superconjunto. + + + Colección que la prueba espera que esté incluida en . + + + Colección que la prueba espera que contenga . + + + True si es un subconjunto de + , de lo contrario false. + + + + + Construye un diccionario que contiene el número de repeticiones de cada + elemento en la colección especificada. + + + Colección que se va a procesar. + + + Número de elementos NULL de la colección. + + + Diccionario que contiene el número de repeticiones de cada elemento + en la colección especificada. + + + + + Encuentra un elemento no coincidente entre ambas colecciones. Un elemento + no coincidente es aquel que aparece un número distinto de veces en la + colección esperada de lo que aparece en la colección real. Se + supone que las colecciones son referencias no NULL diferentes con el + mismo número de elementos. El autor de la llamada es el responsable de + este nivel de comprobación. Si no hay ningún elemento no coincidente, + la función devuelve false y no deben usarse parámetros out. + + + La primera colección para comparar. + + + La segunda colección para comparar. + + + Número esperado de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El número real de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El elemento no coincidente (puede ser nulo) o NULL si no hay ningún + elemento no coincidente. + + + Es true si se encontró un elemento no coincidente. De lo contrario, false. + + + + + compara los objetos con object.Equals. + + + + + Clase base para las excepciones de marco. + + + + + Inicializa una nueva instancia de la clase . + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Clase de recurso fuertemente tipado para buscar cadenas traducidas, etc. + + + + + Devuelve la instancia de ResourceManager almacenada en caché que usa esta clase. + + + + + Invalida la propiedad CurrentUICulture del subproceso actual para todas + las búsquedas de recursos que usan esta clase de recursos fuertemente tipados. + + + + + Busca una cadena traducida similar a "La cadena de acceso tiene una sintaxis no válida". + + + + + Busca una cadena traducida similar a "La colección esperada contiene {1} repeticiones de <{2}>. La colección actual contiene {3} repeticiones. {0}". + + + + + Busca una cadena traducida similar a "Se encontró un elemento duplicado: <{1}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>. El caso es distinto para el valor real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia no superior a <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1} ({2})>, pero es: <{3} ({4})>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia mayor que <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba cualquier valor excepto: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "No pase tipos de valor a AreSame(). Los valores convertidos a Object no serán nunca iguales. Considere el uso de AreEqual(). {0}". + + + + + Busca una cadena traducida similar a "Error de {0}. {1}". + + + + + Busca una cadena traducida similar a "No se admite un método de prueba asincrónico con UITestMethodAttribute. Quite el método asincrónico o use TestMethodAttribute. + + + + + Busca una cadena traducida similar a "Ambas colecciones están vacías". {0}. + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos". + + + + + Busca una cadena traducida similar a "Las referencias de ambas colecciones apuntan al mismo objeto de colección. {0}". + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos. {0}". + + + + + Busca una cadena traducida similar a "{0}({1})". + + + + + Busca una cadena traducida similar a "(NULL)". + + + + + Busca una cadena traducida similar a "(objeto)". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no contiene la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "{0} ({1})". + + + + + Busca una cadena traducida similar a "No se debe usar Assert.Equals para aserciones. Use Assert.AreEqual y Overloads en su lugar". + + + + + Busca una cadena traducida similar a "El número de elementos de las colecciones no coincide. Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {0} no coincide". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} no es del tipo esperado. Tipo esperado: <{2}>, tipo real: <{3}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} es (NULL). Se esperaba el tipo: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no termina con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "Argumento no válido: EqualsTester no puede utilizar valores NULL". + + + + + Busca una cadena traducida similar a "El objeto de tipo {0} no se puede convertir en {1}". + + + + + Busca una cadena traducida similar a "El objeto interno al que se hace referencia ya no es válido". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. {1}". + + + + + Busca una cadena traducida similar a "La propiedad {0} tiene el tipo {1}; se esperaba el tipo {2}". + + + + + Busca una cadena traducida similar a "{0} Tipo esperado: <{1}>. Tipo real: <{2}>". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "Tipo incorrecto: <{1}>. Tipo real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "No se especificó ningún atributo DataRowAttribute. Se requiere al menos un elemento DataRowAttribute con DataTestMethodAttribute". + + + + + Busca una cadena traducida similar a "No se produjo ninguna excepción. Se esperaba la excepción {1}. {0}". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. El valor no puede ser NULL. {1}". + + + + + Busca una cadena traducida similar a "Número diferente de elementos". + + + + + Busca una cadena traducida similar a + "No se encontró el constructor con la signatura especificada. Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a + "No se encontró el miembro especificado ({0}). Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no empieza con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "El tipo de excepción esperado debe ser System.Exception o un tipo derivado de System.Exception". + + + + + Busca una cadena traducida similar a "No se pudo obtener el mensaje para una excepción del tipo {0} debido a una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba no inició la excepción esperada {0}. {1}". + + + + + Busca una cadena traducida similar a "El método de prueba no inició una excepción. El atributo {0} definido en el método de prueba esperaba una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1}. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1} o un tipo derivado de ella. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "Se produjo la excepción {2}, pero se esperaba la excepción {1}. {0} + Mensaje de excepción: {3} + Seguimiento de la pila: {4}". + + + + + Resultados de la prueba unitaria. + + + + + La prueba se ejecutó, pero hubo problemas. + Entre estos, puede haber excepciones o aserciones con errores. + + + + + La prueba se completó, pero no podemos determinar si el resultado fue correcto o no. + Se puede usar para pruebas anuladas. + + + + + La prueba se ejecutó sin problemas. + + + + + La prueba se está ejecutando. + + + + + Error del sistema al intentar ejecutar una prueba. + + + + + Se agotó el tiempo de espera de la prueba. + + + + + El usuario anuló la prueba. + + + + + La prueba tiene un estado desconocido + + + + + Proporciona funcionalidad auxiliar para el marco de pruebas unitarias. + + + + + Obtiene los mensajes de excepción, incluidos los mensajes de todas las excepciones internas, + de forma recursiva. + + Excepción para la que se obtienen los mensajes + la cadena con información del mensaje de error + + + + Enumeración para cuando se agota el tiempo de espera que se puede usar con el atributo . + El tipo de la enumeración debe coincidir. + + + + + Infinito. + + + + + Atributo de la clase de prueba. + + + + + Obtiene un atributo de método de prueba que habilita la ejecución de esta prueba. + + La instancia de atributo de método de prueba definida en este método. + Tipo que se utilizará para ejecutar esta prueba. + Extensions can override this method to customize how all methods in a class are run. + + + + Atributo del método de prueba. + + + + + Ejecuta un método de prueba. + + El método de prueba para ejecutar. + Una matriz de objetos de TestResult que representan los resultados de la prueba. + Extensions can override this method to customize running a TestMethod. + + + + Atributo para inicializar la prueba. + + + + + Atributo de limpieza de la prueba. + + + + + Atributo de omisión. + + + + + Atributo de propiedad de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El nombre. + + + El valor. + + + + + Obtiene el nombre. + + + + + Obtiene el valor. + + + + + Atributo de inicialización de la clase. + + + + + Atributo de limpieza de la clase. + + + + + Atributo de inicialización del ensamblado. + + + + + Atributo de limpieza del ensamblado. + + + + + Propietario de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El propietario. + + + + + Obtiene el propietario. + + + + + Atributo de prioridad. Se usa para especificar la prioridad de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + La prioridad. + + + + + Obtiene la prioridad. + + + + + Descripción de la prueba. + + + + + Inicializa una nueva instancia de la clase para describir una prueba. + + La descripción. + + + + Obtiene la descripción de una prueba. + + + + + URI de estructura de proyectos de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de estructura de proyecto de CSS. + + URI de estructura de proyectos de CSS. + + + + Obtiene el URI de estructura de proyectos de CSS. + + + + + URI de iteración de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de iteración de CSS. + + URI de iteración de CSS. + + + + Obtiene el URI de iteración de CSS. + + + + + Atributo WorkItem. Se usa para especificar un elemento de trabajo asociado a esta prueba. + + + + + Inicializa una nueva instancia de la clase para el atributo WorkItem. + + Identificador de un elemento de trabajo. + + + + Obtiene el identificador de un elemento de trabajo asociado. + + + + + Atributo de tiempo de espera. Se usa para especificar el tiempo de espera de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + Tiempo de espera. + + + + + Inicializa una nueva instancia de la clase con un tiempo de espera preestablecido. + + + Tiempo de espera + + + + + Obtiene el tiempo de espera. + + + + + Objeto TestResult que debe devolverse al adaptador. + + + + + Inicializa una nueva instancia de la clase . + + + + + Obtiene o establece el nombre para mostrar del resultado. Es útil cuando se devuelven varios resultados. + Si es NULL, se utiliza el nombre del método como nombre para mostrar. + + + + + Obtiene o establece el resultado de la ejecución de pruebas. + + + + + Obtiene o establece la excepción que se inicia cuando la prueba da error. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece el seguimiento de depuración que realiza el código de la prueba. + + + + + Gets or sets the debug traces by test code. + + + + + Obtiene o establece la duración de la ejecución de la prueba. + + + + + Obtiene o establece el índice de la fila de datos en el origen de datos. Se establece solo para resultados + de ejecuciones individuales de filas de datos de una prueba controlada por datos. + + + + + Obtiene o establece el valor devuelto del método de prueba. Actualmente es siempre NULL. + + + + + Obtiene o establece los archivos de resultados que adjunta la prueba. + + + + + Especifica la cadena de conexión, el nombre de tabla y el método de acceso a fila para las pruebas controladas por datos. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nombre de proveedor predeterminado del origen de datos. + + + + + Método de acceso a datos predeterminado. + + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos, una cadena de conexión, una tabla de datos y un método de acceso a datos para acceder al origen de datos. + + Nombre invariable del proveedor de datos, como System.Data.SqlClient + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + Especifica el orden de acceso a los datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con una cadena de conexión y un nombre de tabla. + Especifique la cadena de conexión y la tabla de datos para acceder al origen de datos OLEDB. + + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos y una cadena de conexión asociada al nombre del valor de configuración. + + El nombre de un origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + Obtiene un valor que representa el proveedor de datos del origen de datos. + + + Nombre del proveedor de datos. Si no se designó un proveedor de datos al inicializar el objeto, se devolverá el proveedor predeterminado de System.Data.OleDb. + + + + + Obtiene un valor que representa la cadena de conexión para el origen de datos. + + + + + Obtiene un valor que indica el nombre de la tabla que proporciona los datos. + + + + + Obtiene el método usado para tener acceso al origen de datos. + + + + Uno de los . Si no se ha inicializado, devolverá el valor predeterminado . + + + + + Obtiene el nombre del origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + + Atributo para una prueba controlada por datos donde los datos pueden especificarse insertados. + + + + + Busca todas las filas de datos y las ejecuta. + + + El método de prueba. + + + Una matriz de . + + + + + Ejecuta el método de prueba controlada por datos. + + Método de prueba para ejecutar. + Fila de datos. + Resultados de la ejecución. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..2c1d88a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Permet de spécifier l'élément de déploiement (fichier ou répertoire) pour un déploiement par test. + Peut être spécifié sur une classe de test ou une méthode de test. + Peut avoir plusieurs instances de l'attribut pour spécifier plusieurs éléments. + Le chemin de l'élément peut être absolu ou relatif. S'il est relatif, il l'est par rapport à RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Initialise une nouvelle instance de la classe . + + Fichier ou répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + + + + Initialise une nouvelle instance de la classe + + Chemin relatif ou absolu du fichier ou du répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + Chemin du répertoire dans lequel les éléments doivent être copiés. Il peut être absolu ou relatif au répertoire de déploiement. Tous les fichiers et répertoires identifiés par vont être copiés dans ce répertoire. + + + + Obtient le chemin du fichier ou dossier source à copier. + + + + + Obtient le chemin du répertoire dans lequel l'élément est copié. + + + + + Classe TestContext. Cette classe doit être complètement abstraite, et ne doit contenir aucun + membre. L'adaptateur va implémenter les membres. Les utilisateurs du framework ne doivent + y accéder que via une interface bien définie. + + + + + Obtient les propriétés de test d'un test. + + + + + Obtient le nom complet de la classe contenant la méthode de test en cours d'exécution + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtient le nom de la méthode de test en cours d'exécution + + + + + Obtient le résultat de test actuel. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2d63dc0 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod pour exécution. + + + + + Obtient le nom de la méthode de test. + + + + + Obtient le nom de la classe de test. + + + + + Obtient le type de retour de la méthode de test. + + + + + Obtient les paramètres de la méthode de test. + + + + + Obtient le methodInfo de la méthode de test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Appelle la méthode de test. + + + Arguments à passer à la méthode de test. (Exemple : pour un test piloté par les données) + + + Résultat de l'appel de la méthode de test. + + + This call handles asynchronous test methods as well. + + + + + Obtient tous les attributs de la méthode de test. + + + Indique si l'attribut défini dans la classe parente est valide. + + + Tous les attributs. + + + + + Obtient l'attribut du type spécifique. + + System.Attribute type. + + Indique si l'attribut défini dans la classe parente est valide. + + + Attributs du type spécifié. + + + + + Assistance. + + + + + Paramètre de vérification non null. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws argument null exception when parameter is null. + + + + Paramètre de vérification non null ou vide. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws ArgumentException when parameter is null. + + + + Énumération liée à la façon dont nous accédons aux lignes de données dans les tests pilotés par les données. + + + + + Les lignes sont retournées dans un ordre séquentiel. + + + + + Les lignes sont retournées dans un ordre aléatoire. + + + + + Attribut permettant de définir les données inline d'une méthode de test. + + + + + Initialise une nouvelle instance de la classe . + + Objet de données. + + + + Initialise une nouvelle instance de la classe qui accepte un tableau d'arguments. + + Objet de données. + Plus de données. + + + + Obtient les données permettant d'appeler la méthode de test. + + + + + Obtient ou définit le nom d'affichage dans les résultats des tests à des fins de personnalisation. + + + + + Exception d'assertion non concluante. + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Classe InternalTestFailureException. Sert à indiquer l'échec interne d'un cas de test + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + + + + Initialise une nouvelle instance de la classe . + + + + + Attribut indiquant d'attendre une exception du type spécifié + + + + + Initialise une nouvelle instance de la classe avec le type attendu + + Type de l'exception attendue + + + + Initialise une nouvelle instance de la classe avec + le type attendu et le message à inclure quand aucune exception n'est levée par le test. + + Type de l'exception attendue + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient une valeur indiquant le type de l'exception attendue + + + + + Obtient ou définit une valeur indiquant si les types dérivés du type de l'exception attendue peuvent + être éligibles comme prévu + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Vérifie que le type de l'exception levée par le test unitaire est bien attendu + + Exception levée par le test unitaire + + + + Classe de base des attributs qui spécifient d'attendre une exception d'un test unitaire + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception par défaut + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception + + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une + exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message d'absence d'exception par défaut + + Nom du type de l'attribut ExpectedException + Message d'absence d'exception par défaut + + + + Détermine si l'exception est attendue. Si la méthode est retournée, cela + signifie que l'exception est attendue. Si la méthode lève une exception, cela + signifie que l'exception n'est pas attendue, et que le message de l'exception levée + est inclus dans le résultat de test. La classe peut être utilisée par + commodité. Si est utilisé et si l'assertion est un échec, + le résultat de test a la valeur Non concluant. + + Exception levée par le test unitaire + + + + Lève à nouveau l'exception, s'il s'agit de AssertFailedException ou de AssertInconclusiveException + + Exception à lever de nouveau, s'il s'agit d'une exception d'assertion + + + + Cette classe permet à l'utilisateur d'effectuer des tests unitaires pour les types basés sur des types génériques. + GenericParameterHelper répond à certaines contraintes usuelles des types génériques, + exemple : + 1. constructeur par défaut public + 2. implémentation d'une interface commune : IComparable, IEnumerable + + + + + Initialise une nouvelle instance de la classe qui + répond à la contrainte 'newable' dans les génériques C#. + + + This constructor initializes the Data property to a random value. + + + + + Initialise une nouvelle instance de la classe qui + initialise la propriété Data en lui assignant une valeur fournie par l'utilisateur. + + Valeur entière + + + + Obtient ou définit les données + + + + + Compare la valeur de deux objets GenericParameterHelper + + objet à comparer + true si obj a la même valeur que l'objet GenericParameterHelper de 'this'. + sinon false. + + + + Retourne un code de hachage pour cet objet. + + Code de hachage. + + + + Compare les données des deux objets . + + Objet à comparer. + + Nombre signé indiquant les valeurs relatives de cette instance et de cette valeur. + + + Thrown when the object passed in is not an instance of . + + + + + Retourne un objet IEnumerator dont la longueur est dérivée de + la propriété Data. + + Objet IEnumerator + + + + Retourne un objet GenericParameterHelper égal à + l'objet actuel. + + Objet cloné. + + + + Permet aux utilisateurs de journaliser/d'écrire des traces de tests unitaires à des fins de diagnostic. + + + + + Gestionnaire de LogMessage. + + Message à journaliser. + + + + Événement à écouter. Déclenché quand le writer de test unitaire écrit un message. + Sert principalement à être consommé par un adaptateur. + + + + + API à appeler par le writer de test pour journaliser les messages. + + Format de chaîne avec des espaces réservés. + Paramètres des espaces réservés. + + + + Attribut TestCategory utilisé pour spécifier la catégorie d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe et applique la catégorie au test. + + + Catégorie de test. + + + + + Obtient les catégories de test appliquées au test. + + + + + Classe de base de l'attribut "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialise une nouvelle instance de la classe . + Applique la catégorie au test. Les chaînes retournées par TestCategories + sont utilisées avec la commande /category pour filtrer les tests + + + + + Obtient la catégorie de test appliquée au test. + + + + + Classe AssertFailedException. Sert à indiquer l'échec d'un cas de test + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Collection de classes d'assistance permettant de tester diverses conditions dans + des tests unitaires. Si la condition testée n'est pas remplie, une exception + est levée. + + + + + Obtient l'instance singleton de la fonctionnalité Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is true. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null. + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if refers to the same object + as . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is not equal to . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Lève AssertFailedException. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Les surcharges statiques d'equals comparent les instances de deux types pour déterminer si leurs références sont + égales entre elles. Cette méthode ne doit pas être utilisée pour évaluer si deux instances sont + égales entre elles. Cet objet est toujours levé avec Assert.Fail. Utilisez + Assert.AreEqual et les surcharges associées dans vos tests unitaires. + + Objet A + Objet B + False, toujours. + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Remplace les caractères Null ('\0') par "\\0". + + + Chaîne à rechercher. + + + Chaîne convertie où les caractères null sont remplacés par "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Fonction d'assistance qui crée et lève AssertionFailedException + + + nom de l'assertion levant une exception + + + message décrivant les conditions de l'échec d'assertion + + + Paramètres. + + + + + Vérifie la validité des conditions du paramètre + + + Paramètre. + + + Nom de l'assertion. + + + nom du paramètre + + + message d'exception liée à un paramètre non valide + + + Paramètres. + + + + + Convertit en toute sécurité un objet en chaîne, en gérant les valeurs null et les caractères Null. + Les valeurs null sont converties en "(null)". Les caractères Null sont convertis en "\\0". + + + Objet à convertir en chaîne. + + + Chaîne convertie. + + + + + Assertion de chaîne. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if matches . + + + + + Collection de classes d'assistance permettant de tester diverses conditions associées + à des collections dans les tests unitaires. Si la condition testée n'est pas + remplie, une exception est levée. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is found in + . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is not found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if every element in is also found in + . + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Détermine si la première collection est un sous-ensemble de la seconde + collection. Si l'un des deux ensembles contient des éléments dupliqués, le nombre + d'occurrences de l'élément dans le sous-ensemble doit être inférieur ou + égal au nombre d'occurrences dans le sur-ensemble. + + + Collection dans laquelle le test est censé être contenu . + + + Collection que le test est censé contenir . + + + True si est un sous-ensemble de + , sinon false. + + + + + Construit un dictionnaire contenant le nombre d'occurrences de chaque + élément dans la collection spécifiée. + + + Collection à traiter. + + + Nombre d'éléments de valeur null dans la collection. + + + Dictionnaire contenant le nombre d'occurrences de chaque élément + dans la collection spécifiée. + + + + + Recherche un élément incompatible parmi les deux collections. Un élément incompatible + est un élément qui n'apparaît pas avec la même fréquence dans la + collection attendue et dans la collection réelle. Les + collections sont supposées être des références non null distinctes ayant le + même nombre d'éléments. L'appelant est responsable de ce niveau de + vérification. S'il n'existe aucun élément incompatible, la fonction retourne + la valeur false et les paramètres out ne doivent pas être utilisés. + + + Première collection à comparer. + + + Seconde collection à comparer. + + + Nombre attendu d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Nombre réel d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Élément incompatible (pouvant avoir une valeur null), ou valeur null s'il n'existe aucun + élément incompatible. + + + true si un élément incompatible est trouvé ; sinon, false. + + + + + compare les objets via object.Equals + + + + + Classe de base pour les exceptions de framework. + + + + + Initialise une nouvelle instance de la classe . + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées. + + + + + Retourne l'instance ResourceManager mise en cache utilisée par cette classe. + + + + + Remplace la propriété CurrentUICulture du thread actuel pour toutes + les recherches de ressources à l'aide de cette classe de ressource fortement typée. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne Access comporte une syntaxe non valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : La collection attendue contient {1} occurrence(s) de <{2}>. La collection réelle contient {3} occurrence(s). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Un élément dupliqué a été trouvé : <{1}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. La casse est différente pour la valeur réelle : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue non supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1} ({2})>. Réel : <{3} ({4})>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Toute valeur attendue sauf : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Ne passez pas de types valeur à AreSame(). Les valeurs converties en Object ne seront plus jamais les mêmes. Si possible, utilisez AreEqual(). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Échec de {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : async TestMethod utilisé avec UITestMethodAttribute n'est pas pris en charge. Supprimez async ou utilisez TestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections sont vides. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent des éléments identiques. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections Reference pointent vers le même objet Collection. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent les mêmes éléments. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0}({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : (null). + + + + + Recherche une chaîne localisée semblable à celle-ci : (objet). + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne contient pas la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} ({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : Assert.Equals ne doit pas être utilisé pour les assertions. Utilisez Assert.AreEqual et des surcharges à la place. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le nombre d'éléments dans les collections ne correspond pas. Attendu : <{1}>. Réel : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les éléments à l'index {0} ne correspondent pas. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} n'est pas du type attendu. Type attendu : <{2}>. Type réel : <{3}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} est (null). Type attendu : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne se termine pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Argument non valide - EqualsTester ne peut pas utiliser de valeurs null. + + + + + Recherche une chaîne localisée semblable à celle-ci : Impossible de convertir un objet de type {0} en {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'objet interne référencé n'est plus valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La propriété {0} a le type {1} ; type attendu {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} Type attendu : <{1}>. Type réel : <{2}>. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne correspond pas au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Type incorrect : <{1}>. Type réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' correspond au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucun DataRowAttribute spécifié. Au moins un DataRowAttribute est nécessaire avec DataTestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucune exception levée. Exception {1} attendue. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. La valeur ne peut pas être null. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Nombre d'éléments différent. + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le constructeur doté de la signature spécifiée est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le membre spécifié ({0}) est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne commence pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le type de l'exception attendue doit être System.Exception ou un type dérivé de System.Exception. + + + + + Recherche une chaîne localisée semblable à celle-ci : (Échec de la réception du message pour une exception de type {0} en raison d'une exception.). + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé l'exception attendue {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé d'exception. Une exception était attendue par l'attribut {0} défini sur la méthode de test. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} (ou un type dérivé de cette dernière) était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'exception {2} a été levée, mais l'exception {1} était attendue. {0} + Message d'exception : {3} + Arborescence des appels de procédure : {4}. + + + + + résultats du test unitaire + + + + + Le test a été exécuté mais des problèmes se sont produits. + Il peut s'agir de problèmes liés à des exceptions ou des échecs d'assertion. + + + + + Test effectué, mais nous ne pouvons pas dire s'il s'agit d'une réussite ou d'un échec. + Utilisable éventuellement pour les tests abandonnés. + + + + + Le test a été exécuté sans problème. + + + + + Le test est en cours d'exécution. + + + + + Une erreur système s'est produite pendant que nous tentions d'exécuter un test. + + + + + Délai d'expiration du test. + + + + + Test abandonné par l'utilisateur. + + + + + Le test est dans un état inconnu + + + + + Fournit une fonctionnalité d'assistance pour le framework de tests unitaires + + + + + Obtient les messages d'exception, notamment les messages de toutes les exceptions internes + de manière récursive + + Exception pour laquelle les messages sont obtenus + chaîne avec les informations du message d'erreur + + + + Énumération des délais d'expiration, qui peut être utilisée avec la classe . + Le type de l'énumération doit correspondre + + + + + Infini. + + + + + Attribut de la classe de test. + + + + + Obtient un attribut de méthode de test qui permet d'exécuter ce test. + + Instance d'attribut de méthode de test définie sur cette méthode. + Le à utiliser pour exécuter ce test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attribut de la méthode de test. + + + + + Exécute une méthode de test. + + Méthode de test à exécuter. + Tableau d'objets TestResult qui représentent le ou les résultats du test. + Extensions can override this method to customize running a TestMethod. + + + + Attribut d'initialisation du test. + + + + + Attribut de nettoyage du test. + + + + + Attribut ignore. + + + + + Attribut de la propriété de test. + + + + + Initialise une nouvelle instance de la classe . + + + Nom. + + + Valeur. + + + + + Obtient le nom. + + + + + Obtient la valeur. + + + + + Attribut d'initialisation de la classe. + + + + + Attribut de nettoyage de la classe. + + + + + Attribut d'initialisation de l'assembly. + + + + + Attribut de nettoyage de l'assembly. + + + + + Propriétaire du test + + + + + Initialise une nouvelle instance de la classe . + + + Propriétaire. + + + + + Obtient le propriétaire. + + + + + Attribut Priority utilisé pour spécifier la priorité d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Priorité. + + + + + Obtient la priorité. + + + + + Description du test + + + + + Initialise une nouvelle instance de la classe pour décrire un test. + + Description. + + + + Obtient la description d'un test. + + + + + URI de structure de projet CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI de structure de projet CSS. + + URI de structure de projet CSS. + + + + Obtient l'URI de structure de projet CSS. + + + + + URI d'itération CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI d'itération CSS. + + URI d'itération CSS. + + + + Obtient l'URI d'itération CSS. + + + + + Attribut WorkItem permettant de spécifier un élément de travail associé à ce test. + + + + + Initialise une nouvelle instance de la classe pour l'attribut WorkItem. + + ID d'un élément de travail. + + + + Obtient l'ID d'un élément de travail associé. + + + + + Attribut Timeout utilisé pour spécifier le délai d'expiration d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Délai d'expiration. + + + + + Initialise une nouvelle instance de la classe avec un délai d'expiration prédéfini + + + Délai d'expiration + + + + + Obtient le délai d'attente. + + + + + Objet TestResult à retourner à l'adaptateur. + + + + + Initialise une nouvelle instance de la classe . + + + + + Obtient ou définit le nom d'affichage du résultat. Utile pour retourner plusieurs résultats. + En cas de valeur null, le nom de la méthode est utilisé en tant que DisplayName. + + + + + Obtient ou définit le résultat de l'exécution du test. + + + + + Obtient ou définit l'exception levée en cas d'échec du test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit les traces de débogage du code de test. + + + + + Gets or sets the debug traces by test code. + + + + + Obtient ou définit la durée de l'exécution du test. + + + + + Obtient ou définit l'index de ligne de données dans la source de données. Défini uniquement pour les résultats de + l'exécution individuelle de la ligne de données d'un test piloté par les données. + + + + + Obtient ou définit la valeur renvoyée de la méthode de test. (Toujours null). + + + + + Obtient ou définit les fichiers de résultats attachés par le test. + + + + + Spécifie la chaîne de connexion, le nom de la table et la méthode d'accès aux lignes pour les tests pilotés par les données. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nom du fournisseur par défaut de DataSource. + + + + + Méthode d'accès aux données par défaut. + + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données, une chaîne de connexion, une table de données et une méthode d'accès aux données pour accéder à la source de données. + + Nom du fournisseur de données invariant, par exemple System.Data.SqlClient + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + Spécifie l'ordre d'accès aux données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec une chaîne de connexion et un nom de table. + Spécifiez la chaîne de connexion et la table de données permettant d'accéder à la source de données OLEDB. + + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données et une chaîne de connexion associés au nom du paramètre. + + Nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + Obtient une valeur représentant le fournisseur de données de la source de données. + + + Nom du fournisseur de données. Si aucun fournisseur de données n'a été désigné au moment de l'initialisation de l'objet, le fournisseur par défaut de System.Data.OleDb est retourné. + + + + + Obtient une valeur représentant la chaîne de connexion de la source de données. + + + + + Obtient une valeur indiquant le nom de la table qui fournit les données. + + + + + Obtient la méthode utilisée pour accéder à la source de données. + + + + Une des valeurs possibles. Si n'est pas initialisé, ce qui entraîne le retour de la valeur par défaut . + + + + + Obtient le nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + + Attribut du test piloté par les données, où les données peuvent être spécifiées inline. + + + + + Recherche toutes les lignes de données et les exécute. + + + Méthode de test. + + + Tableau des . + + + + + Exécute la méthode de test piloté par les données. + + Méthode de test à exécuter. + Ligne de données. + Résultats de l'exécution. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..45a5e13 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usato per specificare l'elemento di distribuzione (file o directory) per la distribuzione per singolo test. + Può essere specificato in classi o metodi di test. + Può contenere più istanze dell'attributo per specificare più di un elemento. + Il percorso dell'elemento può essere assoluto o relativo; se è relativo, è relativo rispetto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Inizializza una nuova istanza della classe . + + File o directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + + + + Inizializza una nuova istanza della classe + + Percorso relativo o assoluto del file o della directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + Percorso della directory in cui vengono copiati gli elementi. Può essere assoluto o relativo rispetto alla directory di distribuzione. Tutte le directory e tutti i file identificati da verranno copiati in questa directory. + + + + Ottiene il percorso della cartella o del file di origine da copiare. + + + + + Ottiene il percorso della directory in cui viene copiato l'elemento. + + + + + Classe TestContext. Questa classe deve essere completamente astratta e non deve + contenere membri. I membri verranno implementati dall'adattatore. Gli utenti del framework devono + accedere a questa classe solo tramite un'interfaccia correttamente definita. + + + + + Ottiene le proprietà di un test. + + + + + Ottiene il nome completo della classe contenente il metodo di test attualmente in esecuzione + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Ottiene il nome del metodo di test attualmente in esecuzione + + + + + Ottiene il risultato del test corrente. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..d3540c8 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metodo di test per l'esecuzione. + + + + + Ottiene il nome del metodo di test. + + + + + Ottiene il nome della classe di test. + + + + + Ottiene il tipo restituito del metodo di test. + + + + + Ottiene i parametri del metodo di test. + + + + + Ottiene l'oggetto methodInfo per il metodo di test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Richiama il metodo di test. + + + Argomenti da passare al metodo di test, ad esempio per test basati sui dati + + + Risultato della chiamata del metodo di test. + + + This call handles asynchronous test methods as well. + + + + + Ottiene tutti gli attributi del metodo di test. + + + Indica se l'attributo definito nella classe padre è valido. + + + Tutti gli attributi. + + + + + Ottiene l'attributo di tipo specifico. + + System.Attribute type. + + Indica se l'attributo definito nella classe padre è valido. + + + Attributi del tipo specificato. + + + + + Helper. + + + + + Parametro check non Null. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws argument null exception when parameter is null. + + + + Parametro check non Null o vuoto. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws ArgumentException when parameter is null. + + + + Enumerazione relativa alla modalità di accesso alle righe di dati nei test basati sui dati. + + + + + Le righe vengono restituite in ordine sequenziale. + + + + + Le righe vengono restituite in ordine casuale. + + + + + Attributo per definire i dati inline per un metodo di test. + + + + + Inizializza una nuova istanza della classe . + + Oggetto dati. + + + + Inizializza una nuova istanza della classe che accetta una matrice di argomenti. + + Oggetto dati. + Altri dati. + + + + Ottiene i dati per chiamare il metodo di test. + + + + + Ottiene o imposta il nome visualizzato nei risultati del test per la personalizzazione. + + + + + Eccezione senza risultati dell'asserzione. + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Classe InternalTestFailureException. Usata per indicare un errore interno per un test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + + + + Inizializza una nuova istanza della classe . + + + + + Attributo che specifica di presupporre un'eccezione del tipo specificato + + + + + Inizializza una nuova istanza della classe con il tipo previsto + + Tipo dell'eccezione prevista + + + + Inizializza una nuova istanza della classe con + il tipo previsto e il messaggio da includere quando il test non genera alcuna eccezione. + + Tipo dell'eccezione prevista + + Messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene un valore che indica il tipo dell'eccezione prevista + + + + + Ottiene o imposta un valore che indica se consentire a tipi derivati dal tipo dell'eccezione prevista + di qualificarsi come previsto + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Verifica che il tipo dell'eccezione generata dallo unit test sia prevista + + Eccezione generata dallo unit test + + + + Classe di base per attributi che specificano se prevedere che uno unit test restituisca un'eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio per indicare nessuna eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio che indica nessuna eccezione + + + Messaggio da includere nel risultato del test se il test non riesce perché non + viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio predefinito per indicare nessuna eccezione + + Nome del tipo di attributo di ExpectedException + Messaggio predefinito per indicare nessuna eccezione + + + + Determina se l'eccezione è prevista. Se il metodo viene completato, si + presuppone che l'eccezione era prevista. Se il metodo genera un'eccezione, si + presuppone che l'eccezione non era prevista e il messaggio dell'eccezione generata + viene incluso nel risultato del test. Si può usare la classe per + comodità. Se si usa e l'asserzione non riesce, + il risultato del test viene impostato su Senza risultati. + + Eccezione generata dallo unit test + + + + Genera di nuovo l'eccezione se si tratta di un'eccezione AssertFailedException o AssertInconclusiveException + + Eccezione da generare di nuovo se si tratta di un'eccezione di asserzione + + + + Questa classe consente all'utente di eseguire testing unità per tipi che usano tipi generici. + GenericParameterHelper soddisfa alcuni dei vincoli di tipo generici più comuni, + ad esempio: + 1. costruttore predefinito pubblico + 2. implementa l'interfaccia comune: IComparable, IEnumerable + + + + + Inizializza una nuova istanza della classe che + soddisfa il vincolo 'newable' nei generics C#. + + + This constructor initializes the Data property to a random value. + + + + + Inizializza una nuova istanza della classe che + inizializza la proprietà Data con un valore fornito dall'utente. + + Qualsiasi valore Integer + + + + Ottiene o imposta i dati + + + + + Esegue il confronto dei valori di due oggetti GenericParameterHelper + + oggetto con cui eseguire il confronto + true se il valore di obj è uguale a quello dell'oggetto GenericParameterHelper 'this'; + in caso contrario, false. + + + + Restituisce un codice hash per questo oggetto. + + Codice hash. + + + + Confronta i dati dei due oggetti . + + Oggetto con cui eseguire il confronto. + + Numero con segno che indica i valori relativi di questa istanza e di questo valore. + + + Thrown when the object passed in is not an instance of . + + + + + Restituisce un oggetto IEnumerator la cui lunghezza viene derivata dalla + proprietà Data. + + L'oggetto IEnumerator + + + + Restituisce un oggetto GenericParameterHelper uguale a + quello corrente. + + Oggetto clonato. + + + + Consente agli utenti di registrare/scrivere tracce degli unit test per la diagnostica. + + + + + Gestore per LogMessage. + + Messaggio da registrare. + + + + Evento di cui rimanere in ascolto. Generato quando il writer di unit test scrive alcuni messaggi. + Utilizzato principalmente dall'adattatore. + + + + + API del writer di test da chiamare per registrare i messaggi. + + Formato stringa con segnaposto. + Parametri per segnaposto. + + + + Attributo TestCategory; usato per specificare la categoria di uno unit test. + + + + + Inizializza una nuova istanza della classe e applica la categoria al test. + + + Categoria di test. + + + + + Ottiene le categorie di test applicate al test. + + + + + Classe di base per l'attributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inizializza una nuova istanza della classe . + Applica la categoria al test. Le stringhe restituite da TestCategories + vengono usate con il comando /category per filtrare i test + + + + + Ottiene la categoria di test applicata al test. + + + + + Classe AssertFailedException. Usata per indicare un errore per un test case + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Raccolta di classi helper per testare diverse condizioni + negli unit test. Se la condizione da testare non viene soddisfatta, + viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is false. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is true. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null. + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if refers to the same object + as . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is not equal to . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Genera un'eccezione AssertFailedException. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Gli overload di uguaglianza statici vengono usati per confrontare istanze di due tipi e stabilire se + i riferimenti sono uguali. Questo metodo non deve essere usato per il confronto di uguaglianza tra due + istanze. Questo oggetto verrà sempre generato con Assert.Fail. Usare + Assert.AreEqual e gli overload associati negli unit test. + + Oggetto A + Oggetto B + Sempre false. + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Sostituisce caratteri Null ('\0') con "\\0". + + + Stringa da cercare. + + + Stringa convertita con caratteri Null sostituiti da "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funzione helper che crea e genera un'eccezione AssertionFailedException + + + nome dell'asserzione che genera un'eccezione + + + messaggio che descrive le condizioni per l'errore di asserzione + + + Parametri. + + + + + Verifica la validità delle condizioni nel parametro + + + Parametro. + + + Nome dell'asserzione. + + + nome del parametro + + + messaggio per l'eccezione di parametro non valido + + + Parametri. + + + + + Converte in modo sicuro un oggetto in una stringa, gestendo valori e caratteri Null. + I valori Null vengono convertiti in "(null)". I caratteri Null vengono convertiti in "\\0". + + + Oggetto da convertire in una stringa. + + + Stringa convertita. + + + + + Asserzione della stringa. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if matches . + + + + + Raccolta di classi helper per testare diverse condizioni associate + alle raccolte negli unit test. Se la condizione da testare non viene + soddisfatta, viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if every element in is also found in + . + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Determina se la prima raccolta è un subset della seconda raccolta. + Se entrambi i set contengono elementi duplicati, il numero delle + occorrenze dell'elemento nel subset deve essere minore o uguale + a quello delle occorrenze nel superset. + + + Raccolta che il test presuppone debba essere contenuta in . + + + Raccolta che il test presuppone debba contenere . + + + True se è un subset di + ; in caso contrario, false. + + + + + Costruisce un dizionario contenente il numero di occorrenze di ogni + elemento nella raccolta specificata. + + + Raccolta da elaborare. + + + Numero di elementi Null presenti nella raccolta. + + + Dizionario contenente il numero di occorrenze di ogni elemento + nella raccolta specificata. + + + + + Trova un elemento senza corrispondenza tra le due raccolte. Per elemento + senza corrispondenza si intende un elemento che appare nella raccolta prevista + un numero di volte diverso rispetto alla raccolta effettiva. Si presuppone + che le raccolte siano riferimenti non Null diversi con lo stesso + numero di elementi. Il chiamante è responsabile di questo livello di + verifica. Se non ci sono elementi senza corrispondenza, la funzione + restituisce false e i parametri out non devono essere usati. + + + Prima raccolta da confrontare. + + + Seconda raccolta da confrontare. + + + Numero previsto di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Numero effettivo di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Elemento senza corrispondenza (può essere Null) o Null se non ci sono elementi + senza corrispondenza. + + + true se è stato trovato un elemento senza corrispondenza; in caso contrario, false. + + + + + confronta gli oggetti usando object.Equals + + + + + Classe di base per le eccezioni del framework. + + + + + Inizializza una nuova istanza della classe . + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via. + + + + + Restituisce l'istanza di ResourceManager nella cache usata da questa classe. + + + + + Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte + le ricerche di risorse eseguite usando questa classe di risorse fortemente tipizzata. + + + + + Cerca una stringa localizzata simile a La sintassi della stringa di accesso non è valida. + + + + + Cerca una stringa localizzata simile a La raccolta prevista contiene {1} occorrenza/e di <{2}>, mentre quella effettiva ne contiene {3}. {0}. + + + + + Cerca una stringa localizzata simile a È stato trovato un elemento duplicato:<{1}>. {0}. + + + + + Cerca una stringa localizzata simile a Il valore previsto è <{1}>, ma la combinazione di maiuscole/minuscole è diversa per il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza minore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1} ({2})>. Valore effettivo: <{3} ({4})>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza maggiore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È previsto un valore qualsiasi eccetto <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Non passare tipi valore a AreSame(). I valori convertiti in Object non saranno mai uguali. Usare AreEqual(). {0}. + + + + + Cerca una stringa localizzata simile a {0} non riuscita. {1}. + + + + + Cerca una stringa localizzata simile ad async TestMethod con UITestMethodAttribute non supportata. Rimuovere async o usare TestMethodAttribute. + + + + + Cerca una stringa localizzata simile a Le raccolte sono entrambe vuote. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. + + + + + Cerca una stringa localizzata simile a I riferimenti a raccolte puntano entrambi allo stesso oggetto Collection. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. {0}. + + + + + Cerca una stringa localizzata simile a {0}({1}). + + + + + Cerca una stringa localizzata simile a (Null). + + + + + Cerca una stringa localizzata simile a (oggetto). + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non contiene la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a {0} ({1}). + + + + + Cerca una stringa localizzata simile a Per le asserzioni non usare Assert.Equals, ma preferire Assert.AreEqual e gli overload. + + + + + Cerca una stringa localizzata simile a Il numero di elementi nelle raccolte non corrisponde. Valore previsto: <{1}>. Valore effettivo: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {0} non corrisponde. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} non è del tipo previsto. Tipo previsto: <{2}>. Tipo effettivo: <{3}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} è (Null). Tipo previsto: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non termina con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Argomento non valido: EqualsTester non può usare valori Null. + + + + + Cerca una stringa localizzata simile a Non è possibile convertire un oggetto di tipo {0} in {1}. + + + + + Cerca una stringa localizzata simile a L'oggetto interno a cui si fa riferimento non è più valido. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. {1}. + + + + + Cerca una stringa localizzata simile a Il tipo della proprietà {0} è {1}, ma quello previsto è {2}. + + + + + Cerca una stringa localizzata simile a Tipo previsto di {0}: <{1}>. Tipo effettivo: <{2}>. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Tipo errato: <{1}>. Tipo effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Non è stato specificato alcun elemento DataRowAttribute. Con DataTestMethodAttribute è necessario almeno un elemento DataRowAttribute. + + + + + Cerca una stringa localizzata simile a Non è stata generata alcuna eccezione. Era prevista un'eccezione {1}. {0}. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. Il valore non può essere Null. {1}. + + + + + Cerca una stringa localizzata simile a Il numero di elementi è diverso. + + + + + Cerca una stringa localizzata simile a + Il costruttore con la firma specificata non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a + Il membro specificato ({0}) non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non inizia con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Il tipo di eccezione previsto deve essere System.Exception o un tipo derivato da System.Exception. + + + + + Cerca una stringa localizzata simile a Non è stato possibile ottenere il messaggio per un'eccezione di tipo {0} a causa di un'eccezione. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato l'eccezione prevista {0}. {1}. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato un'eccezione. È prevista un'eccezione dall'attributo {0} definito nel metodo di test. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1}. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1} o un tipo derivato da essa. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a È stata generata l'eccezione {2}, ma era prevista un'eccezione {1}. {0} + Messaggio dell'eccezione: {3} + Analisi dello stack: {4}. + + + + + risultati degli unit test + + + + + Il test è stato eseguito, ma si sono verificati errori. + Gli errori possono implicare eccezioni o asserzioni non riuscite. + + + + + Il test è stato completato, ma non è possibile determinare se è stato o meno superato. + Può essere usato per test interrotti. + + + + + Il test è stato eseguito senza problemi. + + + + + Il test è attualmente in corso. + + + + + Si è verificato un errore di sistema durante il tentativo di eseguire un test. + + + + + Timeout del test. + + + + + Il test è stato interrotto dall'utente. + + + + + Il test si trova in uno stato sconosciuto + + + + + Fornisce la funzionalità di helper per il framework degli unit test + + + + + Ottiene i messaggi di eccezione in modo ricorsivo, inclusi quelli relativi a + tutte le eccezioni interne + + Eccezione per cui ottenere i messaggi + stringa con le informazioni sul messaggio di errore + + + + Enumerazione per i timeout, che può essere usata con la classe . + Il tipo dell'enumerazione deve corrispondere + + + + + Valore infinito. + + + + + Attributo della classe di test. + + + + + Ottiene un attributo di metodo di test che consente di eseguire questo test. + + Istanza di attributo del metodo di test definita in questo metodo. + Oggetto da usare per eseguire questo test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attributo del metodo di test. + + + + + Esegue un metodo di test. + + Metodo di test da eseguire. + Matrice di oggetti TestResult che rappresentano il risultato o i risultati del test. + Extensions can override this method to customize running a TestMethod. + + + + Attributo di inizializzazione test. + + + + + Attributo di pulizia dei test. + + + + + Attributo ignore. + + + + + Attributo della proprietà di test. + + + + + Inizializza una nuova istanza della classe . + + + Nome. + + + Valore. + + + + + Ottiene il nome. + + + + + Ottiene il valore. + + + + + Attributo di inizializzazione classi. + + + + + Attributo di pulizia delle classi. + + + + + Attributo di inizializzazione assembly. + + + + + Attributo di pulizia degli assembly. + + + + + Proprietario del test + + + + + Inizializza una nuova istanza della classe . + + + Proprietario. + + + + + Ottiene il proprietario. + + + + + Attributo Priority; usato per specificare la priorità di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Priorità. + + + + + Ottiene la priorità. + + + + + Descrizione del test + + + + + Inizializza una nuova istanza della classe per descrivere un test. + + Descrizione. + + + + Ottiene la descrizione di un test. + + + + + URI della struttura di progetto CSS + + + + + Inizializza una nuova istanza della classe per l'URI della struttura di progetto CSS. + + URI della struttura di progetto CSS. + + + + Ottiene l'URI della struttura di progetto CSS. + + + + + URI dell'iterazione CSS + + + + + Inizializza una nuova istanza della classe per l'URI dell'iterazione CSS. + + URI dell'iterazione CSS. + + + + Ottiene l'URI dell'iterazione CSS. + + + + + Attributo WorkItem; usato per specificare un elemento di lavoro associato a questo test. + + + + + Inizializza una nuova istanza della classe per l'attributo WorkItem. + + ID di un elemento di lavoro. + + + + Ottiene l'ID di un elemento di lavoro associato. + + + + + Attributo Timeout; usato per specificare il timeout di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Timeout. + + + + + Inizializza una nuova istanza della classe con un timeout preimpostato + + + Timeout + + + + + Ottiene il timeout. + + + + + Oggetto TestResult da restituire all'adattatore. + + + + + Inizializza una nuova istanza della classe . + + + + + Ottiene o imposta il nome visualizzato del risultato. Utile quando vengono restituiti più risultati. + Se è Null, come nome visualizzato viene usato il nome del metodo. + + + + + Ottiene o imposta il risultato dell'esecuzione dei test. + + + + + Ottiene o imposta l'eccezione generata quando il test non viene superato. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta le tracce di debug in base al codice del test. + + + + + Gets or sets the debug traces by test code. + + + + + Ottiene o imposta la durata dell'esecuzione dei test. + + + + + Ottiene o imposta l'indice della riga di dati nell'origine dati. Impostare solo per risultati di singole + esecuzioni della riga di dati di un test basato sui dati. + + + + + Ottiene o imposta il valore restituito del metodo di test. Attualmente è sempre Null. + + + + + Ottiene o imposta i file di risultati allegati dal test. + + + + + Specifica la stringa di connessione, il nome tabella e il metodo di accesso alle righe per test basati sui dati. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nome del provider predefinito per DataSource. + + + + + Metodo predefinito di accesso ai dati. + + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati, la stringa di connessione, la tabella dati e il metodo di accesso ai dati per accedere all'origine dati. + + Nome del provider di dati non dipendente da paese/area geografica, ad esempio System.Data.SqlClient + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + Specifica l'ordine per l'accesso ai dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con una stringa di connessione e un nome tabella. + Specificare la stringa di connessione e la tabella dati per accedere all'origine dati OLEDB. + + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati e la stringa di connessione associata al nome dell'impostazione. + + Nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + Ottiene un valore che rappresenta il provider di dati dell'origine dati. + + + Nome del provider di dati. Se non è stato designato un provider di dati durante l'inizializzazione dell'oggetto, verrà restituito il provider predefinito di System.Data.OleDb. + + + + + Ottiene un valore che rappresenta la stringa di connessione per l'origine dati. + + + + + Ottiene un valore che indica il nome della tabella che fornisce i dati. + + + + + Ottiene il metodo usato per accedere all'origine dati. + + + + Uno dei valori di . Se non è inizializzato, restituirà il valore predefinito . + + + + + Ottiene il nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + + Attributo per il test basato sui dati in cui è possibile specificare i dati inline. + + + + + Trova tutte le righe di dati e le esegue. + + + Metodo di test. + + + Matrice di istanze di . + + + + + Esegue il metodo di test basato sui dati. + + Metodo di test da eseguire. + Riga di dati. + Risultati dell'esecuzione. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..c863ca9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + テスト配置ごとに配置項目 (ファイルまたはディレクトリ) を指定するために使用されます。 + テスト クラスまたはテスト メソッドで指定できます。 + 属性に複数のインスタンスを指定して、2 つ以上の項目を指定することができます。 + 項目のパスには絶対パスまたは相対パスを指定できます。相対パスの場合は、RunConfig.RelativePathRoot からの相対パスです。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + クラスの新しいインスタンスを初期化します。 + + 配置するファイルまたはディレクトリ。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + + + + クラスの新しいインスタンスを初期化する + + 配置するファイルまたはディレクトリへの相対パスまたは絶対パス。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + アイテムのコピー先のディレクトリのパス。配置ディレクトリへの絶対パスまたは相対パスのいずれかを指定できます。次で識別されるすべてのファイルとディレクトリは このディレクトリにコピーされます。 + + + + コピーするソース ファイルまたはフォルダーのパスを取得します。 + + + + + 項目のコピー先のディレクトリのパスを取得します。 + + + + + TestContext クラス。このクラスは完全に抽象的でなければならず、かつメンバー + を含んでいてはなりません。アダプターはメンバーを実装します。フレームワーク内のユーザーは + 正しく定義されたインターフェイスを介してのみこのクラスにアクセスする必要があります。 + + + + + テストのテスト プロパティを取得します。 + + + + + 現在実行中のテスト メソッドを含むクラスの完全修飾名を取得する + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 現在実行中のテスト メソッドの名前を取得する + + + + + 現在のテスト成果を取得します。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..922b5b1 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 実行用の TestMethod。 + + + + + テスト メソッドの名前を取得します。 + + + + + テスト クラスの名前を取得します。 + + + + + テスト メソッドの戻り値の型を取得します。 + + + + + テスト メソッドのパラメーターを取得します。 + + + + + テスト メソッドの methodInfo を取得します。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + テスト メソッドを呼び出します。 + + + テスト メソッドに渡す引数。(データ ドリブンの場合など) + + + テスト メソッド呼び出しの結果。 + + + This call handles asynchronous test methods as well. + + + + + テスト メソッドのすべての属性を取得します。 + + + 親クラスで定義されている属性が有効かどうか。 + + + すべての属性。 + + + + + 特定の型の属性を取得します。 + + System.Attribute type. + + 親クラスで定義されている属性が有効かどうか。 + + + 指定した種類の属性。 + + + + + ヘルパー。 + + + + + null でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws argument null exception when parameter is null. + + + + null または空でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws ArgumentException when parameter is null. + + + + データ ドリブン テストのデータ行にアクセスする方法の列挙型。 + + + + + 行は順番に返されます。 + + + + + 行はランダムに返されます。 + + + + + テスト メソッドのインライン データを定義する属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + + + + 引数の配列を受け入れる クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + 追加のデータ。 + + + + テスト メソッドを呼び出すデータを取得します。 + + + + + カスタマイズするために、テスト結果の表示名を取得または設定します。 + + + + + assert inconclusive 例外。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + InternalTestFailureException クラス。テスト ケースの内部エラーを示すために使用されます + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 指定した型の例外を予期するよう指定する属性 + + + + + 予期される型を指定して、 クラスの新しいインスタンスを初期化する + + 予期される例外の型 + + + + 予期される型と、テストで例外がスローされない場合に含めるメッセージとを指定して + クラスの新しいインスタンスを初期化します。 + + 予期される例外の型 + + 例外がスローされなかったことが原因でテストが失敗した場合に、テスト結果に含まれるメッセージ + + + + + 予期される例外の型を示す値を取得する + + + + + 予期される例外の型から派生した型を予期される型として使用できるかどうかを示す値を + 取得または設定する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 単体テストでスローされる例外の型が予期される型であることを検証する + + 単体テストでスローされる例外 + + + + 単体テストからの例外を予期するように指定する属性の基底クラス + + + + + 既定の例外なしメッセージを指定して クラスの新しいインスタンスを初期化する + + + + + 例外なしメッセージを指定して クラスの新しいインスタンスを初期化します + + + 例外がスローされなかったことが原因でテストが失敗した場合に、 + テスト結果に含まれるメッセージ + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 既定の例外なしメッセージを取得する + + ExpectedException 属性の型名 + 既定の例外なしメッセージ + + + + 例外が予期されているかどうかを判断します。メソッドが戻る場合は、 + 例外が予期されていたと解釈されます。メソッドが例外をスローする場合は、 + 例外が予期されていなかったと解釈され、スローされた例外のメッセージが + テスト結果に含められます。便宜上、 クラスを使用できます。 + が使用され、アサーションが失敗すると、 + テスト成果は [結果不確定] に設定されます。 + + 単体テストでスローされる例外 + + + + AssertFailedException または AssertInconclusiveException である場合に、例外を再スローする + + アサーション例外である場合に再スローされる例外 + + + + このクラスは、ジェネリック型を使用する型の単体テストを実行するユーザーを支援するように設計されています。 + GenericParameterHelper は、次のようないくつかの共通ジェネリック型制約を + 満たしています: + 1. パブリックの既定のコンストラクター + 2. 共通インターフェイスを実装します: IComparable、IEnumerable + + + + + C# ジェネリックの 'newable' 制約を満たす + クラスの新しいインスタンスを初期化します。 + + + This constructor initializes the Data property to a random value. + + + + + Data プロパティをユーザー指定の値に初期化する クラスの + 新しいインスタンスを初期化します。 + + 任意の整数値 + + + + データを取得または設定する + + + + + 2 つの GenericParameterHelper オブジェクトの値の比較を実行する + + 次との比較を実行するオブジェクト + オブジェクトの値が 'this' GenericParameterHelper オブジェクトと同じ値である場合は true。 + それ以外の場合は、false。 + + + + このオブジェクトのハッシュコードを返します。 + + ハッシュ コード。 + + + + 2 つの オブジェクトのデータを比較します。 + + 比較対象のオブジェクト。 + + このインスタンスと値の相対値を示す符号付きの数値。 + + + Thrown when the object passed in is not an instance of . + + + + + 長さが Data プロパティから派生している IEnumerator オブジェクト + を返します。 + + IEnumerator オブジェクト + + + + 現在のオブジェクトに相当する GenericParameterHelper + オブジェクトを返します。 + + 複製されたオブジェクト。 + + + + ユーザーが診断用に単体テストからトレースをログ記録/書き込みできるようにします。 + + + + + LogMessage のハンドラー。 + + ログに記録するメッセージ。 + + + + リッスンするイベント。単体テスト ライターがメッセージを書き込むときに発生します。 + 主にアダプターによって消費されます。 + + + + + テスト ライターがメッセージをログ記録するために呼び出す API。 + + プレースホルダーを含む文字列形式。 + プレースホルダーのパラメーター。 + + + + TestCategory 属性。単体テストのカテゴリを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化し、カテゴリをテストに適用します。 + + + テスト カテゴリ。 + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + "Category" 属性の基底クラス + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + クラスの新しいインスタンスを初期化します。 + カテゴリをテストに適用します。TestCategories で返される文字列は + テストをフィルター処理する /category コマンドで使用されます + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + AssertFailedException クラス。テスト ケースのエラーを示すために使用されます + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 単体テスト内のさまざまな条件をテストするヘルパー クラスの + コレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + Assert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is false. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is true. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null. + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not refer to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if refers to the same object + as . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is not equal to . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException をスローします。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + 静的な Equals オーバーロードは、2 つの型のインスタンスを比較して参照の等価性を調べる + ために使用されます。2 つのインスタンスを比較して等価性を調べるためにこのメソッドを使用 + することはできません。このオブジェクトは常に Assert.Fail を使用してスロー + します。単体テストでは、Assert.AreEqual および関連するオーバーロードをご使用ください。 + + オブジェクト A + オブジェクト B + 常に false。 + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + null 文字 ('\0') を "\\0" に置き換えます。 + + + 検索する文字列。 + + + "\\0" で置き換えられた null 文字を含む変換された文字列。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException を作成して、スローするヘルパー関数 + + + 例外をスローするアサーションの名前 + + + アサーション エラーの条件を記述するメッセージ + + + パラメーター。 + + + + + 有効な条件であるかパラメーターを確認します + + + パラメーター。 + + + アサーション名。 + + + パラメーター名 + + + 無効なパラメーター例外のメッセージ + + + パラメーター。 + + + + + 安全にオブジェクトを文字列に変換し、null 値と null 文字を処理します。 + null 値は "(null)" に変換されます。null 文字は "\\0" に変換されます。 + + + 文字列に変換するオブジェクト。 + + + 変換された文字列。 + + + + + 文字列のアサート。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if matches . + + + + + 単体テスト内のコレクションと関連付けられている + さまざまな条件をテストするヘルパー クラスのコレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is found in + . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a two or more equal elements are found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if every element in is also found in + . + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 最初のコレクションが 2 番目のコレクションのサブセットであるかどうかを + 決定します。いずれかのセットに重複する要素が含まれている場合は、 + サブセット内の要素の出現回数は + スーパーセット内の出現回数以下である必要があります。 + + + テストで次に含まれると予期されるコレクション 。 + + + テストで次を含むと予期されるコレクション 。 + + + 次の場合は true 次のサブセットの場合 + 、それ以外の場合は false。 + + + + + 指定したコレクションの各要素の出現回数を含む + 辞書を構築します。 + + + 処理するコレクション。 + + + コレクション内の null 要素の数。 + + + 指定したコレクション内の各要素の + 出現回数を含むディレクトリ。 + + + + + 2 つのコレクション間で一致しない要素を検索します。 + 一致しない要素とは、予期されるコレクションでの出現回数が + 実際のコレクションでの出現回数と異なる要素のことです。 + コレクションは、同じ数の要素を持つ、null ではない + さまざまな参照と見なされます。このレベルの検証を行う責任は + 呼び出し側にあります。一致しない要素がない場合、 + 関数は false を返し、out パラメーターは使用されません。 + + + 比較する最初のコレクション。 + + + 比較する 2 番目のコレクション。 + + + 次の予期される発生回数 + または一致しない要素がない場合は + 0 です。 + + + 次の実際の発生回数 + または一致しない要素がない場合は + 0 です。 + + + 一致しない要素 (null の場合があります)、または一致しない要素がない場合は + null です。 + + + 一致しない要素が見つかった場合は true、それ以外の場合は false。 + + + + + object.Equals を使用してオブジェクトを比較する + + + + + フレームワーク例外の基底クラス。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + ローカライズされた文字列などを検索するための、厳密に型指定されたリソース クラス。 + + + + + このクラスで使用されているキャッシュされた ResourceManager インスタンスを返します。 + + + + + 厳密に型指定されたこのリソース クラスを使用して、現在のスレッドの + CurrentUICulture プロパティをすべてのリソース ルックアップで無視します。 + + + + + "アクセス文字列は無効な構文を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "予期されたコレクションでは、<{2}> が {1} 回発生します。実際のコレクションでは、{3} 回発生します。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "重複する項目が見つかりました:<{1}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要です。実際の値: <{2}> では大文字と小文字が異なります。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> 以内の差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1} ({2})> が必要ですが、<{3} ({4})> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要ですが、<{2}> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> を超える差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> 以外の任意の値が必要ですが、<{2}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "AreSame() に値型を渡すことはできません。オブジェクトに変換された値は同じになりません。AreEqual() を使用することを検討してください。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0} に失敗しました。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "UITestMethodAttribute が指定された非同期の TestMethod はサポートされていません。非同期を削除するか、TestMethodAttribute を使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが空です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションの参照が、同じコレクション オブジェクトにポイントしています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0}({1})" に類似したローカライズされた文字列を検索します。 + + + + + "(null)" に類似したローカライズされた文字列を検索します。 + + + + + Looks up a localized string similar to (object). + + + + + "文字列 '{0}' は文字列 '{1}' を含んでいません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} ({1})" に類似したローカライズされた文字列を検索します。 + + + + + "アサーションには Assert.Equals を使用せずに、Assert.AreEqual とオーバーロードを使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "コレクション内の要素数が一致しません。<{1}> が必要ですが <{2}> が指定されています。{0}。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {0} の要素が一致しません。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は、必要な型ではありません。<{2}> が必要ですが、<{3}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は null です。必要な型:<{2}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は文字列 '{1}' で終わりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "無効な引数 - EqualsTester は null を使用することはできません。" に類似したローカライズされた文字列を検索します。 + + + + + "型 {0} のオブジェクトを {1} に変換できません。" に類似したローカライズされた文字列を検索します。 + + + + + "参照された内部オブジェクトは、現在有効ではありません。" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "プロパティ {0} は型 {1} を含んでいますが、型 {2} が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} には型 <{1}> が必要ですが、型 <{2}> が指定されました。" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は、パターン '{1}' と一致しません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "正しくない型は <{1}> であり、実際の型は <{2}> です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' はパターン '{1}' と一致します。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "DataRowAttribute が指定されていません。DataTestMethodAttribute では少なくとも 1 つの DataRowAttribute が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "例外がスローされませんでした。{1} の例外が予期されていました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。値を null にすることはできません。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "要素数が異なります。" に類似したローカライズされた文字列を検索します。 + + + + + "指定されたシグネチャを使用するコンストラクターが見つかりませんでした。 + プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + PrivateObject のコンストラクターに定義する型を渡す必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + + "指定されたメンバー ({0}) が見つかりませんでした。プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + 定義する型を PrivateObject のコンストラクターに渡す必要があります。" + に類似したローカライズされた文字列を検索します。 + + + + + + "文字列 '{0}' は文字列 '{1}' で始まりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "予期される例外の型は System.Exception または System.Exception の派生型である必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + "(例外が発生したため、型 {0} の例外のメッセージを取得できませんでした。)" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは予期された例外 {0} をスローしませんでした。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは例外をスローしませんでした。テスト メソッドで定義されている属性 {0} で例外が予期されていました。" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} またはその派生型が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "例外 {2} がスローされましたが、例外 {1} が予期されていました。{0} + 例外メッセージ: {3} + スタック トレース: {4}" に類似したローカライズされた文字列を検索します。 + + + + + 単体テストの成果 + + + + + テストを実行しましたが、問題が発生しました。 + 問題には例外または失敗したアサーションが関係している可能性があります。 + + + + + テストが完了しましたが、成功したか失敗したかは不明です。 + 中止したテストに使用される場合があります。 + + + + + 問題なくテストが実行されました。 + + + + + 現在テストを実行しています。 + + + + + テストを実行しようとしているときにシステム エラーが発生しました。 + + + + + テストがタイムアウトしました。 + + + + + ユーザーによってテストが中止されました。 + + + + + テストは不明な状態です + + + + + 単体テストのフレームワークのヘルパー機能を提供する + + + + + すべての内部例外のメッセージなど、例外メッセージを + 再帰的に取得します + + 次のメッセージを取得する例外 + エラー メッセージ情報を含む文字列 + + + + クラスで使用できるタイムアウトの列挙型。 + 列挙型の型は一致している必要があります + + + + + 無限。 + + + + + テスト クラス属性。 + + + + + このテストの実行を可能するテスト メソッド属性を取得します。 + + このメソッドで定義されているテスト メソッド属性インスタンス。 + The 。このテストを実行するために使用されます。 + Extensions can override this method to customize how all methods in a class are run. + + + + テスト メソッド属性。 + + + + + テスト メソッドを実行します。 + + 実行するテスト メソッド。 + テストの結果を表す TestResult オブジェクトの配列。 + Extensions can override this method to customize running a TestMethod. + + + + テスト初期化属性。 + + + + + テスト クリーンアップ属性。 + + + + + Ignore 属性。 + + + + + テストのプロパティ属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 名前。 + + + 値。 + + + + + 名前を取得します。 + + + + + 値を取得します。 + + + + + クラス初期化属性。 + + + + + クラス クリーンアップ属性。 + + + + + アセンブリ初期化属性。 + + + + + アセンブリ クリーンアップ属性。 + + + + + テストの所有者 + + + + + クラスの新しいインスタンスを初期化します。 + + + 所有者。 + + + + + 所有者を取得します。 + + + + + 優先順位属性。単体テストの優先順位を指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 優先順位。 + + + + + 優先順位を取得します。 + + + + + テストの説明 + + + + + テストを記述する クラスの新しいインスタンスを初期化します。 + + 説明。 + + + + テストの説明を取得します。 + + + + + CSS プロジェクト構造の URI + + + + + CSS プロジェクト構造の URI の クラスの新しいインスタンスを初期化します。 + + CSS プロジェクト構造の URI。 + + + + CSS プロジェクト構造の URI を取得します。 + + + + + CSS イテレーション URI + + + + + CSS イテレーション URI の クラスの新しいインスタンスを初期化します。 + + CSS イテレーション URI。 + + + + CSS イテレーション URI を取得します。 + + + + + WorkItem 属性。このテストに関連付けられている作業項目の指定に使用されます。 + + + + + WorkItem 属性の クラスの新しいインスタンスを初期化します。 + + 作業項目に対する ID。 + + + + 関連付けられている作業項目に対する ID を取得します。 + + + + + タイムアウト属性。単体テストのタイムアウトを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + タイムアウト。 + + + + + 事前設定するタイムアウトを指定して クラスの新しいインスタンスを初期化する + + + タイムアウト + + + + + タイムアウトを取得します。 + + + + + アダプターに返される TestResult オブジェクト。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + 結果の表示名を取得または設定します。複数の結果が返される場合に便利です。 + null の場合は、メソッド名が DisplayName として使用されます。 + + + + + テスト実行の成果を取得または設定します。 + + + + + テストが失敗した場合にスローされる例外を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでデバッグ トレースを取得または設定します。 + + + + + Gets or sets the debug traces by test code. + + + + + テスト実行の期間を取得または設定します。 + + + + + データ ソース内のデータ行インデックスを取得または設定します。データ ドリブン テストの一続きのデータ行の + それぞれの結果に対してのみ設定されます。 + + + + + テスト メソッドの戻り値を取得または設定します。(現在は、常に null です)。 + + + + + テストで添付された結果ファイルを取得または設定します。 + + + + + データ ドリブン テストの接続文字列、テーブル名、行アクセス方法を指定します。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource の既定のプロバイダー名。 + + + + + 既定のデータ アクセス方法。 + + + + + クラスの新しいインスタンスを初期化します。このインスタンスは、データ ソースにアクセスするためのデータ プロバイダー、接続文字列、データ テーブル、データ アクセス方法を指定して初期化されます。 + + System.Data.SqlClient などデータ プロバイダーの不変名 + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + データにアクセスする順番をしています。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは接続文字列とテーブル名を指定して初期化されます。 + OLEDB データ ソースにアクセスするには接続文字列とデータ テーブルを指定します。 + + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは設定名に関連付けられているデータ プロバイダーと接続文字列を使用して初期化されます。 + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションにあるデータ ソースの名前。 + + + + データ ソースのデータ プロバイダーを表す値を取得します。 + + + データ プロバイダー名。データ プロバイダーがオブジェクトの初期化時に指定されていなかった場合は、System.Data.OleDb の既定のプロバイダーが返されます。 + + + + + データ ソースの接続文字列を表す値を取得します。 + + + + + データを提供するテーブル名を示す値を取得します。 + + + + + データ ソースへのアクセスに使用するメソッドを取得します。 + + + + 次のいずれか 値。以下の場合 初期化されていない場合は、これは既定値を返します 。 + + + + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションで見つかるデータ ソースの名前を取得します。 + + + + + データをインラインで指定できるデータ ドリブン テストの属性。 + + + + + すべてのデータ行を検索して、実行します。 + + + テスト メソッド。 + + + 次の配列 。 + + + + + データ ドリブン テスト メソッドを実行します。 + + 実行するテスト メソッド。 + データ行. + 実行の結果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..8099563 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 테스트 배포별 배포 항목(파일 또는 디렉터리)을 지정하는 데 사용됩니다. + 테스트 클래스 또는 테스트 메서드에서 지정할 수 있습니다. + 둘 이상의 항목을 지정하기 위한 여러 특성 인스턴스를 가질 수 있습니다. + 항목 경로는 절대 또는 상대 경로일 수 있으며, 상대 경로인 경우 RunConfig.RelativePathRoot가 기준입니다. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리에 대한 상대 또는 절대 경로. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + 항목을 복사할 디렉터리의 경로. 배포 디렉터리에 대한 절대 경로 또는 상대 경로일 수 있습니다.에 의해 식별되는 모든 파일 및 디렉터리는 이 디렉터리에 복사됩니다. + + + + 복사할 소스 파일 또는 폴더의 경로를 가져옵니다. + + + + + 항목을 복사할 디렉터리의 경로를 가져옵니다. + + + + + TestContext 클래스. 이 클래스는 완전히 추상 클래스여야 하며 멤버를 포함할 + 수 없습니다. 어댑터는 멤버를 구현합니다. 프레임워크의 사용자는 + 잘 정의된 인터페이스를 통해서만 여기에 액세스할 수 있습니다. + + + + + 테스트에 대한 테스트 속성을 가져옵니다. + + + + + 현재 실행 중인 테스트 메서드를 포함하는 클래스의 정규화된 이름을 가져옵니다 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 현재 실행 중인 테스트 메서드의 이름을 가져옵니다. + + + + + 현재 테스트 결과를 가져옵니다. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..22e769a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 실행을 위한 TestMethod입니다. + + + + + 테스트 메서드의 이름을 가져옵니다. + + + + + 테스트 클래스의 이름을 가져옵니다. + + + + + 테스트 메서드의 반환 형식을 가져옵니다. + + + + + 테스트 메서드의 매개 변수를 가져옵니다. + + + + + 테스트 메서드에 대한 methodInfo를 가져옵니다. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 테스트 메서드를 호출합니다. + + + 테스트 메서드에 전달할 인수(예: 데이터 기반의 경우) + + + 테스트 메서드 호출의 결과. + + + This call handles asynchronous test methods as well. + + + + + 테스트 메서드의 모든 특성을 가져옵니다. + + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 모든 특성. + + + + + 특정 형식의 특성을 가져옵니다. + + System.Attribute type. + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 지정한 형식의 특성입니다. + + + + + 도우미입니다. + + + + + 검사 매개 변수가 Null이 아닙니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws argument null exception when parameter is null. + + + + 검사 매개 변수가 Null이 아니거나 비어 있습니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws ArgumentException when parameter is null. + + + + 데이터 기반 테스트에서 데이터 행에 액세스하는 방법에 대한 열거형입니다. + + + + + 행이 순차적인 순서로 반환됩니다. + + + + + 행이 임의의 순서로 반환됩니다. + + + + + 테스트 메서드에 대한 인라인 데이터를 정의하는 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + + + + 인수 배열을 사용하는 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + 추가 데이터. + + + + 테스트 메서드 호출을 위한 데이터를 가져옵니다. + + + + + 사용자 지정을 위한 테스트 결과에서 표시 이름을 가져오거나 설정합니다. + + + + + 어설션 불확실 예외입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + InternalTestFailureException 클래스. 테스트 사례에 대한 내부 실패를 나타내는 데 사용됩니다. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 지정된 형식의 예외를 예상하도록 지정하는 특성 + + + + + 예상 형식이 있는 클래스의 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + + + 테스트에서 예외를 throw하지 않을 때 포함할 메시지 및 예상 형식이 있는 클래스의 + 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + 예외를 throw하지 않아 테스트가 실패할 경우 테스트 결과에 포함할 메시지 + + + + + 예상되는 예외의 형식을 나타내는 값을 가져옵니다. + + + + + 예상 예외의 형식에서 파생된 형식이 예상대로 자격을 얻도록 허용할지 여부를 나타내는 값을 가져오거나 + 설정합니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 단위 테스트에 의해 throw되는 예외의 형식이 예상되는지를 확인합니다. + + 단위 테스트에서 throw한 예외 + + + + 단위 테스트에서 예외를 예상하도록 지정하는 특성에 대한 기본 클래스 + + + + + 기본 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + + + 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + 예외를 throw하지 않아서 테스트가 실패할 경우 테스트 결과에 포함할 + 메시지 + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 기본 예외 없음 메시지를 가져옵니다. + + ExpectedException 특성 형식 이름 + 기본 예외 없음 메시지 + + + + 예외가 예상되는지 여부를 확인합니다. 메서드가 반환되면 예외가 + 예상되는 것으로 이해됩니다. 메서드가 예외를 throw하면 예외가 + 예상되지 않는 것으로 이해되고, throw된 예외의 메시지가 + 테스트 결과에 포함됩니다. 클래스는 편의를 위해 사용될 수 + 있습니다. 이(가) 사용되는 경우 어설션에 실패하며, + 테스트 결과가 [결과 불충분]으로 설정됩니다. + + 단위 테스트에서 throw한 예외 + + + + AssertFailedException 또는 AssertInconclusiveException인 경우 예외를 다시 throw합니다. + + 어설션 예외인 경우 예외를 다시 throw + + + + 이 클래스는 제네릭 형식을 사용하는 형식에 대한 사용자의 유닛 테스트를 지원하도록 설계되었습니다. + GenericParameterHelper는 몇 가지 공통된 제네릭 형식 제약 조건을 충족합니다. + 예: + 1. public 기본 생성자 + 2. 공통 인터페이스 구현: IComparable, IEnumerable + + + + + C# 제네릭의 '새로 입력할 수 있는' 제약 조건을 충족하는 클래스의 + 새 인스턴스를 초기화합니다. + + + This constructor initializes the Data property to a random value. + + + + + 데이터 속성을 사용자가 제공한 값으로 초기화하는 클래스의 + 새 인스턴스를 초기화합니다. + + 임의의 정수 값 + + + + 데이터를 가져오거나 설정합니다. + + + + + 두 GenericParameterHelper 개체의 값을 비교합니다. + + 비교할 개체 + 개체의 값이 '이' GenericParameterHelper 개체와 동일한 경우에는 true이고, + 동일하지 않은 경우에는 false입니다. + + + + 이 개체의 해시 코드를 반환합니다. + + 해시 코드입니다. + + + + 두 개체의 데이터를 비교합니다. + + 비교할 개체입니다. + + 이 인스턴스 및 값의 상대 값을 나타내는 부호 있는 숫자입니다. + + + Thrown when the object passed in is not an instance of . + + + + + 길이가 데이터 속성에서 파생된 IEnumerator 개체를 + 반환합니다. + + IEnumerator 개체 + + + + 현재 개체와 동일한 GenericParameterHelper 개체를 + 반환합니다. + + 복제된 개체입니다. + + + + 사용자가 진단을 위해 단위 테스트에서 추적을 로그하거나 쓸 수 있습니다. + + + + + LogMessage용 처리기입니다. + + 로깅할 메시지. + + + + 수신할 이벤트입니다. 단위 테스트 기록기에서 메시지를 기록할 때 발생합니다. + 주로 어댑터에서 사용합니다. + + + + + 메시지를 로그하기 위해 테스트 작성자가 호출하는 API입니다. + + 자리 표시자가 있는 문자열 형식. + 자리 표시자에 대한 매개 변수. + + + + TestCategory 특성 - 단위 테스트의 범주 지정에 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화하고 범주를 테스트에 적용합니다. + + + 테스트 범주. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + "Category" 특성을 위한 기본 클래스 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 클래스의 새 인스턴스를 초기화합니다. + 범주를 테스트에 적용합니다. TestCategories에 의해 반환된 문자열은 + 테스트 필터링을 위한 /category 명령과 함께 사용됩니다. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + AssertFailedException 클래스 - 테스트 사례에 대한 실패를 나타내는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 단위 테스트 내에서 다양한 조건을 테스트하기 위한 도우미 + 클래스의 컬렉션입니다. 테스트 중인 조건이 충족되지 않으면 예외가 + throw됩니다. + + + + + Assert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is false. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is true. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null. + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not refer to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if refers to the same object + as . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is not equal to . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException을 throw합니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + 참조 같음에 대해 두 형식의 인스턴스를 비교하는 데 정적 equals 오버로드가 + 사용됩니다. 이 메서드는 같음에 대해 두 인스턴스를 비교하는 데 사용되지 않습니다. + 이 개체는 항상 Assert.Fail과 함께 throw됩니다. 단위 테스트에서 + Assert.AreEqual 및 관련 오버로드를 사용하세요. + + 개체 A + 개체 B + 항상 False. + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + Null 문자('\0')를 "\\0"으로 바꿉니다. + + + 검색할 문자열. + + + Null 문자가 "\\0"으로 교체된 변환된 문자열. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException을 만들고 throw하는 도우미 함수 + + + 예외를 throw하는 어설션의 이름 + + + 어설션 실패에 대한 조건을 설명하는 메시지 + + + 매개 변수. + + + + + 유효한 조건의 매개 변수를 확인합니다. + + + 매개 변수. + + + 어셜선 이름. + + + 매개 변수 이름 + + + 잘못된 매개 변수 예외에 대한 메시지 + + + 매개 변수. + + + + + 개체를 문자열로 안전하게 변환하고, Null 값 및 Null 문자를 처리합니다. + Null 값은 "(null)"로 변환됩니다. Null 문자는 "\\0"으로 변환됩니다. + + + 문자열로 변환될 개체. + + + 변환된 문자열. + + + + + 문자열 어셜션입니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if matches . + + + + + 단위 테스트 내에서 컬렉션과 연결된 다양한 조건을 테스트하기 + 위한 도우미 클래스의 컬렉션. 테스트 중인 조건이 충족되지 않으면 + 예외가 throw됩니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is found in + . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a two or more equal elements are found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지입니다.. + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 모든 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if every element in is also found in + . + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 첫 번째 컬렉션이 두 번째 컬렉션의 하위 집합인지를 + 확인합니다. 한 집합에 중복된 요소가 포함된 경우, 하위 집합에 있는 요소의 + 발생 횟수는 상위 집합에 있는 발생 횟수와 같거나 + 작아야 합니다. + + + 테스트가 다음에 포함될 것으로 예상하는 컬렉션: . + + + 테스트가 다음을 포함할 것으로 예상하는 컬렉션: . + + + 다음의 경우 True 이(가) + 의 하위 집합인 경우 참, 나머지 경우는 거짓. + + + + + 지정된 컬렉션에서 각 요소의 발생 횟수를 포함하는 + 사전을 생성합니다. + + + 처리할 컬렉션. + + + 컬렉션에 있는 null 요소의 수. + + + 지정된 컬렉션에 있는 각 요소의 발생 횟수를 포함하는 + 딕셔너리. + + + + + 두 컬렉션 간의 불일치 요소를 찾습니다. 불일치 요소란 + 예상 컬렉션에 나타나는 횟수가 실제 컬렉션에 + 나타나는 횟수와 다른 요소를 말합니다. 컬렉션은 + 같은 수의 요소가 있는 Null이 아닌 다른 참조로 + 간주됩니다. 이 수준에서의 확인 작업은 호출자의 + 책임입니다. 불일치 요소가 없으면 함수는 false를 + 반환하고 출력 매개 변수가 사용되지 않습니다. + + + 비교할 첫 번째 컬렉션. + + + 비교할 두 번째 컬렉션. + + + 다음의 예상 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 다음의 실제 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 불일치 요소(null일 수 있음) 또는 불일치 요소가 없는 경우 + null. + + + 불일치 요소가 발견되면 참, 발견되지 않으면 거짓. + + + + + object.Equals를 사용하여 개체 비교합니다. + + + + + 프레임워크 예외에 대한 기본 클래스입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + + + + + 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + + + + + 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 + 대한 현재 스레드의 CurrentUICulture 속성을 재정의합니다. + + + + + [액세스 문자열의 구문이 잘못되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 컬렉션에 <{2}>은(는) {1}개가 포함되어야 하는데 실제 컬렉션에는 {3}개가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [중복된 항목이 있습니다. <{1}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 대/소문자가 다른 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 크지 않아야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}({2})>. 실제 값: <{3}({4})>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 커야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>을(를) 제외한 모든 값. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [AreSame()에 값 형식을 전달하면 안 됩니다. Object로 변환된 값은 동일한 값으로 간주되지 않습니다. AreEqual()을 사용해 보세요. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}이(가) 실패했습니다. {1}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [async TestMethod with UITestMethodAttribute는 지원되지 않습니다. async를 제거하거나 TestMethodAttribute를 사용하세요.]와 유사한 지역화된 문자열 조회합니다. + + + + + [두 컬렉션이 모두 비어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션 참조가 동일한 컬렉션 개체를 가리킵니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [(null)]과 유사한 지역화된 문자열을 조회합니다. + + + + + Looks up a localized string similar to (object). + + + + + ['{0}' 문자열이 '{1}' 문자열을 포함하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [어설션에 Assert.Equals를 사용할 수 없습니다. 대신 Assert.AreEqual 및 오버로드를 사용하세요.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [컬렉션의 요소 수가 일치하지 않습니다. 예상 값: <{1}>. 실제 값: <{2}>.{0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {0}에 있는 요소가 일치하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소는 예상 형식이 아닙니다. 예상 형식: <{2}>. 실제 형식: <{3}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소가 (null)입니다. 예상 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 문자열로 끝나지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 인수 - EqualsTester에는 Null을 사용할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 형식의 개체를 {1} 형식의 개체로 변환할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [참조된 내부 개체가 더 이상 유효하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. {1}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 속성의 형식은 {2}이어야 하는데 실제로는 {1}입니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 예상 형식: <{1}>. 실제 형식: <{2}>.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 형식: <{1}>. 실제 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치합니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [DataRowAttribute가 지정되지 않았습니다. DataTestMethodAttribute에는 하나 이상의 DataRowAttribute가 필요합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 예외가 throw되지 않았습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. 이 값은 Null일 수 없습니다. {1}.](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [요소 수가 다릅니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 시그니처를 가진 생성자를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 멤버({0})를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + ['{0}' 문자열이 '{1}' 문자열로 시작되지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 예외 형식은 System.Exception이거나 System.Exception에서 파생된 형식이어야 합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [(예외로 인해 {0} 형식의 예외에 대한 메시지를 가져오지 못했습니다.)]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외 {0}을(를) throw하지 않았습니다. {1}](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외를 throw하지 않았습니다. 예외는 테스트 메서드에 정의된 {0} 특성에 의해 예상되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외를 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외 또는 해당 예외에서 파생된 형식을 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 {2} 예외를 throw했습니다. {0} + 예외 메시지: {3} + 스택 추적: {4}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + 단위 테스트 결과 + + + + + 테스트가 실행되었지만 문제가 있습니다. + 예외 또는 실패한 어설션과 관련된 문제일 수 있습니다. + + + + + 테스트가 완료되었지만, 성공인지 실패인지를 알 수 없습니다. + 중단된 테스트에 사용된 것일 수 있습니다. + + + + + 아무 문제 없이 테스트가 실행되었습니다. + + + + + 테스트가 현재 실행 중입니다. + + + + + 테스트를 실행하려고 시도하는 동안 시스템 오류가 발생했습니다. + + + + + 테스트가 시간 초과되었습니다. + + + + + 테스트가 사용자에 의해 중단되었습니다. + + + + + 테스트의 상태를 알 수 없습니다. + + + + + 단위 테스트 프레임워크에 대한 도우미 기능을 제공합니다. + + + + + 재귀적으로 모든 내부 예외에 대한 메시지를 포함하여 예외 메시지를 + 가져옵니다. + + 오류 메시지 정보가 포함된 + 문자열에 대한 메시지 가져오기의 예외 + + + + 클래스와 함께 사용할 수 있는 시간 제한에 대한 열거형입니다. + 열거형의 형식은 일치해야 합니다. + + + + + 무제한입니다. + + + + + 테스트 클래스 특성입니다. + + + + + 이 테스트를 실행할 수 있는 테스트 메서드 특성을 가져옵니다. + + 이 메서드에 정의된 테스트 메서드 특성 인스턴스입니다. + 이 테스트를 실행하는 데 사용됩니다. + Extensions can override this method to customize how all methods in a class are run. + + + + 테스트 메서드 특성입니다. + + + + + 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드입니다. + 테스트 결과를 나타내는 TestResult 개체의 배열입니다. + Extensions can override this method to customize running a TestMethod. + + + + 테스트 초기화 특성입니다. + + + + + 테스트 정리 특성입니다. + + + + + 무시 특성입니다. + + + + + 테스트 속성 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 이름. + + + 값. + + + + + 이름을 가져옵니다. + + + + + 값을 가져옵니다. + + + + + 클래스 초기화 특성입니다. + + + + + 클래스 정리 특성입니다. + + + + + 어셈블리 초기화 특성입니다. + + + + + 어셈블리 정리 특성입니다. + + + + + 테스트 소유자 + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 소유자. + + + + + 소유자를 가져옵니다. + + + + + Priority 특성 - 단위 테스트의 우선 순위를 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 우선 순위. + + + + + 우선 순위를 가져옵니다. + + + + + 테스트의 설명 + + + + + 테스트를 설명하는 클래스의 새 인스턴스를 초기화합니다. + + 설명입니다. + + + + 테스트의 설명을 가져옵니다. + + + + + CSS 프로젝트 구조 URI + + + + + CSS 프로젝트 구조 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 프로젝트 구조 URI입니다. + + + + CSS 프로젝트 구조 URI를 가져옵니다. + + + + + CSS 반복 URI + + + + + CSS 반복 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 반복 URI입니다. + + + + CSS 반복 URI를 가져옵니다. + + + + + WorkItem 특성 - 이 테스트와 연결된 작업 항목을 지정하는 데 사용됩니다. + + + + + WorkItem 특성에 대한 클래스의 새 인스턴스를 초기화합니다. + + 작업 항목에 대한 ID입니다. + + + + 연결된 작업 항목에 대한 ID를 가져옵니다. + + + + + Timeout 특성 - 단위 테스트의 시간 제한을 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한. + + + + + 미리 설정된 시간 제한이 있는 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한 + + + + + 시간 제한을 가져옵니다. + + + + + 어댑터에 반환할 TestResult 개체입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 결과의 표시 이름을 가져오거나 설정합니다. 여러 결과를 반환할 때 유용합니다. + Null인 경우 메서드 이름은 DisplayName으로 사용됩니다. + + + + + 테스트 실행의 결과를 가져오거나 설정합니다. + + + + + 테스트 실패 시 throw할 예외를 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에 의한 디버그 추적을 가져오거나 설정합니다. + + + + + Gets or sets the debug traces by test code. + + + + + 테스트 실행의 지속 시간을 가져오거나 설정합니다. + + + + + 데이터 소스에서 데이터 행 인덱스를 가져오거나 설정합니다. 데이터 기반 테스트에서 + 개별 데이터 행 실행의 결과에 대해서만 설정합니다. + + + + + 테스트 메서드의 반환 값을 가져오거나 설정합니다(현재 항상 Null). + + + + + 테스트로 첨부한 결과 파일을 가져오거나 설정합니다. + + + + + 데이터 기반 테스트에 대한 연결 문자열, 테이블 이름 및 행 액세스 방법을 지정합니다. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource의 기본 공급자 이름입니다. + + + + + 기본 데이터 액세스 방법입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 데이터 소스에 액세스할 데이터 공급자, 연결 문자열, 데이터 테이블 및 데이터 액세스 방법으로 초기화됩니다. + + 고정 데이터 공급자 이름(예: System.Data.SqlClient) + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + 데이터에 액세스할 순서를 지정합니다. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 연결 문자열 및 테이블 이름으로 초기화됩니다. + OLEDB 데이터 소스에 액세스하기 위한 연결 문자열 및 데이터 테이블을 지정하세요. + + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 설정 이름과 연결된 연결 문자열 및 데이터 공급자로 초기화됩니다. + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에 있는 데이터 소스의 이름. + + + + 데이터 소스의 데이터 공급자를 나타내는 값을 가져옵니다. + + + 데이터 공급자 이름. 데이터 공급자를 개체 초기화에서 지정하지 않은 경우 System.Data.OleDb의 기본 공급자가 반환됩니다. + + + + + 데이터 소스의 연결 문자열을 나타내는 값을 가져옵니다. + + + + + 데이터를 제공하는 테이블 이름을 나타내는 값을 가져옵니다. + + + + + 데이터 소스에 액세스하는 데 사용되는 메서드를 가져옵니다. + + + + 값 중 하나입니다. 이(가) 초기화되지 않은 경우 다음 기본값이 반환됩니다. . + + + + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에서 찾은 데이터 소스의 이름을 가져옵니다. + + + + + 데이터를 인라인으로 지정할 수 있는 데이터 기반 테스트의 특성입니다. + + + + + 모든 데이터 행을 찾고 실행합니다. + + + 테스트 메서드. + + + 배열 . + + + + + 데이터 기반 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드. + 데이터 행. + 실행 결과. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..d507bf2 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Służy do określenia elementu wdrożenia (pliku lub katalogu) dla wdrożenia testowego. + Może być określony w klasie testowej lub metodzie testowej. + Może mieć wiele wystąpień atrybutu w celu określenia więcej niż jednego elementu. + Ścieżka elementu może być bezwzględna lub względna. Jeśli jest względna, jest określana względem elementu RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Inicjuje nowe wystąpienie klasy . + + Plik lub katalog do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + + + + Inicjuje nowe wystąpienie klasy + + Względna lub bezwzględna ścieżka do pliku lub katalogu do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + Ścieżka katalogu, do którego mają być kopiowane elementy. Może być bezwzględna lub określana względem katalogu wdrażania. Wszystkie pliki i katalogi określone przez zostaną skopiowane do tego katalogu. + + + + Pobiera ścieżkę źródłowego pliku lub folderu do skopiowania. + + + + + Pobiera ścieżkę katalogu, do którego element jest kopiowany. + + + + + Klasa TestContext. Ta klasa powinna być w pełni abstrakcyjna i nie może zawierać żadnych + elementów członkowskich. Adapter zaimplementuje elementy członkowskie. Użytkownicy platformy powinni + uzyskiwać dostęp do tego elementu tylko za pośrednictwem prawidłowo zdefiniowanego interfejsu. + + + + + Pobiera właściwości testu. + + + + + Pobiera w pełni kwalifikowaną nazwę klasy zawierającej aktualnie wykonywaną metodę testową + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Pobiera nazwę aktualnie wykonywanej metody testowej + + + + + Pobiera wynik bieżącego testu. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5593384 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metoda TestMethod do wykonania. + + + + + Pobiera nazwę metody testowej. + + + + + Pobiera nazwę klasy testowej. + + + + + Pobiera zwracany typ metody testowej. + + + + + Pobiera parametry metody testowej. + + + + + Pobiera element methodInfo dla metody testowej. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Wywołuje metodę testową. + + + Argumenty przekazywane do metody testowej (np. w przypadku opartej na danych) + + + Wynik wywołania metody testowej. + + + This call handles asynchronous test methods as well. + + + + + Pobierz wszystkie atrybuty metody testowej. + + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Wszystkie atrybuty. + + + + + Pobierz atrybut określonego typu. + + System.Attribute type. + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Atrybuty określonego typu. + + + + + Element pomocniczy. + + + + + Sprawdzany parametr nie ma wartości null. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws argument null exception when parameter is null. + + + + Sprawdzany parametr nie ma wartości null i nie jest pusty. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws ArgumentException when parameter is null. + + + + Wyliczenie dotyczące sposobu dostępu do wierszy danych w teście opartym na danych. + + + + + Wiersze są zwracane po kolei. + + + + + Wiersze są zwracane w kolejności losowej. + + + + + Atrybut do definiowania danych wbudowanych dla metody testowej. + + + + + Inicjuje nowe wystąpienie klasy . + + Obiekt danych. + + + + Inicjuje nowe wystąpienie klasy , które pobiera tablicę argumentów. + + Obiekt danych. + Więcej danych. + + + + Pobiera dane do wywoływania metody testowej. + + + + + Pobiera lub ustawia nazwę wyświetlaną w wynikach testu do dostosowania. + + + + + Wyjątek niejednoznacznej asercji. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Klasa InternalTestFailureException. Używana do określenia wewnętrznego błędu przypadku testowego + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Atrybut określający, że jest oczekiwany wyjątek określonego typu + + + + + Inicjuje nowe wystąpienie klasy z oczekiwanym typem + + Typ oczekiwanego wyjątku + + + + Inicjuje nowe wystąpienie klasy z + oczekiwanym typem i komunikatem do uwzględnienia, gdy test nie zgłasza żadnego wyjątku. + + Typ oczekiwanego wyjątku + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ nie zostanie zgłoszony wyjątek + + + + + Pobiera wartość wskazującą typ oczekiwanego wyjątku + + + + + Pobiera lub ustawia wartość wskazującą, czy typy pochodne typu oczekiwanego wyjątku + są traktowane jako oczekiwane + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Weryfikuje, czy typ wyjątku zgłoszonego przez test jednostkowy jest oczekiwany + + Wyjątek zgłoszony przez test jednostkowy + + + + Klasa podstawowa dla atrybutów, które określają, że jest oczekiwany wyjątek z testu jednostkowego + + + + + Inicjuje nowe wystąpienie klasy z domyślnym komunikatem o braku wyjątku + + + + + Inicjuje nowe wystąpienie klasy z komunikatem o braku wyjątku + + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ + nie zostanie zgłoszony wyjątek + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera domyślny komunikat bez wyjątku + + Nazwa typu atrybutu ExpectedException + Domyślny komunikat bez wyjątku + + + + Określa, czy wyjątek jest oczekiwany. Jeśli wykonanie metody zakończy się normalnie, oznacza to, + że wyjątek był oczekiwany. Jeśli metoda zgłosi wyjątek, oznacza to, + że wyjątek nie był oczekiwany, a komunikat zgłoszonego wyjątku + jest dołączony do wyniku testu. Klasy można użyć dla + wygody. Jeśli zostanie użyta klasa i asercja nie powiedzie się, + wynik testu zostanie ustawiony jako Niejednoznaczny. + + Wyjątek zgłoszony przez test jednostkowy + + + + Zgłoś ponownie wyjątek, jeśli jest to wyjątek AssertFailedException lub AssertInconclusiveException + + Wyjątek do ponownego zgłoszenia, jeśli jest to wyjątek asercji + + + + Ta klasa jest zaprojektowana w taki sposób, aby pomóc użytkownikowi wykonującemu testy jednostkowe dla typów używających typów ogólnych. + Element GenericParameterHelper zachowuje niektóre typowe ograniczenia typów ogólnych, + takie jak: + 1. publiczny konstruktor domyślny + 2. implementuje wspólny interfejs: IComparable, IEnumerable + + + + + Inicjuje nowe wystąpienie klasy , które + spełnia ograniczenie „newable” w typach ogólnych języka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicjuje nowe wystąpienie klasy , które + inicjuje właściwość Data wartością dostarczoną przez użytkownika. + + Dowolna liczba całkowita + + + + Pobiera lub ustawia element Data + + + + + Wykonuje porównanie wartości dwóch obiektów GenericParameterHelper + + obiekt, z którym ma zostać wykonane porównanie + Wartość true, jeśli obiekt ma tę samą wartość co obiekt „this” typu GenericParameterHelper. + W przeciwnym razie wartość false. + + + + Zwraca wartość skrótu tego obiektu. + + Kod skrótu. + + + + Porównuje dane dwóch obiektów . + + Obiekt do porównania. + + Liczba ze znakiem, która wskazuje wartości względne tego wystąpienia i wartości. + + + Thrown when the object passed in is not an instance of . + + + + + Zwraca obiekt IEnumerator, którego długość jest określona na podstawie + właściwości Data. + + Obiekt IEnumerator + + + + Zwraca obiekt GenericParameterHelper równy + bieżącemu obiektowi. + + Sklonowany obiekt. + + + + Umożliwia użytkownikom rejestrowanie/zapisywanie śladów z testów jednostek w celach diagnostycznych. + + + + + Procedura obsługi elementu LogMessage. + + Komunikat do zarejestrowania. + + + + Zdarzenie, które ma być nasłuchiwane. Zgłaszane, gdy składnik zapisywania testu jednostkowego zapisze jakiś komunikat. + Zwykle zużywane przez adapter. + + + + + Interfejs API składnika zapisywania testu do wywołania na potrzeby rejestrowania komunikatów. + + Format ciągu z symbolami zastępczymi. + Parametry dla symboli zastępczych. + + + + Atrybut TestCategory używany do określenia kategorii testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy i stosuje kategorię do testu. + + + Kategoria testu. + + + + + Pobiera kategorie testu, które zostały zastosowane do testu. + + + + + Klasa podstawowa atrybutu „Category” + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicjuje nowe wystąpienie klasy . + Stosuje kategorię do testu. Ciągi zwrócone przez element TestCategories + są używane w poleceniu /category do filtrowania testów + + + + + Pobiera kategorię testu, która została zastosowana do testu. + + + + + Klasa AssertFailedException. Używana do wskazania niepowodzenia przypadku testowego + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków w ramach + testów jednostkowych. Jeśli testowany warunek nie zostanie spełniony, zostanie zgłoszony + wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is true. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null. + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Zgłasza wyjątek AssertFailedException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Statyczne przeciążenia metody equals są używane do porównywania wystąpień dwóch typów pod kątem + równości odwołań. Ta metoda nie powinna być używana do porównywania dwóch wystąpień pod kątem + równości. Ten obiekt zawsze będzie zgłaszał wyjątek za pomocą metody Assert.Fail. Użyj metody + Assert.AreEqual i skojarzonych przeciążeń w testach jednostkowych. + + Obiekt A + Obiekt B + Zawsze wartość false. + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Zastępuje znaki null („\0”) ciągiem „\\0”. + + + Ciąg do wyszukania. + + + Przekonwertowany ciąg ze znakami null zastąpionymi ciągiem „\\0”. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funkcja pomocnicza, która tworzy i zgłasza wyjątek AssertionFailedException + + + nazwa asercji zgłaszającej wyjątek + + + komunikat opisujący warunki dla błędu asercji + + + Parametry. + + + + + Sprawdza parametry pod kątem prawidłowych warunków + + + Parametr. + + + Nazwa asercji. + + + nazwa parametru + + + komunikat dla wyjątku nieprawidłowego parametru + + + Parametry. + + + + + Bezpiecznie konwertuje obiekt na ciąg, obsługując wartości null i znaki null. + Wartości null są konwertowane na ciąg „(null)”. Znaki null są konwertowane na ciąg „\\0”. + + + Obiekt do przekonwertowania na ciąg. + + + Przekonwertowany ciąg. + + + + + Asercja ciągu. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if matches . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków skojarzonych + z kolekcjami w ramach testów jednostkowych. Jeśli testowany warunek + nie jest spełniony, zostanie zgłoszony wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is not found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if every element in is also found in + . + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Określa, czy pierwsza kolekcja jest podzbiorem drugiej kolekcji. + Jeśli któryś zbiór zawiera zduplikowane elementy, liczba wystąpień + elementu w podzbiorze musi być mniejsza lub równa liczbie + wystąpień w nadzbiorze. + + + Kolekcja, co do której test oczekuje, że powinna być zawarta w . + + + Kolekcja, co do której test oczekuje, że powinna zawierać . + + + Wartość true, jeśli jest podzbiorem kolekcji + , w przeciwnym razie wartość false. + + + + + Tworzy słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + Kolekcja do przetworzenia. + + + Liczba elementów o wartości null w kolekcji. + + + Słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + + + Znajduje niezgodny element w dwóch kolekcjach. Niezgodny + element to ten, którego liczba wystąpień w oczekiwanej kolekcji + jest inna niż w rzeczywistej kolekcji. Kolekcje + są uznawane za różne odwołania o wartości innej niż null z tą samą + liczbą elementów. Obiekt wywołujący jest odpowiedzialny za ten poziom weryfikacji. + Jeśli nie ma żadnego niezgodnego elementu, funkcja zwraca wynik + false i parametry wyjściowe nie powinny być używane. + + + Pierwsza kolekcja do porównania. + + + Druga kolekcja do porównania. + + + Oczekiwana liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Rzeczywista liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Niezgodny element (może mieć wartość null) lub wartość null, jeśli + nie ma żadnego niezgodnego elementu. + + + wartość true, jeśli znaleziono niezgodny element; w przeciwnym razie wartość false. + + + + + porównuje obiekty przy użyciu funkcji object.Equals + + + + + Klasa podstawowa dla wyjątków struktury. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Silnie typizowana klasa zasobów do wyszukiwania zlokalizowanych ciągów itp. + + + + + Zwraca buforowane wystąpienie ResourceManager używane przez tę klasę. + + + + + Przesłania właściwość CurrentUICulture bieżącego wątku dla wszystkich + przypadków przeszukiwania zasobów za pomocą tej silnie typizowanej klasy zasobów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg dostępu ma nieprawidłową składnię. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana kolekcja zawiera następującą liczbę wystąpień elementu <{2}>: {1}. Rzeczywista kolekcja zawiera następującą liczbę wystąpień: {3}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Znaleziono zduplikowany element: <{1}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano: <{1}>. Przypadek jest inny w wartości rzeczywistej: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy nie większej niż <{3}> między oczekiwaną wartością <{1}> i wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1} ({2})>. Rzeczywista wartość: <{3} ({4})>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1}>. Rzeczywista wartość: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy większej niż <{3}> między oczekiwaną wartością <{1}> a wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano dowolnej wartości z wyjątkiem: <{1}>. Wartość rzeczywista: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie przekazuj typów wartości do metody AreSame(). Wartości przekonwertowane na typ Object nigdy nie będą takie same. Rozważ użycie metody AreEqual(). {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} — niepowodzenie. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do asynchronicznej metody TestMethod z elementem UITestMethodAttribute, które nie są obsługiwane. Usuń element asynchroniczny lub użyj elementu TestMethodAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje są puste. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Odwołania do obu kolekcji wskazują ten sam obiekt kolekcji. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0}({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (null). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (object). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie zawiera ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} ({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można użyć metody Assert.Equals dla asercji. Zamiast tego użyj metody Assert.AreEqual i przeciążeń. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Liczba elementów w kolekcjach nie jest zgodna. Oczekiwana wartość: <{1}>. Wartość rzeczywista: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {0} nie jest zgodny. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} nie ma oczekiwanego typu. Oczekiwany typ: <{2}>. Rzeczywisty typ: <{3}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} ma wartość (null). Oczekiwany typ: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie kończy się ciągiem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nieprawidłowy argument. Element EqualsTester nie może używać wartości null. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można przekonwertować obiektu typu {0} na typ {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Przywoływany obiekt wewnętrzny nie jest już prawidłowy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Właściwość {0} ma typ {1}. Oczekiwano typu {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} Oczekiwany typ: <{1}>. Rzeczywisty typ: <{2}>. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Niepoprawny typ: <{1}>. Rzeczywisty typ: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie określono atrybutu DataRowAttribute. Atrybut DataTestMethodAttribute wymaga co najmniej jednego atrybutu DataRowAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie zgłoszono wyjątku. Oczekiwany wyjątek: {1}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. Wartość nie może być równa null. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Inna liczba elementów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć konstruktora z określoną sygnaturą. Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć określonego elementu członkowskiego ({0}). Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie rozpoczyna się od ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwanym typem wyjątku musi być typ System.Exception lub typ pochodzący od typu System.Exception. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (Nie można pobrać komunikatu dotyczącego wyjątku typu {0} z powodu wyjątku). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła oczekiwanego wyjątku {0}. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła wyjątku. Wyjątek był oczekiwany przez atrybut {0} zdefiniowany w metodzie testowej. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1}. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1} lub typu, który od niego pochodzi. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Zgłoszono wyjątek {2}, ale oczekiwano wyjątku {1}. {0} + Komunikat o wyjątku: {3} + Ślad stosu: {4}. + + + + + wyniki testu jednostkowego + + + + + Test został wykonany, ale wystąpiły problemy. + Problemy mogą obejmować wyjątki lub asercje zakończone niepowodzeniem. + + + + + Test został ukończony, ale nie można stwierdzić, czy zakończył się powodzeniem, czy niepowodzeniem. + Może być używany dla przerwanych testów. + + + + + Test został wykonany bez żadnych problemów. + + + + + Test jest obecnie wykonywany. + + + + + Wystąpił błąd systemu podczas próby wykonania testu. + + + + + Upłynął limit czasu testu. + + + + + Test został przerwany przez użytkownika. + + + + + Stan testu jest nieznany + + + + + Udostępnia funkcjonalność pomocnika dla platformy testów jednostkowych + + + + + Pobiera komunikaty wyjątku, w tym rekursywnie komunikaty wszystkich wewnętrznych + wyjątków + + Wyjątek, dla którego mają zostać pobrane komunikaty + ciąg z informacjami o komunikacie o błędzie + + + + Wyliczenie dla limitów czasu, które może być używane z klasą . + Typ wyliczenia musi być zgodny + + + + + Nieskończone. + + + + + Atrybut klasy testowej. + + + + + Pobiera atrybut metody testowej, który umożliwia uruchomienie tego testu. + + Wystąpienie atrybutu metody testowej zdefiniowane w tej metodzie. + do użycia do uruchamiania tego testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atrybut metody testowej. + + + + + Wykonuje metodę testową. + + Metoda testowa do wykonania. + Tablica obiektów TestResult reprezentujących wyniki testu. + Extensions can override this method to customize running a TestMethod. + + + + Atrybut inicjowania testu. + + + + + Atrybut oczyszczania testu. + + + + + Atrybut ignorowania. + + + + + Atrybut właściwości testu. + + + + + Inicjuje nowe wystąpienie klasy . + + + Nazwa. + + + Wartość. + + + + + Pobiera nazwę. + + + + + Pobiera wartość. + + + + + Atrybut inicjowania klasy. + + + + + Atrybut oczyszczania klasy. + + + + + Atrybut inicjowania zestawu. + + + + + Atrybut oczyszczania zestawu. + + + + + Właściciel testu + + + + + Inicjuje nowe wystąpienie klasy . + + + Właściciel. + + + + + Pobiera właściciela. + + + + + Atrybut priorytetu służący do określania priorytetu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Priorytet. + + + + + Pobiera priorytet. + + + + + Opis testu + + + + + Inicjuje nowe wystąpienie klasy do opisu testu. + + Opis. + + + + Pobiera opis testu. + + + + + Identyfikator URI struktury projektu CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI struktury projektu CSS. + + Identyfikator URI struktury projektu CSS. + + + + Pobiera identyfikator URI struktury projektu CSS. + + + + + Identyfikator URI iteracji CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI iteracji CSS. + + Identyfikator URI iteracji CSS. + + + + Pobiera identyfikator URI iteracji CSS. + + + + + Atrybut elementu roboczego służący do określania elementu roboczego skojarzonego z tym testem. + + + + + Inicjuje nowe wystąpienie klasy dla atrybutu WorkItem. + + Identyfikator dla elementu roboczego. + + + + Pobiera identyfikator dla skojarzonego elementu roboczego. + + + + + Atrybut limitu czasu służący do określania limitu czasu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Limit czasu. + + + + + Inicjuje nowe wystąpienie klasy ze wstępnie ustawionym limitem czasu + + + Limit czasu + + + + + Pobiera limit czasu. + + + + + Obiekt TestResult zwracany do adaptera. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Pobiera lub ustawia nazwę wyświetlaną wyniku. Przydatny w przypadku zwracania wielu wyników. + Jeśli ma wartość null, nazwa metody jest używana jako nazwa wyświetlana. + + + + + Pobiera lub ustawia wynik wykonania testu. + + + + + Pobiera lub ustawia wyjątek zgłoszony, gdy test kończy się niepowodzeniem. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia ślady debugowania przez kod testu. + + + + + Gets or sets the debug traces by test code. + + + + + Pobiera lub ustawia czas trwania wykonania testu. + + + + + Pobiera lub ustawia indeks wiersza danych w źródle danych. Ustawia tylko dla wyników oddzielnych + uruchomień wiersza danych w teście opartym na danych. + + + + + Pobiera lub ustawia wartość zwracaną metody testowej. (Obecnie zawsze wartość null). + + + + + Pobiera lub ustawia pliki wyników dołączone przez test. + + + + + Określa parametry połączenia, nazwę tabeli i metodę dostępu do wiersza w przypadku testowania opartego na danych. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nazwa domyślnego dostawcy dla źródła danych. + + + + + Domyślna metoda uzyskiwania dostępu do danych. + + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych, parametrami połączenia, tabelą danych i metodą dostępu do danych w celu uzyskania dostępu do źródła danych. + + Niezmienna nazwa dostawcy danych, taka jak System.Data.SqlClient + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + Określa kolejność dostępu do danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z parametrami połączenia i nazwą tabeli. + Określ parametry połączenia i tabelę danych w celu uzyskania dostępu do źródła danych OLEDB. + + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych i parametrami połączenia skojarzonymi z nazwą ustawienia. + + Nazwa źródła danych znaleziona w sekcji <microsoft.visualstudio.qualitytools> pliku app.config. + + + + Pobiera wartość reprezentującą dostawcę danych źródła danych. + + + Nazwa dostawcy danych. Jeśli dostawca danych nie został wyznaczony w czasie inicjowania obiektu, zostanie zwrócony domyślny dostawca obiektu System.Data.OleDb. + + + + + Pobiera wartość reprezentującą parametry połączenia dla źródła danych. + + + + + Pobiera wartość wskazującą nazwę tabeli udostępniającej dane. + + + + + Pobiera metodę używaną do uzyskiwania dostępu do źródła danych. + + + + Jedna z . Jeśli nie zainicjowano , zwróci wartość domyślną . + + + + + Pobiera nazwę źródła danych znajdującego się w sekcji <microsoft.visualstudio.qualitytools> w pliku app.config. + + + + + Atrybut dla testu opartego na danych, w którym dane można określić bezpośrednio. + + + + + Znajdź wszystkie wiersze danych i wykonaj. + + + Metoda testowa. + + + Tablica elementów . + + + + + Uruchamianie metody testowej dla testu opartego na danych. + + Metoda testowa do wykonania. + Wiersz danych. + Wyniki wykonania. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..7fe8bca --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usado para especificar o item de implantação (arquivo ou diretório) para implantação por teste. + Pode ser especificado em classe de teste ou em método de teste. + Pode ter várias instâncias do atributo para especificar mais de um item. + O caminho do item pode ser absoluto ou relativo. Se relativo, é relativo a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Inicializa uma nova instância da classe . + + O arquivo ou o diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + + + + Inicializa uma nova instância da classe + + O caminho relativo ou absoluto ao arquivo ou ao diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + O caminho do diretório para o qual os itens deverão ser copiados. Ele pode ser absoluto ou relativo ao diretório de implantação. Todos os arquivos e diretórios identificados por serão copiados para esse diretório. + + + + Obtém o caminho da pasta ou do arquivo de origem a ser copiado. + + + + + Obtém o caminho do diretório para o qual o item é copiado. + + + + + Classe TestContext. Essa classe deve ser totalmente abstrata e não conter nenhum + membro. O adaptador implementará os membros. Os usuários na estrutura devem + acessá-la somente por meio de uma interface bem definida. + + + + + Obtém as propriedades de teste para um teste. + + + + + Obtém o Nome totalmente qualificado da classe contendo o método de teste executado no momento + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtém o Nome do método de teste executado no momento + + + + + Obtém o resultado do teste atual. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2b63dd5 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + O TestMethod para a execução. + + + + + Obtém o nome do método de teste. + + + + + Obtém o nome da classe de teste. + + + + + Obtém o tipo de retorno do método de teste. + + + + + Obtém os parâmetros do método de teste. + + + + + Obtém o methodInfo para o método de teste. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca o método de teste. + + + Argumentos a serem passados ao método de teste. (Por exemplo, para testes controlados por dados) + + + Resultado da invocação do método de teste. + + + This call handles asynchronous test methods as well. + + + + + Obter todos os atributos do método de teste. + + + Se o atributo definido na classe pai é válido. + + + Todos os atributos. + + + + + Obter atributo de tipo específico. + + System.Attribute type. + + Se o atributo definido na classe pai é válido. + + + Os atributos do tipo especificado. + + + + + O auxiliar. + + + + + O parâmetro de verificação não nulo. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws argument null exception when parameter is null. + + + + O parâmetro de verificação não nulo nem vazio. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws ArgumentException when parameter is null. + + + + Enumeração para como acessamos as linhas de dados no teste controlado por dados. + + + + + As linhas são retornadas em ordem sequencial. + + + + + As linhas são retornadas em ordem aleatória. + + + + + O atributo para definir dados embutidos para um método de teste. + + + + + Inicializa uma nova instância da classe . + + O objeto de dados. + + + + Inicializa a nova instância da classe que ocupa uma matriz de argumentos. + + Um objeto de dados. + Mais dados. + + + + Obtém Dados para chamar o método de teste. + + + + + Obtém ou define o nome de exibição nos resultados de teste para personalização. + + + + + A exceção inconclusiva da asserção. + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Classe InternalTestFailureException. Usada para indicar falha interna de um caso de teste + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + + + + Inicializa uma nova instância da classe . + + + + + Atributo que especifica que uma exceção do tipo especificado é esperada + + + + + Inicializa uma nova instância da classe com o tipo especificado + + Tipo da exceção esperada + + + + Inicializa uma nova instância da classe com + o tipo esperado e a mensagem a ser incluída quando nenhuma exceção é gerada pelo teste. + + Tipo da exceção esperada + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma exceção + + + + + Obtém um valor que indica o Tipo da exceção esperada + + + + + Obtém ou define um valor que indica se é para permitir tipos derivados do tipo da exceção esperada para + qualificá-la como esperada + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Verifica se o tipo da exceção gerada pelo teste de unidade é esperado + + A exceção gerada pelo teste de unidade + + + + Classe base para atributos que especificam que uma exceção de um teste de unidade é esperada + + + + + Inicializa uma nova instância da classe com uma mensagem de não exceção padrão + + + + + Inicializa a nova instância da classe com uma mensagem de não exceção + + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma + exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem de não exceção padrão + + O nome do tipo de atributo ExpectedException + A mensagem de não exceção padrão + + + + Determina se uma exceção é esperada. Se o método é retornado, entende-se + que a exceção era esperada. Se o método gera uma exceção, entende-se + que a exceção não era esperada e a mensagem de exceção gerada + é incluída no resultado do teste. A classe pode ser usada para + conveniência. Se é usada e há falha de asserção, + o resultado do teste é definido como Inconclusivo. + + A exceção gerada pelo teste de unidade + + + + Gerar a exceção novamente se for uma AssertFailedException ou uma AssertInconclusiveException + + A exceção a ser gerada novamente se for uma exceção de asserção + + + + Essa classe é projetada para ajudar o usuário a executar o teste de unidade para os tipos que usam tipos genéricos. + GenericParameterHelper satisfaz algumas restrições comuns de tipos genéricos, + como: + 1. construtor público padrão + 2. implementa interface comum: IComparable, IEnumerable + + + + + Inicializa a nova instância da classe que + satisfaz a restrição 'newable' em genéricos C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa a nova instância da classe que + inicializa a propriedade Data para um valor fornecido pelo usuário. + + Qualquer valor inteiro + + + + Obtém ou define Data + + + + + Executa a comparação de valores de dois objetos GenericParameterHelper + + objeto com o qual comparar + verdadeiro se o objeto tem o mesmo valor que 'esse' objeto GenericParameterHelper. + Caso contrário, falso. + + + + Retorna um código hash para esse objeto. + + O código hash. + + + + Compara os dados dos dois objetos . + + O objeto com o qual comparar. + + Um número assinado indicando os valores relativos dessa instância e valor. + + + Thrown when the object passed in is not an instance of . + + + + + Retorna um objeto IEnumerator cujo comprimento é derivado + da propriedade Data. + + O objeto IEnumerator + + + + Retorna um objeto GenericParameterHelper que é igual ao + objeto atual. + + O objeto clonado. + + + + Permite que usuários registrem/gravem rastros de testes de unidade para diagnósticos. + + + + + Manipulador para LogMessage. + + Mensagem a ser registrada. + + + + Evento a ser escutado. Acionado quando o gerador do teste de unidade escreve alguma mensagem. + Principalmente para ser consumido pelo adaptador. + + + + + API para o gravador de teste chamar Registrar mensagens. + + Formato de cadeia de caracteres com espaços reservados. + Parâmetros dos espaços reservados. + + + + Atributo TestCategory. Usado para especificar a categoria de um teste de unidade. + + + + + Inicializa a nova instância da classe e aplica a categoria ao teste. + + + A Categoria de teste. + + + + + Obtém as categorias de teste aplicadas ao teste. + + + + + Classe base para o atributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa a nova instância da classe . + Aplica a categoria ao teste. As cadeias de caracteres retornadas por TestCategories + são usadas com o comando /category para filtrar os testes + + + + + Obtém a categoria de teste aplicada ao teste. + + + + + Classe AssertFailedException. Usada para indicar falha em um caso de teste + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Uma coleção de classes auxiliares para testar várias condições nos + testes de unidade. Se a condição testada não é atendida, uma exceção + é gerada. + + + + + Obtém uma instância singleton da funcionalidade Asserção. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is false. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is true. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null. + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if refers to the same object + as . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is not equal to . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Gera uma AssertFailedException. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Os métodos estático igual a sobrecargas são usados para comparar instâncias de dois tipos em relação à igualdade de + referência. Esse método não deve ser usado para comparar a igualdade de + duas instâncias. Esse objeto sempre gerará Assert.Fail. Use + Assert.AreEqual e sobrecargas associadas nos testes de unidade. + + Objeto A + Objeto B + Sempre falso. + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Substitui os caracteres nulos ('\0') por "\\0". + + + A cadeia de caracteres a ser pesquisada. + + + A cadeia de caracteres convertida com os caracteres nulos substituídos por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Função auxiliar que cria e gera uma AssertionFailedException + + + nome da asserção que gera uma exceção + + + mensagem que descreve as condições da falha de asserção + + + Os parâmetros. + + + + + Verifica o parâmetro das condições válidas + + + O parâmetro. + + + O Nome da asserção. + + + nome do parâmetro + + + mensagem da exceção de parâmetro inválido + + + Os parâmetros. + + + + + Converte com segurança um objeto em uma cadeia de caracteres manipulando valores e caracteres nulos. + Os valores nulos são convertidos em "(null)". Os caracteres nulos são convertidos em "\\0". + + + O objeto a ser convertido em uma cadeia de caracteres. + + + A cadeia de caracteres convertida. + + + + + A asserção da cadeia de caracteres. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if matches . + + + + + Uma coleção de classes auxiliares para testar várias condições associadas + às coleções nos testes de unidade. Se a condição testada não é + atendida, uma exceção é gerada. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is found in + . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if every element in is also found in + . + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Determina se a primeira coleção é um subconjunto da segunda + coleção. Se os conjuntos contiverem elementos duplicados, o número + de ocorrências do elemento no subconjunto deverá ser menor ou igual + ao número de ocorrências no superconjunto. + + + A coleção que o teste espera que esteja contida em . + + + A coleção que o teste espera que contenha . + + + Verdadeiro se é um subconjunto de + , caso contrário, falso. + + + + + Cria um dicionário contendo o número de ocorrências de cada + elemento na coleção especificada. + + + A coleção a ser processada. + + + O número de elementos nulos na coleção. + + + Um dicionário contendo o número de ocorrências de cada elemento + na coleção especificada. + + + + + Encontra um elemento incompatível entre as duas coleções. Um elemento + incompatível é aquele que aparece um número diferente de vezes na + coleção esperada em relação à coleção real. É pressuposto que + as coleções sejam referências não nulas diferentes com o + mesmo número de elementos. O chamador é responsável por esse nível de + verificação. Se não houver nenhum elemento incompatível, a função retornará + falso e os parâmetros de saída não deverão ser usados. + + + A primeira coleção a ser comparada. + + + A segunda coleção a ser comparada. + + + O número esperado de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O número real de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O elemento incompatível (poderá ser nulo) ou nulo se não houver nenhum + elemento incompatível. + + + verdadeiro se um elemento incompatível foi encontrado. Caso contrário, falso. + + + + + compara os objetos usando object.Equals + + + + + Classe base para exceções do Framework. + + + + + Inicializa uma nova instância da classe . + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Uma classe de recurso fortemente tipada para pesquisar cadeias de caracteres localizadas, etc. + + + + + Retorna a instância de ResourceManager armazenada em cache usada por essa classe. + + + + + Substitui a propriedade CurrentUICulture do thread atual em todas + as pesquisas de recursos usando essa classe de recurso fortemente tipada. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres de acesso tem sintaxe inválida. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A coleção esperada contém {1} ocorrência(s) de <{2}>. A coleção real contém {3} ocorrência(s). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Item duplicado encontrado:<{1}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Maiúsculas e minúsculas diferentes para o valor real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença não maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1} ({2})>. Real:<{3} ({4})>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a É esperado qualquer valor, exceto:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não passe tipos de valores para AreSame(). Os valores convertidos em Object nunca serão os mesmos. Considere usar AreEqual(). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante à Falha em {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada similar a TestMethod assíncrono com UITestMethodAttribute sem suporte. Remova o assíncrono ou use o TestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções estão vazias. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as referências de coleções apontam para o mesmo objeto de coleção. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0}({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (nulo). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (objeto). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não contém a cadeia de caracteres '{1}'. {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} ({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Assert.Equals não deve ser usado para Asserções. Use Assert.AreEqual e sobrecargas em seu lugar. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O número de elementos nas coleções não corresponde. Esperado:<{1}>. Real:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {0} não corresponde. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} não é de tipo esperado. Tipo esperado:<{2}>. Tipo real:<{3}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} é (nulo). Tipo esperado:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não termina com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Argumento inválido – EqualsTester não pode usar nulos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não é possível converter objeto do tipo {0} em {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O objeto interno referenciado não é mais válido. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A propriedade {0} é do tipo {1}; tipo esperado {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} Tipo esperado:<{1}>. Tipo real:<{2}>.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Tipo incorreto:<{1}>. Tipo real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhum DataRowAttribute especificado. Pelo menos um DataRowAttribute é necessário com DataTestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhuma exceção gerada. A exceção {1} era esperada. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. O valor não pode ser nulo. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Número diferente de elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O construtor com a assinatura especificada não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O membro especificado ({0}) não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não começa com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O tipo de exceção esperado deve ser System.Exception ou um tipo derivado de System.Exception. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (Falha ao obter a mensagem para uma exceção do tipo {0} devido a uma exceção.). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou a exceção esperada {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou uma exceção. Uma exceção era esperada pelo atributo {0} definido no método de teste. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperada a exceção {1}. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperado a exceção {1} ou um tipo derivado dela. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Exceção gerada {2}, mas a exceção {1} era esperada. {0} + Mensagem de Exceção: {3} + Rastreamento de Pilha: {4}. + + + + + resultados de teste de unidade + + + + + O teste foi executado, mas ocorreram problemas. + Os problemas podem envolver exceções ou asserções com falha. + + + + + O teste foi concluído, mas não é possível dizer se houve aprovação ou falha. + Pode ser usado para testes anulados. + + + + + O teste foi executado sem nenhum problema. + + + + + O teste está em execução no momento. + + + + + Ocorreu um erro de sistema ao tentarmos executar um teste. + + + + + O tempo limite do teste foi atingido. + + + + + O teste foi anulado pelo usuário. + + + + + O teste está em um estado desconhecido + + + + + Fornece funcionalidade auxiliar para a estrutura do teste de unidade + + + + + Obtém as mensagens de exceção, incluindo as mensagens para todas as exceções internas + recursivamente + + Exceção ao obter mensagens para + cadeia de caracteres com informações de mensagem de erro + + + + Enumeração para tempos limite, a qual pode ser usada com a classe . + O tipo de enumeração deve corresponder + + + + + O infinito. + + + + + O atributo da classe de teste. + + + + + Obtém um atributo de método de teste que habilita a execução desse teste. + + A instância de atributo do método de teste definida neste método. + O a ser usado para executar esse teste. + Extensions can override this method to customize how all methods in a class are run. + + + + O atributo do método de teste. + + + + + Executa um método de teste. + + O método de teste a ser executado. + Uma matriz de objetos TestResult que representam resultados do teste. + Extensions can override this method to customize running a TestMethod. + + + + O atributo de inicialização do teste. + + + + + O atributo de limpeza do teste. + + + + + O atributo ignorar. + + + + + O atributo de propriedade de teste. + + + + + Inicializa uma nova instância da classe . + + + O nome. + + + O valor. + + + + + Obtém o nome. + + + + + Obtém o valor. + + + + + O atributo de inicialização de classe. + + + + + O atributo de limpeza de classe. + + + + + O atributo de inicialização de assembly. + + + + + O atributo de limpeza de assembly. + + + + + Proprietário do Teste + + + + + Inicializa uma nova instância da classe . + + + O proprietário. + + + + + Obtém o proprietário. + + + + + Atributo de prioridade. Usado para especificar a prioridade de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + A prioridade. + + + + + Obtém a prioridade. + + + + + Descrição do teste + + + + + Inicializa uma nova instância da classe para descrever um teste. + + A descrição. + + + + Obtém a descrição de um teste. + + + + + URI de Estrutura do Projeto de CSS + + + + + Inicializa a nova instância da classe para o URI da Estrutura do Projeto CSS. + + O URI da Estrutura do Projeto ECSS. + + + + Obtém o URI da Estrutura do Projeto CSS. + + + + + URI de Iteração de CSS + + + + + Inicializa uma nova instância da classe para o URI de Iteração do CSS. + + O URI de iteração do CSS. + + + + Obtém o URI de Iteração do CSS. + + + + + Atributo WorkItem. Usado para especificar um item de trabalho associado a esse teste. + + + + + Inicializa a nova instância da classe para o Atributo WorkItem. + + A ID para o item de trabalho. + + + + Obtém a ID para o item de trabalho associado. + + + + + Atributo de tempo limite. Usado para especificar o tempo limite de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + O tempo limite. + + + + + Inicializa a nova instância da classe com um tempo limite predefinido + + + O tempo limite + + + + + Obtém o tempo limite. + + + + + O objeto TestResult a ser retornado ao adaptador. + + + + + Inicializa uma nova instância da classe . + + + + + Obtém ou define o nome de exibição do resultado. Útil ao retornar vários resultados. + Se for nulo, o nome do Método será usado como o DisplayName. + + + + + Obtém ou define o resultado da execução de teste. + + + + + Obtém ou define a exceção gerada quando o teste falha. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define os rastreamentos de depuração pelo código de teste. + + + + + Gets or sets the debug traces by test code. + + + + + Obtém ou define a duração de execução do teste. + + + + + Obtém ou define o índice de linha de dados na fonte de dados. Defina somente para os resultados de execuções + individuais de um teste controlado por dados. + + + + + Obtém ou define o valor retornado do método de teste. (Sempre nulo no momento). + + + + + Obtém ou define os arquivos de resultado anexados pelo teste. + + + + + Especifica a cadeia de conexão, o nome de tabela e o método de acesso de linha para teste controlado por dados. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + O nome do provedor padrão para a DataSource. + + + + + O método de acesso a dados padrão. + + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados, uma cadeia de conexão, uma tabela de dados e um método de acesso a dados para acessar a fonte de dados. + + Nome do provedor de dados invariável, como System.Data.SqlClient + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + Especifica a ordem para acessar os dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com uma cadeia de conexão e um nome da tabela. + Especifique a cadeia de conexão e a tabela de dados para acessar a fonte de dados OLEDB. + + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados e com uma cadeia de conexão associada ao nome da configuração. + + O nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> do arquivo app.config. + + + + Obtém o valor que representa o provedor de dados da fonte de dados. + + + O nome do provedor de dados. Se um provedor de dados não foi designado na inicialização do objeto, o provedor de dados padrão de System.Data.OleDb será retornado. + + + + + Obtém o valor que representa a cadeia de conexão da fonte de dados. + + + + + Obtém um valor que indica o nome da tabela que fornece dados. + + + + + Obtém o método usado para acessar a fonte de dados. + + + + Um dos valores. Se o não for inicializado, o valor padrão será retornado . + + + + + Obtém o nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> no arquivo app.config. + + + + + O atributo para teste controlado por dados em que os dados podem ser especificados de maneira embutida. + + + + + Encontrar todas as linhas de dados e executar. + + + O Método de teste. + + + Uma matriz de . + + + + + Executa o método de teste controlado por dados. + + O método de teste a ser executado. + Linha de Dados. + Resultados de execução. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..f697706 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Используется для указания элемента развертывания (файл или каталог) для развертывания каждого теста. + Может указываться для тестового класса или метода теста. + Чтобы указать несколько элементов, можно использовать несколько экземпляров атрибута. + Путь к элементу может быть абсолютным или относительным, в последнем случае он указывается по отношению к RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + Инициализирует новый экземпляр класса . + + Файл или каталог для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + + + + Инициализирует новый экземпляр класса + + Относительный или абсолютный путь к файлу или каталогу для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + Путь к каталогу, в который должны быть скопированы элементы. Он может быть абсолютным или относительным (по отношению к каталогу развертывания). Все файлы и каталоги, обозначенные при помощи будет скопировано в этот каталог. + + + + Получает путь к копируемым исходному файлу или папке. + + + + + Получает путь к каталогу, в который копируется элемент. + + + + + Класс TestContext. Этот класс должен быть полностью абстрактным и не должен содержать ни одного элемента. + Элементы будут реализованы в адаптере. Пользователи платформы должны обращаться к этому классу + только при помощи четко определенного интерфейса. + + + + + Получает свойства теста. + + + + + Получает полное имя класса, содержащего метод теста, который выполняется в данный момент + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Получает имя метода теста, выполняемого в данный момент + + + + + Получает текущий результат теста. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..f278594 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4202 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod для выполнения. + + + + + Получает имя метода теста. + + + + + Получает имя тестового класса. + + + + + Получает тип возвращаемого значения метода теста. + + + + + Получает параметры метода теста. + + + + + Получает methodInfo для метода теста. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Вызывает метод теста. + + + Аргументы, передаваемые методу теста (например, для управляемых данными тестов). + + + Результат вызова метода теста. + + + This call handles asynchronous test methods as well. + + + + + Получить все атрибуты метода теста. + + + Допустим ли атрибут, определенный в родительском классе. + + + Все атрибуты. + + + + + Получить атрибут указанного типа. + + System.Attribute type. + + Допустим ли атрибут, определенный в родительском классе. + + + Атрибуты указанного типа. + + + + + Вспомогательный метод. + + + + + Параметр проверки не имеет значения NULL. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws argument null exception when parameter is null. + + + + Параметр проверки не равен NULL или не пуст. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws ArgumentException when parameter is null. + + + + Перечисление, описывающее способ доступа к строкам данных в тестах, управляемых данными. + + + + + Строки возвращаются в последовательном порядке. + + + + + Строки возвращаются в случайном порядке. + + + + + Атрибут для определения встроенных данных для метода теста. + + + + + Инициализирует новый экземпляр класса . + + Объект данных. + + + + Инициализирует новый экземпляр класса , принимающий массив аргументов. + + Объект данных. + Дополнительные данные. + + + + Получает данные для вызова метода теста. + + + + + Получает или задает отображаемое имя в результатах теста для настройки. + + + + + Исключение утверждения с неопределенным результатом. + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Класс InternalTestFailureException. Используется для указания внутреннего сбоя для тестового случая + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + + + + Инициализирует новый экземпляр класса . + + + + + Атрибут, который указывает, что ожидается исключение указанного типа + + + + + Инициализирует новый экземпляр класса ожидаемого типа + + Тип ожидаемого исключения + + + + Инициализирует новый экземпляр класса + ожидаемого типа c сообщением для включения, когда тест не создает исключение. + + Тип ожидаемого исключения + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал исключение + + + + + Получает значение, указывающее тип ожидаемого исключения + + + + + Получает или задает значение, которое означает, являются ли ожидаемыми типы, производные + от типа ожидаемого исключения + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Проверяет, является ли ожидаемым тип исключения, созданного модульным тестом + + Исключение, созданное модульным тестом + + + + Базовый класс для атрибутов, которые указывают ожидать исключения из модульного теста + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений по умолчанию + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений + + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал + исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение по умолчанию об отсутствии исключений + + Название типа для атрибута ExpectedException + Сообщение об отсутствии исключений по умолчанию + + + + Определяет, ожидается ли исключение. Если метод возвращает управление, то + считается, что ожидалось исключение. Если метод создает исключение, то + считается, что исключение не ожидалось, и сообщение созданного исключения + включается в результат теста. Для удобства можно использовать класс . + Если используется и утверждение завершается с ошибкой, + то результат теста будет неопределенным. + + Исключение, созданное модульным тестом + + + + Повторно создать исключение при возникновении исключения AssertFailedException или AssertInconclusiveException + + Исключение, которое необходимо создать повторно, если это исключение утверждения + + + + Этот класс предназначен для пользователей, выполняющих модульное тестирование для универсальных типов. + GenericParameterHelper удовлетворяет некоторым распространенным ограничениям для универсальных типов, + например. + 1. Открытый конструктор по умолчанию + 2. Реализует общий интерфейс: IComparable, IEnumerable + + + + + Инициализирует новый экземпляр класса , который + удовлетворяет ограничению newable в универсальных типах C#. + + + This constructor initializes the Data property to a random value. + + + + + Инициализирует новый экземпляр класса , который + инициализирует свойство Data в указанное пользователем значение. + + Любое целочисленное значение + + + + Получает или задает данные + + + + + Сравнить значения двух объектов GenericParameterHelper + + объект, с которым будет выполнено сравнение + True, если obj имеет то же значение, что и объект "this" GenericParameterHelper. + В противном случае False. + + + + Возвращает хэш-код для этого объекта. + + Хэш-код. + + + + Сравнивает данные двух объектов . + + Объект для сравнения. + + Число со знаком, указывающее относительные значения этого экземпляра и значения. + + + Thrown when the object passed in is not an instance of . + + + + + Возвращает объект IEnumerator, длина которого является производной + от свойства Data. + + Объект IEnumerator + + + + Возвращает объект GenericParameterHelper, равный + текущему объекту. + + Клонированный объект. + + + + Позволяет пользователям регистрировать/записывать трассировки от модульных тестов для диагностики. + + + + + Обработчик LogMessage. + + Сообщение для записи в журнал. + + + + Прослушиваемое событие. Возникает, когда средство записи модульных тестов записывает сообщение. + Главным образом используется адаптером. + + + + + API, при помощи которого средство записи теста будет обращаться к сообщениям журнала. + + Строка формата с заполнителями. + Параметры для заполнителей. + + + + Атрибут TestCategory; используется для указания категории модульного теста. + + + + + Инициализирует новый экземпляр класса и применяет категорию к тесту. + + + Категория теста. + + + + + Возвращает или задает категории теста, которые были применены к тесту. + + + + + Базовый класс для атрибута Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Инициализирует новый экземпляр класса . + Применяет к тесту категорию. Строки, возвращаемые TestCategories , + используются с командой /category для фильтрации тестов + + + + + Возвращает или задает категорию теста, которая была применена к тесту. + + + + + Класс AssertFailedException. Используется для указания сбоя тестового случая + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Коллекция вспомогательных классов для тестирования различных условий в + модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is true. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is null. + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if refers to the same object + as . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is not equal to . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Создает исключение AssertFailedException. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Статические переопределения равенства используются для сравнения экземпляров двух типов на равенство + ссылок. Этот метод не должен использоваться для сравнения двух экземпляров на + равенство. Этот объект всегда создает исключение с Assert.Fail. Используйте в ваших модульных тестах + Assert.AreEqual и связанные переопределения. + + Объект A + Объект B + False (всегда). + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Заменяет NULL-символы ("\0") символами "\\0". + + + Искомая строка. + + + Преобразованная строка, в которой NULL-символы были заменены на "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Вспомогательная функция, которая создает и вызывает AssertionFailedException + + + имя утверждения, создавшего исключение + + + сообщение с описанием условий для сбоя утверждения + + + Параметры. + + + + + Проверяет параметр на допустимые условия + + + Параметр. + + + Имя утверждения. + + + имя параметра + + + сообщение об исключении, связанном с недопустимым параметром + + + Параметры. + + + + + Безопасно преобразует объект в строку, обрабатывая значения NULL и NULL-символы. + Значения NULL преобразуются в "(null)", NULL-символы — в "\\0". + + + Объект для преобразования в строку. + + + Преобразованная строка. + + + + + Утверждение строки. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not begin with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not end with + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not match + . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if matches . + + + + + Коллекция вспомогательных классов для тестирования различных условий, связанных + с коллекциями в модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is found in + . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a null element is found in . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is not found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if every element in is also found in + . + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Определяет, является ли первая коллекция подмножеством второй + коллекции. Если любое из множеств содержит одинаковые элементы, то число + вхождений элемента в подмножестве должно быть меньше или + равно количеству вхождений в супермножестве. + + + Коллекция, которая с точки зрения теста должна содержаться в . + + + Коллекция, которая с точки зрения теста должна содержать . + + + Значение True, если является подмножеством + , в противном случае — False. + + + + + Создает словарь с числом вхождений каждого элемента + в указанной коллекции. + + + Обрабатываемая коллекция. + + + Число элементов, имеющих значение NULL, в коллекции. + + + Словарь с числом вхождений каждого элемента + в указанной коллекции. + + + + + Находит несоответствующий элемент между двумя коллекциями. Несоответствующий + элемент — это элемент, количество вхождений которого в ожидаемой коллекции отличается + от фактической коллекции. В качестве коллекций + ожидаются различные ссылки, отличные от null, с одинаковым + количеством элементов. За этот уровень проверки отвечает + вызывающий объект. Если несоответствующих элементов нет, функция возвращает + False, и выходные параметры использовать не следует. + + + Первая сравниваемая коллекция. + + + Вторая сравниваемая коллекция. + + + Ожидаемое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Фактическое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Несоответствующий элемент (может иметь значение NULL) или значение NULL, если несоответствующий + элемент отсутствует. + + + Значение True, если был найден несоответствующий элемент, в противном случае — False. + + + + + сравнивает объекты при помощи object.Equals + + + + + Базовый класс для исключений платформы. + + + + + Инициализирует новый экземпляр класса . + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Строго типизированный класс ресурса для поиска локализованных строк и т. д. + + + + + Возвращает кэшированный экземпляр ResourceManager, использованный этим классом. + + + + + Переопределяет свойство CurrentUICulture текущего потока для всех операций + поиска ресурсов, в которых используется этот строго типизированный класс. + + + + + Ищет локализованную строку, похожую на "Синтаксис строки доступа неверен". + + + + + Ищет локализованную строку, похожую на "Ожидаемая коллекция содержит {1} вхождений <{2}>. Фактическая коллекция содержит {3} вхождений. {0}". + + + + + Ищет локализованную строку, похожую на "Обнаружен элемент-дубликат: <{1}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое значение имеет другой регистр: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять не больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1} ({2})>. Фактическое: <{3} ({4})>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидалось любое значение, кроме: <{1}>. Фактическое значение: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Не передавайте типы значений в AreSame(). Значения, преобразованные в объекты, никогда не будут одинаковыми. Воспользуйтесь методом AreEqual(). {0}". + + + + + Ищет локализованную строку, похожую на "Сбой {0}. {1}". + + + + + Ищет локализованную строку, аналогичную "Асинхронный метод TestMethod с UITestMethodAttribute не поддерживается. Удалите async или используйте TestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Обе коллекции пусты. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы". + + + + + Ищет локализованную строку, похожую на "Ссылки на обе коллекции указывают на один объект коллекции. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы. {0}". + + + + + Ищет локализованную строку, похожую на "{0}({1})". + + + + + Ищет локализованную строку, похожую на "(NULL)". + + + + + Ищет локализованную строку, похожую на "(объект)". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не содержит строку "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "{0} ({1})". + + + + + Ищет локализованную строку, похожую на "Assert.Equals не следует использовать для Assertions. Используйте Assert.AreEqual и переопределения". + + + + + Ищет локализованную строку, похожую на "Число элементов в коллекциях не совпадает. Ожидаемое число: <{1}>. Фактическое: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {0} не соответствует". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет непредвиденный тип. Ожидаемый тип: <{2}>. Фактический тип: <{3}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет значение (NULL). Ожидаемый тип: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не заканчивается строкой "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Недопустимый аргумент — EqualsTester не может использовать значения NULL". + + + + + Ищет локализованную строку, похожую на "Невозможно преобразовать объект типа {0} в {1}". + + + + + Ищет локализованную строку, похожую на "Внутренний объект, на который была сделана ссылка, более не действителен". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. {1}". + + + + + Ищет локализованную строку, похожую на "Свойство {0} имеет тип {1}; ожидаемый тип: {2}". + + + + + Ищет локализованную строку, похожую на "{0} Ожидаемый тип: <{1}>. Фактический тип: <{2}>". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Неправильный тип: <{1}>. Фактический тип: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Не указан атрибут DataRowAttribute. Необходимо указать как минимум один атрибут DataRowAttribute с атрибутом DataTestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Исключение не было создано. Ожидалось исключение {1}. {0}". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. Значение не может быть равно NULL. {1}". + + + + + Ищет локализованную строку, похожую на "Число элементов различается". + + + + + Ищет локализованную строку, похожую на + "Не удалось найти конструктор с указанной сигнатурой. Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор класса PrivateObject". + . + + + + + Ищет локализованную строку, похожую на + "Не удалось найти указанный элемент ({0}). Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор PrivateObject". + . + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не начинается со строки "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое исключение должно иметь тип System.Exception или производный от него тип". + + + + + Ищет локализованную строку, похожую на "(Не удалось получить сообщение для исключения типа {0} из-за исключения.)". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал ожидаемое исключение {0}. {1}". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал исключение. Исключение ожидалось атрибутом {0}, определенным в методе теста". + + + + + Ищет локализованную строку, похожую на "Метод теста создан исключение {0}, а ожидалось исключение {1}. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Метод теста создал исключение {0}, а ожидалось исключение {1} или производный от него тип. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Создано исключение {2}, а ожидалось исключение {1}. {0} + Сообщение исключения: {3} + Стек трассировки: {4}". + + + + + результаты модульного теста + + + + + Тест был выполнен, но при его выполнении возникли проблемы. + Эти проблемы могут включать исключения или сбой утверждений. + + + + + Тест завершен, но результат его завершения неизвестен. + Может использоваться для прерванных тестов. + + + + + Тест был выполнен без проблем. + + + + + Тест выполняется в данный момент. + + + + + При попытке выполнения теста возникла ошибка в системе. + + + + + Время ожидания для теста истекло. + + + + + Тест прерван пользователем. + + + + + Тест находится в неизвестном состоянии + + + + + Предоставляет вспомогательные функции для платформы модульных тестов + + + + + Получает сообщения с исключениями, включая сообщения для всех внутренних исключений + (рекурсивно) + + Исключение, для которого следует получить сообщения + строка с сообщением об ошибке + + + + Перечисление для времен ожидания, которое можно использовать с классом . + Тип перечисления должен соответствовать + + + + + Бесконечно. + + + + + Атрибут тестового класса. + + + + + Получает атрибут метода теста, включающий выполнение этого теста. + + Для этого метода определен экземпляр атрибута метода теста. + + для использования для выполнения этого теста. + Extensions can override this method to customize how all methods in a class are run. + + + + Атрибут метода теста. + + + + + Выполняет метод теста. + + Выполняемый метод теста. + Массив объектов TestResult, представляющих результаты теста. + Extensions can override this method to customize running a TestMethod. + + + + Атрибут инициализации теста. + + + + + Атрибут очистки теста. + + + + + Атрибут игнорирования. + + + + + Атрибут свойства теста. + + + + + Инициализирует новый экземпляр класса . + + + Имя. + + + Значение. + + + + + Получает имя. + + + + + Получает значение. + + + + + Атрибут инициализации класса. + + + + + Атрибут очистки класса. + + + + + Атрибут инициализации сборки. + + + + + Атрибут очистки сборки. + + + + + Владелец теста + + + + + Инициализирует новый экземпляр класса . + + + Владелец. + + + + + Получает владельца. + + + + + Атрибут Priority; используется для указания приоритета модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Приоритет. + + + + + Получает приоритет. + + + + + Описание теста + + + + + Инициализирует новый экземпляр класса для описания теста. + + Описание. + + + + Получает описание теста. + + + + + URI структуры проекта CSS + + + + + Инициализирует новый экземпляр класса для URI структуры проекта CSS. + + URI структуры проекта CSS. + + + + Получает URI структуры проекта CSS. + + + + + URI итерации CSS + + + + + Инициализирует новый экземпляр класса для URI итерации CSS. + + URI итерации CSS. + + + + Получает URI итерации CSS. + + + + + Атрибут WorkItem; используется для указания рабочего элемента, связанного с этим тестом. + + + + + Инициализирует новый экземпляр класса для атрибута WorkItem. + + Идентификатор рабочего элемента. + + + + Получает идентификатор связанного рабочего элемента. + + + + + Атрибут Timeout; используется для указания времени ожидания модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Время ожидания. + + + + + Инициализирует новый экземпляр класса с заданным временем ожидания + + + Время ожидания + + + + + Получает время ожидания. + + + + + Объект TestResult, который возвращается адаптеру. + + + + + Инициализирует новый экземпляр класса . + + + + + Получает или задает отображаемое имя результата. Удобно для возврата нескольких результатов. + Если параметр равен NULL, имя метода используется в качестве DisplayName. + + + + + Получает или задает результат выполнения теста. + + + + + Получает или задает исключение, создаваемое, если тест не пройден. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает трассировки отладки для кода теста. + + + + + Gets or sets the debug traces by test code. + + + + + Получает или задает продолжительность выполнения теста. + + + + + Возвращает или задает индекс строки данных в источнике данных. Задается только для результатов выполнения + отдельных строк данных для теста, управляемого данными. + + + + + Получает или задает возвращаемое значение для метода теста. (Сейчас всегда равно NULL.) + + + + + Возвращает или задает файлы результатов, присоединенные во время теста. + + + + + Задает строку подключения, имя таблицы и метод доступа к строкам для тестов, управляемых данными. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Имя поставщика по умолчанию для DataSource. + + + + + Метод доступа к данным по умолчанию. + + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных, строкой подключения, таблицей данных и методом доступа к данным для доступа к источнику данных. + + Имя инвариантного поставщика данных, например System.Data.SqlClient + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + Задает порядок доступа к данным. + + + + Инициализирует новый экземпляр класса . Этот экземпляр будет инициализирован с строкой подключения и именем таблицы. + Укажите строку подключения и таблицу данных для доступа к источнику данных OLEDB. + + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных и строкой подключения, связанной с именем параметра. + + Имя источника данных, обнаруженного в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + Получает значение, представляющее поставщик данных для источника данных. + + + Имя поставщика данных. Если поставщик данных не был определен при инициализации объекта, будет возвращен поставщик по умолчанию, System.Data.OleDb. + + + + + Получает значение, представляющее строку подключения для источника данных. + + + + + Получает значение с именем таблицы, содержащей данные. + + + + + Возвращает метод, используемый для доступа к источнику данных. + + + + Один из значений. Если не инициализировано, возвращается значение по умолчанию . + + + + + Возвращает имя источника данных, обнаруженное в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + + Атрибут для тестов, управляемых данными, в которых данные могут быть встроенными. + + + + + Найти все строки данных и выполнить. + + + Метод теста. + + + Массив . + + + + + Выполнение метода теста, управляемого данными. + + Выполняемый метод теста. + Строка данных. + Результаты выполнения. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..cfddb52 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Test başına dağıtım için dağıtım öğesi (dosya veya dizin) belirtmek üzere kullanılır. + Test sınıfında veya test metodunda belirtilebilir. + Birden fazla öğe belirtmek için özniteliğin birden fazla örneğini içerebilir. + Öğe yolu mutlak veya göreli olabilir; göreli ise RunConfig.RelativePathRoot ile görelidir. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + sınıfının yeni bir örneğini başlatır. + + Dağıtılacak dosya veya dizin. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + + + + sınıfının yeni bir örneğini başlatır + + Dağıtılacak dosya veya dizinin göreli ya da mutlak yolu. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + Öğelerin kopyalanacağı dizinin yolu. Dağıtım dizinine göre mutlak veya göreli olabilir. Tüm dosyalar ve dizinler şuna göre tanımlanır: bu dizine kopyalanacak. + + + + Kopyalanacak kaynak dosya veya klasörün yolunu alır. + + + + + Öğenin kopyalandığı dizinin yolunu alır. + + + + + TestContext sınıfı. Bu sınıf tamamen soyut olmalı ve herhangi bir üye + içermemelidir. Üyeler bağdaştırıcı tarafından uygulanır. Çerçevedeki kullanıcılar + buna yalnızca iyi tanımlanmış bir arabirim üzerinden erişmelidir. + + + + + Bir testin test özelliklerini alır. + + + + + O anda yürütülen test metodunu içeren sınıfın tam adını alır + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Yürütülmekte olan test metodunun Adını alır + + + + + Geçerli test sonucunu alır. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..b7a0029 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Yürütülecek TestMethod. + + + + + Test metodunun adını alır. + + + + + Test sınıfının adını alır. + + + + + Test metodunun dönüş türünü alır. + + + + + Test metodunun parametrelerini alır. + + + + + Test metodu için methodInfo değerini alır. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Test metodunu çağırır. + + + Test metoduna geçirilecek bağımsız değişkenler. (Örn. Veri temelli için) + + + Test yöntemi çağırma sonucu. + + + This call handles asynchronous test methods as well. + + + + + Test metodunun tüm özniteliklerini alır. + + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Tüm öznitelikler. + + + + + Belirli bir türdeki özniteliği alır. + + System.Attribute type. + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Belirtilen türün öznitelikleri. + + + + + Yardımcı. + + + + + Denetim parametresi null değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws argument null exception when parameter is null. + + + + Denetim parametresi null veya boş değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws ArgumentException when parameter is null. + + + + Veri tabanlı testlerde veri satırlarına erişme şekline yönelik sabit listesi. + + + + + Satırlar sıralı olarak döndürülür. + + + + + Satırlar rastgele sırayla döndürülür. + + + + + Bir test metodu için satır içi verileri tanımlayan öznitelik. + + + + + sınıfının yeni bir örneğini başlatır. + + Veri nesnesi. + + + + Bir bağımsız değişken dizisi alan sınıfının yeni bir örneğini başlatır. + + Bir veri nesnesi. + Daha fazla veri. + + + + Çağıran test metodu verilerini alır. + + + + + Özelleştirme için test sonuçlarında görünen adı alır veya ayarlar. + + + + + Onay sonuçlandırılmadı özel durumu. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + InternalTestFailureException sınıfı. Bir test çalışmasının iç hatasını belirtmek için kullanılır + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Belirtilen türde bir özel durum beklemeyi belirten öznitelik + + + + + Beklenen tür ile sınıfının yeni bir örneğini başlatır + + Beklenen özel durum türü + + + + Beklenen tür ve test tarafından özel durum oluşturulmadığında eklenecek ileti ile sınıfının + yeni bir örneğini başlatır. + + Beklenen özel durum türü + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna dahil edilecek ileti + + + + + Beklenen özel durumun Türünü belirten bir değer alır + + + + + Beklenen özel durumun türünden türetilmiş türlerin beklenen özel durum türü olarak değerlendirilmesine izin verilip verilmeyeceğini + belirten değeri alır veya ayarlar + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Birim testi tarafından oluşturulan özel durum türünün beklendiğini doğrular + + Birim testi tarafından oluşturulan özel durum + + + + Birim testinden bir özel durum beklemek için belirtilen özniteliklerin temel sınıfı + + + + + Varsayılan bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + + + Bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna + dahil edilecek özel durum + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Varsayılan 'özel durum yok' iletisini alır + + ExpectedException özniteliği tür adı + Özel durum olmayan varsayılan ileti + + + + Özel durumun beklenip beklenmediğini belirler. Metot dönüş yapıyorsa, özel + durumun beklendiği anlaşılır. Metot bir özel durum oluşturuyorsa, özel durumun + beklenmediği anlaşılır ve oluşturulan özel durumun iletisi test sonucuna + eklenir. Kolaylık sağlamak amacıyla sınıfı kullanılabilir. + kullanılırsa ve onaylama başarısız olursa, + test sonucu Belirsiz olarak ayarlanır. + + Birim testi tarafından oluşturulan özel durum + + + + Özel durum bir AssertFailedException veya AssertInconclusiveException ise özel durumu yeniden oluşturur + + Bir onaylama özel durumu ise yeniden oluşturulacak özel durum + + + + Bu sınıf, kullanıcının genel türler kullanan türlere yönelik birim testleri yapmasına yardımcı olmak üzere tasarlanmıştır. + GenericParameterHelper bazı genel tür kısıtlamalarını yerine getirir; + örneğin: + 1. genel varsayılan oluşturucu + 2. ortak arabirim uygular: IComparable, IEnumerable + + + + + sınıfının C# genel türlerindeki 'newable' + kısıtlamasını karşılayan yeni bir örneğini başlatır. + + + This constructor initializes the Data property to a random value. + + + + + sınıfının, Data özelliğini kullanıcı + tarafından sağlanan bir değerle başlatan yeni bir örneğini başlatır. + + Herhangi bir tamsayı değeri + + + + Verileri alır veya ayarlar + + + + + İki GenericParameterHelper nesnesi için değer karşılaştırması yapar + + karşılaştırma yapılacak nesne + nesne bu 'this' GenericParameterHelper nesnesiyle aynı değere sahipse true. + aksi takdirde false. + + + + Bu nesne için bir karma kod döndürür. + + Karma kod. + + + + İki nesnesinin verilerini karşılaştırır. + + Karşılaştırılacak nesne. + + Bu örnek ve değerin göreli değerlerini gösteren, işaretli sayı. + + + Thrown when the object passed in is not an instance of . + + + + + Uzunluğu Data özelliğinden türetilmiş bir IEnumerator nesnesi + döndürür. + + IEnumerator nesnesi + + + + Geçerli nesneye eşit olan bir GenericParameterHelper nesnesi + döndürür. + + Kopyalanan nesne. + + + + Kullanıcıların tanılama amacıyla birim testlerindeki izlemeleri günlüğe kaydetmesini/yazmasını sağlar. + + + + + LogMessage işleyicisi. + + Günlüğe kaydedilecek ileti. + + + + Dinlenecek olay. Birim testi yazıcı bir ileti yazdığında oluşturulur. + Genellikle bağdaştırıcı tarafından kullanılır. + + + + + İletileri günlüğe kaydetmek için çağrılacak test yazıcısı API'si. + + Yer tutucuları olan dize biçimi. + Yer tutucu parametreleri. + + + + TestCategory özniteliği; bir birim testinin kategorisini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır ve kategoriyi teste uygular. + + + Test Kategorisi. + + + + + Teste uygulanan test kategorilerini alır. + + + + + "Category" özniteliğinin temel sınıfı + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + sınıfının yeni bir örneğini başlatır. + Kategoriyi teste uygular. TestCategories tarafından döndürülen + dizeler /category komutu içinde testleri filtrelemek için kullanılır + + + + + Teste uygulanan test kategorisini alır. + + + + + AssertFailedException sınıfı. Test çalışmasının başarısız olduğunu göstermek için kullanılır + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Birim testleri içindeki çeşitli koşulları test etmeye yönelik yardımcı + sınıf koleksiyonu. Test edilen koşul karşılanmazsa bir özel durum + oluşturulur. + + + + + Assert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is false. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is true. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null. + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if refers to the same object + as . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is not equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Bir AssertFailedException oluşturur. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Statik eşit aşırı yüklemeler iki türün örneklerini başvuru eşitliği bakımından + karşılaştırmak için kullanılır. Bu metot iki örneği eşitlik bakımından karşılaştırmak için + kullanılmamalıdır. Bu nesne her zaman Assert.Fail ile oluşturulur. + Lütfen birim testlerinizde Assert.AreEqual ve ilişkili aşırı yüklemelerini kullanın. + + Nesne A + Nesne B + Her zaman false. + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + Null karakterleri ('\0'), "\\0" ile değiştirir. + + + Aranacak dize. + + + Null karakterler içeren dönüştürülmüş dize "\\0" ile değiştirildi. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException oluşturan yardımcı işlev + + + özel durum oluşturan onaylamanın adı + + + onaylama hatası koşullarını açıklayan ileti + + + Parametreler. + + + + + Parametreyi geçerli koşullar için denetler + + + Parametre. + + + Onaylama Adı. + + + parametre adı + + + iletisi geçersiz parametre özel durumu içindir + + + Parametreler. + + + + + Bir nesneyi güvenli bir şekilde dizeye dönüştürür, null değerleri ve null karakterleri işler. + Null değerler "(null)" değerine dönüştürülür. Null karakterler "\\0" değerine dönüştürülür. + + + Dizeye dönüştürülecek nesne. + + + Dönüştürülmüş dize. + + + + + Dize onayı. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if matches . + + + + + Birim testleri içindeki koleksiyonlarla ilişkili çeşitli koşulları test etmeye + yönelik yardımcı sınıf koleksiyonu. Test edilen koşul karşılanmazsa + bir özel durum oluşturulur. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a two or more equal elements are found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if every element in is also found in + . + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Şu parametre biçimlendirilirken kullanılacak parametre dizisi: . + + + Thrown if is equal to . + + + + + Birinci koleksiyonun ikinci koleksiyona ait bir alt küme olup + olmadığını belirler. Kümelerden biri yinelenen öğeler içeriyorsa, + öğenin alt kümedeki oluşum sayısı üst kümedeki oluşum sayısına + eşit veya bu sayıdan daha az olmalıdır. + + + Testin içinde bulunmasını beklediği koleksiyon . + + + Testin içermesini beklediği koleksiyon . + + + Şu durumda true: şunun bir alt kümesidir: + , aksi takdirde false. + + + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren bir + sözlük oluşturur. + + + İşlenecek koleksiyon. + + + Koleksiyondaki null öğe sayısı. + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren + bir sözlük. + + + + + İki koleksiyon arasında eşleşmeyen bir öğe bulur. Eşleşmeyen öğe, + beklenen koleksiyonda gerçek koleksiyondakinden farklı sayıda görünen + öğedir. Koleksiyonların, + aynı sayıda öğeye sahip null olmayan farklı başvurular olduğu + varsayılır. Bu doğrulama düzeyinden + çağıran sorumludur. Eşleşmeyen bir öğe yoksa işlev + false değerini döndürür ve dış parametreler kullanılmamalıdır. + + + Karşılaştırılacak birinci koleksiyon. + + + Karşılaştırılacak ikinci koleksiyon. + + + Şunun için beklenen oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Gerçek oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Uyumsuz öğe (null olabilir) veya uyumsuz bir + öğe yoksa null. + + + uyumsuz bir öğe bulunduysa true; aksi takdirde false. + + + + + object.Equals kullanarak nesneleri karşılaştırır + + + + + Çerçeve Özel Durumları için temel sınıf. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + Yerelleştirilmiş dizeleri aramak gibi işlemler için, türü kesin olarak belirtilmiş kaynak sınıfı. + + + + + Bu sınıf tarafından kullanılan, önbelleğe alınmış ResourceManager örneğini döndürür. + + + + + Türü kesin olarak belirlenmiş bu kaynak sınıfını kullanan + tüm kaynak aramaları için geçerli iş parçacığının CurrentUICulture özelliğini geçersiz kılar. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Erişim dizesinde geçersiz söz dizimi var. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen koleksiyon {1} <{2}> oluşumu içeriyor. Gerçek koleksiyon {3} oluşum içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yinelenen öğe bulundu:<{1}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek değer için büyük/küçük harf kullanımı farklı:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında en fazla <{3}> fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1} ({2})>. Gerçek:<{3} ({4})>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında <{3}> değerinden büyük bir fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: <{1}> dışında bir değer bekleniyordu. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Değer türlerini AreSame() metoduna geçirmeyin. Object türüne dönüştürülen değerler hiçbir zaman aynı olmaz. AreEqual(). kullanmayı deneyin {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} başarısız oldu. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: UITestMethodAttribute özniteliğine sahip async TestMethod metodu desteklenmiyor. async ifadesini kaldırın ya da TestMethodAttribute özniteliğini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da boş. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon başvurusu da aynı koleksiyon nesnesini işaret ediyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0}({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: null. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: nesne. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesini içermiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} ({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Assert.Equals, Onaylamalar için kullanılmamalıdır. Lütfen bunun yerine Assert.AreEqual ve aşırı yüklemelerini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Koleksiyonlardaki öğe sayıları eşleşmiyor. Beklenen:<{1}>. Gerçek:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} dizinindeki öğe eşleşmiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {1} dizinindeki öğe beklenen türde değil. Beklenen tür:<{2}>. Gerçek tür:<{3}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dizeyi arar: {1} dizinindeki öğe (null). Beklenen tür:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle bitmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Geçersiz bağımsız değişken. EqualsTester null değerler kullanamaz. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} türündeki nesne {1} türüne dönüştürülemiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Başvurulan iç nesne artık geçerli değil. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} özelliği {1} türüne sahip; beklenen tür {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} Beklenen tür:<{1}>. Gerçek tür:<{2}>. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yanlış Tür:<{1}>. Gerçek tür:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: No DataRowAttribute belirtilmedi. DataTestMethodAttribute ile en az bir DataRowAttribute gereklidir. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Özel durum oluşturulmadı. {1} özel durumu bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. Değer null olamaz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Farklı sayıda öğe. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen imzaya sahip oluşturucu bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi + tanımlayan türü PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen üye ({0}) bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi tanımlayan türü + PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle başlamıyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen özel durum türü System.Exception veya System.Exception'dan türetilmiş bir tür olmalıdır. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Bir özel durum nedeniyle {0} türündeki özel durum için ileti alınamadı. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu beklenen {0} özel durumunu oluşturmadı. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu bir özel durum oluşturmadı. Test metodunda tanımlanan {0} özniteliği tarafından bir özel durum bekleniyordu. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu veya bundan türetilmiş bir tür bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {2} özel durumu oluşturuldu, ancak {1} özel durumu bekleniyordu. {0} + Özel Durum İletisi: {3} + Yığın İzleme: {4}. + + + + + birim testi sonuçları + + + + + Test yürütüldü ancak sorunlar oluştu. + Sorunlar özel durumları veya başarısız onaylamaları içerebilir. + + + + + Test tamamlandı ancak başarılı olup olmadığı belli değil. + İptal edilen testler için kullanılabilir. + + + + + Test bir sorun olmadan yürütüldü. + + + + + Test şu anda yürütülüyor. + + + + + Test yürütülmeye çalışılırken bir sistem hatası oluştu. + + + + + Test zaman aşımına uğradı. + + + + + Test, kullanıcı tarafından iptal edildi. + + + + + Test bilinmeyen bir durumda + + + + + Birim testi çerçevesi için yardımcı işlevini sağlar + + + + + Yinelemeli olarak tüm iç özel durumların iletileri dahil olmak üzere + özel durum iletilerini alır + + Şunun için iletilerin alınacağı özel durum: + hata iletisi bilgilerini içeren dize + + + + Zaman aşımları için sınıfı ile birlikte kullanılabilen sabit listesi. + Sabit listesinin türü eşleşmelidir + + + + + Sonsuz. + + + + + Test sınıfı özniteliği. + + + + + Bu testi çalıştırmayı sağlayan bir test metodu özniteliği alır. + + Bu metot üzerinde tanımlanan test metodu özniteliği örneği. + The bu testi çalıştırmak için kullanılabilir. + Extensions can override this method to customize how all methods in a class are run. + + + + Test metodu özniteliği. + + + + + Bir test metodu yürütür. + + Yürütülecek test metodu. + Testin sonuçlarını temsil eden bir TestResult nesneleri dizisi. + Extensions can override this method to customize running a TestMethod. + + + + Test başlatma özniteliği. + + + + + Test temizleme özniteliği. + + + + + Ignore özniteliği. + + + + + Test özelliği özniteliği. + + + + + sınıfının yeni bir örneğini başlatır. + + + Ad. + + + Değer. + + + + + Adı alır. + + + + + Değeri alır. + + + + + Sınıf başlatma özniteliği. + + + + + Sınıf temizleme özniteliği. + + + + + Bütünleştirilmiş kod başlatma özniteliği. + + + + + Bütünleştirilmiş kod temizleme özniteliği. + + + + + Test Sahibi + + + + + sınıfının yeni bir örneğini başlatır. + + + Sahip. + + + + + Sahibi alır. + + + + + Priority özniteliği; birim testinin önceliğini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Öncelik. + + + + + Önceliği alır. + + + + + Testin açıklaması + + + + + Bir testi açıklamak için kullanılan sınıfının yeni bir örneğini başlatır. + + Açıklama. + + + + Bir testin açıklamasını alır. + + + + + CSS Proje Yapısı URI'si + + + + + CSS Proje Yapısı URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Proje Yapısı URI'si. + + + + CSS Proje Yapısı URI'sini alır. + + + + + CSS Yineleme URI'si + + + + + CSS Yineleme URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Yineleme URI'si. + + + + CSS Yineleme URI'sini alır. + + + + + WorkItem özniteliği; bu testle ilişkili bir çalışma öğesini belirtmek için kullanılır. + + + + + WorkItem Özniteliği için sınıfının yeni bir örneğini başlatır. + + Bir iş öğesinin kimliği. + + + + İlişkili bir iş öğesinin kimliğini alır. + + + + + Timeout özniteliği; bir birim testinin zaman aşımını belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Zaman aşımı. + + + + + sınıfının önceden ayarlanmış bir zaman aşımı ile yeni bir örneğini başlatır + + + Zaman aşımı + + + + + Zaman aşımını alır. + + + + + Bağdaştırıcıya döndürülecek TestResult nesnesi. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + Sonucun görünen adını alır veya ayarlar. Birden fazla sonuç döndürürken yararlıdır. + Null ise Metot adı DisplayName olarak kullanılır. + + + + + Test yürütmesinin sonucunu alır veya ayarlar. + + + + + Test başarısız olduğunda oluşturulan özel durumu alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test koduna göre hata ayıklama izlemelerini alır veya ayarlar. + + + + + Gets or sets the debug traces by test code. + + + + + Test yürütme süresini alır veya ayarlar. + + + + + Veri kaynağındaki veri satırı dizinini alır veya ayarlar. Yalnızca, veri tabanlı bir testin tek bir veri satırının + çalıştırılmasına ait sonuçlar için ayarlayın. + + + + + Test metodunun dönüş değerini alır veya ayarlar. (Şu anda her zaman null). + + + + + Test tarafından eklenen sonuç dosyalarını alır veya ayarlar. + + + + + Veri tabanlı test için bağlantı dizesini, tablo adını ve satır erişim metodunu belirtir. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource için varsayılan sağlayıcı adı. + + + + + Varsayılan veri erişimi metodu. + + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı, bağlantı dizesi, veri tablosu ve veri kaynağına erişmek için kullanılan veri erişimi metodu ile başlatılır. + + System.Data.SqlClient gibi değişmez veri sağlayıcısı adı + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + Verilere erişme sırasını belirtir. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir bağlantı dizesi ve tablo adı ile başlatılır. + OLEDB veri kaynağına erişmek için kullanılan bağlantı dizesini ve veri tablosunu belirtin. + + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı ile ve ayar adıyla ilişkili bir bağlantı dizesi ile başlatılır. + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan veri kaynağının adı. + + + + Veri kaynağının veri sağlayıcısını temsil eden bir değer alır. + + + Veri sağlayıcısı adı. Nesne başlatılırken bir veri sağlayıcısı belirtilmemişse varsayılan System.Data.OleDb sağlayıcısı döndürülür. + + + + + Veri kaynağının bağlantı dizesini temsil eden bir değer alır. + + + + + Verileri sağlayan tablo adını belirten bir değer alır. + + + + + Veri kaynağına erişmek için kullanılan metodu alır. + + + + Bir değerlerdir. Eğer başlatılmazsa, varsayılan değeri döndürür . + + + + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan bir veri kaynağının adını alır. + + + + + Verilerin satır içi belirtilebileceği veri tabanlı testin özniteliği. + + + + + Tüm veri satırlarını bulur ve yürütür. + + + Test Yöntemi. + + + Bir . + + + + + Veri tabanlı test metodunu çalıştırır. + + Yürütülecek test yöntemi. + Veri Satırı. + Yürütme sonuçları. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..c839eab --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用于为预测试部署指定部署项(文件或目录)。 + 可在测试类或测试方法上指定。 + 可使用多个特性实例来指定多个项。 + 项路径可以是绝对路径或相对路径,如果为相对路径,则相对于 RunConfig.RelativePathRoot。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + 初始化 类的新实例。 + + 要部署的文件或目录。路径与生成输出目录相关。将项复制到与已部署测试程序集相同的目录。 + + + + 初始化 类的新实例 + + 要部署的文件或目录的相对路径或绝对路径。该路径相对于生成输出目录。将项复制到与已部署测试程序集相同的目录。 + 要将项复制到其中的目录路径。它可以是绝对部署目录或相对部署目录。所有由以下对象标识的文件和目录: 将复制到此目录。 + + + + 获取要复制的源文件或文件夹的路径。 + + + + + 获取将项复制到其中的目录路径。 + + + + + TestContext 类。此类应完全抽象,且不包含任何 + 成员。适配器将实现成员。框架中的用户应 + 仅通过定义完善的接口对此进行访问。 + + + + + 获取测试的测试属性。 + + + + + 获取包含当前正在执行的测试方法的类的完全限定名称 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 获取当前正在执行的测试方法的名称 + + + + + 获取当前测试结果。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..0ccce3f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用于执行的 TestMethod。 + + + + + 获取测试方法的名称。 + + + + + 获取测试类的名称。 + + + + + 获取测试方法的返回类型。 + + + + + 获取测试方法的参数。 + + + + + 获取测试方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 调用测试方法。 + + + 传递到测试方法的参数(例如,对于数据驱动) + + + 测试方法调用的结果。 + + + This call handles asynchronous test methods as well. + + + + + 获取测试方法的所有属性。 + + + 父类中定义的任何属性都有效。 + + + 所有特性。 + + + + + 获取特定类型的属性。 + + System.Attribute type. + + 父类中定义的任何属性都有效。 + + + 指定类型的属性。 + + + + + 帮助程序。 + + + + + 非 null 的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws argument null exception when parameter is null. + + + + 不为 null 或不为空的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws ArgumentException when parameter is null. + + + + 枚举在数据驱动测试中访问数据行的方式。 + + + + + 按连续顺序返回行。 + + + + + 按随机顺序返回行。 + + + + + 用于定义测试方法内联数据的属性。 + + + + + 初始化 类的新实例。 + + 数据对象。 + + + + 初始化采用参数数组的 类的新实例。 + + 一个数据对象。 + 更多数据。 + + + + 获取数据以调用测试方法。 + + + + + 在测试结果中为自定义获取或设置显示名称。 + + + + + 断言无结论异常。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + InternalTestFailureException 类。用来指示测试用例的内部错误 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 类的新实例。 + + 异常消息。 + 异常。 + + + + 初始化 类的新实例。 + + 异常消息。 + + + + 初始化 类的新实例。 + + + + + 指定引发指定类型异常的属性 + + + + + 初始化含有预期类型的 类的新实例 + + 预期异常的类型 + + + + 初始化 类的新实例, + 测试未引发异常时,该类中会包含预期类型和消息。 + + 预期异常的类型 + + 测试由于未引发异常而失败时测试结果中要包含的消息 + + + + + 获取指示预期异常类型的值 + + + + + 获取或设置一个值,指示是否允许将派生自预期异常类型的类型 + 作为预期类型 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 验证由单元测试引发的异常类型是否为预期类型 + + 由单元测试引发的异常 + + + + 指定应从单元测试引发异常的属性基类 + + + + + 初始化含有默认无异常消息的 类的新实例 + + + + + 初始化含有一条无异常消息的 类的新实例 + + + 测试由于未引发异常而失败时测试结果中要包含的 + 消息 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 获取默认无异常消息 + + ExpectedException 特性类型名称 + 默认非异常消息 + + + + 确定该异常是否为预期异常。如果返回了方法,则表示 + 该异常为预期异常。如果方法引发异常,则表示 + 该异常不是预期异常,且引发的异常消息 + 包含在测试结果中。为了方便, + 可使用 类。如果使用了 且断言失败, + 则表示测试结果设置为了“无结论”。 + + 由单元测试引发的异常 + + + + 如果异常为 AssertFailedException 或 AssertInconclusiveException,则再次引发该异常 + + 如果是断言异常则要重新引发的异常 + + + + 此类旨在帮助用户使用泛型类型为类型执行单元测试。 + GenericParameterHelper 满足某些常见的泛型类型限制, + 如: + 1.公共默认构造函数 + 2.实现公共接口: IComparable,IEnumerable + + + + + 初始化 类的新实例, + 该类满足 C# 泛型中的“可续订”约束。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 类的新实例, + 该类将数据属性初始化为用户提供的值。 + + 任意整数值 + + + + 获取或设置数据 + + + + + 比较两个 GenericParameterHelper 对象的值 + + 要进行比较的对象 + 如果 obj 与“此”GenericParameterHelper 对象具有相同的值,则为 true。 + 反之则为 false。 + + + + 为此对象返回哈希代码。 + + 哈希代码。 + + + + 比较两个 对象的数据。 + + 要比较的对象。 + + 有符号的数字表示此实例和值的相对值。 + + + Thrown when the object passed in is not an instance of . + + + + + 返回一个 IEnumerator 对象,该对象的长度派生自 + 数据属性。 + + IEnumerator 对象 + + + + 返回与当前对象相同的 GenericParameterHelper + 对象。 + + 克隆对象。 + + + + 允许用户记录/编写单元测试的跟踪以进行诊断。 + + + + + 用于 LogMessage 的处理程序。 + + 要记录的消息。 + + + + 要侦听的事件。单元测试编写器编写某些消息时引发。 + 主要供适配器使用。 + + + + + 测试编写器要将其调用到日志消息的 API。 + + 带占位符的字符串格式。 + 占位符的参数。 + + + + TestCategory 属性;用于指定单元测试的分类。 + + + + + 初始化 类的新实例并将分类应用到该测试。 + + + 测试类别。 + + + + + 获取已应用到测试的测试类别。 + + + + + "Category" 属性的基类 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 类的新实例。 + 将分类应用到测试。TestCategories 返回的字符串 + 与 /category 命令一起使用,以筛选测试 + + + + + 获取已应用到测试的测试分类。 + + + + + AssertFailedException 类。用于指示测试用例失败 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + 帮助程序类的集合,用于测试单元测试中 + 的各种条件。如果不满足被测条件,则引发 + 一个异常。 + + + + + 获取 Assert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is false. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is true. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null. + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if refers to the same object + as . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is not equal to . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 引发 AssertFailedException。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 静态相等重载用于比较两种类型实例的引用 + 相等。此方法应用于比较两个实例的 + 相等。此对象始终会引发 Assert.Fail。请在单元测试中使用 + Assert.AreEqual 和关联的重载。 + + 对象 A + 对象 B + 始终为 False。 + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + + 在格式化时使用的参数数组 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 将 null 字符("\0")替换为 "\\0"。 + + + 要搜索的字符串。 + + + 其中 null 字符替换为 "\\0" 的转换字符串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 用于创建和引发 AssertionFailedException 的帮助程序函数 + + + 引发异常的断言名称 + + + 描述断言失败条件的消息 + + + 参数。 + + + + + 检查有效条件的参数 + + + 参数。 + + + 断言名称。 + + + 参数名称 + + + 无效参数异常的消息 + + + 参数。 + + + + + 将对象安全地转换为字符串,处理 null 值和 null 字符。 + 将 null 值转换为 "(null)"。将 null 字符转换为 "\\0"。 + + + 要转换为字符串的对象。 + + + 转换的字符串。 + + + + + 字符串断言。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not begin with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not end with + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not match + . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if matches . + + + + + 帮助程序类的集合,用于测试与单元测试内的集合相关联的 + 多种条件。如果不满足被测条件, + 则引发一个异常。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is found in + . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a null element is found in . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if every element in is also found in + . + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组。 + + + Thrown if is equal to . + + + + + 确定第一个集合是否为第二个 + 集合的子集。如果任一集合包含重复元素,则子集中元素 + 出现的次数必须小于或 + 等于在超集中元素出现的次数。 + + + 测试预期包含在以下对象中的集合: 。 + + + 测试预期要包含的集合 。 + + + 为 True,如果 是一个子集 + ,反之则为 False。 + + + + + 构造包含指定集合中每个元素的出现次数 + 的字典。 + + + 要处理的集合。 + + + 集合中 null 元素的数量。 + + + 包含指定集合中每个元素的发生次数 + 的字典。 + + + + + 在两个集合之间查找不匹配的元素。不匹配的元素是指 + 在预期集合中显示的次数与 + 在实际集合中显示的次数不相同的元素。假定 + 集合是具有相同元素数目 + 的不同非 null 引用。 调用方负责此级别的验证。 + 如果存在不匹配的元素,函数将返回 + false,并且不会使用 out 参数。 + + + 要比较的第一个集合。 + + + 要比较的第二个集合。 + + + 预期出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 实际出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 不匹配元素(可能为 null),或者如果没有不匹配元素, + 则为 null。 + + + 如果找到不匹配的元素,则为 True;反之则为 False。 + + + + + 使用 Object.Equals 比较对象 + + + + + 框架异常的基类。 + + + + + 初始化 类的新实例。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 一个强类型资源类,用于查找已本地化的字符串等。 + + + + + 返回此类使用的缓存的 ResourceManager 实例。 + + + + + 使用此强类型资源类为所有资源查找替代 + 当前线程的 CurrentUICulture 属性。 + + + + + 查找类似于“访问字符串具有无效语法。”的已本地化字符串。 + + + + + 查找类似于“预期集合包含 {1} 个 <{2}> 的匹配项。实际集合包含 {3} 个匹配项。{0}”的已本地化字符串。 + + + + + 查找类似于“找到了重复项: <{1}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际值的大小写有所不同: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应不大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1} ({2})>。实际为: <{3} ({4})>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为除 <{1}>外的任何值。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“不要向 AreSame() 传递值类型。转换为对象的值永远不会相同。请考虑使用 AreEqual()。{0}”的已本地化字符串。 + + + + + 查找类似于“{0} 失败。{1}”的已本地化字符串。 + + + + + 查找类似于“不支持具有 UITestMethodAttribute 的异步 TestMethod。请删除异步或使用 TestMethodAttribute。” 的已本地化字符串。 + + + + + 查找类似于“这两个集合都为空。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同元素。”的已本地化字符串。 + + + + + 查找类似于“这两个集合引用指向同一个集合对象。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同的元素。{0}”的已本地化字符串。 + + + + + 查找类似于“{0}({1})”的已本地化字符串。 + + + + + 查找类似于 "(null)" 的已本地化字符串。 + + + + + 查找类似于“(对象)”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不包含字符串“{1}”。{2}。”的已本地化字符串。 + + + + + 查找类似于“{0} ({1})”的已本地化字符串。 + + + + + 查找类似于“Assert.Equals 不应用于断言。请改用 Assert.AreEqual 和重载。”的已本地化字符串。 + + + + + 查找类似于“集合中的元素数目不匹配。预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {0} 处的元素不匹配。”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素不是预期类型。预期类型为: <{2}>。实际类型为: <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素为 (null)。预期类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”结尾。{2}。”的已本地化字符串。 + + + + + 查找类似于“参数无效 - EqualsTester 不能使用 null。”的已本地化字符串。 + + + + + 查找类似于“无法将类型 {0} 的对象转换为 {1}。”的本地化字符串。 + + + + + 查找类似于“引用的内部对象不再有效。”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。{1}。”的已本地化字符串。 + + + + + 查找类似于“属性 {0} 具有类型 {1};预期类型为 {2}。”的已本地化字符串。 + + + + + 查找类似于“{0} 预期类型: <{1}>。实际类型: <{2}>。”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”不匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“错误类型: <{1}>。实际类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“未指定 DataRowAttribute。DataTestMethodAttribute 至少需要一个 DataRowAttribute。”的已本地化字符串。 + + + + + 查找类似于“未引发异常。预期为 {1} 异常。{0}”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。值不能为 null。{1}。”的已本地化字符串。 + + + + + 查找类似于“不同元素数。”的已本地化字符串。 + + + + + 查找类似于 + “找不到具有指定签名的构造函数。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型传递到 + PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于 + “找不到指定成员({0})。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型 + 传递到 PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”开头。{2}。”的已本地化字符串。 + + + + + 查找类似于“预期异常类型必须是 System.Exception 或派生自 System.Exception 的类型。”的已本地化字符串。 + + + + + 查找类似于“(由于出现异常,未能获取 {0} 类型异常的消息。)”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发预期异常 {0}。{1}”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发异常。预期测试方法上定义的属性 {0} 会引发异常。”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1}。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1} 或从其派生的类型。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“引发异常 {2},但预期为异常 {1}。{0} + 异常消息: {3} + 堆栈跟踪: {4}”的已本地化字符串。 + + + + + 单元测试结果 + + + + + 测试已执行,但出现问题。 + 问题可能涉及异常或失败的断言。 + + + + + 测试已完成,但无法确定它是已通过还是失败。 + 可用于已中止的测试。 + + + + + 测试已执行,未出现任何问题。 + + + + + 当前正在执行测试。 + + + + + 尝试执行测试时出现了系统错误。 + + + + + 测试已超时。 + + + + + 用户中止了测试。 + + + + + 测试处于未知状态 + + + + + 为单元测试框架提供帮助程序功能 + + + + + 以递归方式获取包括所有内部异常消息在内的 + 异常消息 + + 获取消息的异常 + 包含错误消息信息的字符串 + + + + 超时枚举,可与 类共同使用。 + 枚举类型必须相符 + + + + + 无限。 + + + + + 测试类属性。 + + + + + 获取可运行此测试的测试方法属性。 + + 在此方法上定义的测试方法属性实例。 + 将用于运行此测试。 + Extensions can override this method to customize how all methods in a class are run. + + + + 测试方法属性。 + + + + + 执行测试方法。 + + 要执行的测试方法。 + 表示测试结果的 TestResult 对象数组。 + Extensions can override this method to customize running a TestMethod. + + + + 测试初始化属性。 + + + + + 测试清理属性。 + + + + + 忽略属性。 + + + + + 测试属性特性。 + + + + + 初始化 类的新实例。 + + + 名称。 + + + 值。 + + + + + 获取名称。 + + + + + 获取值。 + + + + + 类初始化属性。 + + + + + 类清理属性。 + + + + + 程序集初始化属性。 + + + + + 程序集清理属性。 + + + + + 测试所有者 + + + + + 初始化 类的新实例。 + + + 所有者。 + + + + + 获取所有者。 + + + + + 优先级属性;用于指定单元测试的优先级。 + + + + + 初始化 类的新实例。 + + + 属性。 + + + + + 获取属性。 + + + + + 测试的描述 + + + + + 初始化 类的新实例,描述测试。 + + 说明。 + + + + 获取测试的说明。 + + + + + CSS 项目结构 URI + + + + + 为 CSS 项目结构 URI 初始化 类的新实例。 + + CSS 项目结构 URI。 + + + + 获取 CSS 项目结构 URI。 + + + + + CSS 迭代 URI + + + + + 为 CSS 迭代 URI 初始化 类的新实例。 + + CSS 迭代 URI。 + + + + 获取 CSS 迭代 URI。 + + + + + 工作项属性;用来指定与此测试关联的工作项。 + + + + + 为工作项属性初始化 类的新实例。 + + 工作项的 ID。 + + + + 获取关联工作项的 ID。 + + + + + 超时属性;用于指定单元测试的超时。 + + + + + 初始化 类的新实例。 + + + 超时。 + + + + + 初始化含有预设超时的 类的新实例 + + + 超时 + + + + + 获取超时。 + + + + + 要返回到适配器的 TestResult 对象。 + + + + + 初始化 类的新实例。 + + + + + 获取或设置结果的显示名称。这在返回多个结果时很有用。 + 如果为 null,则表示方法名用作了 DisplayName。 + + + + + 获取或设置测试执行的结果。 + + + + + 获取或设置测试失败时引发的异常。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 通过测试代码获取或设置调试跟踪。 + + + + + Gets or sets the debug traces by test code. + + + + + 获取或设置测试执行的持续时间。 + + + + + 获取或设置数据源中的数据行索引。仅对数据驱动测试的数据行单次运行结果 + 进行设置。 + + + + + 获取或设置测试方法的返回值。(当前始终为 null)。 + + + + + 获取或设置测试附加的结果文件。 + + + + + 为数据驱动测试指定连接字符串、表名和行访问方法。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource 的默认提供程序名称。 + + + + + 默认数据访问方法。 + + + + + 初始化 类的新实例。将使用数据提供程序、连接字符串、数据表和访问数据源的数据访问方法初始化此实例。 + + 不变的数据提供程序名称,例如 System.Data.SqlClient + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + 指定访问数据的顺序。 + + + + 初始化 类的新实例。将使用连接字符串和表名初始化此实例。 + 指定连接字符串和数据表,访问 OLEDB 数据源。 + + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + + + + 初始化 类的新实例。将使用数据提供程序和与设置名称关联的连接字符串初始化此实例。 + + 在 app.config 文件中 <microsoft.visualstudio.qualitytools> 部分找到的数据源的名称。 + + + + 获取表示数据源的数据提供程序的值。 + + + 数据提供程序名称。如果数据提供程序未在对象初始化时进行指定,则将返回 System.Data.OleDb 的默认提供程序。 + + + + + 获取表示数据源的连接字符串的值。 + + + + + 获取指示提供数据的表名的值。 + + + + + 获取用于访问数据源的方法。 + + + + 其中一个 值。如果 未初始化,这将返回默认值。 + + + + + 获取 app.config 文件的 <microsoft.visualstudio.qualitytools> 部分中找到的数据源的名称。 + + + + + 可在其中将数据指定为内联的数据驱动测试的属性。 + + + + + 查找所有数据行并执行。 + + + 测试方法。 + + + 一系列。 + + + + + 运行数据驱动测试方法。 + + 要执行的测试方法。 + 数据行。 + 执行的结果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..f335cdf --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,93 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用來指定每個測試部署的部署項目 (檔案或目錄)。 + 可以指定於測試類別或測試方法。 + 可以有屬性的多個執行個體來指定多個項目。 + 項目路徑可以是相對或絕對路徑,如果是相對路徑,則是 RunConfig.RelativePathRoot 的相對路徑。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + DeploymentItemAttribute is currently not supported in .Net Core. This is just a placehodler for support in the future. + + + + + 初始化 類別的新執行個體。 + + 要部署的檔案或目錄。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + + + + 初始化 類別的新執行個體 + + 要部署之檔案或目錄的相對或絕對路徑。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + 要將項目複製到其中之目錄的路徑。它可以是部署目錄的絕對或相對路徑。下者所識別的所有檔案和目錄: 將會複製到這個目錄中。 + + + + 取得要複製之來源檔案或資料夾的路徑。 + + + + + 取得要將項目複製到其中之目錄的路徑。 + + + + + TestContext 類別。這個類別應該是完全抽象的,而且未包含任何 + 成員。配接器將會實作成員。架構中的使用者只 + 應透過妥善定義的介面來存取這個項目。 + + + + + 取得測試的測試屬性。 + + + + + 取得包含目前正在執行之測試方法的類別完整名稱 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 取得目前正在執行的測試方法名稱 + + + + + 取得目前測試結果。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..611e17b --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/netstandard1.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用於執行的 TestMethod。 + + + + + 取得測試方法的名稱。 + + + + + 取得測試類別的名稱。 + + + + + 取得測試方法的傳回型別。 + + + + + 取得測試方法的參數。 + + + + + 取得測試方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 叫用測試方法。 + + + 要傳遞至測試方法的引數。(例如,針對資料驅動) + + + 測試方法引動過程結果。 + + + This call handles asynchronous test methods as well. + + + + + 取得測試方法的所有屬性。 + + + 父類別中定義的屬性是否有效。 + + + 所有屬性。 + + + + + 取得特定類型的屬性。 + + System.Attribute type. + + 父類別中定義的屬性是否有效。 + + + 指定類型的屬性。 + + + + + 協助程式。 + + + + + 檢查參數不為 null。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws argument null exception when parameter is null. + + + + 檢查參數不為 null 或為空白。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws ArgumentException when parameter is null. + + + + 如何在資料驅動測試中存取資料列的列舉。 + + + + + 會以循序順序傳回資料列。 + + + + + 會以隨機順序傳回資料列。 + + + + + 用以定義測試方法之內嵌資料的屬性。 + + + + + 初始化 類別的新執行個體。 + + 資料物件。 + + + + 初始化 類別 (其採用引數的陣列) 的新執行個體。 + + 資料物件。 + 其他資料。 + + + + 取得用於呼叫測試方法的資料。 + + + + + 取得或設定測試結果中的顯示名稱來進行自訂。 + + + + + 判斷提示結果不明例外狀況。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + InternalTestFailureException 類別。用來表示測試案例的內部失敗 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 屬性,其指定預期所指定類型的例外狀況 + + + + + 初始化具預期類型之 類別的新執行個體 + + 預期的例外狀況類型 + + + + 初始化 類別 + (其具預期類型及訊息,用以在測試未擲回任何例外狀況時予以納入) 的新執行個體。 + + 預期的例外狀況類型 + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的訊息 + + + + + 取得值,指出預期例外狀況的類型 + + + + + 取得或設定值,指出是否允許類型衍生自預期例外狀況類型, + 以符合預期 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 驗證預期有單元測試所擲回的例外狀況類型 + + 單元測試所擲回的例外狀況 + + + + 指定以預期單元測試發生例外狀況之屬性的基底類別 + + + + + 使用預設無例外狀況訊息初始化 類別的新執行個體 + + + + + 初始化具無例外狀況訊息之 類別的新執行個體 + + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的 + 訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 取得預設無例外狀況訊息 + + ExpectedException 屬性類型名稱 + 預設無例外狀況訊息 + + + + 判斷是否預期會發生例外狀況。如果傳回方法,則了解 + 預期會發生例外狀況。如果方法擲回例外狀況,則了解 + 預期不會發生例外狀況,而且測試結果中 + 會包含所擲回例外狀況的訊息。 類別可以基於便利 + 使用。如果使用 並且判斷提示失敗, + 則測試結果設定為 [結果不明]。 + + 單元測試所擲回的例外狀況 + + + + 如果它是 AssertFailedException 或 AssertInconclusiveException,會重新擲回例外狀況 + + 如果是判斷提示例外狀況,則重新擲回例外狀況 + + + + 這個類別的設計目的是要協助使用者執行使用泛型型別之類型的單元測試。 + GenericParameterHelper 滿足一些常用泛型型別條件約束 + 例如: + 1. 公用預設建構函式 + 2. 實作公用介面: IComparable、IEnumerable + + + + + 初始化 類別 (其符合 C# 泛型中的 'newable' 限制式) + 的新執行個體。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 類別 (其將 Data 屬性初始化為使用者提供的值) + 的新執行個體。 + + 任何整數值 + + + + 取得或設定資料 + + + + + 執行兩個 GenericParameterHelper 物件的值比較 + + 要與之執行比較的物件 + 如果 obj 的值與 'this' GenericParameterHelper 物件相同,則為 true。 + 否則為 false。 + + + + 傳回這個物件的雜湊碼。 + + 雜湊碼。 + + + + 比較這兩個 物件的資料。 + + 要比較的物件。 + + 已簽署的編號,表示此執行個體及值的相對值。 + + + Thrown when the object passed in is not an instance of . + + + + + 傳回長度衍生自 Data 屬性的 + IEnumerator 物件。 + + IEnumerator 物件 + + + + 傳回等於目前物件的 + GenericParameterHelper 物件。 + + 複製的物件。 + + + + 讓使用者從單位測試記錄/寫入追蹤以進行診斷。 + + + + + LogMessage 的處理常式。 + + 要記錄的訊息。 + + + + 要接聽的事件。在單元測試寫入器寫入一些訊息時引發。 + 主要由配接器取用。 + + + + + API,供測試寫入者呼叫以記錄訊息。 + + 含預留位置的字串格式。 + 預留位置的參數。 + + + + TestCategory 屬性; 用來指定單元測試的分類。 + + + + + 初始化 類別的新執行個體,並將分類套用至測試。 + + + 測試「分類」。 + + + + + 取得已套用至測試的測試分類。 + + + + + "Category" 屬性的基底類別 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 類別的新執行個體。 + 將分類套用至測試。TestCategories 所傳回的字串 + 會與 /category 命令搭配使用,以篩選測試 + + + + + 取得已套用至測試的測試分類。 + + + + + AssertFailedException 類別。用來表示測試案例失敗 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 要測試單元測試內各種條件的協助程式類別集合。 + 如果不符合正在測試的條件,則會擲回 + 例外狀況。 + + + + + 取得 Assert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is true. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null. + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is not equal to . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 擲回 AssertFailedException。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 「靜態等於多載」用於比較兩種類型的執行個體的參考 + 相等。這種方法不應該用於比較兩個執行個體是否 + 相等。這個物件一律會擲出 Assert.Fail。請在單元測試中使用 + Assert.AreEqual 和相關聯多載。 + + 物件 A + 物件 B + 一律為 False。 + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 以 "\\0" 取代 null 字元 ('\0')。 + + + 要搜尋的字串。 + + + null 字元以 "\\0" 取代的已轉換字串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 建立並擲回 AssertionFailedException 的 Helper 函數 + + + 擲回例外狀況的判斷提示名稱 + + + 描述判斷提示失敗條件的訊息 + + + 參數。 + + + + + 檢查參數的有效條件 + + + 參數。 + + + 判斷提示「名稱」。 + + + 參數名稱 + + + 無效參數例外狀況的訊息 + + + 參數。 + + + + + 將物件安全地轉換成字串,並處理 null 值和 null 字元。 + Null 值會轉換成 "(null)"。Null 字元會轉換成 "\\0"。 + + + 要轉換為字串的物件。 + + + 已轉換的字串。 + + + + + 字串判斷提示。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if matches . + + + + + 要測試與單元測試內集合相關聯之各種條件的 + 協助程式類別集合。如果不符合正在測試的條件, + 則會擲回例外狀況。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is found in + . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if every element in is also found in + . + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 參數陣列,使用時機為格式 。 + + + Thrown if is equal to . + + + + + 判斷第一個集合是否為第二個集合的子集。 + 如果任一個集合包含重複的元素,則元素 + 在子集中的出現次數必須小於或 + 等於在超集中的出現次數。 + + + 測試預期包含在下者中的集合: 。 + + + 測試預期包含下者的集合: 。 + + + True 的情況為 是下者的子集: + ,否則為 false。 + + + + + 建構字典,內含每個元素在所指定集合中 + 的出現次數。 + + + 要處理的集合。 + + + 集合中的 null 元素數目。 + + + 包含每個元素在所指定集合內之出現次數 + 的字典。 + + + + + 尋找兩個集合之間不相符的元素。不相符的元素 + 為出現在預期集合中的次數 + 不同於它在實際集合中出現的次數。 + 集合假設為具有數目相同之元素的不同非 null 參考。 + 呼叫者負責這個層級的驗證。 + 如果沒有不相符的元素,則函數會傳回 false, + 而且不應該使用 out 參數。 + + + 要比較的第一個集合。 + + + 要比較的第二個集合。 + + + 下者的預期出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 下者的實際出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 不相符的元素 (可能為 null) 或 null (如果沒有 + 不相符的元素)。 + + + 如果找到不相符的元素,則為 true,否則為 false。 + + + + + 使用 object.Equals 來比較物件 + + + + + 架構例外狀況的基底類別。 + + + + + 初始化 類別的新執行個體。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 強型別資源類別,用於查詢當地語系化字串等。 + + + + + 傳回這個類別所使用的快取的 ResourceManager 執行個體。 + + + + + 針對使用這個強型別資源類別的所有資源查閱, + 覆寫目前執行緒的 CurrentUICulture 屬性。 + + + + + 查閱與「存取字串有無效的語法。」類似的當地語系化字串。 + + + + + 查閱與「預期在集合中包含 {1} 項 <{2}>,但實際的集合卻有 {3} 項。{0}」類似的當地語系化字串。 + + + + + 查閱與「找到重複的項目:<{1}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。大小寫與下列實際值不同:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異不大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1} ({2})>。實際:<{3} ({4})>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期任何值 (<{1}> 除外)。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「不要將實值型別傳遞給 AreSame()。轉換成 Object 的值從此不再一樣。請考慮使用 AreEqual()。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0} 失敗。{1}」類似的當地語系化字串。 + + + + + 不支援查詢類似非同步處理 TestMethod 與 UITestMethodAttribute 的當地語系化字串。移除非同步處理或使用 TestMethodAttribute。 + + + + + 查閱與「兩個集合都是空的。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。」類似的當地語系化字串。 + + + + + 查閱與「兩個集合參考都指向同一個集合物件。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「(null)」類似的當地語系化字串。 + + + + + 查閱與「(物件)」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 未包含字串 '{1}'。{2}。」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「Assert.Equals 不應使用於判斷提示。請改用 Assert.AreEqual 及多載。」類似的當地語系化字串。 + + + + + 查閱與「集合中的元素數目不符。預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {0} 的元素不符。」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的項目不是預期的類型。預期的類型:<{2}>。實際的類型:<{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的元素是 (null)。預期的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 結尾。{2}。」類似的當地語系化字串。 + + + + + 查閱與「無效的引數 - EqualsTester 無法使用 null。」類似的當地語系化字串。 + + + + + 查閱與「無法將 {0} 類型的物件轉換為 {1}。」類似的當地語系化字串。 + + + + + 查閱與「所參考的內部物件已不再有效。」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。{1}。」類似的當地語系化字串。 + + + + + 查閱與「屬性 {0} 具有類型 {1}; 預期為類型 {2}。」類似的當地語系化字串。 + + + + + 查閱與「{0} 預期的類型:<{1}>。實際的類型:<{2}>。」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 不符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「錯誤的類型:<{1}>。實際的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 相符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「未指定 DataRowAttribute。至少一個 DataRowAttribute 必須配合 DataTestMethodAttribute 使用。」類似的當地語系化字串。 + + + + + 查閱與「未擲回任何例外狀況。預期為 {1} 例外狀況。{0}」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。值不能為 null。{1}。」類似的當地語系化字串。 + + + + + 查閱與「元素數目不同。」類似的當地語系化字串。 + + + + + 查閱與「找不到具有所指定簽章的建構函式。 + 您可能必須重新產生私用存取子,或者該成員可能為私用, + 並且定義在基底類別上。如果是後者,您必須將定義 + 該成員的類型傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「找不到所指定的成員 ({0})。 + 您可能必須重新產生私用存取子, + 或者該成員可能為私用,並且定義在基底類別上。如果是後者,您必須將定義該成員的類型 + 傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 開頭。{2}。」類似的當地語系化字串。 + + + + + 查閱與「預期的例外狀況類型必須是 System.Exception 或衍生自 System.Exception 的類型。」類似的當地語系化字串。 + + + + + 查閱與「(由於發生例外狀況,所以無法取得 {0} 類型之例外狀況的訊息。)」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回預期的例外狀況 {0}。{1}」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回例外狀況。測試方法上定義的屬性 {0} 需要例外狀況。」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1}。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1} 或由它衍生的類型。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「擲回例外狀況 {2},但需要的是例外狀況 {1}。{0} + 例外狀況訊息: {3} + 堆疊追蹤: {4}」類似的當地語系化字串。 + + + + + 單元測試結果 + + + + + 已執行測試,但發生問題。 + 問題可能包含例外狀況或失敗的判斷提示。 + + + + + 測試已完成,但是無法指出成功還是失敗。 + 可能用於已中止測試。 + + + + + 已執行測試且沒有任何問題。 + + + + + 目前正在執行測試。 + + + + + 嘗試執行測試時發生系統錯誤。 + + + + + 測試逾時。 + + + + + 使用者已中止測試。 + + + + + 測試處於未知狀態 + + + + + 提供單元測試架構的協助程式功能 + + + + + 遞迴地取得例外狀況訊息 (包含所有內部例外狀況 + 的訊息) + + 要為其取得訊息的例外狀況 + 含有錯誤訊息資訊的字串 + + + + 逾時的列舉,可以與 類別搭配使用。 + 列舉的類型必須相符 + + + + + 無限。 + + + + + 測試類別屬性。 + + + + + 取得可讓您執行此測試的測試方法屬性。 + + 此方法上所定義的測試方法屬性執行個體。 + 要用來執行此測試。 + Extensions can override this method to customize how all methods in a class are run. + + + + 測試方法屬性。 + + + + + 執行測試方法。 + + 要執行的測試方法。 + 代表測試結果的 TestResult 物件陣列。 + Extensions can override this method to customize running a TestMethod. + + + + 測試初始化屬性。 + + + + + 測試清除屬性。 + + + + + Ignore 屬性。 + + + + + 測試屬性 (property) 屬性 (attribute)。 + + + + + 初始化 類別的新執行個體。 + + + 名稱。 + + + 值。 + + + + + 取得名稱。 + + + + + 取得值。 + + + + + 類別會將屬性初始化。 + + + + + 類別清除屬性。 + + + + + 組件會將屬性初始化。 + + + + + 組件清除屬性。 + + + + + 測試擁有者 + + + + + 初始化 類別的新執行個體。 + + + 擁有者。 + + + + + 取得擁有者。 + + + + + Priority 屬性; 用來指定單元測試的優先順序。 + + + + + 初始化 類別的新執行個體。 + + + 優先順序。 + + + + + 取得優先順序。 + + + + + 測試描述 + + + + + 初始化 類別的新執行個體來描述測試。 + + 描述。 + + + + 取得測試的描述。 + + + + + CSS 專案結構 URI + + + + + 初始化用於 CSS 專案結構 URI 之 類別的新執行個體。 + + CSS 專案結構 URI。 + + + + 取得 CSS 專案結構 URI。 + + + + + CSS 反覆項目 URI + + + + + 初始化用於 CSS 反覆項目 URI 之 類別的新執行個體。 + + CSS 反覆項目 URI。 + + + + 取得 CSS 反覆項目 URI。 + + + + + 工作項目屬性; 用來指定與這個測試相關聯的工作項目。 + + + + + 初始化用於工作項目屬性之 類別的新執行個體。 + + 工作項目的識別碼。 + + + + 取得建立關聯之工作項目的識別碼。 + + + + + Timeout 屬性; 用來指定單元測試的逾時。 + + + + + 初始化 類別的新執行個體。 + + + 逾時。 + + + + + 初始化具有預設逾時之 類別的新執行個體 + + + 逾時 + + + + + 取得逾時。 + + + + + 要傳回給配接器的 TestResult 物件。 + + + + + 初始化 類別的新執行個體。 + + + + + 取得或設定結果的顯示名稱。適用於傳回多個結果時。 + 如果為 null,則使用「方法名稱」當成 DisplayName。 + + + + + 取得或設定測試執行的結果。 + + + + + 取得或設定測試失敗時所擲回的例外狀況。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 透過測試程式碼取得或設定偵錯追蹤。 + + + + + Gets or sets the debug traces by test code. + + + + + 取得或設定測試執行的持續時間。 + + + + + 取得或設定資料來源中的資料列索引。僅針對個別執行資料驅動測試之資料列 + 的結果所設定。 + + + + + 取得或設定測試方法的傳回值 (目前一律為 null)。 + + + + + 取得或設定測試所附加的結果檔案。 + + + + + 指定連接字串、表格名稱和資料列存取方法來進行資料驅動測試。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + 資料來源的預設提供者名稱。 + + + + + 預設資料存取方法。 + + + + + 初始化 類別的新執行個體。將使用資料提供者、連接字串、運算列表和資料存取方法將這個執行個體初始化,以存取資料來源。 + + 非變異資料提供者名稱 (例如 System.Data.SqlClient) + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + 指定資料的存取順序。 + + + + 初始化 類別的新執行個體。此執行個體將使用連接字串和表格名稱進行初始化。 + 指定連接字串和運算列表以存取 OLEDB 資料來源。 + + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + + + + 初始化 類別的新執行個體。將使用與設定名稱相關聯的資料提供者和連接字串將這個執行個體初始化。 + + 在 app.config 檔案的 <microsoft.visualstudio.qualitytools> 區段中找到資料來源名稱。 + + + + 取得值,代表資料來源的資料提供者。 + + + 資料提供者名稱。如果未在物件初始化時指定資料提供者,將會傳回 System.Data.OleDb 的預設提供者。 + + + + + 取得值,代表資料來源的連接字串。 + + + + + 取得值,指出提供資料的表格名稱。 + + + + + 取得用來存取資料來源的方法。 + + + + 下列其中之一: 值。如果 未進行初始化,則這會傳回預設值 。 + + + + + 取得在 app.config 檔案 <microsoft.visualstudio.qualitytools> 區段中找到的資料來源名稱。 + + + + + 可在其中內嵌指定資料之資料驅動測試的屬性。 + + + + + 尋找所有資料列,並執行。 + + + 測試「方法」。 + + + 下列項目的陣列: 。 + + + + + 執行資料驅動測試方法。 + + 要執行的測試方法。 + 資料列。 + 執行結果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML new file mode 100644 index 0000000..e6410aa --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.XML @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Used to specify deployment item (file or directory) for per-test deployment. + Can be specified on test class or test method. + Can have multiple instances of the attribute to specify more than one item. + The item path can be absolute or relative, if relative, it is relative to RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Initializes a new instance of the class. + + The file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + + + + Initializes a new instance of the class + + The relative or absolute path to the file or directory to deploy. The path is relative to the build output directory. The item will be copied to the same directory as the deployed test assemblies. + The path of the directory to which the items are to be copied. It can be either absolute or relative to the deployment directory. All files and directories identified by will be copied to this directory. + + + + Gets the path of the source file or folder to be copied. + + + + + Gets the path of the directory to which the item is copied. + + + + + Execute test code in UI thread for Windows store apps. + + + + + Executes the test method on the UI Thread. + + + The test method. + + + An array of instances. + + Throws when run on an async test method. + + + + + TestContext class. This class should be fully abstract and not contain any + members. The adapter will implement the members. Users in the framework should + only access this via a well-defined interface. + + + + + Gets test properties for a test. + + + + + Gets Fully-qualified name of the class containing the test method currently being executed + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Gets the Name of the test method currently being executed + + + + + Gets the current test outcome. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.dll new file mode 100644 index 0000000000000000000000000000000000000000..a199f9e286a84f73b5baef0876f1df1678dec044 GIT binary patch literal 25744 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 literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML new file mode 100644 index 0000000..a71d66c --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.XML @@ -0,0 +1,4391 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Specification to disable parallelization. + + + + + Enum to specify whether the data is stored as property or in method. + + + + + Data is declared as property. + + + + + Data is declared in method. + + + + + Attribute to define dynamic data for a test method. + + + + + Initializes a new instance of the class. + + + The name of method or property having test data. + + + Specifies whether the data is stored as property or in method. + + + + + Initializes a new instance of the class when the test data is present in a class different + from test method's class. + + + The name of method or property having test data. + + + The declaring type of property or method having data. Useful in cases when declaring type is present in a class different from + test method's class. If null, declaring type defaults to test method's class type. + + + Specifies whether the data is stored as property or in method. + + + + + Gets or sets the name of method used to customize the display name in test results. + + + + + Gets or sets the declaring type used to customize the display name in test results. + + + + + + + + + + + Specification for parallelization level for a test run. + + + + + The default scope for the parallel run. Although method level gives maximum parallelization, the default is set to + class level to enable maximum number of customers to easily convert their tests to run in parallel. In most cases within + a class tests aren't thread safe. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the number of workers to be used for the parallel run. + + + + + Gets or sets the scope of the parallel run. + + + To enable all classes to run in parallel set this to . + To get the maximum parallelization level set this to . + + + + + Parallel execution mode. + + + + + Each thread of execution will be handed a TestClass worth of tests to execute. + Within the TestClass, the test methods will execute serially. + + + + + Each thread of execution will be handed TestMethods to execute. + + + + + Test data source for data driven tests. + + + + + Gets the test data from custom test data source. + + + The method info of test method. + + + Test data for calling test method. + + + + + Gets the display name corresponding to test data row for displaying in TestResults. + + + The method info of test method. + + + The test data which is passed to test method. + + + The . + + + + + TestMethod for execution. + + + + + Gets the name of test method. + + + + + Gets the name of test class. + + + + + Gets the return type of test method. + + + + + Gets the arguments with which test method is invoked. + + + + + Gets the parameters of test method. + + + + + Gets the methodInfo for test method. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invokes the test method. + + + Arguments to pass to test method. (E.g. For data driven) + + + Result of test method invocation. + + + This call handles asynchronous test methods as well. + + + + + Get all attributes of the test method. + + + Whether attribute defined in parent class is valid. + + + All attributes. + + + + + Get attribute of specific type. + + System.Attribute type. + + Whether attribute defined in parent class is valid. + + + The attributes of the specified type. + + + + + The helper. + + + + + The check parameter not null. + + + The parameter. + + + The parameter name. + + + The message. + + Throws argument null exception when parameter is null. + + + + The check parameter not null or empty. + + + The parameter. + + + The parameter name. + + + The message. + + Throws ArgumentException when parameter is null. + + + + Enumeration for how how we access data rows in data driven testing. + + + + + Rows are returned in sequential order. + + + + + Rows are returned in random order. + + + + + Attribute to define inline data for a test method. + + + + + Initializes a new instance of the class. + + The data object. + + + + Initializes a new instance of the class which takes in an array of arguments. + + A data object. + More data. + + + + Gets data for calling test method. + + + + + Gets or sets display name in test results for customization. + + + + + + + + + + + The assert inconclusive exception. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + InternalTestFailureException class. Used to indicate internal failure for a test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initializes a new instance of the class. + + The exception message. + The exception. + + + + Initializes a new instance of the class. + + The exception message. + + + + Initializes a new instance of the class. + + + + + Attribute that specifies to expect an exception of the specified type + + + + + Initializes a new instance of the class with the expected type + + Type of the expected exception + + + + Initializes a new instance of the class with + the expected type and the message to include when no exception is thrown by the test. + + Type of the expected exception + + Message to include in the test result if the test fails due to not throwing an exception + + + + + Gets a value indicating the Type of the expected exception + + + + + Gets or sets a value indicating whether to allow types derived from the type of the expected exception to + qualify as expected + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Verifies that the type of the exception thrown by the unit test is expected + + The exception thrown by the unit test + + + + Base class for attributes that specify to expect an exception from a unit test + + + + + Initializes a new instance of the class with a default no-exception message + + + + + Initializes a new instance of the class with a no-exception message + + + Message to include in the test result if the test fails due to not throwing an + exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the message to include in the test result if the test fails due to not throwing an exception + + + + + Gets the default no-exception message + + The ExpectedException attribute type name + The default no-exception message + + + + Determines whether the exception is expected. If the method returns, then it is + understood that the exception was expected. If the method throws an exception, then it + is understood that the exception was not expected, and the thrown exception's message + is included in the test result. The class can be used for + convenience. If is used and the assertion fails, + then the test outcome is set to Inconclusive. + + The exception thrown by the unit test + + + + Rethrow the exception if it is an AssertFailedException or an AssertInconclusiveException + + The exception to rethrow if it is an assertion exception + + + + This class is designed to help user doing unit testing for types which uses generic types. + GenericParameterHelper satisfies some common generic type constraints + such as: + 1. public default constructor + 2. implements common interface: IComparable, IEnumerable + + + + + Initializes a new instance of the class that + satisfies the 'newable' constraint in C# generics. + + + This constructor initializes the Data property to a random value. + + + + + Initializes a new instance of the class that + initializes the Data property to a user-supplied value. + + Any integer value + + + + Gets or sets the Data + + + + + Do the value comparison for two GenericParameterHelper object + + object to do comparison with + true if obj has the same value as 'this' GenericParameterHelper object. + false otherwise. + + + + Returns a hashcode for this object. + + The hash code. + + + + Compares the data of the two objects. + + The object to compare with. + + A signed number indicating the relative values of this instance and value. + + + Thrown when the object passed in is not an instance of . + + + + + Returns an IEnumerator object whose length is derived from + the Data property. + + The IEnumerator object + + + + Returns a GenericParameterHelper object that is equal to + the current object. + + The cloned object. + + + + Enables users to log/write traces from unit tests for diagnostics. + + + + + Handler for LogMessage. + + Message to log. + + + + Event to listen. Raised when unit test writer writes some message. + Mainly to consume by adapter. + + + + + API for test writer to call to Log messages. + + String format with placeholders. + Parameters for placeholders. + + + + TestCategory attribute; used to specify the category of a unit test. + + + + + Initializes a new instance of the class and applies the category to the test. + + + The test Category. + + + + + Gets the test categories that has been applied to the test. + + + + + Base class for the "Category" attribute + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initializes a new instance of the class. + Applies the category to the test. The strings returned by TestCategories + are used with the /category command to filter tests + + + + + Gets the test category that has been applied to the test. + + + + + AssertFailedException class. Used to indicate failure for a test case + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + Initializes a new instance of the class. + + + + + A collection of helper classes to test various conditions within + unit tests. If the condition being tested is not met, an exception + is thrown. + + + + + Gets the singleton instance of the Assert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + Thrown if is false. + + + + + Tests whether the specified condition is true and throws an exception + if the condition is false. + + + The condition the test expects to be true. + + + The message to include in the exception when + is false. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is false. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + Thrown if is true. + + + + + Tests whether the specified condition is false and throws an exception + if the condition is true. + + + The condition the test expects to be false. + + + The message to include in the exception when + is true. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is true. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + Thrown if is not null. + + + + + Tests whether the specified object is null and throws an exception + if it is not. + + + The object the test expects to be null. + + + The message to include in the exception when + is not null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + Thrown if is null. + + + + + Tests whether the specified object is non-null and throws an exception + if it is null. + + + The object the test expects not to be null. + + + The message to include in the exception when + is null. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null. + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects both refer to the same object and + throws an exception if the two inputs do not refer to the same object. + + + The first object to compare. This is the value the test expects. + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not the same as . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not refer to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified objects refer to different objects and + throws an exception if the two inputs refer to the same object. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is the same as . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if refers to the same object + as . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is not equal to . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are equal and throws an exception + if the two values are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the tests expects. + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified values are unequal and throws an exception + if the two values are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The type of values to compare. + + + The first value to compare. This is the value the test expects not + to match . + + + The second value to compare. This is the value produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are equal and throws an exception + if the two objects are not equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the object the tests expects. + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified objects are unequal and throws an exception + if the two objects are equal. Different numeric types are treated + as unequal even if the logical values are equal. 42L is not equal to 42. + + + The first object to compare. This is the value the test expects not + to match . + + + The second object to compare. This is the object produced by the code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are equal and throws an exception + if they are not equal. + + + The first float to compare. This is the float the tests expects. + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified floats are unequal and throws an exception + if they are equal. + + + The first float to compare. This is the float the test expects not to + match . + + + The second float to compare. This is the float produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + Thrown if is not equal to + . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are equal and throws an exception + if they are not equal. + + + The first double to compare. This is the double the tests expects. + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by more than . + + + The message to include in the exception when + is different than by more than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + The first double to compare. This is the double the test expects not to + match . + + + The second double to compare. This is the double produced by the code under test. + + + The required accuracy. An exception will be thrown only if + is different than + by at most . + + + The message to include in the exception when + is equal to or different by less than + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are equal and throws an exception + if they are not equal. + + + The first string to compare. This is the string the tests expects. + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. The invariant culture is used for the comparison. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified strings are unequal and throws an exception + if they are equal. + + + The first string to compare. This is the string the test expects not to + match . + + + The second string to compare. This is the string produced by the code under test. + + + A Boolean indicating a case-sensitive or insensitive comparison. (true + indicates a case-insensitive comparison.) + + + A CultureInfo object that supplies culture-specific comparison information. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is an instance of the expected + type and throws an exception if the expected type is not in the + inheritance hierarchy of the object. + + + The object the test expects to be of the specified type. + + + The expected type of . + + + The message to include in the exception when + is not an instance of . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Tests whether the specified object is not an instance of the wrong + type and throws an exception if the specified type is in the + inheritance hierarchy of the object. + + + The object the test expects not to be of the specified type. + + + The type that should not be. + + + The message to include in the exception when + is an instance of . The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Throws an AssertFailedException. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertFailedException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + Always thrown. + + + + + Throws an AssertInconclusiveException. + + + The message to include in the exception. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Always thrown. + + + + + Static equals overloads are used for comparing instances of two types for reference + equality. This method should not be used for comparison of two instances for + equality. This object will always throw with Assert.Fail. Please use + Assert.AreEqual and associated overloads in your unit tests. + + Object A + Object B + False, always. + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The exception that was thrown. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws + + AssertFailedException + + if code does not throws exception or throws exception of type other than . + + + Delegate to code to be tested and which is expected to throw exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Tests whether the code specified by delegate throws exact given exception of type (and not of derived type) + and throws AssertFailedException if code does not throws exception or throws exception of type other than . + + Delegate to code to be tested and which is expected to throw exception. + + The message to include in the exception when + does not throws exception of type . + + + An array of parameters to use when formatting . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + The executing the delegate. + + + + + Replaces null characters ('\0') with "\\0". + + + The string to search. + + + The converted string with null characters replaced by "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Helper function that creates and throws an AssertionFailedException + + + name of the assertion throwing an exception + + + message describing conditions for assertion failure + + + The parameters. + + + + + Checks the parameter for valid conditions + + + The parameter. + + + The assertion Name. + + + parameter name + + + message for the invalid parameter exception + + + The parameters. + + + + + Safely converts an object to a string, handling null values and null characters. + Null values are converted to "(null)". Null characters are converted to "\\0". + + + The object to convert to a string. + + + The converted string. + + + + + The string assert. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert customAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified string contains the specified substring + and throws an exception if the substring does not occur within the + test string. + + + The string that is expected to contain . + + + The string expected to occur within . + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + Thrown if does not begin with + . + + + + + Tests whether the specified string begins with the specified substring + and throws an exception if the test string does not start with the + substring. + + + The string that is expected to begin with . + + + The string expected to be a prefix of . + + + The message to include in the exception when + does not begin with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not begin with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + Thrown if does not end with + . + + + + + Tests whether the specified string ends with the specified substring + and throws an exception if the test string does not end with the + substring. + + + The string that is expected to end with . + + + The string expected to be a suffix of . + + + The message to include in the exception when + does not end with . The message is + shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if does not end with + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + Thrown if does not match + . + + + + + Tests whether the specified string matches a regular expression and + throws an exception if the string does not match the expression. + + + The string that is expected to match . + + + The regular expression that is + expected to match. + + + The message to include in the exception when + does not match . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if does not match + . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + Thrown if matches . + + + + + Tests whether the specified string does not match a regular expression + and throws an exception if the string matches the expression. + + + The string that is expected not to match . + + + The regular expression that is + expected to not match. + + + The message to include in the exception when + matches . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if matches . + + + + + A collection of helper classes to test various conditions associated + with collections within unit tests. If the condition being tested is not + met, an exception is thrown. + + + + + Gets the singleton instance of the CollectionAssert functionality. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert customAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + Thrown if is not found in + . + + + + + Tests whether the specified collection contains the specified element + and throws an exception if the element is not in the collection. + + + The collection in which to search for the element. + + + The element that is expected to be in the collection. + + + The message to include in the exception when + is not in . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + Thrown if is found in + . + + + + + Tests whether the specified collection does not contain the specified + element and throws an exception if the element is in the collection. + + + The collection in which to search for the element. + + + The element that is expected not to be in the collection. + + + The message to include in the exception when + is in . The message is shown in test + results. + + + An array of parameters to use when formatting . + + + Thrown if is found in + . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are non-null and throws + an exception if any element is null. + + + The collection in which to search for null elements. + + + The message to include in the exception when + contains a null element. The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if a null element is found in . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether all items in the specified collection are unique or not and + throws if any two elements in the collection are equal. + + + The collection in which to search for duplicate elements. + + + The message to include in the exception when + contains at least one duplicate element. The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if a two or more equal elements are found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is a subset of another collection and + throws an exception if any element in the subset is not also in the + superset. + + + The collection expected to be a subset of . + + + The collection expected to be a superset of + + + The message to include in the exception when an element in + is not found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is not found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + Thrown if every element in is also found in + . + + + + + Tests whether one collection is not a subset of another collection and + throws an exception if all elements in the subset are also in the + superset. + + + The collection expected not to be a subset of . + + + The collection expected not to be a superset of + + + The message to include in the exception when every element in + is also found in . + The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if every element in is also found in + . + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the same elements and throws an + exception if either collection contains an element not in the other + collection. + + + The first collection to compare. This contains the elements the test + expects. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when an element was found + in one of the collections but not the other. The message is shown + in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether two collections contain the different elements and throws an + exception if the two collections contain identical elements without regard + to order. + + + The first collection to compare. This contains the elements the test + expects to be different than the actual collection. + + + The second collection to compare. This is the collection produced by + the code under test. + + + The message to include in the exception when + contains the same elements as . The message + is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether all elements in the specified collection are instances + of the expected type and throws an exception if the expected type is + not in the inheritance hierarchy of one or more of the elements. + + + The collection containing elements the test expects to be of the + specified type. + + + The expected type of each element of . + + + The message to include in the exception when an element in + is not an instance of + . The message is shown in test results. + + + An array of parameters to use when formatting . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are equal and throws an exception + if the two collections are not equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects. + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is not equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is not equal to + . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + Thrown if is equal to . + + + + + Tests whether the specified collections are unequal and throws an exception + if the two collections are equal. Equality is defined as having the same + elements in the same order and quantity. Different references to the same + value are considered equal. + + + The first collection to compare. This is the collection the tests expects + not to match . + + + The second collection to compare. This is the collection produced by the + code under test. + + + The compare implementation to use when comparing elements of the collection. + + + The message to include in the exception when + is equal to . The message is shown in + test results. + + + An array of parameters to use when formatting . + + + Thrown if is equal to . + + + + + Determines whether the first collection is a subset of the second + collection. If either set contains duplicate elements, the number + of occurrences of the element in the subset must be less than or + equal to the number of occurrences in the superset. + + + The collection the test expects to be contained in . + + + The collection the test expects to contain . + + + True if is a subset of + , false otherwise. + + + + + Constructs a dictionary containing the number of occurrences of each + element in the specified collection. + + + The collection to process. + + + The number of null elements in the collection. + + + A dictionary containing the number of occurrences of each element + in the specified collection. + + + + + Finds a mismatched element between the two collections. A mismatched + element is one that appears a different number of times in the + expected collection than it does in the actual collection. The + collections are assumed to be different non-null references with the + same number of elements. The caller is responsible for this level of + verification. If there is no mismatched element, the function returns + false and the out parameters should not be used. + + + The first collection to compare. + + + The second collection to compare. + + + The expected number of occurrences of + or 0 if there is no mismatched + element. + + + The actual number of occurrences of + or 0 if there is no mismatched + element. + + + The mismatched element (may be null) or null if there is no + mismatched element. + + + true if a mismatched element was found; false otherwise. + + + + + compares the objects using object.Equals + + + + + Base class for Framework Exceptions. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + The message. + The exception. + + + + Initializes a new instance of the class. + + The message. + + + + A strongly-typed resource class, for looking up localized strings, etc. + + + + + Returns the cached ResourceManager instance used by this class. + + + + + Overrides the current thread's CurrentUICulture property for all + resource lookups using this strongly typed resource class. + + + + + Looks up a localized string similar to Access string has invalid syntax.. + + + + + Looks up a localized string similar to The expected collection contains {1} occurrence(s) of <{2}>. The actual collection contains {3} occurrence(s). {0}. + + + + + Looks up a localized string similar to Duplicate item found:<{1}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Case is different for actual value:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference no greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected:<{1} ({2})>. Actual:<{3} ({4})>. {0}. + + + + + Looks up a localized string similar to Expected:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Expected a difference greater than <{3}> between expected value <{1}> and actual value <{2}>. {0}. + + + + + Looks up a localized string similar to Expected any value except:<{1}>. Actual:<{2}>. {0}. + + + + + Looks up a localized string similar to Do not pass value types to AreSame(). Values converted to Object will never be the same. Consider using AreEqual(). {0}. + + + + + Looks up a localized string similar to {0} failed. {1}. + + + + + Looks up a localized string similar to async TestMethod with UITestMethodAttribute are not supported. Either remove async or use TestMethodAttribute.. + + + + + Looks up a localized string similar to Both collections are empty. {0}. + + + + + Looks up a localized string similar to Both collection contain same elements.. + + + + + Looks up a localized string similar to Both collection references point to the same collection object. {0}. + + + + + Looks up a localized string similar to Both collections contain the same elements. {0}. + + + + + Looks up a localized string similar to {0}({1}). + + + + + Looks up a localized string similar to (null). + + + + + Looks up a localized string similar to (object). + + + + + Looks up a localized string similar to String '{0}' does not contain string '{1}'. {2}.. + + + + + Looks up a localized string similar to {0} ({1}). + + + + + Looks up a localized string similar to Assert.Equals should not be used for Assertions. Please use Assert.AreEqual & overloads instead.. + + + + + Looks up a localized string similar to Method {0} must match the expected signature: public static {1} {0}({2}).. + + + + + Looks up a localized string similar to Property or method {0} on {1} does not return IEnumerable<object[]>.. + + + + + Looks up a localized string similar to Value returned by property or method {0} shouldn't be null.. + + + + + Looks up a localized string similar to The number of elements in the collections do not match. Expected:<{1}>. Actual:<{2}>.{0}. + + + + + Looks up a localized string similar to Element at index {0} do not match.. + + + + + Looks up a localized string similar to Element at index {1} is not of expected type. Expected type:<{2}>. Actual type:<{3}>.{0}. + + + + + Looks up a localized string similar to Element at index {1} is (null). Expected type:<{2}>.{0}. + + + + + Looks up a localized string similar to String '{0}' does not end with string '{1}'. {2}.. + + + + + Looks up a localized string similar to Invalid argument- EqualsTester can't use nulls.. + + + + + Looks up a localized string similar to Cannot convert object of type {0} to {1}.. + + + + + Looks up a localized string similar to The internal object referenced is no longer valid.. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. {1}.. + + + + + Looks up a localized string similar to The property {0} has type {1}; expected type {2}.. + + + + + Looks up a localized string similar to {0} Expected type:<{1}>. Actual type:<{2}>.. + + + + + Looks up a localized string similar to String '{0}' does not match pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to Wrong Type:<{1}>. Actual type:<{2}>. {0}. + + + + + Looks up a localized string similar to String '{0}' matches pattern '{1}'. {2}.. + + + + + Looks up a localized string similar to No test data source specified. Atleast one TestDataSource is required with DataTestMethodAttribute.. + + + + + Looks up a localized string similar to No exception thrown. {1} exception was expected. {0}. + + + + + Looks up a localized string similar to The parameter '{0}' is invalid. The value cannot be null. {1}.. + + + + + Looks up a localized string similar to Different number of elements.. + + + + + Looks up a localized string similar to + The constructor with the specified signature could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to + The member specified ({0}) could not be found. You might need to regenerate your private accessor, + or the member may be private and defined on a base class. If the latter is true, you need to pass the type + that defines the member into PrivateObject's constructor. + . + + + + + Looks up a localized string similar to String '{0}' does not start with string '{1}'. {2}.. + + + + + Looks up a localized string similar to The expected exception type must be System.Exception or a type derived from System.Exception.. + + + + + Looks up a localized string similar to (Failed to get the message for an exception of type {0} due to an exception.). + + + + + Looks up a localized string similar to Test method did not throw expected exception {0}. {1}. + + + + + Looks up a localized string similar to Test method did not throw an exception. An exception was expected by attribute {0} defined on the test method.. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Test method threw exception {0}, but exception {1} or a type derived from it was expected. Exception message: {2}. + + + + + Looks up a localized string similar to Threw exception {2}, but exception {1} was expected. {0} + Exception Message: {3} + Stack Trace: {4}. + + + + + unit test outcomes + + + + + Test was executed, but there were issues. + Issues may involve exceptions or failed assertions. + + + + + Test has completed, but we can't say if it passed or failed. + May be used for aborted tests. + + + + + Test was executed without any issues. + + + + + Test is currently executing. + + + + + There was a system error while we were trying to execute a test. + + + + + The test timed out. + + + + + Test was aborted by the user. + + + + + Test is in an unknown state + + + + + Test cannot be executed. + + + + + Provides helper functionality for the unit test framework + + + + + Gets the exception messages, including the messages for all inner exceptions + recursively + + Exception to get messages for + string with error message information + + + + Enumeration for timeouts, that can be used with the class. + The type of the enumeration must match + + + + + The infinite. + + + + + The test class attribute. + + + + + Gets a test method attribute that enables running this test. + + The test method attribute instance defined on this method. + The to be used to run this test. + Extensions can override this method to customize how all methods in a class are run. + + + + The test method attribute. + + + + + Executes a test method. + + The test method to execute. + An array of TestResult objects that represent the outcome(s) of the test. + Extensions can override this method to customize running a TestMethod. + + + + Attribute for data driven test where data can be specified inline. + + + + + The test initialize attribute. + + + + + The test cleanup attribute. + + + + + The ignore attribute. + + + + + Initializes a new instance of the class. + + + + + Initializes a new instance of the class. + + + Message specifies reason for ignoring. + + + + + Gets the owner. + + + + + The test property attribute. + + + + + Initializes a new instance of the class. + + + The name. + + + The value. + + + + + Gets the name. + + + + + Gets the value. + + + + + The class initialize attribute. + + + + + The class cleanup attribute. + + + + + The assembly initialize attribute. + + + + + The assembly cleanup attribute. + + + + + Test Owner + + + + + Initializes a new instance of the class. + + + The owner. + + + + + Gets the owner. + + + + + Priority attribute; used to specify the priority of a unit test. + + + + + Initializes a new instance of the class. + + + The priority. + + + + + Gets the priority. + + + + + Description of the test + + + + + Initializes a new instance of the class to describe a test. + + The description. + + + + Gets the description of a test. + + + + + CSS Project Structure URI + + + + + Initializes a new instance of the class for CSS Project Structure URI. + + The CSS Project Structure URI. + + + + Gets the CSS Project Structure URI. + + + + + CSS Iteration URI + + + + + Initializes a new instance of the class for CSS Iteration URI. + + The CSS Iteration URI. + + + + Gets the CSS Iteration URI. + + + + + WorkItem attribute; used to specify a work item associated with this test. + + + + + Initializes a new instance of the class for the WorkItem Attribute. + + The Id to a work item. + + + + Gets the Id to a workitem associated. + + + + + Timeout attribute; used to specify the timeout of a unit test. + + + + + Initializes a new instance of the class. + + + The timeout. + + + + + Initializes a new instance of the class with a preset timeout + + + The timeout + + + + + Gets the timeout. + + + + + TestResult object to be returned to adapter. + + + + + Initializes a new instance of the class. + + + + + Gets or sets the display name of the result. Useful when returning multiple results. + If null then Method name is used as DisplayName. + + + + + Gets or sets the outcome of the test execution. + + + + + Gets or sets the exception thrown when test is failed. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the output of the message logged by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the debug traces by test code. + + + + + Gets or sets the execution id of the result. + + + + + Gets or sets the parent execution id of the result. + + + + + Gets or sets the inner results count of the result. + + + + + Gets or sets the duration of test execution. + + + + + Gets or sets the data row index in data source. Set only for results of individual + run of data row of a data driven test. + + + + + Gets or sets the return value of the test method. (Currently null always). + + + + + Gets or sets the result files attached by the test. + + + + + Specifies connection string, table name and row access method for data driven testing. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + The default provider name for DataSource. + + + + + The default data access method. + + + + + Initializes a new instance of the class. This instance will be initialized with a data provider, connection string, data table and data access method to access the data source. + + Invariant data provider name, such as System.Data.SqlClient + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + Specifies the order to access data. + + + + Initializes a new instance of the class.This instance will be initialized with a connection string and table name. + Specify connection string and data table to access OLEDB data source. + + + Data provider specific connection string. + WARNING: The connection string can contain sensitive data (for example, a password). + The connection string is stored in plain text in source code and in the compiled assembly. + Restrict access to the source code and assembly to protect this sensitive information. + + The name of the data table. + + + + Initializes a new instance of the class. This instance will be initialized with a data provider and connection string associated with the setting name. + + The name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + Gets a value representing the data provider of the data source. + + + The data provider name. If a data provider was not designated at object initialization, the default provider of System.Data.OleDb will be returned. + + + + + Gets a value representing the connection string for the data source. + + + + + Gets a value indicating the table name providing data. + + + + + Gets the method used to access the data source. + + + + One of the values. If the is not initialized, this will return the default value . + + + + + Gets the name of a data source found in the <microsoft.visualstudio.qualitytools> section in the app.config file. + + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/Microsoft.VisualStudio.TestPlatform.TestFramework.dll new file mode 100644 index 0000000000000000000000000000000000000000..740d01fd3857259353f56a8c44745531ec2ebd99 GIT binary patch literal 73384 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 LZzAJ}Rd)Ul&m9{B literal 0 HcmV?d00001 diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..4fa9657 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Používá se pro určení položky nasazení (souboru nebo adresáře) za účelem nasazení podle testu. + Lze zadat na testovací třídě nebo testovací metodě. + Může mít více instancí atributu pro zadání více než jedné položky. + Cesta k položce může být absolutní nebo relativní. Pokud je relativní, je relativní ve vztahu k RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Inicializuje novou instanci třídy . + + Soubor nebo adresář, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do adresáře, ve kterém jsou nasazená testovací sestavení. + + + + Inicializuje novou instanci třídy . + + Relativní nebo absolutní cesta k souboru nebo adresáři, který se má nasadit. Cesta je relativní ve vztahu k adresáři výstupu sestavení. Položka bude zkopírována do stejného adresáře jako nasazená testovací sestavení. + Cesta k adresáři, do kterého se mají položky kopírovat. Může být absolutní nebo relativní ve vztahu k adresáři nasazení. Všechny soubory a adresáře určené cestou budou zkopírovány do tohoto adresáře. + + + + Získá cestu ke zdrojovému souboru nebo složce, které se mají kopírovat. + + + + + Získá cestu adresáře, do kterého se položka zkopíruje. + + + + + Spustí testovací kód ve vlákně uživatelského rozhraní pro aplikace pro Windows Store. + + + + + Spustí testovací metodu ve vlákně uživatelského rozhraní. + + + Testovací metoda + + + Pole instance + + Throws when run on an async test method. + + + + + Třída TestContext. Tato třída by měla být zcela abstraktní a neměla by obsahovat žádné + členy. Členy implementuje adaptér. Uživatelé rozhraní by měli + k této funkci přistupovat jenom prostřednictvím dobře definovaného rozhraní. + + + + + Získá vlastnosti testu. + + + + + Získá plně kvalifikovaný název třídy obsahující aktuálně prováděnou testovací metodu. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Získá název aktuálně prováděné testovací metody. + + + + + Získá aktuální výsledek testu. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..3f446b4 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/cs/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4197 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atribut TestMethod pro provádění + + + + + Získá název testovací metody. + + + + + Získá název třídy testu. + + + + + Získá návratový typ testovací metody. + + + + + Získá parametry testovací metody. + + + + + Získá methodInfo pro testovací metodu. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Vyvolá testovací metodu. + + + Argumenty pro testovací metodu (např. pro testování řízené daty) + + + Výsledek vyvolání testovací metody + + + This call handles asynchronous test methods as well. + + + + + Získá všechny atributy testovací metody. + + + Jestli je platný atribut definovaný v nadřazené třídě + + + Všechny atributy + + + + + Získá atribut konkrétního typu. + + System.Attribute type. + + Jestli je platný atribut definovaný v nadřazené třídě + + + Atributy zadaného typu + + + + + Pomocná služba + + + + + Kontrolní parametr není null. + + + Parametr + + + Název parametru + + + Zpráva + + Throws argument null exception when parameter is null. + + + + Ověřovací parametr není null nebo prázdný. + + + Parametr + + + Název parametru + + + Zpráva + + Throws ArgumentException when parameter is null. + + + + Výčet způsobů přístupu k datovým řádkům při testování řízeném daty + + + + + Řádky se vrací v sekvenčním pořadí. + + + + + Řádky se vrátí v náhodném pořadí. + + + + + Atribut pro definování vložených dat pro testovací metodu + + + + + Inicializuje novou instanci třídy . + + Datový objekt + + + + Inicializuje novou instanci třídy , která přijímá pole argumentů. + + Datový objekt + Další data + + + + Získá data pro volání testovací metody. + + + + + Získá nebo nastaví zobrazovaný název ve výsledcích testu pro přizpůsobení. + + + + + Výjimka s neprůkazným kontrolním výrazem + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Třída InternalTestFailureException. Používá se pro označení interní chyby testovacího případu. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva o výjimce + + + + Inicializuje novou instanci třídy . + + + + + Atribut, podle kterého se má očekávat výjimka zadaného typu + + + + + Inicializuje novou instanci třídy s očekávaným typem. + + Typ očekávané výjimky + + + + Inicializuje novou instanci třídy + s očekávaným typem a zprávou, která se zahrne v případě, že test nevyvolá žádnou výjimku. + + Typ očekávané výjimky + + Zpráva, která má být zahrnuta do výsledku testu, pokud se test nezdaří z důvodu nevyvolání výjimky + + + + + Načte hodnotu, která označuje typ očekávané výjimky. + + + + + Získá nebo načte hodnotu, která označuje, jestli je možné typy odvozené od typu očekávané výjimky + považovat za očekávané. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Ověří, jestli se očekává typ výjimky vyvolané testem jednotek. + + Výjimka vyvolaná testem jednotek + + + + Základní třída pro atributy, které určují, že se má očekávat výjimka testu jednotek + + + + + Inicializuje novou instanci třídy s výchozí zprávou no-exception. + + + + + Inicializuje novou instanci třídy se zprávou no-exception. + + + Zprávy, které mají být zahrnuty ve výsledku testu, pokud se test nezdaří z důvodu nevyvolání + výjimky + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá zprávu, které se má zahrnout do výsledku testu, pokud tento test selže v důsledku výjimky. + + + + + Získá výchozí zprávu no-exception. + + Název typu atributu ExpectedException + Výchozí zpráva neobsahující výjimku + + + + Určuje, jestli se daná výjimka očekává. Pokud metoda skončí, rozumí se tomu tak, + že se výjimka očekávala. Pokud metoda vyvolá výjimku, rozumí se tím, + že se výjimka neočekávala a součástí výsledku testu + je zpráva vyvolané výjimky. Pomocí třídy je možné si usnadnit + práci. Pokud se použije a kontrolní výraz selže, + výsledek testu se nastaví na Neprůkazný. + + Výjimka vyvolaná testem jednotek + + + + Znovu vyvolá výjimku, pokud se jedná o atribut AssertFailedException nebo AssertInconclusiveException. + + Výjimka, která se má znovu vyvolat, pokud se jedná výjimku kontrolního výrazu + + + + Tato třída je koncipovaná tak, aby uživatelům pomáhala při testování jednotek typů, které využívá obecné typy. + Atribut GenericParameterHelper řeší některá běžná omezení obecných typů, + jako jsou: + 1. veřejný výchozí konstruktor + 2. implementace společného rozhraní: IComparable, IEnumerable + + + + + Inicializuje novou instanci třídy , která + splňuje omezení newable v obecných typech jazyka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializuje novou instanci třídy , která + inicializuje vlastnost Data na hodnotu zadanou uživatelem. + + Libovolné celé číslo + + + + Získá nebo nastaví data. + + + + + Provede porovnání hodnot pro dva objekty GenericParameterHelper. + + objekt, se kterým chcete porovnávat + pravda, pokud má objekt stejnou hodnotu jako „tento“ objekt GenericParameterHelper. + V opačném případě nepravda. + + + + Vrátí pro tento objekt hodnotu hash. + + Kód hash + + + + Porovná data daných dvou objektů . + + Objekt pro porovnání + + Číslo se znaménkem označující relativní hodnoty této instance a hodnoty + + + Thrown when the object passed in is not an instance of . + + + + + Vrátí objekt IEnumerator, jehož délka je odvozená od + vlastnosti dat. + + Objekt IEnumerator + + + + Vrátí objekt GenericParameterHelper, který se rovná + aktuálnímu objektu. + + Klonovaný objekt + + + + Umožňuje uživatelům protokolovat/zapisovat trasování z testů jednotek pro účely diagnostiky. + + + + + Obslužná rutina pro LogMessage + + Zpráva, kterou chcete zaprotokolovat + + + + Událost pro naslouchání. Dojde k ní, když autor testů jednotek napíše zprávu. + Určeno především pro použití adaptérem. + + + + + Rozhraní API pro volání zpráv protokolu zapisovačem testu + + Formátovací řetězec se zástupnými symboly + Parametry pro zástupné symboly + + + + Atribut TestCategory, používá se pro zadání kategorie testu jednotek. + + + + + Inicializuje novou instanci třídy a zavede pro daný test kategorii. + + + Kategorie testu + + + + + Získá kategorie testu, které se nastavily pro test. + + + + + Základní třída atributu Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializuje novou instanci třídy . + Tuto kategorii zavede pro daný test. Řetězce vrácené z TestCategories + se použijí spolu s příkazem /category k filtrování testů. + + + + + Získá kategorii testu, která se nastavila pro test. + + + + + Třída AssertFailedException. Používá se pro značení chyby testovacího případu. + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Inicializuje novou instanci třídy . + + + + + Kolekce pomocných tříd pro testování nejrůznějších podmínek v rámci + testů jednotek. Pokud se testovaná podmínka nesplní, vyvolá se + výjimka. + + + + + Získá instanci typu singleton funkce Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is false. + + + + + Testuje, jestli je zadaná podmínka pravdivá, a vyvolá výjimku, + pokud nepravdivá není. + + + Podmínka, která má být podle testu pravdivá. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je nepravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is false. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is true. + + + + + Testuje, jestli zadaná podmínka není nepravdivá, a vyvolá výjimku, + pokud pravdivá je. + + + Podmínka, která podle testu má být nepravdivá + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je pravda. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is true. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a vyvolá výjimku, + pokud tomu tak není. + + + Objekt, který má podle testu být Null + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is null. + + + + + Testuje, jestli je zadaný objekt null, a pokud je, + vyvolá výjimku. + + + Objekt, u kterého test očekává, že nebude Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null. + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli oba zadané objekty odkazují na stejný objekt, + a vyvolá výjimku, pokud obě zadané hodnoty na stejný objekt neodkazují. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli zadané objekty odkazují na různé objekty, + a vyvolá výjimku, pokud tyto dvě zadané hodnoty odkazují na stejný objekt. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if refers to the same object + as . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané hodnoty stejné, a vyvolá výjimku, + pokud tyto dvě hodnoty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou dvě logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, kterou test očekává. + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot a vyvolá výjimku, + pokud si tyto dvě hodnoty jsou rovny. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + The type of values to compare. + + + První hodnota, kterou chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá hodnota, kterou chcete porovnat. Jedná se o hodnotu vytvořenou testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané objekty stejné, a vyvolá výjimku, + pokud oba objekty stejné nejsou. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o objekt, který test očekává. + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných objektů a vyvolá výjimku, + pokud jsou oba objekty stejné. Rozdílné číselné typy se považují + za nestejné, i když jsou logické hodnoty stejné. 42L se nerovná 42. + + + První objekt, který chcete porovnat. Jedná se o hodnotu, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý objekt, který chcete porovnat. Jedná se o objekt vytvořený testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot float a vyvolá výjimku, + pokud nejsou stejné. + + + První plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku, kterou test očekává. + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot float a vyvolá výjimku, + pokud jsou stejné. + + + První desetinná čárka, kterou chcete porovnat. Toto je desetinná čárka, která se podle testu nemá + shodovat s aktuální hodnotou . + + + Druhá plovoucí desetinná čárka, kterou chcete porovnat. Jedná se o plovoucí desetinnou čárku vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Thrown if is not equal to + . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje rovnost zadaných hodnot double a vyvolá výjimku, + pokud se neshodují. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, kterou test očekává. + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o více než . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se liší od o více než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných hodnot double a vyvolá výjimku, + pokud jsou si rovny. + + + První dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost, která se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhá dvojitá přesnost, kterou chcete porovnat. Jedná se o dvojitou přesnost vytvořenou testovaným kódem. + + + Požadovaná přesnost. Výjimka bude vyvolána pouze tehdy, pokud + se liší od + o maximálně . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná nebo se liší o méně než + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. Pro porovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to . + + + + + Testuje, jestli jsou zadané řetězce stejné, a vyvolá výjimku, + pokud stejné nejsou. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který test očekává. + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou stejné. Pro srovnání se používá neutrální jazyková verze. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných řetězců a vyvolá výjimku, + pokud jsou si rovny. + + + První řetězec, který chcete porovnat. Jedná se o řetězec, který se podle testu nemá + shodovat se skutečnou hodnotou . + + + Druhý řetězec, který se má porovnat. Jedná se o řetězec vytvořený testovaným kódem. + + + Logická hodnota označující porovnání s rozlišováním velkých a malých písmen nebo bez jejich rozlišování. (Hodnota pravda + označuje porovnání bez rozlišování velkých a malých písmen.) + + + Objekt CultureInfo, který poskytuje informace o porovnání jazykových verzí. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt je instancí očekávaného + typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědění objektu. + + + Objekt, který podle testu má být zadaného typu + + + Očekávaný typ . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není instancí . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, jestli zadaný objekt není instancí nesprávného + typu, a vyvolá výjimku, pokud zadaný typ je v + hierarchii dědění objektu. + + + Objekt, který podle testu nemá být zadaného typu. + + + Typ, který by hodnotou neměl být. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je instancí . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Vyvolá výjimku AssertFailedException. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertFailedException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Always thrown. + + + + + Vyvolá výjimku AssertInconclusiveException. + + + Zpráva, která má být zahrnuta do výjimky. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Always thrown. + + + + + Statická přetížení operátoru rovnosti se používají k porovnání rovnosti odkazů na instance + dvou typů. Tato metoda by se neměla používat k porovnání rovnosti dvou + instancí. Tento objekt vždy vyvolá Assert.Fail. Ve svých testech + jednotek prosím použijte Assert.AreEqual a přidružená přetížení. + + Objekt A + Objekt B + Vždy nepravda. + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegujte kód, který chcete testovat a který má vyvolat výjimku. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ výjimky, ke které má podle očekávání dojít + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá + + AssertFailedException + , + pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Testujte, jestli kód určený delegátem vyvolá přesně danou výjimku typu (a ne odvozeného typu), + a vyvolá AssertFailedException, pokud kód nevyvolává výjimky nebo vyvolává výjimky typu jiného než . + + Delegát kódu, který chcete testovat a který má vyvolat výjimku + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nevyvolá výjimku typu . + + + Pole parametrů, které se má použít při formátování . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Třídu spouští delegáta. + + + + + Nahradí znaky null ('\0') řetězcem "\\0". + + + Řetězec, který se má hledat + + + Převedený řetězec se znaky Null nahrazený řetězcem "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Pomocná funkce, která vytváří a vyvolává výjimku AssertionFailedException + + + název kontrolního výrazu, který vyvolává výjimku + + + zpráva popisující podmínky neplatnosti kontrolního výrazu + + + Parametry + + + + + Ověří parametr pro platné podmínky. + + + Parametr + + + Název kontrolního výrazu + + + název parametru + + + zpráva pro neplatnou výjimku parametru + + + Parametry + + + + + Bezpečně převede objekt na řetězec, včetně zpracování hodnot null a znaků null. + Hodnoty null se převádějí na formát (null). Znaky null se převádějí na \\0. + + + Objekt, který chcete převést na řetězec + + + Převedený řetězec + + + + + Kontrolní výraz řetězce + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec obsahuje zadaný podřetězec, + a vyvolá výjimku, pokud se podřetězec v testovacím řetězci + nevyskytuje. + + + Řetězec, který má obsahovat . + + + Řetězec má být v rozmezí hodnot . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec začíná zadaným podřetězcem, + a vyvolá výjimku, pokud testovací řetězec podřetězcem + nezačíná. + + + Řetězec, který má začínat na . + + + Řetězec, který má být prefixem hodnoty . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nezačíná na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not begin with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Thrown if does not end with + . + + + + + Testuje, jestli zadaný řetězec končí zadaným podřetězcem, + a vyvolá výjimku, pokud jím testovací řetězec + nekončí. + + + Řetězec, který má končit na . + + + Řetězec, který má být příponou . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + nekončí na . Zpráva se + zobrazuje ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not end with + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný objekt shoduje s regulárním výrazem, a + vyvolá výjimku, pokud se řetězec s výrazem neshoduje. + + + Řetězec, který se má shodovat se vzorkem . + + + Regulární výraz, který se + má shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + neodpovídá . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if does not match + . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if matches . + + + + + Testuje, jestli se zadaný řetězec neshoduje s regulárním výrazem, + a vyvolá výjimku, pokud se řetězec s výrazem shoduje. + + + Řetězec, který se nemá shodovat se skutečnou hodnotou . + + + Regulární výraz, který se + nemá shodovat. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + odpovídá . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if matches . + + + + + Kolekce tříd pomocných služeb pro ověřování nejrůznějších podmínek vztahujících se + na kolekce v rámci testů jednotek. Pokud se testovaná podmínka + nesplní, vyvolá se výjimka. + + + + + Získá instanci typu singleton funkce CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce obsahuje zadaný prvek, + a vyvolá výjimku, pokud prvek v kolekci není. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který má být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + není v . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Thrown if is found in + . + + + + + Testuje, jestli zadaná kolekce neobsahuje zadaný + prvek, a vyvolá výjimku, pokud prvek je v kolekci. + + + Kolekce, ve které chcete prvek vyhledat + + + Prvek, který nemá být v kolekci + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + je v kolekci . Zpráva je zobrazena ve výsledcích + testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is found in + . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Thrown if a null element is found in . + + + + + Testuje, jestli ani jedna položka v zadané kolekci není null, a vyvolá + výjimku, pokud je jakýkoli prvek null. + + + Kolekce, ve které chcete hledat prvky Null. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje prvek Null. Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a null element is found in . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jsou všechny položky v zadané kolekci jedinečné, a + vyvolá výjimku, pokud libovolné dva prvky v kolekci jsou stejné. + + + Kolekce, ve které chcete hledat duplicitní prvky + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje alespoň jeden duplicitní prvek. Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna kolekce je podmnožinou jiné kolekce, + a vyvolá výjimku, pokud libovolný prvek podmnožiny není zároveň + prvkem nadmnožiny. + + + Kolekce, která má být podmnožinou . + + + Kolekce má být nadmnožinou + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + se nenachází v podmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is not found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli jedna z kolekcí není podmnožinou jiné kolekce, a vyvolá + výjimku, pokud všechny prvky podmnožiny jsou také prvky + nadmnožiny. + + + Kolekce, která nemá být podmnožinou nadmnožiny . + + + Kolekce, která nemá být nadmnožinou podmnožiny + + + Zpráva, kterou chcete zahrnout do výjimky, pokud každý prvek v podmnožině + se nachází také v nadmnožině . + Zpráva je zobrazena ve výsledku testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if every element in is also found in + . + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují stejný prvek, a vyvolá + výjimku, pokud některá z kolekcí obsahuje prvek, který není součástí druhé + kolekce. + + + První kolekce, kterou chcete porovnat. Jedná se o prvek, který test + očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud byl nalezen prvek + v jedné z kolekcí, ale ne ve druhé. Zpráva je zobrazena + ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli dvě kolekce obsahují rozdílné prvky, a vyvolá + výjimku, pokud tyto dvě kolekce obsahují identické prvky bez ohledu + na pořadí. + + + První kolekce, kterou chcete porovnat. Obsahuje prvek, který se podle testu + má lišit od skutečné kolekce. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + obsahuje stejný prvek jako . Zpráva + je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli všechny prvky v zadané kolekci jsou instancemi + očekávaného typu, a vyvolá výjimku, pokud očekávaný typ není + v hierarchii dědičnosti jednoho nebo více prvků. + + + Kolekce obsahující prvky, které podle testu mají být + zadaného typu. + + + Očekávaný typ jednotlivých prvků . + + + Zpráva, kterou chcete zahrnout do výjimky, pokud prvek v + není instancí typu + . Zpráva je zobrazena ve výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is not equal to + . + + + + + Testuje, jestli jsou zadané kolekce stejné, a vyvolá výjimku, + pokud obě kolekce stejné nejsou. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Rozdílné odkazy na stejnou hodnotu + se považují za stejné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, kterou test očekává. + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, pokud + se nerovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is not equal to + . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Thrown if is equal to . + + + + + Testuje nerovnost zadaných kolekcí a vyvolá výjimku, + pokud jsou dvě kolekce stejné. Rovnost je definovaná jako množina stejných + prvků ve stejném pořadí a o stejném počtu. Odlišné odkazy na stejnou + hodnotu se považují za sobě rovné. + + + První kolekce, kterou chcete porovnat. Jedná se o kolekci, která podle testu + nemá odpovídat . + + + Druhá kolekce, kterou chcete porovnat. Jedná se o kolekci vytvořenou + testovaným kódem. + + + Implementace porovnání, která se má použít pro porovnání prvků kolekce + + + Zpráva, kterou chcete zahrnout do výjimky, když + se rovná . Zpráva je zobrazena ve + výsledcích testu. + + + Pole parametrů, které se má použít při formátování . + + + Thrown if is equal to . + + + + + Určuje, jestli první kolekce je podmnožinou druhé + kolekce. Pokud některá z množin obsahuje duplicitní prvky, musí počet + výskytů prvku v podmnožině být menší, nebo + se musí rovnat počtu výskytů v nadmnožině. + + + Kolekce, která podle testu má být obsažena v nadmnožině . + + + Kolekce, která podle testu má obsahovat . + + + Pravda, pokud je podmnožinou + , jinak nepravda. + + + + + Vytvoří slovník obsahující počet výskytů jednotlivých + prvků v zadané kolekci. + + + Kolekce, kterou chcete zpracovat + + + Počet prvků Null v kolekci + + + Slovník obsahující počet výskytů jednotlivých prvků + v zadané kolekci. + + + + + Najde mezi dvěma kolekcemi neshodný prvek. Neshodný + prvek je takový, který má v očekávané kolekci + odlišný počet výskytů ve srovnání se skutečnou kolekcí. Kolekce + se považují za rozdílné reference bez hodnoty null se + stejným počtem prvků. Za tuto úroveň ověření odpovídá + volající. Pokud neexistuje žádný neshodný prvek, funkce vrátí + false a neměli byste použít parametry Out. + + + První kolekce, která se má porovnat + + + Druhá kolekce k porovnání + + + Očekávaný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Skutečný počet výskytů prvku + nebo 0, pokud není žádný nevyhovující + prvek. + + + Neshodný prvek (může být Null) nebo Null, pokud neexistuje žádný + neshodný prvek. + + + pravda, pokud je nalezen nevyhovující prvek; v opačném případě nepravda. + + + + + Porovná objekt pomocí atributu object.Equals. + + + + + Základní třída pro výjimky architektury + + + + + Inicializuje novou instanci třídy . + + + + + Inicializuje novou instanci třídy . + + Zpráva + Výjimka + + + + Inicializuje novou instanci třídy . + + Zpráva + + + + Třída prostředků se silnými typy pro vyhledávání lokalizovaných řetězců atd. + + + + + Vrátí v mezipaměti uloženou instanci ResourceManager použitou touto třídou. + + + + + Přepíše vlastnost CurrentUICulture aktuálního vlákna pro všechna + vyhledávání prostředků pomocí této třídy prostředků silného typu. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Přístupový řetězec má neplatnou syntaxi. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekávaná kolekce obsahuje počet výskytů {1} <{2}>. Skutečná kolekce obsahuje tento počet výskytů: {3}. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Našla se duplicitní položka:<{1}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Očekáváno:<{1}>. Případ je rozdílný pro skutečnou hodnotu:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekává rozdíl maximálně <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekáváno:<{1} ({2})>. Skutečnost:<{3} ({4})>. {0}. + + + + + Vyhledá řetězec podobný řetězci Očekáváno:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Mezi očekávanou hodnotou <{1}> a skutečnou hodnotou <{2}> se očekával rozdíl větší než <{3}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávala se libovolná hodnota s výjimkou:<{1}>. Skutečnost:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevkládejte hodnotu typů do AreSame(). Hodnoty převedené na typ Object nebudou nikdy stejné. Zvažte možnost použít AreEqual(). {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Chyba {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: async TestMethod s atributem UITestMethodAttribute se nepodporují. Buď odeberte async, nebo použijte TestMethodAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce jsou prázdné. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejný prvek. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě reference kolekce odkazují na stejný objekt kolekce. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Obě kolekce obsahují stejné prvky. {0}. + + + + + Vyhledá řetězec podobný řetězci {0}({1}). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (null). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (objekt). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} neobsahuje řetězec {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} ({1}). + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Atribut Assert.Equals by se neměl používat pro kontrolní výrazy. Použijte spíše Assert.AreEqual a přetížení. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Počet prvků v kolekci se neshoduje. Očekáváno:<{1}>. Skutečnost:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {0} se neshoduje. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Prvek indexu {1} je neočekávaného typu. Očekávaný typ:<{2}>. Skutečný typ:<{3}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Prvek indexu {1} je (null). Očekávaný typ:<{2}>.{0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nekončí řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Neplatný argument: EqualsTester nemůže použít hodnoty null. + + + + + Vyhledá řetězec podobný řetězci Nejde převést objekt typu {0} na {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Interní odkazovaný objekt už není platný. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Parametr {0} je neplatný. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Vlastnost {0} má typ {1}; očekávaný typ {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci {0} Očekávaný typ:<{1}>. Skutečný typ:<{2}>. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se neshoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Nesprávný typ:<{1}>. Skutečný typ:<{2}>. {0}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} se shoduje se vzorkem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nezadal se žádný atribut DataRowAttribute. K atributu DataTestMethodAttribute se vyžaduje aspoň jeden atribut DataRowAttribute. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Nevyvolala se žádná výjimka. Očekávala se výjimka {1}. {0}. + + + + + Vyhledá lokalizované řetězce podobné tomuto: Parametr {0} je neplatný. Hodnota nemůže být null. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Rozdílný počet prvků. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Konstruktor se zadaným podpisem se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru objektu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci + Zadaný člen ({0}) se nenašel. Pravděpodobně budete muset obnovit privátní přístupový objekt, + nebo je člen pravděpodobně privátní a založený na základní třídě. Pokud je pravdivý druhý zmíněný případ, musíte vložit typ + definující člen do konstruktoru atributu PrivateObject. + + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Řetězec {0} nezačíná řetězcem {1}. {2}. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Očekávaný typ výjimky musí být System.Exception nebo typ odvozený od System.Exception. + + + + + Vyhledá lokalizovaný řetězec podobný řetězci (Z důvodu výjimky se nepodařilo získat zprávu pro výjimku typu {0}.). + + + + + Vyhledá lokalizovaný řetězec podobný řetězci Testovací metoda nevyvolala očekávanou výjimku {0}. {1}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda nevyvolala výjimku. Atribut {0} definovaný testovací metodou očekával výjimku. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, ale očekávala se výjimka {1}. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Testovací metoda vyvolala výjimku {0}, očekávala se ale odvozená výjimka {1} nebo typ. Zpráva o výjimce: {2}. + + + + + Vyhledá lokalizovaný řetězec podobný tomuto: Vyvolala se výjimka {2}, ale očekávala se výjimka {1}. {0} + Zpráva o výjimce: {3} + Trasování zásobníku: {4} + + + + + Výsledky testu jednotek + + + + + Test se provedl, ale došlo k problémům. + Problémy se můžou týkat výjimek nebo neúspěšných kontrolních výrazů. + + + + + Test se dokončil, ale není možné zjistit, jestli byl úspěšný, nebo ne. + Dá se použít pro zrušené testy. + + + + + Test se provedl zcela bez problémů. + + + + + V tuto chvíli probíhá test. + + + + + Při provádění testu došlo k chybě systému. + + + + + Časový limit testu vypršel. + + + + + Test byl zrušen uživatelem. + + + + + Test je v neznámém stavu. + + + + + Poskytuje pomocnou funkci pro systém pro testy jednotek. + + + + + Rekurzivně získá zprávy o výjimce, včetně zpráv pro všechny vnitřní + výjimky. + + Výjimka pro načítání zpráv pro + řetězec s informacemi v chybové zprávě + + + + Výčet pro časové limity, který se dá použít spolu s třídou . + Typ výčtu musí odpovídat + + + + + Nekonečno + + + + + Atribut třídy testu + + + + + Získá atribut testovací metody, který umožní spustit tento test. + + Instance atributu testovací metody definované v této metodě. + Typ Použije se ke spuštění tohoto testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atribut testovací metody + + + + + Spustí testovací metodu. + + Testovací metoda, která se má spustit. + Pole objektů TestResult, které představuje výsledek (nebo výsledky) daného testu. + Extensions can override this method to customize running a TestMethod. + + + + Atribut inicializace testu + + + + + Atribut vyčištění testu + + + + + Atribut ignore + + + + + Atribut vlastnosti testu + + + + + Inicializuje novou instanci třídy . + + + Název + + + Hodnota + + + + + Získá název. + + + + + Získá hodnotu. + + + + + Atribut inicializace třídy + + + + + Atribut vyčištění třídy + + + + + Atribut inicializace sestavení + + + + + Atribut vyčištění sestavení + + + + + Vlastník testu + + + + + Inicializuje novou instanci třídy . + + + Vlastník + + + + + Získá vlastníka. + + + + + Atribut priority, používá se pro určení priority testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Priorita + + + + + Získá prioritu. + + + + + Popis testu + + + + + Inicializuje novou instanci třídy , která popíše test. + + Popis + + + + Získá popis testu. + + + + + Identifikátor URI struktury projektů CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI struktury projektů CSS. + + Identifikátor URI struktury projektů CSS + + + + Získá identifikátor URI struktury projektů CSS. + + + + + Identifikátor URI iterace CSS + + + + + Inicializuje novou instanci třídy pro identifikátor URI iterace CSS. + + Identifikátor URI iterace CSS + + + + Získá identifikátor URI iterace CSS. + + + + + Atribut WorkItem, používá se pro zadání pracovní položky přidružené k tomuto testu. + + + + + Inicializuje novou instanci třídy pro atribut WorkItem. + + ID pro pracovní položku + + + + Získá ID k přidružené pracovní položce. + + + + + Atribut časového limitu, používá se pro zadání časového limitu testu jednotek. + + + + + Inicializuje novou instanci třídy . + + + Časový limit + + + + + Inicializuje novou instanci třídy s předem nastaveným časovým limitem. + + + Časový limit + + + + + Získá časový limit. + + + + + Objekt TestResult, který se má vrátit adaptéru + + + + + Inicializuje novou instanci třídy . + + + + + Získá nebo nastaví zobrazovaný název výsledku. Vhodné pro vrácení většího počtu výsledků. + Pokud je null, jako DisplayName se použije název metody. + + + + + Získá nebo nastaví výsledek provedení testu. + + + + + Získá nebo nastaví výjimku vyvolanou při chybě testu. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo nastaví výstup zprávy zaprotokolované testovacím kódem. + + + + + Získá nebo načte trasování ladění testovacího kódu. + + + + + Gets or sets the debug traces by test code. + + + + + Získá nebo nastaví délku trvání testu. + + + + + Získá nebo nastaví index řádku dat ve zdroji dat. Nastavte pouze pro výsledky jednoho + spuštění řádku dat v testu řízeném daty. + + + + + Získá nebo nastaví návratovou hodnotu testovací metody. (Aktuálně vždy null) + + + + + Získá nebo nastaví soubory s výsledky, které připojil test. + + + + + Určuje připojovací řetězec, název tabulky a metodu přístupu řádku pro testování řízené daty. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Název výchozího poskytovatele pro DataSource + + + + + Výchozí metoda pro přístup k datům + + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat, připojovacím řetězcem, tabulkou dat a přístupovou metodou k datům, pomocí kterých se získá přístup ke zdroji dat. + + Název poskytovatele neutrálních dat, jako je System.Data.SqlClient + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + Určuje pořadí přístupu k datům. + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s připojovacím řetězcem a názvem tabulky. + Zadejte připojovací řetězec a tabulku dat, pomocí kterých se získá přístup ke zdroji dat OLEDB. + + + Připojovací řetězec specifický pro poskytovatele dat. + UPOZORNĚNÍ: Připojovací řetězec může obsahovat citlivé údaje (třeba heslo). + Připojovací řetězec se ukládá v podobě prostého textu ve zdrojovém kódu a v kompilovaném sestavení. + Tyto citlivé údaje zabezpečíte omezením přístupu ke zdrojovému kódu a sestavení. + + Název tabulky dat + + + + Inicializuje novou instanci třídy . Tato instance se inicializuje s poskytovatelem dat a připojovacím řetězcem přidruženým k názvu nastavení. + + Název zdroje dat nalezený v oddílu <microsoft.visualstudio.qualitytools> souboru app.config. + + + + Získá hodnotu představující poskytovatele dat zdroje dat. + + + Název poskytovatele dat. Pokud poskytovatel dat nebyl při inicializaci objektu zadán, bude vrácen výchozí poskytovatel System.Data.OleDb. + + + + + Získá hodnotu představující připojovací řetězec zdroje dat. + + + + + Získá hodnotu označující název tabulky poskytující data. + + + + + Získá metodu používanou pro přístup ke zdroji dat. + + + + Jedna z těchto položek: . Pokud není inicializován, vrátí výchozí hodnotu . + + + + + Získá název zdroje dat nalezeného v části <microsoft.visualstudio.qualitytools> v souboru app.config. + + + + + Atribut testu řízeného daty, kde se data dají zadat jako vložená. + + + + + Vyhledá všechny datové řádky a spustí je. + + + Testovací metoda + + + Pole . + + + + + Spustí testovací metodu řízenou daty. + + Testovací metoda, kterou chcete provést. + Datový řádek + Výsledek provedení + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..3d6c968 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Wird zum Angeben des Bereitstellungselements (Datei oder Verzeichnis) für eine Bereitstellung pro Test verwendet. + Kann für eine Testklasse oder Testmethode angegeben werden. + Kann mehrere Instanzen des Attributs besitzen, um mehrere Elemente anzugeben. + Der Elementpfad kann absolut oder relativ sein. Wenn er relativ ist, dann relativ zu "RunConfig.RelativePathRoot". + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die bereitzustellende Datei oder das Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + + + + Initialisiert eine neue Instanz der -Klasse. + + Der relative oder absolute Pfad zur bereitzustellenden Datei oder zum Verzeichnis. Der Pfad ist relativ zum Buildausgabeverzeichnis. Das Element wird in das gleiche Verzeichnis wie die bereitgestellten Testassemblys kopiert. + Der Pfad des Verzeichnisses, in das die Elemente kopiert werden sollen. Er kann absolut oder relativ zum Bereitstellungsverzeichnis sein. Alle Dateien und Verzeichnisse, die identifiziert werden durch werden in dieses Verzeichnis kopiert. + + + + Ruft den Pfad der Quelldatei oder des -ordners ab, die bzw. der kopiert werden soll. + + + + + Ruft den Pfad des Verzeichnisses ab, in das das Element kopiert werden soll. + + + + + Hiermit wird Testcode im UI-Thread für Windows Store-Apps ausgeführt. + + + + + Hiermit wird die Testmethode für den UI-Thread ausgeführt. + + + Die Testmethode. + + + Ein Array aus -Instanzen. + + Throws when run on an async test method. + + + + + Die TestContext-Klasse. Diese Klasse muss vollständig abstrakt sein und keine + Member enthalten. Der Adapter implementiert die Member. Benutzer im Framework sollten + darauf nur über eine klar definierte Schnittstelle zugreifen. + + + + + Ruft Testeigenschaften für einen Test ab. + + + + + Ruft den vollqualifizierten Namen der Klasse ab, die die Testmethode enthält, die zurzeit ausgeführt wird. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Ruft den Namen der zurzeit ausgeführten Testmethode ab. + + + + + Ruft das aktuelle Testergebnis ab. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..ae68026 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/de/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod für die Ausführung. + + + + + Ruft den Namen der Testmethode ab. + + + + + Ruft den Namen der Testklasse ab. + + + + + Ruft den Rückgabetyp der Testmethode ab. + + + + + Ruft die Parameter der Testmethode ab. + + + + + Ruft die methodInfo der Testmethode ab. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Ruft die Testmethode auf. + + + An die Testmethode zu übergebende Argumente (z. B. für datengesteuerte Tests). + + + Das Ergebnis des Testmethodenaufrufs. + + + This call handles asynchronous test methods as well. + + + + + Ruft alle Attribute der Testmethode ab. + + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Alle Attribute. + + + + + Ruft ein Attribut eines bestimmten Typs ab. + + System.Attribute type. + + Gibt an, ob das in der übergeordneten Klasse definierte Attribut gültig ist. + + + Die Attribute des angegebenen Typs. + + + + + Das Hilfsprogramm. + + + + + Der check-Parameter ungleich null. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws argument null exception when parameter is null. + + + + Der check-Parameter ungleich null oder leer. + + + Der Parameter. + + + Der Parametername. + + + Die Meldung. + + Throws ArgumentException when parameter is null. + + + + Enumeration für die Art des Zugriffs auf Datenzeilen in datengesteuerten Tests. + + + + + Zeilen werden in sequenzieller Reihenfolge zurückgegeben. + + + + + Zeilen werden in zufälliger Reihenfolge zurückgegeben. + + + + + Attribut zum Definieren von Inlinedaten für eine Testmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Das Datenobjekt. + + + + Initialisiert eine neue Instanz der -Klasse, die ein Array aus Argumenten akzeptiert. + + Ein Datenobjekt. + Weitere Daten. + + + + Ruft Daten für den Aufruf der Testmethode ab. + + + + + Ruft den Anzeigenamen in den Testergebnissen für die Anpassung ab. + + + + + Die nicht eindeutige Assert-Ausnahme. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Die InternalTestFailureException-Klasse. Wird zum Angeben eines internen Fehlers für einen Testfall verwendet. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Ausnahmemeldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ein Attribut, das angibt, dass eine Ausnahme des angegebenen Typs erwartet wird + + + + + Initialisiert eine neue Instanz der -Klasse mit dem erwarteten Typ + + Der Typ der erwarteten Ausnahme. + + + + Initialisiert eine neue Instanz der-Klasse mit + dem erwarteten Typ und der einzuschließenden Meldung, wenn vom Test keine Ausnahme ausgelöst wurde. + + Der Typ der erwarteten Ausnahme. + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft einen Wert ab, der den Typ der erwarteten Ausnahme angibt. + + + + + Ruft einen Wert ab, der angibt, ob es zulässig ist, dass vom Typ der erwarteten Ausnahme abgeleitete Typen + als erwartet qualifiziert werden. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Überprüft, ob der Typ der vom Komponententest ausgelösten Ausnahme erwartet wird. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Basisklasse für Attribute, die angeben, dass eine Ausnahme aus einem Komponententest erwartet wird. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer standardmäßigen "no-exception"-Meldung. + + + + + Initialisiert eine neue Instanz der -Klasse mit einer 2no-exception"-Meldung + + + Die Meldung, die in das Testergebnis eingeschlossen werden soll, wenn beim Test ein Fehler auftritt, + weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die Meldung ab, die dem Testergebnis hinzugefügt werden soll, falls beim Test ein Fehler auftritt, weil keine Ausnahme ausgelöst wird. + + + + + Ruft die standardmäßige Nichtausnahmemeldung ab. + + Der Typname des ExpectedException-Attributs. + Die standardmäßige Nichtausnahmemeldung. + + + + Ermittelt, ob die Annahme erwartet ist. Wenn die Methode zurückkehrt, wird davon ausgegangen, + dass die Annahme erwartet war. Wenn die Methode eine Ausnahme auslöst, + wird davon ausgegangen, dass die Ausnahme nicht erwartet war, und die Meldung + der ausgelösten Ausnahme wird in das Testergebnis eingeschlossen. Die -Klasse wird aus Gründen der + Zweckmäßigkeit bereitgestellt. Wenn verwendet wird und ein Fehler der Assertion auftritt, + wird das Testergebnis auf Inconclusive festgelegt. + + Die vom Komponententest ausgelöste Ausnahme. + + + + Löst die Ausnahme erneut aus, wenn es sich um eine AssertFailedException oder eine AssertInconclusiveException handelt. + + Die Ausnahme, die erneut ausgelöst werden soll, wenn es sich um eine Assertionausnahme handelt. + + + + Diese Klasse unterstützt Benutzer beim Ausführen von Komponententests für Typen, die generische Typen verwenden. + GenericParameterHelper erfüllt einige allgemeine generische Typeinschränkungen, + beispielsweise: + 1. öffentlicher Standardkonstruktor + 2. implementiert allgemeine Schnittstellen: IComparable, IEnumerable + + + + + Initialisiert eine neue Instanz der -Klasse, die + die Einschränkung "newable" in C#-Generika erfüllt. + + + This constructor initializes the Data property to a random value. + + + + + Initialisiert eine neue Instanz der-Klasse, die + die Data-Eigenschaft mit einem vom Benutzer bereitgestellten Wert initialisiert. + + Ein Integerwert + + + + Ruft die Daten ab oder legt sie fest. + + + + + Führt den Wertvergleich für zwei GenericParameterHelper-Objekte aus. + + Das Objekt, mit dem der Vergleich ausgeführt werden soll. + TRUE, wenn das Objekt den gleichen Wert wie "dieses" GenericParameterHelper-Objekt aufweist. + Andernfalls FALSE. + + + + Gibt einen Hashcode für diese Objekt zurück. + + Der Hash. + + + + Vergleicht die Daten der beiden -Objekte. + + Das Objekt, mit dem verglichen werden soll. + + Eine signierte Zahl, die die relativen Werte dieser Instanz und dieses Werts angibt. + + + Thrown when the object passed in is not an instance of . + + + + + Gibt ein IEnumerator-Objekt zurück, dessen Länge aus + der Data-Eigenschaft abgeleitet ist. + + Das IEnumerator-Objekt + + + + Gibt ein GenericParameterHelper-Objekt zurück, das gleich + dem aktuellen Objekt ist. + + Das geklonte Objekt. + + + + Ermöglicht Benutzern das Protokollieren/Schreiben von Ablaufverfolgungen aus Komponententests für die Diagnose. + + + + + Handler für LogMessage. + + Die zu protokollierende Meldung. + + + + Zu überwachendes Ereignis. Wird ausgelöst, wenn der Komponententestwriter eine Meldung schreibt. + Wird hauptsächlich von Adaptern verwendet. + + + + + Vom Testwriter aufzurufende API zum Protokollieren von Meldungen. + + Das Zeichenfolgenformat mit Platzhaltern. + Parameter für Platzhalter. + + + + Das TestCategory-Attribut. Wird zum Angeben der Kategorie eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse und wendet die Kategorie auf den Test an. + + + Die test-Kategorie. + + + + + Ruft die Testkategorien ab, die auf den Test angewendet wurden. + + + + + Die Basisklasse für das Category-Attribut. + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialisiert eine neue Instanz der -Klasse. + Wendet die Kategorie auf den Test an. Die von TestCategories + zurückgegebenen Zeichenfolgen werden mit dem Befehl "/category" zum Filtern von Tests verwendet. + + + + + Ruft die Testkategorie ab, die auf den Test angewendet wurde. + + + + + Die AssertFailedException-Klasse. Wird zum Angeben eines Fehlers für einen Testfall verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen in + Komponententests. Wenn die getestete Bedingung nicht erfüllt wird, wird eine Ausnahme + ausgelöst. + + + + + Ruft die Singleton-Instanz der Assert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung TRUE ist, und löst eine Ausnahme aus, + wenn die Bedingung FALSE ist. + + + Die Bedingung, von der der Test erwartet, dass sie TRUE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + FALSE ist. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is false. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is true. + + + + + Testet, ob die angegebene Bedingung FALSE ist, und löst eine Ausnahme aus, + wenn die Bedingung TRUE ist. + + + Die Bedingung, von der der Test erwartet, dass sie FALSE ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist TRUE. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is true. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt NULL ist, und löst eine Ausnahme aus, + wenn dies nicht der Fall ist. + + + Das Objekt, von dem der Test erwartet, dass es NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is null. + + + + + Testet, ob das angegebene Objekt ungleich NULL ist, und löst eine Ausnahme aus, + wenn es NULL ist. + + + Das Objekt, von dem der Test erwartet, dass es ungleich NULL ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist NULL. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null. + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, den der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not refer to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Objekte beide auf das gleiche Objekt verweisen, und + löst eine Ausnahme aus, wenn die beiden Eingaben nicht auf das gleiche Objekt verweisen. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist der Wert, der vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist identisch mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if refers to the same object + as . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Der erste zu vergleichende Wert. Dies ist der Wert, den der Test erwartet. + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Werte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Werte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + The type of values to compare. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Der zweite zu vergleichende Wert. Dies ist der Wert, der vom zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte gleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte nicht gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist das Objekt, das der Test erwartet. + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Objekte ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Objekte gleich sind. Verschiedene numerische Typen werden selbst dann als ungleich + behandelt, wenn die logischen Werte gleich sind. 42L ist nicht gleich 42. + + + Das erste zu vergleichende Objekt. Dies ist der Wert, von dem der Test keine + Übereinstimmung erwartet. . + + + Das zweite zu vergleichende Objekt. Dies ist das Objekt, das vom getesteten Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, den der Test erwartet. + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Gleitkommawerte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Gleitkommawert. Dies ist der Gleitkommawert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, den der Test erwartet. + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um mehr als . + + + Die in die Ausnahme einzuschließende Meldung, wenn + sich unterscheidet von um mehr als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Double-Werte ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Der erste zu vergleichende Double-Wert. Dies ist der Double-Wert, für den der Test keine Übereinstimmung + erwartet. . + + + Der zweite zu vergleichende Double-Wert. Dies ist der Double-Wert, der vom getesteten Code generiert wird. + + + Die erforderliche Genauigkeit. Eine Ausnahme wird nur ausgelöst, wenn + sich unterscheidet von + um höchstens . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich oder sich unterscheidet um weniger als + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen gleich sind, und löst eine Ausnahme aus, + wenn sie ungleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die der Test erwartet. + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. Die invariante Kultur wird für den Vergleich verwendet. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Zeichenfolgen ungleich sind, und löst eine Ausnahme aus, + wenn sie gleich sind. + + + Die erste zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, von der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Zeichenfolge. Dies ist die Zeichenfolge, die vom getesteten Code generiert wird. + + + Ein boolescher Wert, der einen Vergleich mit oder ohne Beachtung von Groß-/Kleinschreibung angibt. (TRUE + gibt einen Vergleich ohne Beachtung von Groß-/Kleinschreibung an.) + + + Ein CultureInfo-Objekt, das kulturspezifische Vergleichsinformationen bereitstellt. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt eine Instanz des erwarteten + Typs ist, und löst eine Ausnahme aus, wenn sich der erwartete Typ nicht in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es vom angegebenen Typ ist. + + + Der erwartete Typ von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testet, ob das angegebene Objekt keine Instanz des falschen + Typs ist, und löst eine Ausnahme aus, wenn sich der angegebene Typ in der + Vererbungshierarchie des Objekts befindet. + + + Das Objekt, von dem der Test erwartet, dass es nicht vom angegebenen Typ ist. + + + Der Typ, der unzulässig ist. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist keine Instanz von . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Löst eine AssertFailedException aus. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertFailedException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Always thrown. + + + + + Löst eine AssertInconclusiveException aus. + + + Die in die Ausnahme einzuschließende Meldung. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Always thrown. + + + + + Statische equals-Überladungen werden zum Vergleichen von Instanzen zweier Typen für + Verweisgleichheit verwendet. Diese Methode sollte nicht zum Vergleichen von zwei Instanzen auf + Gleichheit verwendet werden. Dieses Objekt löst immer einen Assert.Fail aus. Verwenden Sie + Assert.AreEqual und zugehörige Überladungen in Ihren Komponententests. + + Objekt A + Objekt B + Immer FALSE. + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der Typ der Ausnahme, die ausgelöst werden soll. + + + + + Testet, ob der von Delegat ausgegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und + + AssertFailedException + + auslöst, wenn der Code keine Ausnahme oder einen anderen Typ als auslöst. + + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Testet, ob der von Delegat angegebene Code genau die angegebene Ausnahme vom Typ (und nicht vom abgeleiteten Typ) auslöst + und AssertFailedException auslöst, wenn der Code keine Ausnahme auslöst oder einen anderen Typ als auslöst. + + Zu testender Delegatcode, von dem erwartet wird, dass er eine Ausnahme auslöst. + + Die in die Ausnahme einzuschließende Meldung, wenn + löst keine Ausnahme aus vom Typ . + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Der der Delegat ausgeführt wird. + + + + + Ersetzt Nullzeichen ("\0") durch "\\0". + + + Die Zeichenfolge, nach der gesucht werden soll. + + + Die konvertierte Zeichenfolge, in der Nullzeichen durch "\\0" ersetzt wurden. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Eine Hilfsfunktion, die eine AssertionFailedException erstellt und auslöst. + + + Der Name der Assertion, die eine Ausnahme auslöst. + + + Eine Meldung, die Bedingungen für den Assertionfehler beschreibt. + + + Die Parameter. + + + + + Überprüft den Parameter auf gültige Bedingungen. + + + Der Parameter. + + + Der Name der Assertion. + + + Parametername + + + Meldung für die ungültige Parameterausnahme. + + + Die Parameter. + + + + + Konvertiert ein Objekt sicher in eine Zeichenfolge und verarbeitet dabei NULL-Werte und Nullzeichen. + NULL-Werte werden in "(null)" konvertiert. Nullzeichen werden in "\\0" konvertiert". + + + Das Objekt, das in eine Zeichenfolge konvertiert werden soll. + + + Die konvertierte Zeichenfolge. + + + + + Die Zeichenfolgenassertion. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge die angegebene Teilzeichenfolge + enthält, und löst eine Ausnahme aus, wenn die Teilzeichenfolge nicht in der + Testzeichenfolge vorkommt. + + + Die Zeichenfolge, von der erwartet wird, dass sie Folgendes enthält: . + + + Die Zeichenfolge, die erwartet wird in . + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + beginnt, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge beginnt. + + + Die Zeichenfolge, von der erwartet wird, dass sie beginnt mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Präfix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + beginnt nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not begin with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit der angegebenen Teilzeichenfolge + endet, und löst eine Ausnahme aus, wenn die Testzeichenfolge nicht mit der + Teilzeichenfolge endet. + + + Die Zeichenfolge, von der erwartet wird, dass sie endet mit . + + + Die Zeichenfolge, von der erwartet wird, dass sie ein Suffix ist von . + + + Die in die Ausnahme einzuschließende Meldung, wenn + endet nicht mit . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not end with + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge nicht mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem eine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + keine Übereinstimmung vorliegt. . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if does not match + . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if matches . + + + + + Testet, ob die angegebene Zeichenfolge nicht mit einem regulären Ausdruck übereinstimmt, und + löst eine Ausnahme aus, wenn die Zeichenfolge mit dem Ausdruck übereinstimmt. + + + Die Zeichenfolge, von der erwartet wird, dass sie nicht übereinstimmt mit . + + + Der reguläre Ausdruck, mit dem keine + Übereinstimmung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + Übereinstimmungen . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if matches . + + + + + Eine Sammlung von Hilfsklassen zum Testen verschiedener Bedingungen, die + Sammlungen in Komponententests zugeordnet sind. Wenn die getestete Bedingung nicht + erfüllt wird, wird eine Ausnahme ausgelöst. + + + + + Ruft die Singleton-Instanz der CollectionAssert-Funktionalität ab. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element enthält, + und löst eine Ausnahme aus, wenn das Element nicht in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht in . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Thrown if is found in + . + + + + + Testet, ob die angegebene Sammlung das angegebene Element nicht enthält, + und löst eine Ausnahme aus, wenn das Element in der Sammlung enthalten ist. + + + Die Sammlung, in der nach dem Element gesucht werden soll. + + + Das Element, dessen Vorhandensein nicht in der Sammlung erwartet wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist in . Die Meldung wird in den Testergebnissen + angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung ungleich null sind, und löst + eine Ausnahme aus, wenn eines der Elemente NULL ist. + + + Die Sammlung, in der nach den Nullelementen gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält ein Nullelement. Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a null element is found in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung eindeutig sind, und + löst eine Ausnahme aus, wenn zwei Elemente in der Sammlung gleich sind. + + + Die Sammlung, in der nach Elementduplikaten gesucht werden soll. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält mindestens ein Elementduplikat. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if a two or more equal elements are found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn ein beliebiges Element in der Untermenge nicht auch in der + Obermenge enthalten ist. + + + Die Sammlung, von der erwartet wird, dass sie eine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie eine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + wurde nicht gefunden in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is not found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if every element in is also found in + . + + + + + Testet, ob eine Sammlung eine Untermenge einer anderen Sammlung ist, und + löst eine Ausnahme aus, wenn alle Elemente in der Untermenge auch in der + Obermenge enthalten sind. + + + Die Sammlung, von der erwartet wird, dass sie keine Untermenge ist von . + + + Die Sammlung, von der erwartet wird, dass sie keine Obermenge ist von + + + Die in die Ausnahme einzuschließende Meldung, wenn jedes Element in + auch gefunden wird in . + Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if every element in is also found in + . + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen die gleichen Elemente enthalten, und löst eine + Ausnahme aus, wenn eine der Sammlungen ein Element enthält, das in der anderen + Sammlung nicht enthalten ist. + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, die der Test + erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in einer + der Sammlungen gefunden wurde, aber nicht in der anderen. Die Meldung wird in + den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob zwei Sammlungen verschiedene Elemente enthalten, und löst eine + Ausnahme aus, wenn die beiden Sammlungen identische Elemente enthalten (ohne Berücksichtigung + der Reihenfolge). + + + Die erste zu vergleichende Sammlung. Enthält die Elemente, von denen der Test erwartet, + dass sie sich von der tatsächlichen Sammlung unterscheiden. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + enthält die gleichen Elemente wie . Die Meldung + wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob alle Elemente in der angegebenen Sammlung Instanzen + des erwarteten Typs sind, und löst eine Ausnahme aus, wenn der erwartete Typ sich + nicht in der Vererbungshierarchie mindestens eines Elements befindet. + + + Die Sammlung, die Elemente enthält, von denen der Test erwartet, dass sie + vom angegebenen Typ sind. + + + Der erwartete Typ jedes Elements von . + + + Die in die Ausnahme einzuschließende Meldung, wenn ein Element in + ist keine Instanz von + . Die Meldung wird in den Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen gleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen ungleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, die der Test erwartet. + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist nicht gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is not equal to + . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Thrown if is equal to . + + + + + Testet, ob die angegebenen Sammlungen ungleich sind, und löst eine Ausnahme aus, + wenn die beiden Sammlungen gleich sind. "Gleichheit" wird definiert durch die gleichen + Elemente in der gleichen Reihenfolge und Anzahl. Unterschiedliche Verweise auf den gleichen + Wert werden als gleich betrachtet. + + + Die erste zu vergleichende Sammlung. Dies ist die Sammlung, mit der der Test keine + Übereinstimmung erwartet. . + + + Die zweite zu vergleichende Sammlung. Dies ist die Sammlung, die vom + zu testenden Code generiert wird. + + + Die zu verwendende Vergleichsimplementierung beim Vergleichen von Elementen der Sammlung. + + + Die in die Ausnahme einzuschließende Meldung, wenn + ist gleich . Die Meldung wird in den + Testergebnissen angezeigt. + + + Ein zu verwendendes Array von Parametern beim Formatieren von: . + + + Thrown if is equal to . + + + + + Ermittelt, ob die erste Sammlung eine Teilmenge der zweiten + Sammlung ist. Wenn eine der Mengen Elementduplikate enthält, muss die Anzahl + der Vorkommen des Elements in der Teilmenge kleiner oder + gleich der Anzahl der Vorkommen in der Obermenge sein. + + + Die Sammlung, von der der Test erwartet, dass sie enthalten ist in . + + + Die Sammlung, von der der Test erwartet, dass sie Folgendes enthält: . + + + TRUE, wenn: eine Teilmenge ist von + , andernfalls FALSE. + + + + + Generiert ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + Die zu verarbeitende Sammlung. + + + Die Anzahl der Nullelemente in der Sammlung. + + + Ein Wörterbuch, das Anzahl der Vorkommen jedes + Elements in der angegebenen Sammlung enthält. + + + + + Findet ein nicht übereinstimmendes Element in den beiden Sammlungen. Ein nicht übereinstimmendes + Element ist ein Element, für das sich die Anzahl der Vorkommen in der + erwarteten Sammlung von der Anzahl der Vorkommen in der tatsächlichen Sammlung unterscheidet. Von den + Sammlungen wird angenommen, dass unterschiedliche Verweise ungleich null mit der + gleichen Anzahl von Elementen vorhanden sind. Der Aufrufer ist für diese Ebene + der Überprüfung verantwortlich. Wenn kein nicht übereinstimmendes Element vorhanden ist, gibt die Funktion FALSE + zurück, und die out-Parameter sollten nicht verwendet werden. + + + Die erste zu vergleichende Sammlung. + + + Die zweite zu vergleichende Sammlung. + + + Die erwartete Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Die tatsächliche Anzahl von Vorkommen von + oder 0, wenn kein nicht übereinstimmendes + Element vorhanden ist. + + + Das nicht übereinstimmende Element (kann NULL sein) oder NULL, wenn kein nicht + übereinstimmendes Element vorhanden ist. + + + TRUE, wenn ein nicht übereinstimmendes Element gefunden wurde, andernfalls FALSE. + + + + + vergleicht die Objekte mithilfe von object.Equals + + + + + Basisklasse für Frameworkausnahmen. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + Die Ausnahme. + + + + Initialisiert eine neue Instanz der -Klasse. + + Die Meldung. + + + + Eine stark typisierte Ressourcenklasse zum Suchen nach lokalisierten Zeichenfolgen usw. + + + + + Gibt die zwischengespeicherte ResourceManager-Instanz zurück, die von dieser Klasse verwendet wird. + + + + + Überschreibt die CurrentUICulture-Eigenschaft des aktuellen Threads für alle + Ressourcensuchen mithilfe dieser stark typisierten Ressourcenklasse. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zugriffszeichenfolge weist ungültige Syntax auf." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartete Sammlung enthält {1} Vorkommen von <{2}>. Die tatsächliche Sammlung enthält {3} Vorkommen. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Elementduplikat gefunden: <{1}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Groß-/Kleinschreibung unterscheidet sich für den tatsächlichen Wert: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz nicht größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1} ({2})>. Tatsächlich: <{3} ({4})>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Differenz größer als <{3}> zwischen erwartetem Wert <{1}> und tatsächlichem Wert <{2}> erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beliebiger Wert erwartet, ausgenommen: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Übergeben Sie keine Werttypen an AreSame(). In Object konvertierte Werte sind nie gleich. Verwenden Sie ggf. AreEqual(). {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Fehler von {0}. {1}" nach. + + + + + Sucht nach einer lokalisierten Zeichenfolge ähnlich der folgenden: "async TestMethod" wird mit UITestMethodAttribute nicht unterstützt. Entfernen Sie "async", oder verwenden Sie TestMethodAttribute. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen sind leer. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungsverweise zeigen auf das gleiche Sammlungsobjekt. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Beide Sammlungen enthalten die gleichen Elemente. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0}({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(null)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(object)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' enthält nicht Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} ({1})." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Assert.Equals sollte für Assertionen nicht verwendet werden. Verwenden Sie stattdessen Assert.AreEqual & Überladungen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Anzahl der Elemente in den Sammlungen stimmt nicht überein. Erwartet: <{1}>. Tatsächlich: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {0} stimmt nicht überein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} weist nicht den erwarteten Typ auf. Erwarteter Typ: <{2}>. Tatsächlicher Typ: <{3}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Element am Index {1} ist (null). Erwarteter Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' endet nicht mit Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ungültiges Argument: EqualsTester darf keine NULL-Werte verwenden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Objekt vom Typ {0} kann nicht in {1} konvertiert werden." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Das referenzierte interne Objekt ist nicht mehr gültig." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Eigenschaft {0} weist den Typ {1} auf. Erwartet wurde der Typ {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "{0} Erwarteter Typ: <{1}>. Tatsächlicher Typ: <{2}>." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt nicht mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Falscher Typ: <{1}>. Tatsächlicher Typ: <{2}>. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Zeichenfolge '{0}' stimmt mit dem Muster '{1}' überein. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Kein DataRowAttribute angegeben. Mindestens ein DataRowAttribute ist mit DataTestMethodAttribute erforderlich." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Keine Ausnahme ausgelöst. {1}-Ausnahme wurde erwartet. {0}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der Parameter '{0}' ist ungültig. Der Wert darf nicht NULL sein. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Unterschiedliche Anzahl von Elementen." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der Konstruktor mit der angegebenen Signatur wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich + "Der angegebene Member ({0}) wurde nicht gefunden. Möglicherweise müssen Sie Ihren privaten Accessor erneut generieren, + oder der Member ist ggf. privat und für eine Basisklasse definiert. Wenn Letzteres zutrifft, müssen Sie den Typ an den + Konstruktor von PrivateObject übergeben, der den Member definiert." nach. + . + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Zeichenfolge '{0}' beginnt nicht mit der Zeichenfolge '{1}'. {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Der erwartete Ausnahmetyp muss System.Exception oder ein von System.Exception abgeleiteter Typ sein." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "(Fehler beim Abrufen der Meldung vom Typ {0} aufgrund einer Ausnahme.)" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat erwartete Ausnahme {0} nicht ausgelöst. {1}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Die Testmethode hat keine Ausnahme ausgelöst. Vom Attribut {0}, das für die Testmethode definiert ist, wurde eine Ausnahme erwartet." nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Testmethode hat Ausnahme {0} ausgelöst, aber Ausnahme {1} oder ein davon abgeleiteter Typ wurde erwartet. Ausnahmemeldung: {2}" nach. + + + + + Schlägt eine lokalisierte Zeichenfolge ähnlich "Ausnahme {2} wurde ausgelöst, aber Ausnahme {1} wurde erwartet. {0} + Ausnahmemeldung: {3} + Stapelüberwachung: {4}" nach. + + + + + Ergebnisse des Komponententests + + + + + Der Test wurde ausgeführt, aber es gab Probleme. + Möglicherweise liegen Ausnahmen oder Assertionsfehler vor. + + + + + Der Test wurde abgeschlossen, es lässt sich aber nicht sagen, ob er bestanden wurde oder fehlerhaft war. + Kann für abgebrochene Tests verwendet werden. + + + + + Der Test wurde ohne Probleme ausgeführt. + + + + + Der Test wird zurzeit ausgeführt. + + + + + Systemfehler beim Versuch, einen Test auszuführen. + + + + + Timeout des Tests. + + + + + Der Test wurde vom Benutzer abgebrochen. + + + + + Der Test weist einen unbekannten Zustand auf. + + + + + Stellt Hilfsfunktionen für das Komponententestframework bereit. + + + + + Ruft die Ausnahmemeldungen (einschließlich der Meldungen für alle inneren Ausnahmen) + rekursiv ab. + + Ausnahme, für die Meldungen abgerufen werden sollen + Zeichenfolge mit Fehlermeldungsinformationen + + + + Enumeration für Timeouts, die mit der -Klasse verwendet werden kann. + Der Typ der Enumeration muss entsprechen: + + + + + Unendlich. + + + + + Das Testklassenattribut. + + + + + Erhält ein Testmethodenattribut, das die Ausführung des Tests ermöglicht. + + Die für diese Methode definierte Attributinstanz der Testmethode. + Diezum Ausführen dieses Tests + Extensions can override this method to customize how all methods in a class are run. + + + + Das Testmethodenattribut. + + + + + Führt eine Testmethode aus. + + Die auszuführende Textmethode. + Ein Array aus TestResult-Objekten, die für die Ergebnisses des Tests stehen. + Extensions can override this method to customize running a TestMethod. + + + + Das Testinitialisierungsattribut. + + + + + Das Testbereinigungsattribut. + + + + + Das Ignorierattribut. + + + + + Das Testeigenschaftattribut. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Der Name. + + + Der Wert. + + + + + Ruft den Namen ab. + + + + + Ruft den Wert ab. + + + + + Das Klasseninitialisierungsattribut. + + + + + Das Klassenbereinigungsattribut. + + + + + Das Assemblyinitialisierungsattribut. + + + + + Das Assemblybereinigungsattribut. + + + + + Der Testbesitzer. + + + + + Initialisiert eine neue Instanz der-Klasse. + + + Der Besitzer. + + + + + Ruft den Besitzer ab. + + + + + Prioritätsattribut. Wird zum Angeben der Priorität eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Die Priorität. + + + + + Ruft die Priorität ab. + + + + + Die Beschreibung des Tests. + + + + + Initialisiert eine neue Instanz der -Klasse zum Beschreiben eines Tests. + + Die Beschreibung. + + + + Ruft die Beschreibung eines Tests ab. + + + + + Der URI der CSS-Projektstruktur. + + + + + Initialisiert eine neue Instanz der -Klasse der CSS Projektstruktur-URI. + + Der CSS-Projektstruktur-URI. + + + + Ruft den CSS-Projektstruktur-URI ab. + + + + + Der URI der CSS-Iteration. + + + + + Initialisiert eine neue Instanz der-Klasse für den CSS Iterations-URI. + + Der CSS-Iterations-URI. + + + + Ruft den CSS-Iterations-URI ab. + + + + + WorkItem-Attribut. Wird zum Angeben eines Arbeitselements verwendet, das diesem Test zugeordnet ist. + + + + + Initialisiert eine neue Instanz der-Klasse für das WorkItem-Attribut. + + Die ID eines Arbeitselements. + + + + Ruft die ID für ein zugeordnetes Arbeitselement ab. + + + + + Timeoutattribut. Wird zum Angeben des Timeouts eines Komponententests verwendet. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + Das Timeout. + + + + + Initialisiert eine neue Instanz der -Klasse mit einem voreingestellten Timeout. + + + Das Timeout. + + + + + Ruft das Timeout ab. + + + + + Das TestResult-Objekt, das an den Adapter zurückgegeben werden soll. + + + + + Initialisiert eine neue Instanz der -Klasse. + + + + + Ruft den Anzeigenamen des Ergebnisses ab oder legt ihn fest. Hilfreich, wenn mehrere Ergebnisse zurückgegeben werden. + Wenn NULL, wird der Methodenname als DisplayName verwendet. + + + + + Ruft das Ergebnis der Testausführung ab oder legt es fest. + + + + + Ruft die Ausnahme ab, die bei einem Testfehler ausgelöst wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Ausgabe der Meldung ab, die vom Testcode protokolliert wird, oder legt sie fest. + + + + + Ruft die Debugablaufverfolgungen nach Testcode fest oder legt sie fest. + + + + + Gets or sets the debug traces by test code. + + + + + Ruft die Dauer der Testausführung ab oder legt sie fest. + + + + + Ruft den Datenzeilenindex in der Datenquelle ab, oder legt ihn fest. Nur festgelegt für Ergebnisse einer individuellen + Ausführung einer Datenzeile eines datengesteuerten Tests. + + + + + Ruft den Rückgabewert der Testmethode ab (zurzeit immer NULL). + + + + + Ruft die vom Test angehängten Ergebnisdateien ab, oder legt sie fest. + + + + + Gibt die Verbindungszeichenfolge, den Tabellennamen und die Zeilenzugriffsmethode für datengesteuerte Tests an. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Der Standardanbietername für DataSource. + + + + + Die standardmäßige Datenzugriffsmethode. + + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter, einer Verbindungszeichenfolge, einer Datentabelle und einer Datenzugriffsmethode für den Zugriff auf die Daten initialisiert. + + Invarianter Datenanbietername, z. B. "System.Data.SqlClient" + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + Gibt die Reihenfolge für den Datenzugriff an. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einer Verbindungszeichenfolge und einem Tabellennamen initialisiert. + Geben Sie eine Verbindungszeichenfolge und Datentabelle an, um auf die OLEDB-Datenquelle zuzugreifen. + + + Die für den Datenanbieter spezifische Verbindungszeichenfolge. + WARNUNG: Die Verbindungszeichenfolge kann sensible Daten (z. B. ein Kennwort) enthalten. + Die Verbindungszeichenfolge wird als Nur-Text im Quellcode und in der kompilierten Assembly gespeichert. + Schränken Sie den Zugriff auf den Quellcode und die Assembly ein, um diese vertraulichen Informationen zu schützen. + + Der Name der Datentabelle. + + + + Initialisiert eine neue Instanz der -Klasse. Diese Instanz wird mit einem Datenanbieter und einer Verbindungszeichenfolge mit dem Namen der Einstellung initialisiert. + + Der Name einer Datenquelle, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + Ruft einen Wert ab, der den Datenanbieter der Datenquelle darstellt. + + + Der Name des Datenanbieters. Wenn kein Datenanbieter während der Objektinitialisierung festgelegt wurde, wird der Standardanbieter "System.Data.OleDb" zurückgegeben. + + + + + Ruft einen Wert ab, der die Verbindungszeichenfolge für die Datenquelle darstellt. + + + + + Ruft einen Wert ab, der den Tabellennamen angibt, der Daten bereitstellt. + + + + + Ruft die Methode ab, die für den Zugriff auf die Datenquelle verwendet wird. + + + + Einer der-Werte. Wenn das nicht initialisiert wurde, wird der Standardwert zurückgegeben. . + + + + + Ruft den Namen einer Datenquelle ab, die im Abschnitt <microsoft.visualstudio.qualitytools> in der Datei "app.config" gefunden wurde. + + + + + Ein Attribut für datengesteuerte Tests, in denen Daten inline angegeben werden können. + + + + + Ermittelt alle Datenzeilen und beginnt mit der Ausführung. + + + Die test-Methode. + + + Ein Array aus . + + + + + Führt die datengesteuerte Testmethode aus. + + Die auszuführende Testmethode. + Die Datenzeile. + Ergebnisse der Ausführung. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..6655c2f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Se usa para especificar el elemento (archivo o directorio) para la implementación por prueba. + Puede especificarse en la clase de prueba o en el método de prueba. + Puede tener varias instancias del atributo para especificar más de un elemento. + La ruta de acceso del elemento puede ser absoluta o relativa. Si es relativa, lo es respecto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Inicializa una nueva instancia de la clase . + + Archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + + + + Inicializa una nueva instancia de la clase . + + Ruta de acceso relativa o absoluta al archivo o directorio para implementar. La ruta de acceso es relativa al directorio de salida de compilación. El elemento se copiará en el mismo directorio que los ensamblados de prueba implementados. + Ruta de acceso del directorio en el que se van a copiar los elementos. Puede ser absoluta o relativa respecto al directorio de implementación. Todos los archivos y directorios que identifica se copiarán en este directorio. + + + + Obtiene la ruta de acceso al archivo o carpeta de origen que se debe copiar. + + + + + Obtiene la ruta de acceso al directorio donde se copia el elemento. + + + + + Ejecuta el código de la prueba en el subproceso de la interfaz de usuario para aplicaciones de la Tienda Windows. + + + + + Ejecuta el método de prueba en el subproceso de la interfaz de usuario. + + + El método de prueba. + + + Una matriz de Instancias. + + Throws when run on an async test method. + + + + + Clase TestContext. Esta clase debe ser totalmente abstracta y no contener ningún + miembro. El adaptador implementará los miembros. Los usuarios del marco solo deben + tener acceso a esta clase a través de una interfaz bien definida. + + + + + Obtiene las propiedades de una prueba. + + + + + Obtiene el nombre completo de la clase que contiene el método de prueba que se está ejecutando. + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtiene el nombre del método de prueba que se está ejecutando. + + + + + Obtiene el resultado de la prueba actual. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5b05af9 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/es/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4199 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Atributo TestMethod para la ejecución. + + + + + Obtiene el nombre del método de prueba. + + + + + Obtiene el nombre de la clase de prueba. + + + + + Obtiene el tipo de valor devuelto del método de prueba. + + + + + Obtiene los parámetros del método de prueba. + + + + + Obtiene el valor de methodInfo para el método de prueba. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca el método de prueba. + + + Argumentos que se pasan al método de prueba (por ejemplo, controlada por datos) + + + Resultado de la invocación del método de prueba. + + + This call handles asynchronous test methods as well. + + + + + Obtiene todos los atributos del método de prueba. + + + Indica si el atributo definido en la clase primaria es válido. + + + Todos los atributos. + + + + + Obtiene un atributo de un tipo específico. + + System.Attribute type. + + Indica si el atributo definido en la clase primaria es válido. + + + Atributos del tipo especificado. + + + + + Elemento auxiliar. + + + + + Parámetro de comprobación no NULL. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws argument null exception when parameter is null. + + + + Parámetro de comprobación no NULL o vacío. + + + El parámetro. + + + El nombre del parámetro. + + + El mensaje. + + Throws ArgumentException when parameter is null. + + + + Enumeración de cómo se accede a las filas de datos en las pruebas controladas por datos. + + + + + Las filas se devuelven en orden secuencial. + + + + + Las filas se devuelven en orden aleatorio. + + + + + Atributo para definir los datos insertados de un método de prueba. + + + + + Inicializa una nueva instancia de la clase . + + Objeto de datos. + + + + Inicializa una nueva instancia de la clase , que toma una matriz de argumentos. + + Objeto de datos. + Más datos. + + + + Obtiene datos para llamar al método de prueba. + + + + + Obtiene o establece el nombre para mostrar en los resultados de pruebas para personalizarlo. + + + + + Excepción de aserción no concluyente. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Clase InternalTestFailureException. Se usa para indicar un error interno de un caso de prueba. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + Mensaje de la excepción. + + + + Inicializa una nueva instancia de la clase . + + + + + Atributo que indica que debe esperarse una excepción del tipo especificado. + + + + + Inicializa una nueva instancia de la clase con el tipo esperado. + + Tipo de la excepción esperada + + + + Inicializa una nueva instancia de la clase + con el tipo esperado y el mensaje para incluir cuando la prueba no produce una excepción. + + Tipo de la excepción esperada + + Mensaje que se incluye en el resultado de la prueba si esta no se supera debido a que no se inicia una excepción + + + + + Obtiene un valor que indica el tipo de la excepción esperada. + + + + + Obtiene o establece un valor que indica si se permite que los tipos derivados del tipo de la excepción esperada + se consideren también como esperados. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Comprueba que el tipo de la excepción producida por la prueba unitaria es el esperado. + + Excepción que inicia la prueba unitaria + + + + Clase base para atributos que especifican que se espere una excepción de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción predeterminado. + + + + + Inicializa una nueva instancia de la clase con un mensaje de ausencia de excepción. + + + Mensaje para incluir en el resultado de la prueba si esta no se supera debido a que no se inicia una + excepción + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje que debe incluirse en el resultado de la prueba si esta no acaba correctamente porque no se produce una excepción. + + + + + Obtiene el mensaje de ausencia de excepción predeterminado. + + Nombre del tipo de atributo ExpectedException + Mensaje de ausencia de excepción predeterminado + + + + Determina si se espera la excepción. Si el método devuelve un valor, se entiende + que se esperaba la excepción. Si el método produce una excepción, + se entiende que no se esperaba la excepción y se incluye el mensaje + de la misma en el resultado de la prueba. Se puede usar para mayor + comodidad. Si se utiliza y la aserción no funciona, + el resultado de la prueba se establece como No concluyente. + + Excepción que inicia la prueba unitaria + + + + Produce de nuevo la excepción si es de tipo AssertFailedException o AssertInconclusiveException. + + La excepción que se va a reiniciar si es una excepción de aserción + + + + Esta clase está diseñada para ayudar al usuario a realizar pruebas unitarias para tipos con tipos genéricos. + GenericParameterHelper satisface algunas de las restricciones de tipo genérico comunes, + como: + 1. Constructor predeterminado público. + 2. Implementa una interfaz común: IComparable, IEnumerable. + + + + + Inicializa una nueva instancia de la clase que + satisface la restricción "renovable" en genéricos de C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa una nueva instancia de la clase que + inicializa la propiedad Data con un valor proporcionado por el usuario. + + Cualquier valor entero + + + + Obtiene o establece los datos. + + + + + Compara el valor de dos objetos GenericParameterHelper. + + objeto con el que hacer la comparación + Es true si el objeto tiene el mismo valor que el objeto GenericParameterHelper "this". + De lo contrario, false. + + + + Devuelve un código hash para este objeto. + + El código hash. + + + + Compara los datos de los dos objetos . + + Objeto con el que se va a comparar. + + Número con signo que indica los valores relativos de esta instancia y valor. + + + Thrown when the object passed in is not an instance of . + + + + + Devuelve un objeto IEnumerator cuya longitud se deriva de + la propiedad Data. + + El objeto IEnumerator + + + + Devuelve un objeto GenericParameterHelper que es igual al + objeto actual. + + El objeto clonado. + + + + Permite a los usuarios registrar o escribir el seguimiento de las pruebas unitarias con fines de diagnóstico. + + + + + Controlador para LogMessage. + + Mensaje para registrar. + + + + Evento que se debe escuchar. Se genera cuando el autor de las pruebas unitarias escribe algún mensaje. + Lo consume principalmente el adaptador. + + + + + API del escritor de la prueba para llamar a los mensajes de registro. + + Formato de cadena con marcadores de posición. + Parámetros para los marcadores de posición. + + + + Atributo TestCategory. Se usa para especificar la categoría de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase y le aplica la categoría a la prueba. + + + Categoría de prueba. + + + + + Obtiene las categorías que se le han aplicado a la prueba. + + + + + Clase base del atributo "Category". + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa una nueva instancia de la clase . + Aplica la categoría a la prueba. Las cadenas que devuelve TestCategories + se usan con el comando /category para filtrar las pruebas. + + + + + Obtiene la categoría que se le ha aplicado a la prueba. + + + + + Clase AssertFailedException. Se usa para indicar el error de un caso de prueba. + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Inicializa una nueva instancia de la clase . + + + + + Colección de clases auxiliares para probar varias condiciones en las + pruebas unitarias. Si la condición que se está probando no se cumple, se produce + una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad de Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is false. + + + + + Comprueba si la condición especificada es true y produce una excepción + si la condición es false. + + + Condición que la prueba espera que sea true. + + + Mensaje que se va a incluir en la excepción cuando + es false. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is false. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is true. + + + + + Comprueba si la condición especificada es false y produce una excepción + si la condición es true. + + + Condición que la prueba espera que sea false. + + + Mensaje que se va a incluir en la excepción cuando + es true. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is true. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado es NULL y produce una excepción + si no lo es. + + + El objeto que la prueba espera que sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + no es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is null. + + + + + Comprueba si el objeto especificado no es NULL y produce una excepción + si lo es. + + + El objeto que la prueba espera que no sea NULL. + + + Mensaje que se va a incluir en la excepción cuando + es NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null. + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia al mismo objeto + y produce una excepción si ambas entradas no hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera. + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual que . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not refer to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos objetos especificados hacen referencia a objetos diferentes + y produce una excepción si ambas entradas hacen referencia al mismo objeto. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual que . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if refers to the same object + as . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is not equal to . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera. + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos valores especificados son distintos y produce una excepción + si son iguales. Los tipos numéricos distintos se tratan + como diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + The type of values to compare. + + + Primer valor para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo valor para comparar. Este es el valor generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son iguales y produce una excepción + si no lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el objeto que la prueba espera. + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos objetos especificados son distintos y produce una excepción + si lo son. Los tipos numéricos distintos se tratan + como tipos diferentes aunque sus valores lógicos sean iguales. 42L no es igual que 42. + + + Primer objeto para comparar. Este es el valor que la prueba espera que no + coincida con . + + + Segundo objeto para comparar. Este es el objeto generado por el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son iguales y produce una excepción + si no lo son. + + + Primer valor float para comparar. Este es el valor float que la prueba espera. + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores float especificados son distintos y produce una excepción + si son iguales. + + + Primer valor float para comparar. Este es el valor float que la prueba espera que no + coincida con . + + + Segundo valor float para comparar. Este es el valor float generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Thrown if is not equal to + . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son iguales y produce una excepción + si no lo son. + + + Primer valor double para comparar. Este es el valor double que la prueba espera. + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por más de . + + + Mensaje que se va a incluir en la excepción cuando + difiere de por más de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si los valores double especificados son distintos y produce una excepción + si son iguales. + + + Primer valor double para comparar. Este es el valor double que la prueba espera que no + coincida con . + + + Segundo valor double para comparar. Este es el valor double generado por el código sometido a prueba. + + + Precisión requerida. Se iniciará una excepción solamente si + difiere de + por un máximo de . + + + Mensaje que se va a incluir en la excepción cuando + es igual a o difiere por menos de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. Se usa la referencia cultural invariable para la comparación. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son iguales y produce una excepción + si no lo son. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera. + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. Para la comparación, se usa la referencia cultural invariable. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si las cadenas especificadas son distintas y produce una excepción + si son iguales. + + + Primera cadena para comparar. Esta es la cadena que la prueba espera que no + coincida con . + + + Segunda cadena para comparar. Esta es la cadena generada por el código sometido a prueba. + + + Valor booleano que indica una comparación donde se distingue o no mayúsculas de minúsculas. (true + indica una comparación que no distingue mayúsculas de minúsculas). + + + Objeto CultureInfo que proporciona información de comparación específica de la referencia cultural. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado es una instancia del tipo + esperado y produce una excepción si el tipo esperado no se encuentra en + la jerarquía de herencia del objeto. + + + El objeto que la prueba espera que sea del tipo especificado. + + + Tipo esperado de . + + + Mensaje que se va a incluir en la excepción cuando + no es una instancia de . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Comprueba si el objeto especificado no es una instancia del tipo + incorrecto y produce una excepción si el tipo especificado se encuentra en la + jerarquía de herencia del objeto. + + + El objeto que la prueba espera que no sea del tipo especificado. + + + El tipo que no debe tener. + + + Mensaje que se va a incluir en la excepción cuando + es una instancia de . El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Produce una excepción AssertFailedException. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertFailedException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Always thrown. + + + + + Produce una excepción AssertInconclusiveException. + + + Mensaje que se va a incluir en la excepción. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Always thrown. + + + + + Las sobrecargas de igualdad estáticas se usan para comparar la igualdad de referencia de + instancias de dos tipos. Este método no debe usarse para comparar la igualdad de dos instancias. + Este objeto se devolverá siempre con Assert.Fail. Utilice + Assert.AreEqual y las sobrecargas asociadas en pruebas unitarias. + + Objeto A + Objeto B + False, siempre. + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado a código que se va a probar y que se espera que inicie una excepción. + + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + El tipo de excepción que se espera que se inicie. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción + + AssertFailedException + + si el código no produce la excepción dada o produce otra de un tipo que no sea . + + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Comprueba si el código especificado por el delegado produce exactamente la excepción dada de tipo (y no de un tipo derivado) + y devuelve una excepción AssertFailedException si el código no produce la excepción dada o produce otra de un tipo que no sea . + + Delegado para el código que se va a probar y que se espera que inicie una excepción. + + Mensaje que se va a incluir en la excepción cuando + no inicia una excepción de tipo . + + + Matriz de parámetros que se usa al formatear . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + que ejecuta el delegado. + + + + + Reemplaza los caracteres NULL "\0" por "\\0". + + + Cadena para buscar. + + + La cadena convertida con los caracteres NULL reemplazados por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Función auxiliar que produce una excepción AssertionFailedException. + + + nombre de la aserción que inicia una excepción + + + mensaje que describe las condiciones del error de aserción + + + Los parámetros. + + + + + Comprueba el parámetro para las condiciones válidas. + + + El parámetro. + + + Nombre de la aserción. + + + nombre de parámetro + + + mensaje de la excepción de parámetro no válido + + + Los parámetros. + + + + + Convierte un objeto en cadena de forma segura, con control de los valores y caracteres NULL. + Los valores NULL se convierten en "NULL". Los caracteres NULL se convierten en "\\0". + + + Objeto que se va a convertir en cadena. + + + La cadena convertida. + + + + + Aserción de cadena. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada contiene la subcadena indicada + y produce una excepción si la subcadena no está en la + cadena de prueba. + + + La cadena que se espera que contenga . + + + La cadena que se espera que aparezca en . + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada empieza por la subcadena indicada + y produce una excepción si la cadena de prueba no empieza por la + subcadena. + + + Cadena que se espera que empiece por . + + + Cadena que se espera que sea un prefijo de . + + + Mensaje que se va a incluir en la excepción cuando + no empieza por . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not begin with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada termina con la subcadena indicada + y produce una excepción si la cadena de prueba no termina con la + subcadena. + + + Cadena que se espera que termine con . + + + Cadena que se espera que sea un sufijo de . + + + Mensaje que se va a incluir en la excepción cuando + no termina con . El mensaje se + muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not end with + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada coincide con una expresión regular + y produce una excepción si la cadena no coincide con la expresión. + + + La cadena que se espera que coincida con . + + + Expresión regular con la que se espera que + coincida. + + + Mensaje que se va a incluir en la excepción cuando + no coincide con . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if does not match + . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if matches . + + + + + Comprueba si la cadena especificada no coincide con una expresión regular + y produce una excepción si la cadena coincide con la expresión. + + + Cadena que se espera que no coincida con . + + + Expresión regular con la que se espera que no + coincida. + + + Mensaje que se va a incluir en la excepción cuando + coincide con . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if matches . + + + + + Colección de clases auxiliares para probar varias condiciones asociadas + a las colecciones en las pruebas unitarias. Si la condición que se está probando no se + cumple, se produce una excepción. + + + + + Obtiene la instancia de singleton de la funcionalidad CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada contiene el elemento indicado + y produce una excepción si el elemento no está en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + no se encuentra en . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Thrown if is found in + . + + + + + Comprueba si la colección especificada no contiene el elemento indicado + y produce una excepción si el elemento se encuentra en la colección. + + + Colección donde buscar el elemento. + + + El elemento que se espera que no esté en la colección. + + + Mensaje que se va a incluir en la excepción cuando + se encuentra en . El mensaje se muestra en los resultados de las + pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is found in + . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Thrown if a null element is found in . + + + + + Comprueba que todos los elementos de la colección especificada no sean NULL + y produce una excepción si alguno lo es. + + + Colección donde buscar elementos NULL. + + + Mensaje que se va a incluir en la excepción cuando + contiene un elemento NULL. El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a null element is found in . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si todos los elementos de la colección especificada son únicos o no + y produce una excepción si dos elementos de la colección son iguales. + + + Colección donde buscar elementos duplicados. + + + Mensaje que se va a incluir en la excepción cuando + contiene al menos un elemento duplicado. El mensaje se muestra en los + resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if a two or more equal elements are found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección es un subconjunto de otra y produce + una excepción si algún elemento del subconjunto no se encuentra también en el + superconjunto. + + + Se esperaba que la colección fuera un subconjunto de . + + + Se esperaba que la colección fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is not found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Thrown if every element in is also found in + . + + + + + Comprueba si una colección no es un subconjunto de otra y produce + una excepción si todos los elementos del subconjunto se encuentran también en el + superconjunto. + + + Se esperaba que la colección no fuera un subconjunto de . + + + Se esperaba que la colección no fuera un superconjunto de + + + Mensaje que se va a incluir en la excepción cuando cada elemento de + también se encuentra en . + El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if every element in is also found in + . + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen los mismos elementos y produce + una excepción si alguna de ellas contiene un elemento que + no está en la otra. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando un elemento se encontró + en una de las colecciones pero no en la otra. El mensaje se muestra + en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si dos colecciones contienen elementos distintos y produce una + excepción si las colecciones contienen elementos idénticos, independientemente + del orden. + + + Primera colección para comparar. Contiene los elementos que la prueba + espera que sean distintos a los de la colección real. + + + Segunda colección para comparar. Esta es la colección generada por + el código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + contiene los mismos elementos que . El mensaje + se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si todos los elementos de la colección especificada son instancias + del tipo esperado y produce una excepción si el tipo esperado no + se encuentra en la jerarquía de herencia de uno o más de los elementos. + + + Colección que contiene los elementos que la prueba espera que sean del + tipo especificado. + + + El tipo esperado de cada elemento de . + + + Mensaje que se va a incluir en la excepción cuando un elemento de + no es una instancia de + . El mensaje se muestra en los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son iguales y produce una excepción + si las colecciones no son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera. + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + no es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is not equal to + . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Thrown if is equal to . + + + + + Comprueba si dos colecciones especificadas son distintas y produce una excepción + si las colecciones son iguales. La igualdad equivale a tener los mismos + elementos en el mismo orden y la misma cantidad. Las distintas referencias al mismo + valor se consideran iguales. + + + Primera colección para comparar. Esta es la colección que la prueba espera que + no coincida con . + + + Segunda colección para comparar. Esta es la colección generada por el + código sometido a prueba. + + + Implementación de comparación que se va a usar al comparar elementos de la colección. + + + Mensaje que se va a incluir en la excepción cuando + es igual a . El mensaje se muestra en + los resultados de las pruebas. + + + Matriz de parámetros que se usa al formatear . + + + Thrown if is equal to . + + + + + Determina si la primera colección es un subconjunto de la + segunda. Si cualquiera de los conjuntos contiene elementos duplicados, el número + de repeticiones del elemento en el subconjunto debe ser inferior o + igual al número de repeticiones en el superconjunto. + + + Colección que la prueba espera que esté incluida en . + + + Colección que la prueba espera que contenga . + + + True si es un subconjunto de + , de lo contrario false. + + + + + Construye un diccionario que contiene el número de repeticiones de cada + elemento en la colección especificada. + + + Colección que se va a procesar. + + + Número de elementos NULL de la colección. + + + Diccionario que contiene el número de repeticiones de cada elemento + en la colección especificada. + + + + + Encuentra un elemento no coincidente entre ambas colecciones. Un elemento + no coincidente es aquel que aparece un número distinto de veces en la + colección esperada de lo que aparece en la colección real. Se + supone que las colecciones son referencias no NULL diferentes con el + mismo número de elementos. El autor de la llamada es el responsable de + este nivel de comprobación. Si no hay ningún elemento no coincidente, + la función devuelve false y no deben usarse parámetros out. + + + La primera colección para comparar. + + + La segunda colección para comparar. + + + Número esperado de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El número real de repeticiones de + o 0 si no hay ningún elemento no + coincidente. + + + El elemento no coincidente (puede ser nulo) o NULL si no hay ningún + elemento no coincidente. + + + Es true si se encontró un elemento no coincidente. De lo contrario, false. + + + + + compara los objetos con object.Equals. + + + + + Clase base para las excepciones de marco. + + + + + Inicializa una nueva instancia de la clase . + + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + La excepción. + + + + Inicializa una nueva instancia de la clase . + + El mensaje. + + + + Clase de recurso fuertemente tipado para buscar cadenas traducidas, etc. + + + + + Devuelve la instancia de ResourceManager almacenada en caché que usa esta clase. + + + + + Invalida la propiedad CurrentUICulture del subproceso actual para todas + las búsquedas de recursos que usan esta clase de recursos fuertemente tipados. + + + + + Busca una cadena traducida similar a "La cadena de acceso tiene una sintaxis no válida". + + + + + Busca una cadena traducida similar a "La colección esperada contiene {1} repeticiones de <{2}>. La colección actual contiene {3} repeticiones. {0}". + + + + + Busca una cadena traducida similar a "Se encontró un elemento duplicado: <{1}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>. El caso es distinto para el valor real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia no superior a <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1} ({2})>, pero es: <{3} ({4})>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba una diferencia mayor que <{3}> entre el valor esperado <{1}> y el valor real <{2}>. {0}". + + + + + Busca una cadena traducida similar a "Se esperaba cualquier valor excepto: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "No pase tipos de valor a AreSame(). Los valores convertidos a Object no serán nunca iguales. Considere el uso de AreEqual(). {0}". + + + + + Busca una cadena traducida similar a "Error de {0}. {1}". + + + + + Busca una cadena traducida similar a "No se admite un método de prueba asincrónico con UITestMethodAttribute. Quite el método asincrónico o use TestMethodAttribute. + + + + + Busca una cadena traducida similar a "Ambas colecciones están vacías". {0}. + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos". + + + + + Busca una cadena traducida similar a "Las referencias de ambas colecciones apuntan al mismo objeto de colección. {0}". + + + + + Busca una cadena traducida similar a "Ambas colecciones tienen los mismos elementos. {0}". + + + + + Busca una cadena traducida similar a "{0}({1})". + + + + + Busca una cadena traducida similar a "(NULL)". + + + + + Busca una cadena traducida similar a "(objeto)". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no contiene la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "{0} ({1})". + + + + + Busca una cadena traducida similar a "No se debe usar Assert.Equals para aserciones. Use Assert.AreEqual y Overloads en su lugar". + + + + + Busca una cadena traducida similar a "El número de elementos de las colecciones no coincide. Se esperaba: <{1}>, pero es: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {0} no coincide". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} no es del tipo esperado. Tipo esperado: <{2}>, tipo real: <{3}>. {0}". + + + + + Busca una cadena traducida similar a "El elemento del índice {1} es (NULL). Se esperaba el tipo: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no termina con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "Argumento no válido: EqualsTester no puede utilizar valores NULL". + + + + + Busca una cadena traducida similar a "El objeto de tipo {0} no se puede convertir en {1}". + + + + + Busca una cadena traducida similar a "El objeto interno al que se hace referencia ya no es válido". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. {1}". + + + + + Busca una cadena traducida similar a "La propiedad {0} tiene el tipo {1}; se esperaba el tipo {2}". + + + + + Busca una cadena traducida similar a "{0} Tipo esperado: <{1}>. Tipo real: <{2}>". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "Tipo incorrecto: <{1}>. Tipo real: <{2}>. {0}". + + + + + Busca una cadena traducida similar a "La cadena "{0}" coincide con el patrón "{1}". {2}". + + + + + Busca una cadena traducida similar a "No se especificó ningún atributo DataRowAttribute. Se requiere al menos un elemento DataRowAttribute con DataTestMethodAttribute". + + + + + Busca una cadena traducida similar a "No se produjo ninguna excepción. Se esperaba la excepción {1}. {0}". + + + + + Busca una cadena traducida similar a "El parámetro "{0}" no es válido. El valor no puede ser NULL. {1}". + + + + + Busca una cadena traducida similar a "Número diferente de elementos". + + + + + Busca una cadena traducida similar a + "No se encontró el constructor con la signatura especificada. Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a + "No se encontró el miembro especificado ({0}). Es posible que tenga que regenerar el descriptor de acceso privado, + o que el miembro sea privado y esté definido en una clase base. Si se trata de esto último, debe pasar el tipo + que define el miembro al constructor de PrivateObject". + + + + + Busca una cadena traducida similar a "La cadena "{0}" no empieza con la cadena "{1}". {2}". + + + + + Busca una cadena traducida similar a "El tipo de excepción esperado debe ser System.Exception o un tipo derivado de System.Exception". + + + + + Busca una cadena traducida similar a "No se pudo obtener el mensaje para una excepción del tipo {0} debido a una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba no inició la excepción esperada {0}. {1}". + + + + + Busca una cadena traducida similar a "El método de prueba no inició una excepción. El atributo {0} definido en el método de prueba esperaba una excepción". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1}. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "El método de prueba inició la excepción {0}, pero se esperaba la excepción {1} o un tipo derivado de ella. Mensaje de la excepción: {2}". + + + + + Busca una cadena traducida similar a "Se produjo la excepción {2}, pero se esperaba la excepción {1}. {0} + Mensaje de excepción: {3} + Seguimiento de la pila: {4}". + + + + + Resultados de la prueba unitaria. + + + + + La prueba se ejecutó, pero hubo problemas. + Entre estos, puede haber excepciones o aserciones con errores. + + + + + La prueba se completó, pero no podemos determinar si el resultado fue correcto o no. + Se puede usar para pruebas anuladas. + + + + + La prueba se ejecutó sin problemas. + + + + + La prueba se está ejecutando. + + + + + Error del sistema al intentar ejecutar una prueba. + + + + + Se agotó el tiempo de espera de la prueba. + + + + + El usuario anuló la prueba. + + + + + La prueba tiene un estado desconocido + + + + + Proporciona funcionalidad auxiliar para el marco de pruebas unitarias. + + + + + Obtiene los mensajes de excepción, incluidos los mensajes de todas las excepciones internas, + de forma recursiva. + + Excepción para la que se obtienen los mensajes + la cadena con información del mensaje de error + + + + Enumeración para cuando se agota el tiempo de espera que se puede usar con el atributo . + El tipo de la enumeración debe coincidir. + + + + + Infinito. + + + + + Atributo de la clase de prueba. + + + + + Obtiene un atributo de método de prueba que habilita la ejecución de esta prueba. + + La instancia de atributo de método de prueba definida en este método. + Tipo que se utilizará para ejecutar esta prueba. + Extensions can override this method to customize how all methods in a class are run. + + + + Atributo del método de prueba. + + + + + Ejecuta un método de prueba. + + El método de prueba para ejecutar. + Una matriz de objetos de TestResult que representan los resultados de la prueba. + Extensions can override this method to customize running a TestMethod. + + + + Atributo para inicializar la prueba. + + + + + Atributo de limpieza de la prueba. + + + + + Atributo de omisión. + + + + + Atributo de propiedad de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El nombre. + + + El valor. + + + + + Obtiene el nombre. + + + + + Obtiene el valor. + + + + + Atributo de inicialización de la clase. + + + + + Atributo de limpieza de la clase. + + + + + Atributo de inicialización del ensamblado. + + + + + Atributo de limpieza del ensamblado. + + + + + Propietario de la prueba. + + + + + Inicializa una nueva instancia de la clase . + + + El propietario. + + + + + Obtiene el propietario. + + + + + Atributo de prioridad. Se usa para especificar la prioridad de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + La prioridad. + + + + + Obtiene la prioridad. + + + + + Descripción de la prueba. + + + + + Inicializa una nueva instancia de la clase para describir una prueba. + + La descripción. + + + + Obtiene la descripción de una prueba. + + + + + URI de estructura de proyectos de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de estructura de proyecto de CSS. + + URI de estructura de proyectos de CSS. + + + + Obtiene el URI de estructura de proyectos de CSS. + + + + + URI de iteración de CSS. + + + + + Inicializa una nueva instancia de la clase para el URI de iteración de CSS. + + URI de iteración de CSS. + + + + Obtiene el URI de iteración de CSS. + + + + + Atributo WorkItem. Se usa para especificar un elemento de trabajo asociado a esta prueba. + + + + + Inicializa una nueva instancia de la clase para el atributo WorkItem. + + Identificador de un elemento de trabajo. + + + + Obtiene el identificador de un elemento de trabajo asociado. + + + + + Atributo de tiempo de espera. Se usa para especificar el tiempo de espera de una prueba unitaria. + + + + + Inicializa una nueva instancia de la clase . + + + Tiempo de espera. + + + + + Inicializa una nueva instancia de la clase con un tiempo de espera preestablecido. + + + Tiempo de espera + + + + + Obtiene el tiempo de espera. + + + + + Objeto TestResult que debe devolverse al adaptador. + + + + + Inicializa una nueva instancia de la clase . + + + + + Obtiene o establece el nombre para mostrar del resultado. Es útil cuando se devuelven varios resultados. + Si es NULL, se utiliza el nombre del método como nombre para mostrar. + + + + + Obtiene o establece el resultado de la ejecución de pruebas. + + + + + Obtiene o establece la excepción que se inicia cuando la prueba da error. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece la salida del mensaje registrado por el código de la prueba. + + + + + Obtiene o establece el seguimiento de depuración que realiza el código de la prueba. + + + + + Gets or sets the debug traces by test code. + + + + + Obtiene o establece la duración de la ejecución de la prueba. + + + + + Obtiene o establece el índice de la fila de datos en el origen de datos. Se establece solo para resultados + de ejecuciones individuales de filas de datos de una prueba controlada por datos. + + + + + Obtiene o establece el valor devuelto del método de prueba. Actualmente es siempre NULL. + + + + + Obtiene o establece los archivos de resultados que adjunta la prueba. + + + + + Especifica la cadena de conexión, el nombre de tabla y el método de acceso a fila para las pruebas controladas por datos. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nombre de proveedor predeterminado del origen de datos. + + + + + Método de acceso a datos predeterminado. + + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos, una cadena de conexión, una tabla de datos y un método de acceso a datos para acceder al origen de datos. + + Nombre invariable del proveedor de datos, como System.Data.SqlClient + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + Especifica el orden de acceso a los datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con una cadena de conexión y un nombre de tabla. + Especifique la cadena de conexión y la tabla de datos para acceder al origen de datos OLEDB. + + + Cadena de conexión específica del proveedor de datos. + ADVERTENCIA: La cadena de conexión puede contener información confidencial (por ejemplo, una contraseña). + La cadena de conexión se almacena en texto sin formato en el código fuente y en el ensamblado compilado. + Restrinja el acceso al código fuente y al ensamblado para proteger esta información confidencial. + + Nombre de la tabla de datos. + + + + Inicializa una nueva instancia de la clase . Esta instancia se inicializará con un proveedor de datos y una cadena de conexión asociada al nombre del valor de configuración. + + El nombre de un origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + Obtiene un valor que representa el proveedor de datos del origen de datos. + + + Nombre del proveedor de datos. Si no se designó un proveedor de datos al inicializar el objeto, se devolverá el proveedor predeterminado de System.Data.OleDb. + + + + + Obtiene un valor que representa la cadena de conexión para el origen de datos. + + + + + Obtiene un valor que indica el nombre de la tabla que proporciona los datos. + + + + + Obtiene el método usado para tener acceso al origen de datos. + + + + Uno de los . Si no se ha inicializado, devolverá el valor predeterminado . + + + + + Obtiene el nombre del origen de datos que se encuentra en la sección <microsoft.visualstudio.qualitytools> del archivo app.config. + + + + + Atributo para una prueba controlada por datos donde los datos pueden especificarse insertados. + + + + + Busca todas las filas de datos y las ejecuta. + + + El método de prueba. + + + Una matriz de . + + + + + Ejecuta el método de prueba controlada por datos. + + Método de prueba para ejecutar. + Fila de datos. + Resultados de la ejecución. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..356cec5 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Permet de spécifier l'élément de déploiement (fichier ou répertoire) pour un déploiement par test. + Peut être spécifié sur une classe de test ou une méthode de test. + Peut avoir plusieurs instances de l'attribut pour spécifier plusieurs éléments. + Le chemin de l'élément peut être absolu ou relatif. S'il est relatif, il l'est par rapport à RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Initialise une nouvelle instance de la classe . + + Fichier ou répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + + + + Initialise une nouvelle instance de la classe + + Chemin relatif ou absolu du fichier ou du répertoire à déployer. Le chemin est relatif au répertoire de sortie de build. L'élément est copié dans le même répertoire que les assemblys de tests déployés. + Chemin du répertoire dans lequel les éléments doivent être copiés. Il peut être absolu ou relatif au répertoire de déploiement. Tous les fichiers et répertoires identifiés par vont être copiés dans ce répertoire. + + + + Obtient le chemin du fichier ou dossier source à copier. + + + + + Obtient le chemin du répertoire dans lequel l'élément est copié. + + + + + Exécutez le code de test dans le thread d'IU (interface utilisateur) pour les applications du Windows Store. + + + + + Exécute la méthode de test sur le thread d'IU (interface utilisateur). + + + Méthode de test. + + + Tableau de instances. + + Throws when run on an async test method. + + + + + Classe TestContext. Cette classe doit être complètement abstraite, et ne doit contenir aucun + membre. L'adaptateur va implémenter les membres. Les utilisateurs du framework ne doivent + y accéder que via une interface bien définie. + + + + + Obtient les propriétés de test d'un test. + + + + + Obtient le nom complet de la classe contenant la méthode de test en cours d'exécution + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtient le nom de la méthode de test en cours d'exécution + + + + + Obtient le résultat de test actuel. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2d63dc0 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/fr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod pour exécution. + + + + + Obtient le nom de la méthode de test. + + + + + Obtient le nom de la classe de test. + + + + + Obtient le type de retour de la méthode de test. + + + + + Obtient les paramètres de la méthode de test. + + + + + Obtient le methodInfo de la méthode de test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Appelle la méthode de test. + + + Arguments à passer à la méthode de test. (Exemple : pour un test piloté par les données) + + + Résultat de l'appel de la méthode de test. + + + This call handles asynchronous test methods as well. + + + + + Obtient tous les attributs de la méthode de test. + + + Indique si l'attribut défini dans la classe parente est valide. + + + Tous les attributs. + + + + + Obtient l'attribut du type spécifique. + + System.Attribute type. + + Indique si l'attribut défini dans la classe parente est valide. + + + Attributs du type spécifié. + + + + + Assistance. + + + + + Paramètre de vérification non null. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws argument null exception when parameter is null. + + + + Paramètre de vérification non null ou vide. + + + Paramètre. + + + Nom du paramètre. + + + Message. + + Throws ArgumentException when parameter is null. + + + + Énumération liée à la façon dont nous accédons aux lignes de données dans les tests pilotés par les données. + + + + + Les lignes sont retournées dans un ordre séquentiel. + + + + + Les lignes sont retournées dans un ordre aléatoire. + + + + + Attribut permettant de définir les données inline d'une méthode de test. + + + + + Initialise une nouvelle instance de la classe . + + Objet de données. + + + + Initialise une nouvelle instance de la classe qui accepte un tableau d'arguments. + + Objet de données. + Plus de données. + + + + Obtient les données permettant d'appeler la méthode de test. + + + + + Obtient ou définit le nom d'affichage dans les résultats des tests à des fins de personnalisation. + + + + + Exception d'assertion non concluante. + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Classe InternalTestFailureException. Sert à indiquer l'échec interne d'un cas de test + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message d'exception. + + + + Initialise une nouvelle instance de la classe . + + + + + Attribut indiquant d'attendre une exception du type spécifié + + + + + Initialise une nouvelle instance de la classe avec le type attendu + + Type de l'exception attendue + + + + Initialise une nouvelle instance de la classe avec + le type attendu et le message à inclure quand aucune exception n'est levée par le test. + + Type de l'exception attendue + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient une valeur indiquant le type de l'exception attendue + + + + + Obtient ou définit une valeur indiquant si les types dérivés du type de l'exception attendue peuvent + être éligibles comme prévu + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Vérifie que le type de l'exception levée par le test unitaire est bien attendu + + Exception levée par le test unitaire + + + + Classe de base des attributs qui spécifient d'attendre une exception d'un test unitaire + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception par défaut + + + + + Initialise une nouvelle instance de la classe avec un message d'absence d'exception + + + Message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une + exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message à inclure dans le résultat de test en cas d'échec du test lié à la non-levée d'une exception + + + + + Obtient le message d'absence d'exception par défaut + + Nom du type de l'attribut ExpectedException + Message d'absence d'exception par défaut + + + + Détermine si l'exception est attendue. Si la méthode est retournée, cela + signifie que l'exception est attendue. Si la méthode lève une exception, cela + signifie que l'exception n'est pas attendue, et que le message de l'exception levée + est inclus dans le résultat de test. La classe peut être utilisée par + commodité. Si est utilisé et si l'assertion est un échec, + le résultat de test a la valeur Non concluant. + + Exception levée par le test unitaire + + + + Lève à nouveau l'exception, s'il s'agit de AssertFailedException ou de AssertInconclusiveException + + Exception à lever de nouveau, s'il s'agit d'une exception d'assertion + + + + Cette classe permet à l'utilisateur d'effectuer des tests unitaires pour les types basés sur des types génériques. + GenericParameterHelper répond à certaines contraintes usuelles des types génériques, + exemple : + 1. constructeur par défaut public + 2. implémentation d'une interface commune : IComparable, IEnumerable + + + + + Initialise une nouvelle instance de la classe qui + répond à la contrainte 'newable' dans les génériques C#. + + + This constructor initializes the Data property to a random value. + + + + + Initialise une nouvelle instance de la classe qui + initialise la propriété Data en lui assignant une valeur fournie par l'utilisateur. + + Valeur entière + + + + Obtient ou définit les données + + + + + Compare la valeur de deux objets GenericParameterHelper + + objet à comparer + true si obj a la même valeur que l'objet GenericParameterHelper de 'this'. + sinon false. + + + + Retourne un code de hachage pour cet objet. + + Code de hachage. + + + + Compare les données des deux objets . + + Objet à comparer. + + Nombre signé indiquant les valeurs relatives de cette instance et de cette valeur. + + + Thrown when the object passed in is not an instance of . + + + + + Retourne un objet IEnumerator dont la longueur est dérivée de + la propriété Data. + + Objet IEnumerator + + + + Retourne un objet GenericParameterHelper égal à + l'objet actuel. + + Objet cloné. + + + + Permet aux utilisateurs de journaliser/d'écrire des traces de tests unitaires à des fins de diagnostic. + + + + + Gestionnaire de LogMessage. + + Message à journaliser. + + + + Événement à écouter. Déclenché quand le writer de test unitaire écrit un message. + Sert principalement à être consommé par un adaptateur. + + + + + API à appeler par le writer de test pour journaliser les messages. + + Format de chaîne avec des espaces réservés. + Paramètres des espaces réservés. + + + + Attribut TestCategory utilisé pour spécifier la catégorie d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe et applique la catégorie au test. + + + Catégorie de test. + + + + + Obtient les catégories de test appliquées au test. + + + + + Classe de base de l'attribut "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Initialise une nouvelle instance de la classe . + Applique la catégorie au test. Les chaînes retournées par TestCategories + sont utilisées avec la commande /category pour filtrer les tests + + + + + Obtient la catégorie de test appliquée au test. + + + + + Classe AssertFailedException. Sert à indiquer l'échec d'un cas de test + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Initialise une nouvelle instance de la classe . + + + + + Collection de classes d'assistance permettant de tester diverses conditions dans + des tests unitaires. Si la condition testée n'est pas remplie, une exception + est levée. + + + + + Obtient l'instance singleton de la fonctionnalité Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur true, et lève une exception + si la condition a la valeur false. + + + Condition censée être vraie (true) pour le test. + + + Message à inclure dans l'exception quand + est false. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is false. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Thrown if is true. + + + + + Teste si la condition spécifiée a la valeur false, et lève une exception + si la condition a la valeur true. + + + Condition censée être fausse (false) pour le test. + + + Message à inclure dans l'exception quand + est true. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is true. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur null, et lève une exception + si ce n'est pas le cas. + + + Objet censé avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + n'a pas une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if is null. + + + + + Teste si l'objet spécifié a une valeur non null, et lève une exception + s'il a une valeur null. + + + Objet censé ne pas avoir une valeur null pour le test. + + + Message à inclure dans l'exception quand + a une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null. + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence au même objet, et + lève une exception si les deux entrées ne font pas référence au même objet. + + + Premier objet à comparer. Valeur attendue par le test. + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas identique à . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not refer to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Thrown if refers to the same object + as . + + + + + Teste si les objets spécifiés font référence à des objets distincts, et + lève une exception si les deux entrées font référence au même objet. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est identique à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if refers to the same object + as . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is not equal to . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont identiques, et lève une exception + si les deux valeurs sont différentes. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Valeur attendue par le test. + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs spécifiées sont différentes, et lève une exception + si les deux valeurs sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + The type of values to compare. + + + Première valeur à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur à comparer. Il s'agit de la valeur produite par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont identiques, et lève une exception + si les deux objets ne sont pas identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Objet attendu par le test. + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les objets spécifiés sont différents, et lève une exception + si les deux objets sont identiques. Les types numériques distincts sont considérés comme + différents même si les valeurs logiques sont identiques. 42L n'est pas égal à 42. + + + Premier objet à comparer. Il s'agit de la valeur à laquelle le test est censé ne pas + correspondre . + + + Second objet à comparer. Il s'agit de l'objet produit par le code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur float à comparer. Valeur float attendue par le test. + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs float spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur float à comparer. Il s'agit de la valeur float à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur float à comparer. Il s'agit de la valeur float produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Thrown if is not equal to + . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première valeur double à comparer. Valeur double attendue par le test. + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + de plus de . + + + Message à inclure dans l'exception quand + est différent de de plus de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les valeurs double spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première valeur double à comparer. Il s'agit de la valeur double à laquelle le test est censé ne pas + correspondre . + + + Seconde valeur double à comparer. Il s'agit de la valeur double produite par le code testé. + + + Précision nécessaire. Une exception est levée uniquement si + est différent de + d'au maximum . + + + Message à inclure dans l'exception quand + est égal à ou diffère de moins de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont identiques, et lève une exception + si elles sont différentes. + + + Première chaîne à comparer. Chaîne attendue par le test. + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. La culture invariante est utilisée pour la comparaison. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les chaînes spécifiées sont différentes, et lève une exception + si elles sont identiques. + + + Première chaîne à comparer. Il s'agit de la chaîne à laquelle le test est censé ne pas + correspondre . + + + Seconde chaîne à comparer. Il s'agit de la chaîne produite par le code testé. + + + Booléen indiquant une comparaison qui respecte la casse ou non. (true + indique une comparaison qui ne respecte pas la casse.) + + + Objet CultureInfo qui fournit des informations de comparaison spécifiques à la culture. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié est une instance du + type attendu, et lève une exception si le type attendu n'est pas dans + la hiérarchie d'héritage de l'objet. + + + Objet censé être du type spécifié pour le test. + + + Le type attendu de . + + + Message à inclure dans l'exception quand + n'est pas une instance de . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Teste si l'objet spécifié n'est pas une instance du mauvais + type, et lève une exception si le type spécifié est dans + la hiérarchie d'héritage de l'objet. + + + Objet censé ne pas être du type spécifié pour le test. + + + Type auquel ne doit pas correspondre. + + + Message à inclure dans l'exception quand + est une instance de . Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Lève AssertFailedException. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertFailedException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Always thrown. + + + + + Lève AssertInconclusiveException. + + + Message à inclure dans l'exception. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Always thrown. + + + + + Les surcharges statiques d'equals comparent les instances de deux types pour déterminer si leurs références sont + égales entre elles. Cette méthode ne doit pas être utilisée pour évaluer si deux instances sont + égales entre elles. Cet objet est toujours levé avec Assert.Fail. Utilisez + Assert.AreEqual et les surcharges associées dans vos tests unitaires. + + Objet A + Objet B + False, toujours. + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Type de l'exception censée être levée. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève + + AssertFailedException + + si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + + Délégué du code à tester et censé lever une exception. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Teste si le code spécifié par le délégué lève une exception précise de type (et non d'un type dérivé) + et lève AssertFailedException si le code ne lève pas d'exception, ou lève une exception d'un autre type que . + + Délégué du code à tester et censé lever une exception. + + Message à inclure dans l'exception quand + ne lève pas d'exception de type . + + + Tableau de paramètres à utiliser pour la mise en forme de . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Le qui exécute le délégué. + + + + + Remplace les caractères Null ('\0') par "\\0". + + + Chaîne à rechercher. + + + Chaîne convertie où les caractères null sont remplacés par "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Fonction d'assistance qui crée et lève AssertionFailedException + + + nom de l'assertion levant une exception + + + message décrivant les conditions de l'échec d'assertion + + + Paramètres. + + + + + Vérifie la validité des conditions du paramètre + + + Paramètre. + + + Nom de l'assertion. + + + nom du paramètre + + + message d'exception liée à un paramètre non valide + + + Paramètres. + + + + + Convertit en toute sécurité un objet en chaîne, en gérant les valeurs null et les caractères Null. + Les valeurs null sont converties en "(null)". Les caractères Null sont convertis en "\\0". + + + Objet à convertir en chaîne. + + + Chaîne convertie. + + + + + Assertion de chaîne. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée contient la sous-chaîne spécifiée + et lève une exception si la sous-chaîne ne figure pas dans + la chaîne de test. + + + Chaîne censée contenir . + + + Chaîne censée se trouver dans . + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée commence par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne commence pas par la + sous-chaîne. + + + Chaîne censée commencer par . + + + Chaîne censée être un préfixe de . + + + Message à inclure dans l'exception quand + ne commence pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not begin with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Thrown if does not end with + . + + + + + Teste si la chaîne indiquée finit par la sous-chaîne spécifiée + et lève une exception si la chaîne de test ne finit pas par la + sous-chaîne. + + + Chaîne censée finir par . + + + Chaîne censée être un suffixe de . + + + Message à inclure dans l'exception quand + ne finit pas par . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not end with + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée correspond à une expression régulière, et + lève une exception si la chaîne ne correspond pas à l'expression. + + + Chaîne censée correspondre à . + + + Expression régulière qui est + censé correspondre. + + + Message à inclure dans l'exception quand + ne correspond pas . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if does not match + . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Thrown if matches . + + + + + Teste si la chaîne spécifiée ne correspond pas à une expression régulière + et lève une exception si la chaîne correspond à l'expression. + + + Chaîne censée ne pas correspondre à . + + + Expression régulière qui est + censé ne pas correspondre. + + + Message à inclure dans l'exception quand + correspond à . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if matches . + + + + + Collection de classes d'assistance permettant de tester diverses conditions associées + à des collections dans les tests unitaires. Si la condition testée n'est pas + remplie, une exception est levée. + + + + + Obtient l'instance singleton de la fonctionnalité CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée contient l'élément spécifié + et lève une exception si l'élément n'est pas dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé se trouver dans la collection. + + + Message à inclure dans l'exception quand + n'est pas dans . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Thrown if is found in + . + + + + + Teste si la collection indiquée ne contient pas l'élément spécifié + et lève une exception si l'élément est dans la collection. + + + Collection dans laquelle rechercher l'élément. + + + Élément censé ne pas se trouver dans la collection. + + + Message à inclure dans l'exception quand + est dans . Le message s'affiche dans les + résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is found in + . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée ont des valeurs non null, et lève + une exception si un élément a une valeur null. + + + Collection dans laquelle rechercher les éléments ayant une valeur null. + + + Message à inclure dans l'exception quand + contient un élément ayant une valeur null. Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a null element is found in . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si tous les éléments de la collection spécifiée sont uniques ou non, et + lève une exception si deux éléments de la collection sont identiques. + + + Collection dans laquelle rechercher les éléments dupliqués. + + + Message à inclure dans l'exception quand + contient au moins un élément dupliqué. Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if a two or more equal elements are found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is not found in + . + + + + + Teste si une collection est un sous-ensemble d'une autre collection et + lève une exception si un élément du sous-ensemble ne se trouve pas également dans le + sur-ensemble. + + + Collection censée être un sous-ensemble de . + + + Collection censée être un sur-ensemble de + + + Message à inclure dans l'exception quand un élément présent dans + est introuvable dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is not found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Thrown if every element in is also found in + . + + + + + Teste si une collection n'est pas un sous-ensemble d'une autre collection et + lève une exception si tous les éléments du sous-ensemble se trouvent également dans le + sur-ensemble. + + + Collection censée ne pas être un sous-ensemble de . + + + Collection censée ne pas être un sur-ensemble de + + + Message à inclure dans l'exception quand chaque élément présent dans + est également trouvé dans . + Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if every element in is also found in + . + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent les mêmes éléments, et lève une + exception si l'une des collections contient un élément non présent dans l'autre + collection. + + + Première collection à comparer. Ceci contient les éléments que le test + attend. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand un élément est trouvé + dans l'une des collections mais pas l'autre. Le message s'affiche + dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si deux collections contiennent des éléments distincts, et lève une + exception si les deux collections contiennent des éléments identiques, indépendamment + de l'ordre. + + + Première collection à comparer. Ceci contient les éléments que le test + est censé différencier des éléments de la collection réelle. + + + Seconde collection à comparer. Il s'agit de la collection produite par + le code testé. + + + Message à inclure dans l'exception quand + contient les mêmes éléments que . Le message + s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si tous les éléments de la collection spécifiée sont des instances + du type attendu, et lève une exception si le type attendu + n'est pas dans la hiérarchie d'héritage d'un ou de plusieurs éléments. + + + Collection contenant des éléments que le test considère comme étant + du type spécifié. + + + Type attendu de chaque élément de . + + + Message à inclure dans l'exception quand un élément présent dans + n'est pas une instance de + . Le message s'affiche dans les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont égales entre elles, et lève une exception + si les deux collections ne sont pas égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection attendue par les tests. + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + n'est pas égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is not equal to + . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Thrown if is equal to . + + + + + Teste si les collections spécifiées sont différentes, et lève une exception + si les deux collections sont égales entre elles. L'égalité est définie quand il existe les mêmes + éléments dans le même ordre et en même quantité. Des références différentes à la même + valeur sont considérées comme égales entre elles. + + + Première collection à comparer. Collection à laquelle les tests sont censés + ne pas correspondre . + + + Seconde collection à comparer. Il s'agit de la collection produite par le + code testé. + + + Implémentation de comparaison à utiliser durant la comparaison d'éléments de la collection. + + + Message à inclure dans l'exception quand + est égal à . Le message s'affiche dans + les résultats des tests. + + + Tableau de paramètres à utiliser pour la mise en forme de . + + + Thrown if is equal to . + + + + + Détermine si la première collection est un sous-ensemble de la seconde + collection. Si l'un des deux ensembles contient des éléments dupliqués, le nombre + d'occurrences de l'élément dans le sous-ensemble doit être inférieur ou + égal au nombre d'occurrences dans le sur-ensemble. + + + Collection dans laquelle le test est censé être contenu . + + + Collection que le test est censé contenir . + + + True si est un sous-ensemble de + , sinon false. + + + + + Construit un dictionnaire contenant le nombre d'occurrences de chaque + élément dans la collection spécifiée. + + + Collection à traiter. + + + Nombre d'éléments de valeur null dans la collection. + + + Dictionnaire contenant le nombre d'occurrences de chaque élément + dans la collection spécifiée. + + + + + Recherche un élément incompatible parmi les deux collections. Un élément incompatible + est un élément qui n'apparaît pas avec la même fréquence dans la + collection attendue et dans la collection réelle. Les + collections sont supposées être des références non null distinctes ayant le + même nombre d'éléments. L'appelant est responsable de ce niveau de + vérification. S'il n'existe aucun élément incompatible, la fonction retourne + la valeur false et les paramètres out ne doivent pas être utilisés. + + + Première collection à comparer. + + + Seconde collection à comparer. + + + Nombre attendu d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Nombre réel d'occurrences de + ou 0, s'il n'y a aucune incompatibilité + des éléments. + + + Élément incompatible (pouvant avoir une valeur null), ou valeur null s'il n'existe aucun + élément incompatible. + + + true si un élément incompatible est trouvé ; sinon, false. + + + + + compare les objets via object.Equals + + + + + Classe de base pour les exceptions de framework. + + + + + Initialise une nouvelle instance de la classe . + + + + + Initialise une nouvelle instance de la classe . + + Message. + Exception. + + + + Initialise une nouvelle instance de la classe . + + Message. + + + + Une classe de ressource fortement typée destinée, entre autres, à la consultation des chaînes localisées. + + + + + Retourne l'instance ResourceManager mise en cache utilisée par cette classe. + + + + + Remplace la propriété CurrentUICulture du thread actuel pour toutes + les recherches de ressources à l'aide de cette classe de ressource fortement typée. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne Access comporte une syntaxe non valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : La collection attendue contient {1} occurrence(s) de <{2}>. La collection réelle contient {3} occurrence(s). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Un élément dupliqué a été trouvé : <{1}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. La casse est différente pour la valeur réelle : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue non supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1} ({2})>. Réel : <{3} ({4})>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Attendu : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Différence attendue supérieure à <{3}> comprise entre la valeur attendue <{1}> et la valeur réelle <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Toute valeur attendue sauf : <{1}>. Réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Ne passez pas de types valeur à AreSame(). Les valeurs converties en Object ne seront plus jamais les mêmes. Si possible, utilisez AreEqual(). {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Échec de {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : async TestMethod utilisé avec UITestMethodAttribute n'est pas pris en charge. Supprimez async ou utilisez TestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections sont vides. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent des éléments identiques. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections Reference pointent vers le même objet Collection. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les deux collections contiennent les mêmes éléments. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0}({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : (null). + + + + + Recherche une chaîne localisée semblable à celle-ci : (objet). + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne contient pas la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} ({1}). + + + + + Recherche une chaîne localisée semblable à celle-ci : Assert.Equals ne doit pas être utilisé pour les assertions. Utilisez Assert.AreEqual et des surcharges à la place. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le nombre d'éléments dans les collections ne correspond pas. Attendu : <{1}>. Réel : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Les éléments à l'index {0} ne correspondent pas. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} n'est pas du type attendu. Type attendu : <{2}>. Type réel : <{3}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'élément à l'index {1} est (null). Type attendu : <{2}>.{0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne se termine pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Argument non valide - EqualsTester ne peut pas utiliser de valeurs null. + + + + + Recherche une chaîne localisée semblable à celle-ci : Impossible de convertir un objet de type {0} en {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'objet interne référencé n'est plus valide. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La propriété {0} a le type {1} ; type attendu {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : {0} Type attendu : <{1}>. Type réel : <{2}>. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne correspond pas au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Type incorrect : <{1}>. Type réel : <{2}>. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' correspond au modèle '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucun DataRowAttribute spécifié. Au moins un DataRowAttribute est nécessaire avec DataTestMethodAttribute. + + + + + Recherche une chaîne localisée semblable à celle-ci : Aucune exception levée. Exception {1} attendue. {0}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le paramètre '{0}' est non valide. La valeur ne peut pas être null. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Nombre d'éléments différent. + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le constructeur doté de la signature spécifiée est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : + Le membre spécifié ({0}) est introuvable. Vous devrez peut-être régénérer votre accesseur private, + ou le membre est peut-être private et défini sur une classe de base. Si le dernier cas est vrai, vous devez transmettre le type + qui définit le membre dans le constructeur de PrivateObject. + . + + + + + Recherche une chaîne localisée semblable à celle-ci : La chaîne '{0}' ne commence pas par la chaîne '{1}'. {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : Le type de l'exception attendue doit être System.Exception ou un type dérivé de System.Exception. + + + + + Recherche une chaîne localisée semblable à celle-ci : (Échec de la réception du message pour une exception de type {0} en raison d'une exception.). + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé l'exception attendue {0}. {1}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test n'a pas levé d'exception. Une exception était attendue par l'attribut {0} défini sur la méthode de test. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : La méthode de test a levé l'exception {0}, mais l'exception {1} (ou un type dérivé de cette dernière) était attendue. Message d'exception : {2}. + + + + + Recherche une chaîne localisée semblable à celle-ci : L'exception {2} a été levée, mais l'exception {1} était attendue. {0} + Message d'exception : {3} + Arborescence des appels de procédure : {4}. + + + + + résultats du test unitaire + + + + + Le test a été exécuté mais des problèmes se sont produits. + Il peut s'agir de problèmes liés à des exceptions ou des échecs d'assertion. + + + + + Test effectué, mais nous ne pouvons pas dire s'il s'agit d'une réussite ou d'un échec. + Utilisable éventuellement pour les tests abandonnés. + + + + + Le test a été exécuté sans problème. + + + + + Le test est en cours d'exécution. + + + + + Une erreur système s'est produite pendant que nous tentions d'exécuter un test. + + + + + Délai d'expiration du test. + + + + + Test abandonné par l'utilisateur. + + + + + Le test est dans un état inconnu + + + + + Fournit une fonctionnalité d'assistance pour le framework de tests unitaires + + + + + Obtient les messages d'exception, notamment les messages de toutes les exceptions internes + de manière récursive + + Exception pour laquelle les messages sont obtenus + chaîne avec les informations du message d'erreur + + + + Énumération des délais d'expiration, qui peut être utilisée avec la classe . + Le type de l'énumération doit correspondre + + + + + Infini. + + + + + Attribut de la classe de test. + + + + + Obtient un attribut de méthode de test qui permet d'exécuter ce test. + + Instance d'attribut de méthode de test définie sur cette méthode. + Le à utiliser pour exécuter ce test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attribut de la méthode de test. + + + + + Exécute une méthode de test. + + Méthode de test à exécuter. + Tableau d'objets TestResult qui représentent le ou les résultats du test. + Extensions can override this method to customize running a TestMethod. + + + + Attribut d'initialisation du test. + + + + + Attribut de nettoyage du test. + + + + + Attribut ignore. + + + + + Attribut de la propriété de test. + + + + + Initialise une nouvelle instance de la classe . + + + Nom. + + + Valeur. + + + + + Obtient le nom. + + + + + Obtient la valeur. + + + + + Attribut d'initialisation de la classe. + + + + + Attribut de nettoyage de la classe. + + + + + Attribut d'initialisation de l'assembly. + + + + + Attribut de nettoyage de l'assembly. + + + + + Propriétaire du test + + + + + Initialise une nouvelle instance de la classe . + + + Propriétaire. + + + + + Obtient le propriétaire. + + + + + Attribut Priority utilisé pour spécifier la priorité d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Priorité. + + + + + Obtient la priorité. + + + + + Description du test + + + + + Initialise une nouvelle instance de la classe pour décrire un test. + + Description. + + + + Obtient la description d'un test. + + + + + URI de structure de projet CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI de structure de projet CSS. + + URI de structure de projet CSS. + + + + Obtient l'URI de structure de projet CSS. + + + + + URI d'itération CSS + + + + + Initialise une nouvelle instance de la classe pour l'URI d'itération CSS. + + URI d'itération CSS. + + + + Obtient l'URI d'itération CSS. + + + + + Attribut WorkItem permettant de spécifier un élément de travail associé à ce test. + + + + + Initialise une nouvelle instance de la classe pour l'attribut WorkItem. + + ID d'un élément de travail. + + + + Obtient l'ID d'un élément de travail associé. + + + + + Attribut Timeout utilisé pour spécifier le délai d'expiration d'un test unitaire. + + + + + Initialise une nouvelle instance de la classe . + + + Délai d'expiration. + + + + + Initialise une nouvelle instance de la classe avec un délai d'expiration prédéfini + + + Délai d'expiration + + + + + Obtient le délai d'attente. + + + + + Objet TestResult à retourner à l'adaptateur. + + + + + Initialise une nouvelle instance de la classe . + + + + + Obtient ou définit le nom d'affichage du résultat. Utile pour retourner plusieurs résultats. + En cas de valeur null, le nom de la méthode est utilisé en tant que DisplayName. + + + + + Obtient ou définit le résultat de l'exécution du test. + + + + + Obtient ou définit l'exception levée en cas d'échec du test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit la sortie du message journalisé par le code de test. + + + + + Obtient ou définit les traces de débogage du code de test. + + + + + Gets or sets the debug traces by test code. + + + + + Obtient ou définit la durée de l'exécution du test. + + + + + Obtient ou définit l'index de ligne de données dans la source de données. Défini uniquement pour les résultats de + l'exécution individuelle de la ligne de données d'un test piloté par les données. + + + + + Obtient ou définit la valeur renvoyée de la méthode de test. (Toujours null). + + + + + Obtient ou définit les fichiers de résultats attachés par le test. + + + + + Spécifie la chaîne de connexion, le nom de la table et la méthode d'accès aux lignes pour les tests pilotés par les données. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nom du fournisseur par défaut de DataSource. + + + + + Méthode d'accès aux données par défaut. + + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données, une chaîne de connexion, une table de données et une méthode d'accès aux données pour accéder à la source de données. + + Nom du fournisseur de données invariant, par exemple System.Data.SqlClient + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + Spécifie l'ordre d'accès aux données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec une chaîne de connexion et un nom de table. + Spécifiez la chaîne de connexion et la table de données permettant d'accéder à la source de données OLEDB. + + + Chaîne de connexion spécifique au fournisseur de données. + AVERTISSEMENT : La chaîne de connexion peut contenir des données sensibles (par exemple, un mot de passe). + La chaîne de connexion est stockée en texte brut dans le code source et dans l'assembly compilé. + Restreignez l'accès au code source et à l'assembly pour protéger ces informations sensibles. + + Nom de la table de données. + + + + Initialise une nouvelle instance de la classe . Cette instance va être initialisée avec un fournisseur de données et une chaîne de connexion associés au nom du paramètre. + + Nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + Obtient une valeur représentant le fournisseur de données de la source de données. + + + Nom du fournisseur de données. Si aucun fournisseur de données n'a été désigné au moment de l'initialisation de l'objet, le fournisseur par défaut de System.Data.OleDb est retourné. + + + + + Obtient une valeur représentant la chaîne de connexion de la source de données. + + + + + Obtient une valeur indiquant le nom de la table qui fournit les données. + + + + + Obtient la méthode utilisée pour accéder à la source de données. + + + + Une des valeurs possibles. Si n'est pas initialisé, ce qui entraîne le retour de la valeur par défaut . + + + + + Obtient le nom d'une source de données trouvée dans la section <microsoft.visualstudio.qualitytools> du fichier app.config. + + + + + Attribut du test piloté par les données, où les données peuvent être spécifiées inline. + + + + + Recherche toutes les lignes de données et les exécute. + + + Méthode de test. + + + Tableau des . + + + + + Exécute la méthode de test piloté par les données. + + Méthode de test à exécuter. + Ligne de données. + Résultats de l'exécution. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..8b061c2 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usato per specificare l'elemento di distribuzione (file o directory) per la distribuzione per singolo test. + Può essere specificato in classi o metodi di test. + Può contenere più istanze dell'attributo per specificare più di un elemento. + Il percorso dell'elemento può essere assoluto o relativo; se è relativo, è relativo rispetto a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Inizializza una nuova istanza della classe . + + File o directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + + + + Inizializza una nuova istanza della classe + + Percorso relativo o assoluto del file o della directory per la distribuzione. Il percorso è relativo alla directory di output della compilazione. L'elemento verrà copiato nella stessa directory degli assembly di test distribuiti. + Percorso della directory in cui vengono copiati gli elementi. Può essere assoluto o relativo rispetto alla directory di distribuzione. Tutte le directory e tutti i file identificati da verranno copiati in questa directory. + + + + Ottiene il percorso della cartella o del file di origine da copiare. + + + + + Ottiene il percorso della directory in cui viene copiato l'elemento. + + + + + Esegue il codice di test nel thread dell'interfaccia utente per le app di Windows Store. + + + + + Esegue il metodo di test sul thread dell'interfaccia utente. + + + Metodo di test. + + + Matrice di . + + Throws when run on an async test method. + + + + + Classe TestContext. Questa classe deve essere completamente astratta e non deve + contenere membri. I membri verranno implementati dall'adattatore. Gli utenti del framework devono + accedere a questa classe solo tramite un'interfaccia correttamente definita. + + + + + Ottiene le proprietà di un test. + + + + + Ottiene il nome completo della classe contenente il metodo di test attualmente in esecuzione + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Ottiene il nome del metodo di test attualmente in esecuzione + + + + + Ottiene il risultato del test corrente. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..d3540c8 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/it/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metodo di test per l'esecuzione. + + + + + Ottiene il nome del metodo di test. + + + + + Ottiene il nome della classe di test. + + + + + Ottiene il tipo restituito del metodo di test. + + + + + Ottiene i parametri del metodo di test. + + + + + Ottiene l'oggetto methodInfo per il metodo di test. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Richiama il metodo di test. + + + Argomenti da passare al metodo di test, ad esempio per test basati sui dati + + + Risultato della chiamata del metodo di test. + + + This call handles asynchronous test methods as well. + + + + + Ottiene tutti gli attributi del metodo di test. + + + Indica se l'attributo definito nella classe padre è valido. + + + Tutti gli attributi. + + + + + Ottiene l'attributo di tipo specifico. + + System.Attribute type. + + Indica se l'attributo definito nella classe padre è valido. + + + Attributi del tipo specificato. + + + + + Helper. + + + + + Parametro check non Null. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws argument null exception when parameter is null. + + + + Parametro check non Null o vuoto. + + + Parametro. + + + Nome del parametro. + + + Messaggio. + + Throws ArgumentException when parameter is null. + + + + Enumerazione relativa alla modalità di accesso alle righe di dati nei test basati sui dati. + + + + + Le righe vengono restituite in ordine sequenziale. + + + + + Le righe vengono restituite in ordine casuale. + + + + + Attributo per definire i dati inline per un metodo di test. + + + + + Inizializza una nuova istanza della classe . + + Oggetto dati. + + + + Inizializza una nuova istanza della classe che accetta una matrice di argomenti. + + Oggetto dati. + Altri dati. + + + + Ottiene i dati per chiamare il metodo di test. + + + + + Ottiene o imposta il nome visualizzato nei risultati del test per la personalizzazione. + + + + + Eccezione senza risultati dell'asserzione. + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Classe InternalTestFailureException. Usata per indicare un errore interno per un test case + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio dell'eccezione. + + + + Inizializza una nuova istanza della classe . + + + + + Attributo che specifica di presupporre un'eccezione del tipo specificato + + + + + Inizializza una nuova istanza della classe con il tipo previsto + + Tipo dell'eccezione prevista + + + + Inizializza una nuova istanza della classe con + il tipo previsto e il messaggio da includere quando il test non genera alcuna eccezione. + + Tipo dell'eccezione prevista + + Messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene un valore che indica il tipo dell'eccezione prevista + + + + + Ottiene o imposta un valore che indica se consentire a tipi derivati dal tipo dell'eccezione prevista + di qualificarsi come previsto + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Verifica che il tipo dell'eccezione generata dallo unit test sia prevista + + Eccezione generata dallo unit test + + + + Classe di base per attributi che specificano se prevedere che uno unit test restituisca un'eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio per indicare nessuna eccezione + + + + + Inizializza una nuova istanza della classe con un messaggio che indica nessuna eccezione + + + Messaggio da includere nel risultato del test se il test non riesce perché non + viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio da includere nel risultato del test se il test non riesce perché non viene generata un'eccezione + + + + + Ottiene il messaggio predefinito per indicare nessuna eccezione + + Nome del tipo di attributo di ExpectedException + Messaggio predefinito per indicare nessuna eccezione + + + + Determina se l'eccezione è prevista. Se il metodo viene completato, si + presuppone che l'eccezione era prevista. Se il metodo genera un'eccezione, si + presuppone che l'eccezione non era prevista e il messaggio dell'eccezione generata + viene incluso nel risultato del test. Si può usare la classe per + comodità. Se si usa e l'asserzione non riesce, + il risultato del test viene impostato su Senza risultati. + + Eccezione generata dallo unit test + + + + Genera di nuovo l'eccezione se si tratta di un'eccezione AssertFailedException o AssertInconclusiveException + + Eccezione da generare di nuovo se si tratta di un'eccezione di asserzione + + + + Questa classe consente all'utente di eseguire testing unità per tipi che usano tipi generici. + GenericParameterHelper soddisfa alcuni dei vincoli di tipo generici più comuni, + ad esempio: + 1. costruttore predefinito pubblico + 2. implementa l'interfaccia comune: IComparable, IEnumerable + + + + + Inizializza una nuova istanza della classe che + soddisfa il vincolo 'newable' nei generics C#. + + + This constructor initializes the Data property to a random value. + + + + + Inizializza una nuova istanza della classe che + inizializza la proprietà Data con un valore fornito dall'utente. + + Qualsiasi valore Integer + + + + Ottiene o imposta i dati + + + + + Esegue il confronto dei valori di due oggetti GenericParameterHelper + + oggetto con cui eseguire il confronto + true se il valore di obj è uguale a quello dell'oggetto GenericParameterHelper 'this'; + in caso contrario, false. + + + + Restituisce un codice hash per questo oggetto. + + Codice hash. + + + + Confronta i dati dei due oggetti . + + Oggetto con cui eseguire il confronto. + + Numero con segno che indica i valori relativi di questa istanza e di questo valore. + + + Thrown when the object passed in is not an instance of . + + + + + Restituisce un oggetto IEnumerator la cui lunghezza viene derivata dalla + proprietà Data. + + L'oggetto IEnumerator + + + + Restituisce un oggetto GenericParameterHelper uguale a + quello corrente. + + Oggetto clonato. + + + + Consente agli utenti di registrare/scrivere tracce degli unit test per la diagnostica. + + + + + Gestore per LogMessage. + + Messaggio da registrare. + + + + Evento di cui rimanere in ascolto. Generato quando il writer di unit test scrive alcuni messaggi. + Utilizzato principalmente dall'adattatore. + + + + + API del writer di test da chiamare per registrare i messaggi. + + Formato stringa con segnaposto. + Parametri per segnaposto. + + + + Attributo TestCategory; usato per specificare la categoria di uno unit test. + + + + + Inizializza una nuova istanza della classe e applica la categoria al test. + + + Categoria di test. + + + + + Ottiene le categorie di test applicate al test. + + + + + Classe di base per l'attributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inizializza una nuova istanza della classe . + Applica la categoria al test. Le stringhe restituite da TestCategories + vengono usate con il comando /category per filtrare i test + + + + + Ottiene la categoria di test applicata al test. + + + + + Classe AssertFailedException. Usata per indicare un errore per un test case + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Inizializza una nuova istanza della classe . + + + + + Raccolta di classi helper per testare diverse condizioni + negli unit test. Se la condizione da testare non viene soddisfatta, + viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is false. + + + + + Verifica se la condizione specificata è true e genera un'eccezione + se è false. + + + Condizione che il test presuppone sia true. + + + Messaggio da includere nell'eccezione quando + è false. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is false. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is true. + + + + + Verifica se la condizione specificata è false e genera un'eccezione + se è true. + + + Condizione che il test presuppone sia false. + + + Messaggio da includere nell'eccezione quando + è true. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is true. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone sia Null. + + + Messaggio da includere nell'eccezione quando + non è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is null. + + + + + Verifica se l'oggetto specificato non è Null e genera un'eccezione + se non lo è. + + + Oggetto che il test presuppone non sia Null. + + + Messaggio da includere nell'eccezione quando + è Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null. + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono entrambi allo stesso oggetto e + genera un'eccezione se i due input non si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore previsto dal test. + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not refer to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if refers to the same object + as . + + + + + Verifica se gli oggetti specificati si riferiscono a oggetti diversi e + genera un'eccezione se i due input si riferiscono allo stesso oggetto. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if refers to the same object + as . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is not equal to . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore previsto dai test. + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + The type of values to compare. + + + Primo valore da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo valore da confrontare. Si tratta del valore prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono uguali e genera un'eccezione + se sono diversi. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è l'oggetto previsto dai test. + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se gli oggetti specificati sono diversi e genera un'eccezione + se sono uguali. I tipi numerici diversi vengono considerati + diversi anche se i valori logici sono uguali. 42L è diverso da 42. + + + Primo oggetto da confrontare. Questo è il valore che il test presuppone + non corrisponda a . + + + Secondo oggetto da confrontare. Si tratta dell'oggetto prodotto dal codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore float da confrontare. Questo è il valore float previsto dai test. + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori float specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore float da confrontare. Questo è il valore float che il test presuppone + non corrisponda a . + + + Secondo valore float da confrontare. Si tratta del valore float prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Thrown if is not equal to + . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono uguali e genera un'eccezione + se sono diversi. + + + Primo valore double da confrontare. Questo è il valore double previsto dai test. + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + di più di . + + + Messaggio da includere nell'eccezione quando + differisce da di più di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se i valori double specificati sono diversi e genera un'eccezione + se sono uguali. + + + Primo valore double da confrontare. Questo è il valore double che il test presuppone + non corrisponda a . + + + Secondo valore double da confrontare. Si tratta del valore double prodotto dal codice sottoposto a test. + + + Accuratezza richiesta. Verrà generata un'eccezione solo se + differisce da + al massimo di . + + + Messaggio da includere nell'eccezione quando + è uguale a o differisce di meno di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono uguali e genera un'eccezione + se sono diverse. + + + Prima stringa da confrontare. Questa è la stringa prevista dai test. + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. Per il confronto vengono usate le impostazioni cultura inglese non dipendenti da paese/area geografica. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le stringhe specificate sono diverse e genera un'eccezione + se sono uguali. + + + Prima stringa da confrontare. Questa è la stringa che il test presuppone + non corrisponda a . + + + Seconda stringa da confrontare. Si tratta della stringa prodotta dal codice sottoposto a test. + + + Valore booleano che indica un confronto con o senza distinzione tra maiuscole e minuscole. True + indica un confronto senza distinzione tra maiuscole e minuscole. + + + Oggetto CultureInfo che fornisce informazioni sul confronto specifiche delle impostazioni cultura. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato è un'istanza del tipo previsto + e genera un'eccezione se il tipo previsto non è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone sia del tipo specificato. + + + Tipo previsto di . + + + Messaggio da includere nell'eccezione quando + non è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Verifica se l'oggetto specificato non è un'istanza del tipo errato + e genera un'eccezione se il tipo specificato è incluso nella + gerarchia di ereditarietà dell'oggetto. + + + Oggetto che il test presuppone non sia del tipo specificato. + + + Tipo che non dovrebbe essere. + + + Messaggio da includere nell'eccezione quando + è un'istanza di . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Genera un'eccezione AssertFailedException. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertFailedException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Always thrown. + + + + + Genera un'eccezione AssertInconclusiveException. + + + Messaggio da includere nell'eccezione. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Always thrown. + + + + + Gli overload di uguaglianza statici vengono usati per confrontare istanze di due tipi e stabilire se + i riferimenti sono uguali. Questo metodo non deve essere usato per il confronto di uguaglianza tra due + istanze. Questo oggetto verrà sempre generato con Assert.Fail. Usare + Assert.AreEqual e gli overload associati negli unit test. + + Oggetto A + Oggetto B + Sempre false. + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Tipo di eccezione che dovrebbe essere generata. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione + + AssertFailedException + + se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Verifica se il codice specificato dal delegato genera l'esatta eccezione specificata di tipo (e non di tipo derivato) + e genera l'eccezione AssertFailedException se il codice non genera l'eccezione oppure genera un'eccezione di tipo diverso da . + + Delegato per il codice da testare e che dovrebbe generare l'eccezione. + + Messaggio da includere nell'eccezione quando + non genera l'eccezione di tipo . + + + Matrice di parametri da usare quando si formatta . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + che esegue il delegato. + + + + + Sostituisce caratteri Null ('\0') con "\\0". + + + Stringa da cercare. + + + Stringa convertita con caratteri Null sostituiti da "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funzione helper che crea e genera un'eccezione AssertionFailedException + + + nome dell'asserzione che genera un'eccezione + + + messaggio che descrive le condizioni per l'errore di asserzione + + + Parametri. + + + + + Verifica la validità delle condizioni nel parametro + + + Parametro. + + + Nome dell'asserzione. + + + nome del parametro + + + messaggio per l'eccezione di parametro non valido + + + Parametri. + + + + + Converte in modo sicuro un oggetto in una stringa, gestendo valori e caratteri Null. + I valori Null vengono convertiti in "(null)". I caratteri Null vengono convertiti in "\\0". + + + Oggetto da convertire in una stringa. + + + Stringa convertita. + + + + + Asserzione della stringa. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata contiene la sottostringa specificata + e genera un'eccezione se la sottostringa non è presente nella + stringa di test. + + + Stringa che dovrebbe contenere . + + + Stringa che dovrebbe essere presente in . + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata inizia con la sottostringa specificata + e genera un'eccezione se la stringa di test non inizia con + la sottostringa. + + + Stringa che dovrebbe iniziare con . + + + Stringa che dovrebbe essere un prefisso di . + + + Messaggio da includere nell'eccezione quando + non inizia con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not begin with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata termina con la sottostringa specificata + e genera un'eccezione se la stringa di test non termina con + la sottostringa. + + + Stringa che dovrebbe terminare con . + + + Stringa che dovrebbe essere un suffisso di . + + + Messaggio da includere nell'eccezione quando + non termina con . Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not end with + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata corrisponde a un'espressione regolare e + genera un'eccezione se non corrisponde. + + + Stringa che dovrebbe corrispondere a . + + + Espressione regolare a cui dovrebbe + corrispondere. + + + Messaggio da includere nell'eccezione quando + non corrisponde a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if does not match + . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if matches . + + + + + Verifica se la stringa specificata non corrisponde a un'espressione regolare e + genera un'eccezione se corrisponde. + + + Stringa che non dovrebbe corrispondere a . + + + Espressione regolare a cui non + dovrebbe corrispondere. + + + Messaggio da includere nell'eccezione quando + corrisponde a . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if matches . + + + + + Raccolta di classi helper per testare diverse condizioni associate + alle raccolte negli unit test. Se la condizione da testare non viene + soddisfatta, viene generata un'eccezione. + + + + + Ottiene l'istanza singleton della funzionalità CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata contiene l'elemento specificato + e genera un'eccezione se l'elemento non è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + non è contenuto in . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Thrown if is found in + . + + + + + Verifica se la raccolta specificata non contiene l'elemento + specificato e genera un'eccezione se l'elemento è presente nella raccolta. + + + Raccolta in cui cercare l'elemento. + + + Elemento che non dovrebbe essere presente nella raccolta. + + + Messaggio da includere nell'eccezione quando + è presente in . Il messaggio viene visualizzato nei risultati + del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono non Null e genera + un'eccezione se un qualsiasi elemento è Null. + + + Raccolta in cui cercare gli elementi Null. + + + Messaggio da includere nell'eccezione quando + contiene un elemento Null. Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a null element is found in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se tutti gli elementi della raccolta specificata sono univoci o meno + e genera un'eccezione se due elementi qualsiasi della raccolta sono uguali. + + + Raccolta in cui cercare gli elementi duplicati. + + + Messaggio da includere nell'eccezione quando + contiene almeno un elemento duplicato. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if a two or more equal elements are found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta è un subset di un'altra raccolta e + genera un'eccezione se un qualsiasi elemento nel subset non è presente anche + nel superset. + + + Raccolta che dovrebbe essere un subset di . + + + Raccolta che dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando un elemento in + non è presente in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is not found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Thrown if every element in is also found in + . + + + + + Verifica se una raccolta non è un subset di un'altra raccolta e + genera un'eccezione se tutti gli elementi nel subset sono presenti anche + nel superset. + + + Raccolta che non dovrebbe essere un subset di . + + + Raccolta che non dovrebbe essere un superset di + + + Messaggio da includere nell'eccezione quando ogni elemento in + è presente anche in . + Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if every element in is also found in + . + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono gli stessi elementi e genera + un'eccezione se una delle raccolte contiene un elemento non presente + nell'altra. + + + Prima raccolta da confrontare. Contiene gli elementi previsti dal + test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando un elemento viene trovato + in una delle raccolte ma non nell'altra. Il messaggio viene + visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se due raccolte contengono elementi diversi e genera + un'eccezione se le raccolte contengono gli stessi elementi senza + considerare l'ordine. + + + Prima raccolta da confrontare. Contiene gli elementi che il test + prevede siano diversi rispetto alla raccolta effettiva. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + contiene gli stessi elementi di . Il messaggio + viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se tutti gli elementi della raccolta specificata sono istanze + del tipo previsto e genera un'eccezione se il tipo previsto non + è presente nella gerarchia di ereditarietà di uno o più elementi. + + + Raccolta contenente elementi che il test presuppone siano del + tipo specificato. + + + Tipo previsto di ogni elemento di . + + + Messaggio da includere nell'eccezione quando un elemento in + non è un'istanza di + . Il messaggio viene visualizzato nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono uguali e genera un'eccezione + se sono diverse. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta prevista dai test. + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è diverso da . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is not equal to + . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Thrown if is equal to . + + + + + Verifica se le due raccolte specificate sono diverse e genera un'eccezione + se sono uguali. Per uguaglianza si intende che le raccolte + contengono gli stessi elementi nello stesso ordine e nella stessa quantità. + Riferimenti diversi allo stesso valore vengono considerati uguali. + + + Prima raccolta da confrontare. Questa è la raccolta che i test presuppongono + non corrisponda a . + + + Seconda raccolta da confrontare. Si tratta della raccolta prodotta dal + codice sottoposto a test. + + + Implementazione di compare da usare quando si confrontano elementi della raccolta. + + + Messaggio da includere nell'eccezione quando + è uguale a . Il messaggio viene visualizzato + nei risultati del test. + + + Matrice di parametri da usare quando si formatta . + + + Thrown if is equal to . + + + + + Determina se la prima raccolta è un subset della seconda raccolta. + Se entrambi i set contengono elementi duplicati, il numero delle + occorrenze dell'elemento nel subset deve essere minore o uguale + a quello delle occorrenze nel superset. + + + Raccolta che il test presuppone debba essere contenuta in . + + + Raccolta che il test presuppone debba contenere . + + + True se è un subset di + ; in caso contrario, false. + + + + + Costruisce un dizionario contenente il numero di occorrenze di ogni + elemento nella raccolta specificata. + + + Raccolta da elaborare. + + + Numero di elementi Null presenti nella raccolta. + + + Dizionario contenente il numero di occorrenze di ogni elemento + nella raccolta specificata. + + + + + Trova un elemento senza corrispondenza tra le due raccolte. Per elemento + senza corrispondenza si intende un elemento che appare nella raccolta prevista + un numero di volte diverso rispetto alla raccolta effettiva. Si presuppone + che le raccolte siano riferimenti non Null diversi con lo stesso + numero di elementi. Il chiamante è responsabile di questo livello di + verifica. Se non ci sono elementi senza corrispondenza, la funzione + restituisce false e i parametri out non devono essere usati. + + + Prima raccolta da confrontare. + + + Seconda raccolta da confrontare. + + + Numero previsto di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Numero effettivo di occorrenze di + o 0 se non ci sono elementi senza + corrispondenza. + + + Elemento senza corrispondenza (può essere Null) o Null se non ci sono elementi + senza corrispondenza. + + + true se è stato trovato un elemento senza corrispondenza; in caso contrario, false. + + + + + confronta gli oggetti usando object.Equals + + + + + Classe di base per le eccezioni del framework. + + + + + Inizializza una nuova istanza della classe . + + + + + Inizializza una nuova istanza della classe . + + Messaggio. + Eccezione. + + + + Inizializza una nuova istanza della classe . + + Messaggio. + + + + Classe di risorse fortemente tipizzata per la ricerca di stringhe localizzate e così via. + + + + + Restituisce l'istanza di ResourceManager nella cache usata da questa classe. + + + + + Esegue l'override della proprietà CurrentUICulture del thread corrente per tutte + le ricerche di risorse eseguite usando questa classe di risorse fortemente tipizzata. + + + + + Cerca una stringa localizzata simile a La sintassi della stringa di accesso non è valida. + + + + + Cerca una stringa localizzata simile a La raccolta prevista contiene {1} occorrenza/e di <{2}>, mentre quella effettiva ne contiene {3}. {0}. + + + + + Cerca una stringa localizzata simile a È stato trovato un elemento duplicato:<{1}>. {0}. + + + + + Cerca una stringa localizzata simile a Il valore previsto è <{1}>, ma la combinazione di maiuscole/minuscole è diversa per il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza minore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1} ({2})>. Valore effettivo: <{3} ({4})>. {0}. + + + + + Cerca una stringa localizzata simile a Valore previsto: <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È prevista una differenza maggiore di <{3}> tra il valore previsto <{1}> e il valore effettivo <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a È previsto un valore qualsiasi eccetto <{1}>. Valore effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a Non passare tipi valore a AreSame(). I valori convertiti in Object non saranno mai uguali. Usare AreEqual(). {0}. + + + + + Cerca una stringa localizzata simile a {0} non riuscita. {1}. + + + + + Cerca una stringa localizzata simile ad async TestMethod con UITestMethodAttribute non supportata. Rimuovere async o usare TestMethodAttribute. + + + + + Cerca una stringa localizzata simile a Le raccolte sono entrambe vuote. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. + + + + + Cerca una stringa localizzata simile a I riferimenti a raccolte puntano entrambi allo stesso oggetto Collection. {0}. + + + + + Cerca una stringa localizzata simile a Le raccolte contengono entrambe gli stessi elementi. {0}. + + + + + Cerca una stringa localizzata simile a {0}({1}). + + + + + Cerca una stringa localizzata simile a (Null). + + + + + Cerca una stringa localizzata simile a (oggetto). + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non contiene la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a {0} ({1}). + + + + + Cerca una stringa localizzata simile a Per le asserzioni non usare Assert.Equals, ma preferire Assert.AreEqual e gli overload. + + + + + Cerca una stringa localizzata simile a Il numero di elementi nelle raccolte non corrisponde. Valore previsto: <{1}>. Valore effettivo: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {0} non corrisponde. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} non è del tipo previsto. Tipo previsto: <{2}>. Tipo effettivo: <{3}>.{0}. + + + + + Cerca una stringa localizzata simile a L'elemento alla posizione di indice {1} è (Null). Tipo previsto: <{2}>.{0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non termina con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Argomento non valido: EqualsTester non può usare valori Null. + + + + + Cerca una stringa localizzata simile a Non è possibile convertire un oggetto di tipo {0} in {1}. + + + + + Cerca una stringa localizzata simile a L'oggetto interno a cui si fa riferimento non è più valido. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. {1}. + + + + + Cerca una stringa localizzata simile a Il tipo della proprietà {0} è {1}, ma quello previsto è {2}. + + + + + Cerca una stringa localizzata simile a Tipo previsto di {0}: <{1}>. Tipo effettivo: <{2}>. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Tipo errato: <{1}>. Tipo effettivo: <{2}>. {0}. + + + + + Cerca una stringa localizzata simile a La stringa '{0}' corrisponde al criterio '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Non è stato specificato alcun elemento DataRowAttribute. Con DataTestMethodAttribute è necessario almeno un elemento DataRowAttribute. + + + + + Cerca una stringa localizzata simile a Non è stata generata alcuna eccezione. Era prevista un'eccezione {1}. {0}. + + + + + Cerca una stringa localizzata simile a Il parametro '{0}' non è valido. Il valore non può essere Null. {1}. + + + + + Cerca una stringa localizzata simile a Il numero di elementi è diverso. + + + + + Cerca una stringa localizzata simile a + Il costruttore con la firma specificata non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a + Il membro specificato ({0}) non è stato trovato. Potrebbe essere necessario rigenerare la funzione di accesso privata + oppure il membro potrebbe essere privato e definito per una classe di base. In quest'ultimo caso, è necessario passare il tipo + che definisce il membro nel costruttore di PrivateObject. + . + + + + + Cerca una stringa localizzata simile a La stringa '{0}' non inizia con la stringa '{1}'. {2}. + + + + + Cerca una stringa localizzata simile a Il tipo di eccezione previsto deve essere System.Exception o un tipo derivato da System.Exception. + + + + + Cerca una stringa localizzata simile a Non è stato possibile ottenere il messaggio per un'eccezione di tipo {0} a causa di un'eccezione. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato l'eccezione prevista {0}. {1}. + + + + + Cerca una stringa localizzata simile a Il metodo di test non ha generato un'eccezione. È prevista un'eccezione dall'attributo {0} definito nel metodo di test. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1}. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a Il metodo di test ha generato l'eccezione {0}, ma era prevista l'eccezione {1} o un tipo derivato da essa. Messaggio dell'eccezione: {2}. + + + + + Cerca una stringa localizzata simile a È stata generata l'eccezione {2}, ma era prevista un'eccezione {1}. {0} + Messaggio dell'eccezione: {3} + Analisi dello stack: {4}. + + + + + risultati degli unit test + + + + + Il test è stato eseguito, ma si sono verificati errori. + Gli errori possono implicare eccezioni o asserzioni non riuscite. + + + + + Il test è stato completato, ma non è possibile determinare se è stato o meno superato. + Può essere usato per test interrotti. + + + + + Il test è stato eseguito senza problemi. + + + + + Il test è attualmente in corso. + + + + + Si è verificato un errore di sistema durante il tentativo di eseguire un test. + + + + + Timeout del test. + + + + + Il test è stato interrotto dall'utente. + + + + + Il test si trova in uno stato sconosciuto + + + + + Fornisce la funzionalità di helper per il framework degli unit test + + + + + Ottiene i messaggi di eccezione in modo ricorsivo, inclusi quelli relativi a + tutte le eccezioni interne + + Eccezione per cui ottenere i messaggi + stringa con le informazioni sul messaggio di errore + + + + Enumerazione per i timeout, che può essere usata con la classe . + Il tipo dell'enumerazione deve corrispondere + + + + + Valore infinito. + + + + + Attributo della classe di test. + + + + + Ottiene un attributo di metodo di test che consente di eseguire questo test. + + Istanza di attributo del metodo di test definita in questo metodo. + Oggetto da usare per eseguire questo test. + Extensions can override this method to customize how all methods in a class are run. + + + + Attributo del metodo di test. + + + + + Esegue un metodo di test. + + Metodo di test da eseguire. + Matrice di oggetti TestResult che rappresentano il risultato o i risultati del test. + Extensions can override this method to customize running a TestMethod. + + + + Attributo di inizializzazione test. + + + + + Attributo di pulizia dei test. + + + + + Attributo ignore. + + + + + Attributo della proprietà di test. + + + + + Inizializza una nuova istanza della classe . + + + Nome. + + + Valore. + + + + + Ottiene il nome. + + + + + Ottiene il valore. + + + + + Attributo di inizializzazione classi. + + + + + Attributo di pulizia delle classi. + + + + + Attributo di inizializzazione assembly. + + + + + Attributo di pulizia degli assembly. + + + + + Proprietario del test + + + + + Inizializza una nuova istanza della classe . + + + Proprietario. + + + + + Ottiene il proprietario. + + + + + Attributo Priority; usato per specificare la priorità di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Priorità. + + + + + Ottiene la priorità. + + + + + Descrizione del test + + + + + Inizializza una nuova istanza della classe per descrivere un test. + + Descrizione. + + + + Ottiene la descrizione di un test. + + + + + URI della struttura di progetto CSS + + + + + Inizializza una nuova istanza della classe per l'URI della struttura di progetto CSS. + + URI della struttura di progetto CSS. + + + + Ottiene l'URI della struttura di progetto CSS. + + + + + URI dell'iterazione CSS + + + + + Inizializza una nuova istanza della classe per l'URI dell'iterazione CSS. + + URI dell'iterazione CSS. + + + + Ottiene l'URI dell'iterazione CSS. + + + + + Attributo WorkItem; usato per specificare un elemento di lavoro associato a questo test. + + + + + Inizializza una nuova istanza della classe per l'attributo WorkItem. + + ID di un elemento di lavoro. + + + + Ottiene l'ID di un elemento di lavoro associato. + + + + + Attributo Timeout; usato per specificare il timeout di uno unit test. + + + + + Inizializza una nuova istanza della classe . + + + Timeout. + + + + + Inizializza una nuova istanza della classe con un timeout preimpostato + + + Timeout + + + + + Ottiene il timeout. + + + + + Oggetto TestResult da restituire all'adattatore. + + + + + Inizializza una nuova istanza della classe . + + + + + Ottiene o imposta il nome visualizzato del risultato. Utile quando vengono restituiti più risultati. + Se è Null, come nome visualizzato viene usato il nome del metodo. + + + + + Ottiene o imposta il risultato dell'esecuzione dei test. + + + + + Ottiene o imposta l'eccezione generata quando il test non viene superato. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta l'output del messaggio registrato dal codice del test. + + + + + Ottiene o imposta le tracce di debug in base al codice del test. + + + + + Gets or sets the debug traces by test code. + + + + + Ottiene o imposta la durata dell'esecuzione dei test. + + + + + Ottiene o imposta l'indice della riga di dati nell'origine dati. Impostare solo per risultati di singole + esecuzioni della riga di dati di un test basato sui dati. + + + + + Ottiene o imposta il valore restituito del metodo di test. Attualmente è sempre Null. + + + + + Ottiene o imposta i file di risultati allegati dal test. + + + + + Specifica la stringa di connessione, il nome tabella e il metodo di accesso alle righe per test basati sui dati. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nome del provider predefinito per DataSource. + + + + + Metodo predefinito di accesso ai dati. + + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati, la stringa di connessione, la tabella dati e il metodo di accesso ai dati per accedere all'origine dati. + + Nome del provider di dati non dipendente da paese/area geografica, ad esempio System.Data.SqlClient + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + Specifica l'ordine per l'accesso ai dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con una stringa di connessione e un nome tabella. + Specificare la stringa di connessione e la tabella dati per accedere all'origine dati OLEDB. + + + Stringa di connessione specifica del provider di dati. + AVVISO: la stringa di connessione può contenere dati sensibili, ad esempio una password. + La stringa di connessione è archiviata in formato testo normale nel codice sorgente e nell'assembly compilato. + Limitare l'accesso al codice sorgente e all'assembly per proteggere questi dati sensibili. + + Nome della tabella dati. + + + + Inizializza una nuova istanza della classe . Questa istanza verrà inizializzata con un provider di dati e la stringa di connessione associata al nome dell'impostazione. + + Nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + Ottiene un valore che rappresenta il provider di dati dell'origine dati. + + + Nome del provider di dati. Se non è stato designato un provider di dati durante l'inizializzazione dell'oggetto, verrà restituito il provider predefinito di System.Data.OleDb. + + + + + Ottiene un valore che rappresenta la stringa di connessione per l'origine dati. + + + + + Ottiene un valore che indica il nome della tabella che fornisce i dati. + + + + + Ottiene il metodo usato per accedere all'origine dati. + + + + Uno dei valori di . Se non è inizializzato, restituirà il valore predefinito . + + + + + Ottiene il nome di un'origine dati trovata nella sezione <microsoft.visualstudio.qualitytools> del file app.config. + + + + + Attributo per il test basato sui dati in cui è possibile specificare i dati inline. + + + + + Trova tutte le righe di dati e le esegue. + + + Metodo di test. + + + Matrice di istanze di . + + + + + Esegue il metodo di test basato sui dati. + + Metodo di test da eseguire. + Riga di dati. + Risultati dell'esecuzione. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..7f0704e --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + テスト配置ごとに配置項目 (ファイルまたはディレクトリ) を指定するために使用されます。 + テスト クラスまたはテスト メソッドで指定できます。 + 属性に複数のインスタンスを指定して、2 つ以上の項目を指定することができます。 + 項目のパスには絶対パスまたは相対パスを指定できます。相対パスの場合は、RunConfig.RelativePathRoot からの相対パスです。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + クラスの新しいインスタンスを初期化します。 + + 配置するファイルまたはディレクトリ。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + + + + クラスの新しいインスタンスを初期化する + + 配置するファイルまたはディレクトリへの相対パスまたは絶対パス。パスはビルドの出力ディレクトリの相対パスです。項目は配置されたテスト アセンブリと同じディレクトリにコピーされます。 + アイテムのコピー先のディレクトリのパス。配置ディレクトリへの絶対パスまたは相対パスのいずれかを指定できます。次で識別されるすべてのファイルとディレクトリは このディレクトリにコピーされます。 + + + + コピーするソース ファイルまたはフォルダーのパスを取得します。 + + + + + 項目のコピー先のディレクトリのパスを取得します。 + + + + + Windows ストア アプリの UI スレッドでテスト コードを実行します。 + + + + + UI スレッドで対象テスト メソッドを実行します。 + + + テスト メソッド。 + + + 次の配列 インスタンス。 + + Throws when run on an async test method. + + + + + TestContext クラス。このクラスは完全に抽象的でなければならず、かつメンバー + を含んでいてはなりません。アダプターはメンバーを実装します。フレームワーク内のユーザーは + 正しく定義されたインターフェイスを介してのみこのクラスにアクセスする必要があります。 + + + + + テストのテスト プロパティを取得します。 + + + + + 現在実行中のテスト メソッドを含むクラスの完全修飾名を取得する + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 現在実行中のテスト メソッドの名前を取得する + + + + + 現在のテスト成果を取得します。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..922b5b1 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ja/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 実行用の TestMethod。 + + + + + テスト メソッドの名前を取得します。 + + + + + テスト クラスの名前を取得します。 + + + + + テスト メソッドの戻り値の型を取得します。 + + + + + テスト メソッドのパラメーターを取得します。 + + + + + テスト メソッドの methodInfo を取得します。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + テスト メソッドを呼び出します。 + + + テスト メソッドに渡す引数。(データ ドリブンの場合など) + + + テスト メソッド呼び出しの結果。 + + + This call handles asynchronous test methods as well. + + + + + テスト メソッドのすべての属性を取得します。 + + + 親クラスで定義されている属性が有効かどうか。 + + + すべての属性。 + + + + + 特定の型の属性を取得します。 + + System.Attribute type. + + 親クラスで定義されている属性が有効かどうか。 + + + 指定した種類の属性。 + + + + + ヘルパー。 + + + + + null でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws argument null exception when parameter is null. + + + + null または空でない確認パラメーター。 + + + パラメーター。 + + + パラメーター名。 + + + メッセージ。 + + Throws ArgumentException when parameter is null. + + + + データ ドリブン テストのデータ行にアクセスする方法の列挙型。 + + + + + 行は順番に返されます。 + + + + + 行はランダムに返されます。 + + + + + テスト メソッドのインライン データを定義する属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + + + + 引数の配列を受け入れる クラスの新しいインスタンスを初期化します。 + + データ オブジェクト。 + 追加のデータ。 + + + + テスト メソッドを呼び出すデータを取得します。 + + + + + カスタマイズするために、テスト結果の表示名を取得または設定します。 + + + + + assert inconclusive 例外。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + InternalTestFailureException クラス。テスト ケースの内部エラーを示すために使用されます + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + 例外メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 指定した型の例外を予期するよう指定する属性 + + + + + 予期される型を指定して、 クラスの新しいインスタンスを初期化する + + 予期される例外の型 + + + + 予期される型と、テストで例外がスローされない場合に含めるメッセージとを指定して + クラスの新しいインスタンスを初期化します。 + + 予期される例外の型 + + 例外がスローされなかったことが原因でテストが失敗した場合に、テスト結果に含まれるメッセージ + + + + + 予期される例外の型を示す値を取得する + + + + + 予期される例外の型から派生した型を予期される型として使用できるかどうかを示す値を + 取得または設定する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 単体テストでスローされる例外の型が予期される型であることを検証する + + 単体テストでスローされる例外 + + + + 単体テストからの例外を予期するように指定する属性の基底クラス + + + + + 既定の例外なしメッセージを指定して クラスの新しいインスタンスを初期化する + + + + + 例外なしメッセージを指定して クラスの新しいインスタンスを初期化します + + + 例外がスローされなかったことが原因でテストが失敗した場合に、 + テスト結果に含まれるメッセージ + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 例外がスローされなかったためにテストが失敗した場合にテスト結果に含めるメッセージを取得する + + + + + 既定の例外なしメッセージを取得する + + ExpectedException 属性の型名 + 既定の例外なしメッセージ + + + + 例外が予期されているかどうかを判断します。メソッドが戻る場合は、 + 例外が予期されていたと解釈されます。メソッドが例外をスローする場合は、 + 例外が予期されていなかったと解釈され、スローされた例外のメッセージが + テスト結果に含められます。便宜上、 クラスを使用できます。 + が使用され、アサーションが失敗すると、 + テスト成果は [結果不確定] に設定されます。 + + 単体テストでスローされる例外 + + + + AssertFailedException または AssertInconclusiveException である場合に、例外を再スローする + + アサーション例外である場合に再スローされる例外 + + + + このクラスは、ジェネリック型を使用する型の単体テストを実行するユーザーを支援するように設計されています。 + GenericParameterHelper は、次のようないくつかの共通ジェネリック型制約を + 満たしています: + 1. パブリックの既定のコンストラクター + 2. 共通インターフェイスを実装します: IComparable、IEnumerable + + + + + C# ジェネリックの 'newable' 制約を満たす + クラスの新しいインスタンスを初期化します。 + + + This constructor initializes the Data property to a random value. + + + + + Data プロパティをユーザー指定の値に初期化する クラスの + 新しいインスタンスを初期化します。 + + 任意の整数値 + + + + データを取得または設定する + + + + + 2 つの GenericParameterHelper オブジェクトの値の比較を実行する + + 次との比較を実行するオブジェクト + オブジェクトの値が 'this' GenericParameterHelper オブジェクトと同じ値である場合は true。 + それ以外の場合は、false。 + + + + このオブジェクトのハッシュコードを返します。 + + ハッシュ コード。 + + + + 2 つの オブジェクトのデータを比較します。 + + 比較対象のオブジェクト。 + + このインスタンスと値の相対値を示す符号付きの数値。 + + + Thrown when the object passed in is not an instance of . + + + + + 長さが Data プロパティから派生している IEnumerator オブジェクト + を返します。 + + IEnumerator オブジェクト + + + + 現在のオブジェクトに相当する GenericParameterHelper + オブジェクトを返します。 + + 複製されたオブジェクト。 + + + + ユーザーが診断用に単体テストからトレースをログ記録/書き込みできるようにします。 + + + + + LogMessage のハンドラー。 + + ログに記録するメッセージ。 + + + + リッスンするイベント。単体テスト ライターがメッセージを書き込むときに発生します。 + 主にアダプターによって消費されます。 + + + + + テスト ライターがメッセージをログ記録するために呼び出す API。 + + プレースホルダーを含む文字列形式。 + プレースホルダーのパラメーター。 + + + + TestCategory 属性。単体テストのカテゴリを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化し、カテゴリをテストに適用します。 + + + テスト カテゴリ。 + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + "Category" 属性の基底クラス + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + クラスの新しいインスタンスを初期化します。 + カテゴリをテストに適用します。TestCategories で返される文字列は + テストをフィルター処理する /category コマンドで使用されます + + + + + テストに適用されているテスト カテゴリを取得します。 + + + + + AssertFailedException クラス。テスト ケースのエラーを示すために使用されます + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + クラスの新しいインスタンスを初期化します。 + + + + + 単体テスト内のさまざまな条件をテストするヘルパー クラスの + コレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + Assert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is false. + + + + + 指定した条件が true であるかどうかをテストして、条件が false の場合は + 例外をスローします。 + + + テストで true であることが予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + false の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is false. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + Thrown if is true. + + + + + 指定した条件が false であるかどうかをテストして、 + 条件が true である場合は例外をスローします。 + + + テストで false であると予期される条件。 + + + 次の場合に、例外に含まれるメッセージ + true の場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is true. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null であるかどうかをテストして、 + null でない場合は例外をスローします。 + + + テストで null であると予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null でない場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + Thrown if is null. + + + + + 指定したオブジェクトが null 以外であるかどうかをテストして、 + null である場合は例外をスローします。 + + + テストで null 出ないと予期されるオブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + null である場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null. + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not refer to the same object + as . + + + + + 指定した両方のオブジェクトが同じオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照しない場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで予期される値です。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not refer to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if refers to the same object + as . + + + + + 指定したオブジェクトが別のオブジェクトを参照するかどうかをテストして、 + 2 つの入力が同じオブジェクトを参照する場合は例外をスローします。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + と同じである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if refers to the same object + as . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is not equal to . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しいかどうかをテストして、 + 2 つの値が等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで予期される値です。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した値どうしが等しくないかどうかをテストして、 + 2 つの値が等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + The type of values to compare. + + + 比較する最初の値。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目の値。これはテストのコードで生成される値です。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しいかどうかをテストして、 + 2 つのオブジェクトが等しくない場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで予期されるオブジェクトです。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトどうしが等しくないかどうかをテストして、 + 2 つのオブジェクトが等しい場合は例外をスローします。論理値が等しい場合であっても、異なる数値型は + 等しくないものとして処理されます。42L は 42 とは等しくありません。 + + + 比較する最初のオブジェクト。これはテストで次と一致しないと予期される + 値です 。 + + + 比較する 2 番目のオブジェクト。これはテストのコードで生成されるオブジェクトです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで予期される浮動小数です。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した浮動小数どうしが等しくないかどうかをテストして、 + 等しい場合は例外をスローします。 + + + 比較する最初の浮動小数。これはテストで次と一致しないと予期される + 浮動小数です 。 + + + 比較する 2 番目の浮動小数。これはテストのコードで生成される浮動小数です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + Thrown if is not equal to + . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した倍精度浮動小数点数どうしが等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の倍精度浮動小数点型。これはテストで予期される倍精度浮動小数点型です。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 次の値を超える差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + と異なる 次の値を超える差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if is equal to . + + + + + Tests whether the specified doubles are unequal and throws an exception + if they are equal. + + + 比較する最初の倍精度浮動小数点型。これはテストで次と一致しないと予期される + 倍精度浮動小数点型です 。 + + + 比較する 2 番目の倍精度浮動小数点型。これはテストのコードで生成される倍精度浮動小数点型です。 + + + 必要な精度。次の場合にのみ、例外がスローされます + 次と異なる場合 + 最大でも次の値の差異がある場合 。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 または次の値未満の差異がある場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しいかどうかをテストして、 + 等しくない場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで予期される文字列です。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして、 + 等しい場合は例外をスローします。比較にはインバリアント カルチャが使用されます。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定した文字列が等しくないかどうかをテストして + 等しい場合は例外をスローします。 + + + 比較する最初の文字列。これはテストで次と一致しないと予期される + 文字列です 。 + + + 比較する 2 番目の文字列。これはテストのコードで生成される文字列です。 + + + 大文字と小文字を区別する比較か、大文字と小文字を区別しない比較かを示すブール値。(true + は大文字と小文字を区別しない比較を示します。) + + + カルチャ固有の比較情報を提供する CultureInfo オブジェクト。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが予期した型のインスタンスであるかどうかをテストして、 + 予期した型がオブジェクトの継承階層にない場合は + 例外をスローします。 + + + テストで特定の型であると予期されるオブジェクト。 + + + 次の予期される型 。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 指定したオブジェクトが間違った型のインスタンスでないかどうかをテストして、 + 指定した型がオブジェクトの継承階層にある場合は + 例外をスローします。 + + + テストで特定の型でないと予期されるオブジェクト。 + + + 次である型 必要のない。 + + + 次の場合に、例外に含まれるメッセージ + 次のインスタンスである場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException をスローします。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertFailedException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Always thrown. + + + + + AssertInconclusiveException をスローします。 + + + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Always thrown. + + + + + 静的な Equals オーバーロードは、2 つの型のインスタンスを比較して参照の等価性を調べる + ために使用されます。2 つのインスタンスを比較して等価性を調べるためにこのメソッドを使用 + することはできません。このオブジェクトは常に Assert.Fail を使用してスロー + します。単体テストでは、Assert.AreEqual および関連するオーバーロードをご使用ください。 + + オブジェクト A + オブジェクト B + 常に false。 + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + 次の場合に、例外に含まれるメッセージ + 型の例外をスローしません 。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + スローされることが予期される例外の種類。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に + + AssertFailedException + + をスローするかどうかをテストします。 + + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + デリゲート によって指定されたコードが型 (派生型ではない) の指定されたとおりの例外をスローするかどうか、 + およびコードが例外をスローしない場合や 以外の型の例外をスローする場合に AssertFailedException をスローするかどうかをテストします。 + + テスト対象であり、例外をスローすると予期されるコードにデリゲートします。 + + 次の場合に、例外に含まれるメッセージ + 以下の型の例外をスローしない場合。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + その (デリゲートを実行中)。 + + + + + null 文字 ('\0') を "\\0" に置き換えます。 + + + 検索する文字列。 + + + "\\0" で置き換えられた null 文字を含む変換された文字列。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException を作成して、スローするヘルパー関数 + + + 例外をスローするアサーションの名前 + + + アサーション エラーの条件を記述するメッセージ + + + パラメーター。 + + + + + 有効な条件であるかパラメーターを確認します + + + パラメーター。 + + + アサーション名。 + + + パラメーター名 + + + 無効なパラメーター例外のメッセージ + + + パラメーター。 + + + + + 安全にオブジェクトを文字列に変換し、null 値と null 文字を処理します。 + null 値は "(null)" に変換されます。null 文字は "\\0" に変換されます。 + + + 文字列に変換するオブジェクト。 + + + 変換された文字列。 + + + + + 文字列のアサート。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定した文字列に指定したサブ文字列が含まれているかどうかをテストして、 + テスト文字列内にサブ文字列が含まれていない場合は例外を + スローします。 + + + 次を含むと予期される文字列 。 + + + 次の内部で発生することが予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の先頭が指定したサブ文字列であるかどうかをテストして + テスト文字列の先頭がサブ文字列でない場合は + 例外をスローします。 + + + 先頭が次であると予期される文字列 。 + + + 次のプレフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 先頭が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not begin with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not end with + . + + + + + 指定した文字列の末尾が指定したサブ文字列であるかどうかをテストして、 + テスト文字列の末尾がサブ文字列でない場合は + 例外をスローします。 + + + 末尾が次であることが予期される文字列 。 + + + 次のサフィックスであると予期される文字列 。 + + + 次の場合に、例外に含まれるメッセージ + 末尾が次ではない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not end with + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致するかどうかをテストして、 + 文字列が表現と一致しない場合は例外をスローします。 + + + 次と一致すると予期される文字列 。 + + + 次である正規表現 is + 一致することが予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致しない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if does not match + . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if matches . + + + + + 指定した文字列が正規表現と一致しないかどうかをテストして、 + 文字列が表現と一致する場合は例外をスローします。 + + + 次と一致しないと予期される文字列 。 + + + 次である正規表現 is + 一致しないと予期される。 + + + 次の場合に、例外に含まれるメッセージ + 一致する場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if matches . + + + + + 単体テスト内のコレクションと関連付けられている + さまざまな条件をテストするヘルパー クラスのコレクション。テスト対象の条件を満たしていない場合は、 + 例外がスローされます。 + + + + + CollectionAssert 機能の単一インスタンスを取得します。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれているかどうかをテストして、 + 要素がコレクションにない場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内にあると予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + 次にない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + Thrown if is found in + . + + + + + 指定したコレクションに指定した要素が含まれていないかどうかをテストして、 + 要素がコレクション内にある場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + コレクション内に存在しないことが予期される要素。 + + + 次の場合に、例外に含まれるメッセージ + が次にある場合 。メッセージはテスト結果に + 表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is found in + . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが null 以外であるかどうかをテストして、 + いずれかの要素が null である場合は例外をスローします。 + + + 要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + null 要素を含む場合。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a null element is found in . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + Thrown if a two or more equal elements are found in + . + + + + + 指定したコレクション内のすべてのアイテムが一意であるかどうかをテストして、 + コレクション内のいずれかの 2 つの要素が等しい場合はスローします。 + + + 重複する要素を検索するコレクション。 + + + 次の場合に、例外に含まれるメッセージ + 少なくとも 1 つの重複する要素が含まれています。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if a two or more equal elements are found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットであるかどうかをテストして、 + スーパーセットにない要素がサブセットに入っている場合は + 例外をスローします。 + + + 次のサブセットであると予期されるコレクション 。 + + + 次のスーパーセットであると予期されるコレクション + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次に見つからない場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is not found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + Thrown if every element in is also found in + . + + + + + コレクションが別のコレクションのサブセットでないかどうかをテストして、 + サブセット内のすべての要素がスーパーセットにもある場合は + 例外をスローします。 + + + のサブセットではないと予期されるコレクション 。 + + + 次のスーパーセットであるとは予期されないコレクション + + + 次にあるすべての要素が次である場合に、例外に含まれるメッセージ + 次にもある場合 . + メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if every element in is also found in + . + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに同じ要素が含まれているかどうかをテストして、 + いずれかのコレクションにもう一方のコレクション内にない要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これにはテストで予期される + 要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 要素が 2 つのコレクションのどちらかのみに見つかった場合に + 例外に含まれるメッセージ。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 2 つのコレクションに異なる要素が含まれているかどうかをテストして、 + 順番に関係なく、2 つのコレクションに同一の要素が含まれている場合は例外を + スローします。 + + + 比較する最初のコレクション。これには実際のコレクションと異なると + テストで予期される要素が含まれます。 + + + 比較する 2 番目のコレクション。これはテストのコードで + 生成されるコレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と同じ要素を含む場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクション内のすべての要素が指定した型のインスタンスであるかどうかをテストして、 + 指定した型が 1 つ以上の要素 + の継承階層にない場合は例外をスローします。 + + + テストで特定の型であると予期される要素を + 含むコレクション。 + + + 次の各要素の予期される型 。 + + + 次にある要素が次の条件である場合に、例外に含まれるメッセージ + 次のインスタンスではない場合 + 。メッセージはテスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しいかどうかをテストして、 + 2 つのコレクションが等しくない場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで予期されるコレクションです。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しくない場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is not equal to + . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + Thrown if is equal to . + + + + + 指定したコレクションが等しくないかどうかをテストして、 + 2 つのコレクションが等しい場合は例外をスローします。等値は、順序と数が同じである同じ要素を含むものとして + 定義されています。同じ値への異なる参照は + 等しいものとして見なされます。 + + + 比較する最初のコレクション。これはテストで次と一致しないことが予期される + コレクションです 。 + + + 比較する 2 番目のコレクション。これはテストのコードで生成される + コレクションです。 + + + コレクションの要素を比較する場合に使用する比較の実装。 + + + 次の場合に、例外に含まれるメッセージ + 次と等しい場合 。メッセージは + テスト結果に表示されます。 + + + の書式を設定する場合に使用するパラメーターの配列 。 + + + Thrown if is equal to . + + + + + 最初のコレクションが 2 番目のコレクションのサブセットであるかどうかを + 決定します。いずれかのセットに重複する要素が含まれている場合は、 + サブセット内の要素の出現回数は + スーパーセット内の出現回数以下である必要があります。 + + + テストで次に含まれると予期されるコレクション 。 + + + テストで次を含むと予期されるコレクション 。 + + + 次の場合は true 次のサブセットの場合 + 、それ以外の場合は false。 + + + + + 指定したコレクションの各要素の出現回数を含む + 辞書を構築します。 + + + 処理するコレクション。 + + + コレクション内の null 要素の数。 + + + 指定したコレクション内の各要素の + 出現回数を含むディレクトリ。 + + + + + 2 つのコレクション間で一致しない要素を検索します。 + 一致しない要素とは、予期されるコレクションでの出現回数が + 実際のコレクションでの出現回数と異なる要素のことです。 + コレクションは、同じ数の要素を持つ、null ではない + さまざまな参照と見なされます。このレベルの検証を行う責任は + 呼び出し側にあります。一致しない要素がない場合、 + 関数は false を返し、out パラメーターは使用されません。 + + + 比較する最初のコレクション。 + + + 比較する 2 番目のコレクション。 + + + 次の予期される発生回数 + または一致しない要素がない場合は + 0 です。 + + + 次の実際の発生回数 + または一致しない要素がない場合は + 0 です。 + + + 一致しない要素 (null の場合があります)、または一致しない要素がない場合は + null です。 + + + 一致しない要素が見つかった場合は true、それ以外の場合は false。 + + + + + object.Equals を使用してオブジェクトを比較する + + + + + フレームワーク例外の基底クラス。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + 例外。 + + + + クラスの新しいインスタンスを初期化します。 + + メッセージ。 + + + + ローカライズされた文字列などを検索するための、厳密に型指定されたリソース クラス。 + + + + + このクラスで使用されているキャッシュされた ResourceManager インスタンスを返します。 + + + + + 厳密に型指定されたこのリソース クラスを使用して、現在のスレッドの + CurrentUICulture プロパティをすべてのリソース ルックアップで無視します。 + + + + + "アクセス文字列は無効な構文を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "予期されたコレクションでは、<{2}> が {1} 回発生します。実際のコレクションでは、{3} 回発生します。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "重複する項目が見つかりました:<{1}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要です。実際の値: <{2}> では大文字と小文字が異なります。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> 以内の差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1} ({2})> が必要ですが、<{3} ({4})> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> が必要ですが、<{2}> が指定されました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "指定する値 <{1}> と実際の値 <{2}> との間には <{3}> を超える差が必要です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "<{1}> 以外の任意の値が必要ですが、<{2}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "AreSame() に値型を渡すことはできません。オブジェクトに変換された値は同じになりません。AreEqual() を使用することを検討してください。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0} に失敗しました。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "UITestMethodAttribute が指定された非同期の TestMethod はサポートされていません。非同期を削除するか、TestMethodAttribute を使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが空です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションの参照が、同じコレクション オブジェクトにポイントしています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "両方のコレクションが同じ要素を含んでいます。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "{0}({1})" に類似したローカライズされた文字列を検索します。 + + + + + "(null)" に類似したローカライズされた文字列を検索します。 + + + + + Looks up a localized string similar to (object). + + + + + "文字列 '{0}' は文字列 '{1}' を含んでいません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} ({1})" に類似したローカライズされた文字列を検索します。 + + + + + "アサーションには Assert.Equals を使用せずに、Assert.AreEqual とオーバーロードを使用してください。" に類似したローカライズされた文字列を検索します。 + + + + + "コレクション内の要素数が一致しません。<{1}> が必要ですが <{2}> が指定されています。{0}。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {0} の要素が一致しません。" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は、必要な型ではありません。<{2}> が必要ですが、<{3}> が指定されています。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "インデックス {1} の要素は null です。必要な型:<{2}>。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は文字列 '{1}' で終わりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "無効な引数 - EqualsTester は null を使用することはできません。" に類似したローカライズされた文字列を検索します。 + + + + + "型 {0} のオブジェクトを {1} に変換できません。" に類似したローカライズされた文字列を検索します。 + + + + + "参照された内部オブジェクトは、現在有効ではありません。" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "プロパティ {0} は型 {1} を含んでいますが、型 {2} が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "{0} には型 <{1}> が必要ですが、型 <{2}> が指定されました。" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' は、パターン '{1}' と一致しません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "正しくない型は <{1}> であり、実際の型は <{2}> です。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "文字列 '{0}' はパターン '{1}' と一致します。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "DataRowAttribute が指定されていません。DataTestMethodAttribute では少なくとも 1 つの DataRowAttribute が必要です。" に類似したローカライズされた文字列を検索します。 + + + + + "例外がスローされませんでした。{1} の例外が予期されていました。{0}" に類似したローカライズされた文字列を検索します。 + + + + + "パラメーター '{0}' は無効です。値を null にすることはできません。{1}。" に類似したローカライズされた文字列を検索します。 + + + + + "要素数が異なります。" に類似したローカライズされた文字列を検索します。 + + + + + "指定されたシグネチャを使用するコンストラクターが見つかりませんでした。 + プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + PrivateObject のコンストラクターに定義する型を渡す必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + + "指定されたメンバー ({0}) が見つかりませんでした。プライベート アクセサーを再生成しなければならないか、 + またはメンバーがプライベートであり、基底クラスで定義されている可能性があります。後者である場合、メンバーを + 定義する型を PrivateObject のコンストラクターに渡す必要があります。" + に類似したローカライズされた文字列を検索します。 + + + + + + "文字列 '{0}' は文字列 '{1}' で始まりません。{2}。" に類似したローカライズされた文字列を検索します。 + + + + + "予期される例外の型は System.Exception または System.Exception の派生型である必要があります。" に類似したローカライズされた文字列を検索します。 + + + + + "(例外が発生したため、型 {0} の例外のメッセージを取得できませんでした。)" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは予期された例外 {0} をスローしませんでした。{1}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは例外をスローしませんでした。テスト メソッドで定義されている属性 {0} で例外が予期されていました。" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "テスト メソッドは、例外 {0} をスローしましたが、例外 {1} またはその派生型が予期されていました。例外メッセージ: {2}" に類似したローカライズされた文字列を検索します。 + + + + + "例外 {2} がスローされましたが、例外 {1} が予期されていました。{0} + 例外メッセージ: {3} + スタック トレース: {4}" に類似したローカライズされた文字列を検索します。 + + + + + 単体テストの成果 + + + + + テストを実行しましたが、問題が発生しました。 + 問題には例外または失敗したアサーションが関係している可能性があります。 + + + + + テストが完了しましたが、成功したか失敗したかは不明です。 + 中止したテストに使用される場合があります。 + + + + + 問題なくテストが実行されました。 + + + + + 現在テストを実行しています。 + + + + + テストを実行しようとしているときにシステム エラーが発生しました。 + + + + + テストがタイムアウトしました。 + + + + + ユーザーによってテストが中止されました。 + + + + + テストは不明な状態です + + + + + 単体テストのフレームワークのヘルパー機能を提供する + + + + + すべての内部例外のメッセージなど、例外メッセージを + 再帰的に取得します + + 次のメッセージを取得する例外 + エラー メッセージ情報を含む文字列 + + + + クラスで使用できるタイムアウトの列挙型。 + 列挙型の型は一致している必要があります + + + + + 無限。 + + + + + テスト クラス属性。 + + + + + このテストの実行を可能するテスト メソッド属性を取得します。 + + このメソッドで定義されているテスト メソッド属性インスタンス。 + The 。このテストを実行するために使用されます。 + Extensions can override this method to customize how all methods in a class are run. + + + + テスト メソッド属性。 + + + + + テスト メソッドを実行します。 + + 実行するテスト メソッド。 + テストの結果を表す TestResult オブジェクトの配列。 + Extensions can override this method to customize running a TestMethod. + + + + テスト初期化属性。 + + + + + テスト クリーンアップ属性。 + + + + + Ignore 属性。 + + + + + テストのプロパティ属性。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 名前。 + + + 値。 + + + + + 名前を取得します。 + + + + + 値を取得します。 + + + + + クラス初期化属性。 + + + + + クラス クリーンアップ属性。 + + + + + アセンブリ初期化属性。 + + + + + アセンブリ クリーンアップ属性。 + + + + + テストの所有者 + + + + + クラスの新しいインスタンスを初期化します。 + + + 所有者。 + + + + + 所有者を取得します。 + + + + + 優先順位属性。単体テストの優先順位を指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + 優先順位。 + + + + + 優先順位を取得します。 + + + + + テストの説明 + + + + + テストを記述する クラスの新しいインスタンスを初期化します。 + + 説明。 + + + + テストの説明を取得します。 + + + + + CSS プロジェクト構造の URI + + + + + CSS プロジェクト構造の URI の クラスの新しいインスタンスを初期化します。 + + CSS プロジェクト構造の URI。 + + + + CSS プロジェクト構造の URI を取得します。 + + + + + CSS イテレーション URI + + + + + CSS イテレーション URI の クラスの新しいインスタンスを初期化します。 + + CSS イテレーション URI。 + + + + CSS イテレーション URI を取得します。 + + + + + WorkItem 属性。このテストに関連付けられている作業項目の指定に使用されます。 + + + + + WorkItem 属性の クラスの新しいインスタンスを初期化します。 + + 作業項目に対する ID。 + + + + 関連付けられている作業項目に対する ID を取得します。 + + + + + タイムアウト属性。単体テストのタイムアウトを指定するために使用されます。 + + + + + クラスの新しいインスタンスを初期化します。 + + + タイムアウト。 + + + + + 事前設定するタイムアウトを指定して クラスの新しいインスタンスを初期化する + + + タイムアウト + + + + + タイムアウトを取得します。 + + + + + アダプターに返される TestResult オブジェクト。 + + + + + クラスの新しいインスタンスを初期化します。 + + + + + 結果の表示名を取得または設定します。複数の結果が返される場合に便利です。 + null の場合は、メソッド名が DisplayName として使用されます。 + + + + + テスト実行の成果を取得または設定します。 + + + + + テストが失敗した場合にスローされる例外を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでログに記録されたメッセージの出力を取得または設定します。 + + + + + テスト コードでデバッグ トレースを取得または設定します。 + + + + + Gets or sets the debug traces by test code. + + + + + テスト実行の期間を取得または設定します。 + + + + + データ ソース内のデータ行インデックスを取得または設定します。データ ドリブン テストの一続きのデータ行の + それぞれの結果に対してのみ設定されます。 + + + + + テスト メソッドの戻り値を取得または設定します。(現在は、常に null です)。 + + + + + テストで添付された結果ファイルを取得または設定します。 + + + + + データ ドリブン テストの接続文字列、テーブル名、行アクセス方法を指定します。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource の既定のプロバイダー名。 + + + + + 既定のデータ アクセス方法。 + + + + + クラスの新しいインスタンスを初期化します。このインスタンスは、データ ソースにアクセスするためのデータ プロバイダー、接続文字列、データ テーブル、データ アクセス方法を指定して初期化されます。 + + System.Data.SqlClient などデータ プロバイダーの不変名 + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + データにアクセスする順番をしています。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは接続文字列とテーブル名を指定して初期化されます。 + OLEDB データ ソースにアクセスするには接続文字列とデータ テーブルを指定します。 + + + データ プロバイダー固有の接続文字列。 + 警告: 接続文字列には機微なデータ (パスワードなど) を含めることができます。 + 接続文字列はソース コードのプレーンテキストとコンパイルされたアセンブリに保存されます。 + ソース コードとアセンブリへのアクセスを制限して、この秘匿性の高い情報を保護します。 + + データ テーブルの名前。 + + + + クラスの新しいインスタンスを初期化します。このインスタンスは設定名に関連付けられているデータ プロバイダーと接続文字列を使用して初期化されます。 + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションにあるデータ ソースの名前。 + + + + データ ソースのデータ プロバイダーを表す値を取得します。 + + + データ プロバイダー名。データ プロバイダーがオブジェクトの初期化時に指定されていなかった場合は、System.Data.OleDb の既定のプロバイダーが返されます。 + + + + + データ ソースの接続文字列を表す値を取得します。 + + + + + データを提供するテーブル名を示す値を取得します。 + + + + + データ ソースへのアクセスに使用するメソッドを取得します。 + + + + 次のいずれか 値。以下の場合 初期化されていない場合は、これは既定値を返します 。 + + + + + app.config ファイルの <microsoft.visualstudio.qualitytools> セクションで見つかるデータ ソースの名前を取得します。 + + + + + データをインラインで指定できるデータ ドリブン テストの属性。 + + + + + すべてのデータ行を検索して、実行します。 + + + テスト メソッド。 + + + 次の配列 。 + + + + + データ ドリブン テスト メソッドを実行します。 + + 実行するテスト メソッド。 + データ行. + 実行の結果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..93582a1 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 테스트 배포별 배포 항목(파일 또는 디렉터리)을 지정하는 데 사용됩니다. + 테스트 클래스 또는 테스트 메서드에서 지정할 수 있습니다. + 둘 이상의 항목을 지정하기 위한 여러 특성 인스턴스를 가질 수 있습니다. + 항목 경로는 절대 또는 상대 경로일 수 있으며, 상대 경로인 경우 RunConfig.RelativePathRoot가 기준입니다. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 배포할 파일 또는 디렉터리에 대한 상대 또는 절대 경로. 경로는 빌드 출력 디렉터리에 대해 상대적입니다. 배포된 테스트 어셈블리와 동일한 디렉터리에 항목이 복사됩니다. + 항목을 복사할 디렉터리의 경로. 배포 디렉터리에 대한 절대 경로 또는 상대 경로일 수 있습니다.에 의해 식별되는 모든 파일 및 디렉터리는 이 디렉터리에 복사됩니다. + + + + 복사할 소스 파일 또는 폴더의 경로를 가져옵니다. + + + + + 항목을 복사할 디렉터리의 경로를 가져옵니다. + + + + + Windows 스토어 앱에 대한 UI 스레드에서 테스트 코드를 실행합니다. + + + + + UI 스레드에서 테스트 메서드를 실행합니다. + + + 테스트 메서드입니다. + + + 배열 인스턴스. + + Throws when run on an async test method. + + + + + TestContext 클래스. 이 클래스는 완전히 추상 클래스여야 하며 멤버를 포함할 + 수 없습니다. 어댑터는 멤버를 구현합니다. 프레임워크의 사용자는 + 잘 정의된 인터페이스를 통해서만 여기에 액세스할 수 있습니다. + + + + + 테스트에 대한 테스트 속성을 가져옵니다. + + + + + 현재 실행 중인 테스트 메서드를 포함하는 클래스의 정규화된 이름을 가져옵니다 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 현재 실행 중인 테스트 메서드의 이름을 가져옵니다. + + + + + 현재 테스트 결과를 가져옵니다. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..22e769a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ko/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 실행을 위한 TestMethod입니다. + + + + + 테스트 메서드의 이름을 가져옵니다. + + + + + 테스트 클래스의 이름을 가져옵니다. + + + + + 테스트 메서드의 반환 형식을 가져옵니다. + + + + + 테스트 메서드의 매개 변수를 가져옵니다. + + + + + 테스트 메서드에 대한 methodInfo를 가져옵니다. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 테스트 메서드를 호출합니다. + + + 테스트 메서드에 전달할 인수(예: 데이터 기반의 경우) + + + 테스트 메서드 호출의 결과. + + + This call handles asynchronous test methods as well. + + + + + 테스트 메서드의 모든 특성을 가져옵니다. + + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 모든 특성. + + + + + 특정 형식의 특성을 가져옵니다. + + System.Attribute type. + + 부모 클래스에 정의된 특성이 올바른지 여부입니다. + + + 지정한 형식의 특성입니다. + + + + + 도우미입니다. + + + + + 검사 매개 변수가 Null이 아닙니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws argument null exception when parameter is null. + + + + 검사 매개 변수가 Null이 아니거나 비어 있습니다. + + + 매개 변수. + + + 매개 변수 이름. + + + 메시지. + + Throws ArgumentException when parameter is null. + + + + 데이터 기반 테스트에서 데이터 행에 액세스하는 방법에 대한 열거형입니다. + + + + + 행이 순차적인 순서로 반환됩니다. + + + + + 행이 임의의 순서로 반환됩니다. + + + + + 테스트 메서드에 대한 인라인 데이터를 정의하는 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + + + + 인수 배열을 사용하는 클래스의 새 인스턴스를 초기화합니다. + + 데이터 개체. + 추가 데이터. + + + + 테스트 메서드 호출을 위한 데이터를 가져옵니다. + + + + + 사용자 지정을 위한 테스트 결과에서 표시 이름을 가져오거나 설정합니다. + + + + + 어설션 불확실 예외입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + InternalTestFailureException 클래스. 테스트 사례에 대한 내부 실패를 나타내는 데 사용됩니다. + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 예외 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 지정된 형식의 예외를 예상하도록 지정하는 특성 + + + + + 예상 형식이 있는 클래스의 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + + + 테스트에서 예외를 throw하지 않을 때 포함할 메시지 및 예상 형식이 있는 클래스의 + 새 인스턴스를 초기화합니다. + + 예상되는 예외의 형식 + + 예외를 throw하지 않아 테스트가 실패할 경우 테스트 결과에 포함할 메시지 + + + + + 예상되는 예외의 형식을 나타내는 값을 가져옵니다. + + + + + 예상 예외의 형식에서 파생된 형식이 예상대로 자격을 얻도록 허용할지 여부를 나타내는 값을 가져오거나 + 설정합니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 단위 테스트에 의해 throw되는 예외의 형식이 예상되는지를 확인합니다. + + 단위 테스트에서 throw한 예외 + + + + 단위 테스트에서 예외를 예상하도록 지정하는 특성에 대한 기본 클래스 + + + + + 기본 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + + + 예외 없음 메시지가 있는 클래스의 새 인스턴스를 초기화합니다. + + + 예외를 throw하지 않아서 테스트가 실패할 경우 테스트 결과에 포함할 + 메시지 + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 예외를 throw하지 않아 테스트에 실패하는 경우 테스트 결과에 포함할 메시지를 가져옵니다. + + + + + 기본 예외 없음 메시지를 가져옵니다. + + ExpectedException 특성 형식 이름 + 기본 예외 없음 메시지 + + + + 예외가 예상되는지 여부를 확인합니다. 메서드가 반환되면 예외가 + 예상되는 것으로 이해됩니다. 메서드가 예외를 throw하면 예외가 + 예상되지 않는 것으로 이해되고, throw된 예외의 메시지가 + 테스트 결과에 포함됩니다. 클래스는 편의를 위해 사용될 수 + 있습니다. 이(가) 사용되는 경우 어설션에 실패하며, + 테스트 결과가 [결과 불충분]으로 설정됩니다. + + 단위 테스트에서 throw한 예외 + + + + AssertFailedException 또는 AssertInconclusiveException인 경우 예외를 다시 throw합니다. + + 어설션 예외인 경우 예외를 다시 throw + + + + 이 클래스는 제네릭 형식을 사용하는 형식에 대한 사용자의 유닛 테스트를 지원하도록 설계되었습니다. + GenericParameterHelper는 몇 가지 공통된 제네릭 형식 제약 조건을 충족합니다. + 예: + 1. public 기본 생성자 + 2. 공통 인터페이스 구현: IComparable, IEnumerable + + + + + C# 제네릭의 '새로 입력할 수 있는' 제약 조건을 충족하는 클래스의 + 새 인스턴스를 초기화합니다. + + + This constructor initializes the Data property to a random value. + + + + + 데이터 속성을 사용자가 제공한 값으로 초기화하는 클래스의 + 새 인스턴스를 초기화합니다. + + 임의의 정수 값 + + + + 데이터를 가져오거나 설정합니다. + + + + + 두 GenericParameterHelper 개체의 값을 비교합니다. + + 비교할 개체 + 개체의 값이 '이' GenericParameterHelper 개체와 동일한 경우에는 true이고, + 동일하지 않은 경우에는 false입니다. + + + + 이 개체의 해시 코드를 반환합니다. + + 해시 코드입니다. + + + + 두 개체의 데이터를 비교합니다. + + 비교할 개체입니다. + + 이 인스턴스 및 값의 상대 값을 나타내는 부호 있는 숫자입니다. + + + Thrown when the object passed in is not an instance of . + + + + + 길이가 데이터 속성에서 파생된 IEnumerator 개체를 + 반환합니다. + + IEnumerator 개체 + + + + 현재 개체와 동일한 GenericParameterHelper 개체를 + 반환합니다. + + 복제된 개체입니다. + + + + 사용자가 진단을 위해 단위 테스트에서 추적을 로그하거나 쓸 수 있습니다. + + + + + LogMessage용 처리기입니다. + + 로깅할 메시지. + + + + 수신할 이벤트입니다. 단위 테스트 기록기에서 메시지를 기록할 때 발생합니다. + 주로 어댑터에서 사용합니다. + + + + + 메시지를 로그하기 위해 테스트 작성자가 호출하는 API입니다. + + 자리 표시자가 있는 문자열 형식. + 자리 표시자에 대한 매개 변수. + + + + TestCategory 특성 - 단위 테스트의 범주 지정에 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화하고 범주를 테스트에 적용합니다. + + + 테스트 범주. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + "Category" 특성을 위한 기본 클래스 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 클래스의 새 인스턴스를 초기화합니다. + 범주를 테스트에 적용합니다. TestCategories에 의해 반환된 문자열은 + 테스트 필터링을 위한 /category 명령과 함께 사용됩니다. + + + + + 테스트에 적용된 테스트 범주를 가져옵니다. + + + + + AssertFailedException 클래스 - 테스트 사례에 대한 실패를 나타내는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 단위 테스트 내에서 다양한 조건을 테스트하기 위한 도우미 + 클래스의 컬렉션입니다. 테스트 중인 조건이 충족되지 않으면 예외가 + throw됩니다. + + + + + Assert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is false. + + + + + 지정된 조건이 true인지를 테스트하고 조건이 false이면 예외를 + throw합니다. + + + 테스트가 참일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 거짓인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is false. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is true. + + + + + 지정된 조건이 false인지를 테스트하고 조건이 true이면 예외를 + throw합니다. + + + 테스트가 거짓일 것으로 예상하는 조건. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 참인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is true. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not null. + + + + + 지정된 개체가 Null인지를 테스트하고, Null이 아니면 예외를 + throw합니다. + + + 테스트가 null일 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null이 아닌 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is null. + + + + + 지정된 개체가 Null이 아닌지를 테스트하고, Null이면 예외를 + throw합니다. + + + 테스트가 null이 아닐 것으로 예상하는 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null인 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null. + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if does not refer to the same object + as . + + + + + 지정된 두 개체가 동일한 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하지 않으면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not refer to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if refers to the same object + as . + + + + + 지정된 개체가 서로 다른 개체를 참조하는지를 테스트하고, 두 입력이 + 동일한 개체를 참조하면 예외를 throw합니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if refers to the same object + as . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is not equal to . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 값이 같은지를 테스트하고, 두 값이 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 예상하는 값입니다. + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 값이 다른지를 테스트하고, 두 값이 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + The type of values to compare. + + + 비교할 첫 번째 값. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 값. 테스트 중인 코드에 의해 생성된 값입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 개체가 같은지를 테스트하고, 두 개체가 같지 않으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 예상하는 개체입니다. + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 개체가 다른지를 테스트하고, 두 개체가 같으면 + 예외를 throw합니다. 논리값이 같더라도 숫자 형식이 다르면 + 같지 않은 것으로 취급됩니다. 42L은 42와 같지 않습니다. + + + 비교할 첫 번째 개체. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 값: . + + + 비교할 두 번째 개체. 테스트 중인 코드에 의해 생성된 개체입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 부동이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 예상하는 부동입니다. + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 부동이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 부동. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 부동: . + + + 비교할 두 번째 부동. 테스트 중인 코드에 의해 생성된 부동입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + Thrown if is not equal to + . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 double이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 예상하는 double입니다. + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음보다 큰 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 과(와)의 차이가 다음보다 큰 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 double이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 double. 테스트가 다음과 일치하지 않을 것으로 예상하는 + double: . + + + 비교할 두 번째 double. 테스트 중인 코드에 의해 생성된 double입니다. + + + 필요한 정확성. 다음과 같은 경우에만 예외가 throw됩니다. + 과(와) + 의 차이가 다음을 넘지 않는 경우: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: 또는 그 차이가 다음 미만인 경우: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to . + + + + + 지정된 문자열이 같은지를 테스트하고, 같지 않으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 예상하는 문자열입니다. + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. 비교에는 고정 문화권이 사용됩니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 문자열이 다른지를 테스트하고, 같으면 예외를 + throw합니다. + + + 비교할 첫 번째 문자열. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 문자열: . + + + 비교할 두 번째 문자열. 테스트 중인 코드에 의해 생성된 문자열입니다. + + + 대/소문자를 구분하거나 구분하지 않는 비교를 나타내는 부울(true는 + 대/소문자를 구분하지 않는 비교를 나타냄). + + + 문화권 관련 비교 정보를 제공하는 CultureInfo 개체. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 예상 형식의 인스턴스인지를 테스트하고, + 예상 형식이 개체의 상속 계층 구조에 있지 않은 예외를 + throw합니다. + + + 테스트가 지정된 형식일 것으로 예상하는 개체. + + + 다음의 예상 형식: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스가 아닌 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 지정된 개체가 잘못된 형식의 인스턴스가 아닌지를 테스트하고, + 지정된 형식이 개체의 상속 계층 구조에 있는 경우 예외를 + throw합니다. + + + 테스트가 지정된 형식이 아닐 것으로 예상하는 개체. + + + 형식: 이(가) 아니어야 함. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음의 인스턴스인 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + AssertFailedException을 throw합니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertFailedException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Always thrown. + + + + + AssertInconclusiveException을 throw합니다. + + + 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Always thrown. + + + + + 참조 같음에 대해 두 형식의 인스턴스를 비교하는 데 정적 equals 오버로드가 + 사용됩니다. 이 메서드는 같음에 대해 두 인스턴스를 비교하는 데 사용되지 않습니다. + 이 개체는 항상 Assert.Fail과 함께 throw됩니다. 단위 테스트에서 + Assert.AreEqual 및 관련 오버로드를 사용하세요. + + 개체 A + 개체 B + 항상 False. + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우:. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + throw될 예외 형식입니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 + + AssertFailedException + + 을 throw합니다. + + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + 대리자가 지정한 코드가 형식의 정확한 특정 예외(파생된 형식이 아님)를 throw하는지 테스트하고 + 코드가 예외를 throw하지 않거나 이(가) 아닌 형식의 예외를 throw하는 경우 AssertFailedException을 throw합니다. + + 테스트할 코드 및 예외를 throw할 것으로 예상되는 코드에 대한 대리자. + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음 형식의 예외를 throw하지 않는 경우: . + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 오류가 발생했습니다. + + + + + Null 문자('\0')를 "\\0"으로 바꿉니다. + + + 검색할 문자열. + + + Null 문자가 "\\0"으로 교체된 변환된 문자열. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException을 만들고 throw하는 도우미 함수 + + + 예외를 throw하는 어설션의 이름 + + + 어설션 실패에 대한 조건을 설명하는 메시지 + + + 매개 변수. + + + + + 유효한 조건의 매개 변수를 확인합니다. + + + 매개 변수. + + + 어셜선 이름. + + + 매개 변수 이름 + + + 잘못된 매개 변수 예외에 대한 메시지 + + + 매개 변수. + + + + + 개체를 문자열로 안전하게 변환하고, Null 값 및 Null 문자를 처리합니다. + Null 값은 "(null)"로 변환됩니다. Null 문자는 "\\0"으로 변환됩니다. + + + 문자열로 변환될 개체. + + + 변환된 문자열. + + + + + 문자열 어셜션입니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 문자열에 지정된 하위 문자열이 포함되었는지를 테스트하고, + 테스트 문자열 내에 해당 하위 문자열이 없으면 예외를 + throw합니다. + + + 다음을 포함할 것으로 예상되는 문자열: . + + + 다음 이내에 발생할 것으로 예상되는 문자열 . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 시작되는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 시작되지 않으면 예외를 + throw합니다. + + + 다음으로 시작될 것으로 예상되는 문자열: . + + + 다음의 접두사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 시작되지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not begin with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if does not end with + . + + + + + 지정된 문자열이 지정된 하위 문자열로 끝나는지를 테스트하고, + 테스트 문자열이 해당 하위 문자열로 끝나지 않으면 예외를 + throw합니다. + + + 다음으로 끝날 것으로 예상되는 문자열: . + + + 다음의 접미사일 것으로 예상되는 문자열: . + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음으로 끝나지 않는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not end with + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하는지를 테스트하고, 문자열이 + 식과 일치하지 않으면 예외를 throw합니다. + + + 다음과 일치할 것으로 예상되는 문자열: . + + + 과(와) + 일치할 것으로 예상되는 정규식 + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하지 않는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if does not match + . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if matches . + + + + + 지정된 문자열이 정규식과 일치하지 않는지를 테스트하고, 문자열이 + 식과 일치하면 예외를 throw합니다. + + + 다음과 일치하지 않을 것으로 예상되는 문자열: . + + + 과(와) + 일치하지 않을 것으로 예상되는 정규식. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 일치하는 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if matches . + + + + + 단위 테스트 내에서 컬렉션과 연결된 다양한 조건을 테스트하기 + 위한 도우미 클래스의 컬렉션. 테스트 중인 조건이 충족되지 않으면 + 예외가 throw됩니다. + + + + + CollectionAssert 기능의 singleton 인스턴스를 가져옵니다. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하는지를 테스트하고, + 컬렉션에 요소가 없으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함될 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 없는 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if is found in + . + + + + + 지정된 컬렉션이 지정된 요소를 포함하지 않는지를 테스트하고, + 컬렉션에 요소가 있으면 예외를 throw합니다. + + + 요소를 검색할 컬렉션. + + + 컬렉션에 포함되지 않을 것으로 예상되는 요소. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음에 포함된 경우: . 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is found in + . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 Null이 아닌지를 테스트하고, + Null인 요소가 있으면 예외를 throw합니다. + + + Null 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) null 요소를 포함하는 경우. 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a null element is found in . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + Thrown if a two or more equal elements are found in + . + + + + + 지정된 컬렉션의 모든 항목이 고유한지 여부를 테스트하고, + 컬렉션에 두 개의 같은 요소가 있는 경우 예외를 throw합니다. + + + 중복 요소를 검색할 컬렉션. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 하나 이상의 중복 요소를 포함하는 경우. 메시지는 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if a two or more equal elements are found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지입니다.. + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합인지를 테스트하고, + 하위 집합의 요소가 상위 집합에 없는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합일 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되는 컬렉션: + + + + 의 모든 요소가 다음에서 발견되지 않는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is not found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + Thrown if every element in is also found in + . + + + + + 한 컬렉션이 다른 컬렉션의 하위 집합이 아닌지를 테스트하고, + 하위 집합의 요소가 상위 집합에도 있는 경우 + 예외를 throw합니다. + + + 다음의 하위 집합이 아닐 것으로 예상되는 컬렉션: . + + + 다음의 상위 집합일 것으로 예상되지 않는 컬렉션: + + + + 의 모든 요소가 다음에서도 발견되는 경우 예외에 포함할 메시지: . + 테스트 결과에 메시지가 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if every element in is also found in + . + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 동일한 요소가 포함되어 있는지를 테스트하고, + 한 컬렉션이 다른 컬렉션에 없는 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 요소를 + 포함합니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 요소가 컬렉션 중 하나에서는 발견되었지만 다른 곳에서는 발견되지 + 않은 경우 예외에 포함할 메시지. 메시지가 테스트 결과에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 두 컬렉션에 서로 다른 요소가 포함되어 있는지를 테스트하고, + 두 컬렉션이 순서와 상관없이 동일한 요소를 포함하는 경우 예외를 + throw합니다. + + + 비교할 첫 번째 컬렉션. 여기에는 테스트가 실제 컬렉션과 다를 것으로 + 예상하는 요소가 포함됩니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성되는 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 동일한 요소를 포함하는 경우: . 메시지가 + 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션의 모든 요소가 예상 형식의 인스턴스인지를 테스트하고 + 예상 형식이 하나 이상의 요소의 상속 계층 구조에 없는 경우 + 예외를 throw합니다. + + + 테스트가 지정된 형식 중 하나일 것으로 예상하는 요소가 포함된 + 컬렉션. + + + 다음의 각 요소의 예상 형식: . + + + + 의 요소가 다음의 인스턴스가 아닌 경우 예외에 포함할 메시지: + . 메시지가 테스트 결과에 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 같은지를 테스트하고, 두 컬렉션이 같지 않으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 있는 + 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 같은 것으로 + 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 예상하는 컬렉션입니다. + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같지 않은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is not equal to + . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + Thrown if is equal to . + + + + + 지정된 컬렉션이 다른지를 테스트하고, 두 컬렉션이 같으면 예외를 + throw합니다. 같음이란 동일한 요소를 동일한 순서 및 양으로 가지고 + 있는 것이라고 정의됩니다. 동일한 값에 대한 서로 다른 참조는 + 같은 것으로 간주됩니다. + + + 비교할 첫 번째 컬렉션. 테스트가 다음과 일치하지 않을 것으로 예상하는 + 컬렉션입니다. . + + + 비교할 두 번째 컬렉션. 테스트 중인 코드에 의해 생성된 + 컬렉션입니다. + + + 컬렉션의 요소를 비교할 때 사용할 비교 구현. + + + 다음과 같은 경우 예외에 포함할 메시지: + 이(가) 다음과 같은 경우: . 메시지가 결과 테스트에 + 표시됩니다. + + + 다음의 서식을 지정할 때 사용할 매개 변수의 배열: . + + + Thrown if is equal to . + + + + + 첫 번째 컬렉션이 두 번째 컬렉션의 하위 집합인지를 + 확인합니다. 한 집합에 중복된 요소가 포함된 경우, 하위 집합에 있는 요소의 + 발생 횟수는 상위 집합에 있는 발생 횟수와 같거나 + 작아야 합니다. + + + 테스트가 다음에 포함될 것으로 예상하는 컬렉션: . + + + 테스트가 다음을 포함할 것으로 예상하는 컬렉션: . + + + 다음의 경우 True 이(가) + 의 하위 집합인 경우 참, 나머지 경우는 거짓. + + + + + 지정된 컬렉션에서 각 요소의 발생 횟수를 포함하는 + 사전을 생성합니다. + + + 처리할 컬렉션. + + + 컬렉션에 있는 null 요소의 수. + + + 지정된 컬렉션에 있는 각 요소의 발생 횟수를 포함하는 + 딕셔너리. + + + + + 두 컬렉션 간의 불일치 요소를 찾습니다. 불일치 요소란 + 예상 컬렉션에 나타나는 횟수가 실제 컬렉션에 + 나타나는 횟수와 다른 요소를 말합니다. 컬렉션은 + 같은 수의 요소가 있는 Null이 아닌 다른 참조로 + 간주됩니다. 이 수준에서의 확인 작업은 호출자의 + 책임입니다. 불일치 요소가 없으면 함수는 false를 + 반환하고 출력 매개 변수가 사용되지 않습니다. + + + 비교할 첫 번째 컬렉션. + + + 비교할 두 번째 컬렉션. + + + 다음의 예상 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 다음의 실제 발생 횟수: + 또는 불일치 요소가 없는 경우 + 영(0). + + + 불일치 요소(null일 수 있음) 또는 불일치 요소가 없는 경우 + null. + + + 불일치 요소가 발견되면 참, 발견되지 않으면 거짓. + + + + + object.Equals를 사용하여 개체 비교합니다. + + + + + 프레임워크 예외에 대한 기본 클래스입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + 예외. + + + + 클래스의 새 인스턴스를 초기화합니다. + + 메시지. + + + + 지역화된 문자열 등을 찾기 위한 강력한 형식의 리소스 클래스입니다. + + + + + 이 클래스에서 사용하는 캐시된 ResourceManager 인스턴스를 반환합니다. + + + + + 이 강력한 형식의 리소스 클래스를 사용하여 모든 리소스 조회에 + 대한 현재 스레드의 CurrentUICulture 속성을 재정의합니다. + + + + + [액세스 문자열의 구문이 잘못되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 컬렉션에 <{2}>은(는) {1}개가 포함되어야 하는데 실제 컬렉션에는 {3}개가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [중복된 항목이 있습니다. <{1}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 대/소문자가 다른 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 크지 않아야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}({2})>. 실제 값: <{3}({4})>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값 <{1}>과(와) 실제 값 <{2}>의 차이가 <{3}>보다 커야 합니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 값: <{1}>을(를) 제외한 모든 값. 실제 값: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [AreSame()에 값 형식을 전달하면 안 됩니다. Object로 변환된 값은 동일한 값으로 간주되지 않습니다. AreEqual()을 사용해 보세요. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}이(가) 실패했습니다. {1}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [async TestMethod with UITestMethodAttribute는 지원되지 않습니다. async를 제거하거나 TestMethodAttribute를 사용하세요.]와 유사한 지역화된 문자열 조회합니다. + + + + + [두 컬렉션이 모두 비어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션 참조가 동일한 컬렉션 개체를 가리킵니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [두 컬렉션에 같은 요소가 포함되어 있습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [(null)]과 유사한 지역화된 문자열을 조회합니다. + + + + + Looks up a localized string similar to (object). + + + + + ['{0}' 문자열이 '{1}' 문자열을 포함하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0}({1})]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [어설션에 Assert.Equals를 사용할 수 없습니다. 대신 Assert.AreEqual 및 오버로드를 사용하세요.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [컬렉션의 요소 수가 일치하지 않습니다. 예상 값: <{1}>. 실제 값: <{2}>.{0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {0}에 있는 요소가 일치하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소는 예상 형식이 아닙니다. 예상 형식: <{2}>. 실제 형식: <{3}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [인덱스 {1}에 있는 요소가 (null)입니다. 예상 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 문자열로 끝나지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 인수 - EqualsTester에는 Null을 사용할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 형식의 개체를 {1} 형식의 개체로 변환할 수 없습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [참조된 내부 개체가 더 이상 유효하지 않습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. {1}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 속성의 형식은 {2}이어야 하는데 실제로는 {1}입니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{0} 예상 형식: <{1}>. 실제 형식: <{2}>.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치하지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [잘못된 형식: <{1}>. 실제 형식: <{2}>. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 문자열이 '{1}' 패턴과 일치합니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [DataRowAttribute가 지정되지 않았습니다. DataTestMethodAttribute에는 하나 이상의 DataRowAttribute가 필요합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 예외가 throw되지 않았습니다. {0}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + ['{0}' 매개 변수가 잘못되었습니다. 이 값은 Null일 수 없습니다. {1}.](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [요소 수가 다릅니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 시그니처를 가진 생성자를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + 다음과 유사한 지역화된 문자열을 조회합니다. + [지정한 멤버({0})를 찾을 수 없습니다. 전용 접근자를 다시 생성해야 할 수 있습니다. + 또는 멤버가 기본 클래스에 정의된 전용 멤버일 수 있습니다. 기본 클래스에 정의된 전용 멤버인 경우에는 이 멤버를 정의하는 형식을 + PrivateObject의 생성자에 전달해야 합니다.] + + + + + + ['{0}' 문자열이 '{1}' 문자열로 시작되지 않습니다. {2}.]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [예상 예외 형식은 System.Exception이거나 System.Exception에서 파생된 형식이어야 합니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [(예외로 인해 {0} 형식의 예외에 대한 메시지를 가져오지 못했습니다.)]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외 {0}을(를) throw하지 않았습니다. {1}](과)와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 예상 예외를 throw하지 않았습니다. 예외는 테스트 메서드에 정의된 {0} 특성에 의해 예상되었습니다.]와 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외를 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [테스트 메서드에서 {0} 예외를 throw했지만 {1} 예외 또는 해당 예외에서 파생된 형식을 예상했습니다. 예외 메시지: {2}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + [{1} 예외를 예상했지만 {2} 예외를 throw했습니다. {0} + 예외 메시지: {3} + 스택 추적: {4}]과(와) 유사한 지역화된 문자열을 조회합니다. + + + + + 단위 테스트 결과 + + + + + 테스트가 실행되었지만 문제가 있습니다. + 예외 또는 실패한 어설션과 관련된 문제일 수 있습니다. + + + + + 테스트가 완료되었지만, 성공인지 실패인지를 알 수 없습니다. + 중단된 테스트에 사용된 것일 수 있습니다. + + + + + 아무 문제 없이 테스트가 실행되었습니다. + + + + + 테스트가 현재 실행 중입니다. + + + + + 테스트를 실행하려고 시도하는 동안 시스템 오류가 발생했습니다. + + + + + 테스트가 시간 초과되었습니다. + + + + + 테스트가 사용자에 의해 중단되었습니다. + + + + + 테스트의 상태를 알 수 없습니다. + + + + + 단위 테스트 프레임워크에 대한 도우미 기능을 제공합니다. + + + + + 재귀적으로 모든 내부 예외에 대한 메시지를 포함하여 예외 메시지를 + 가져옵니다. + + 오류 메시지 정보가 포함된 + 문자열에 대한 메시지 가져오기의 예외 + + + + 클래스와 함께 사용할 수 있는 시간 제한에 대한 열거형입니다. + 열거형의 형식은 일치해야 합니다. + + + + + 무제한입니다. + + + + + 테스트 클래스 특성입니다. + + + + + 이 테스트를 실행할 수 있는 테스트 메서드 특성을 가져옵니다. + + 이 메서드에 정의된 테스트 메서드 특성 인스턴스입니다. + 이 테스트를 실행하는 데 사용됩니다. + Extensions can override this method to customize how all methods in a class are run. + + + + 테스트 메서드 특성입니다. + + + + + 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드입니다. + 테스트 결과를 나타내는 TestResult 개체의 배열입니다. + Extensions can override this method to customize running a TestMethod. + + + + 테스트 초기화 특성입니다. + + + + + 테스트 정리 특성입니다. + + + + + 무시 특성입니다. + + + + + 테스트 속성 특성입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 이름. + + + 값. + + + + + 이름을 가져옵니다. + + + + + 값을 가져옵니다. + + + + + 클래스 초기화 특성입니다. + + + + + 클래스 정리 특성입니다. + + + + + 어셈블리 초기화 특성입니다. + + + + + 어셈블리 정리 특성입니다. + + + + + 테스트 소유자 + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 소유자. + + + + + 소유자를 가져옵니다. + + + + + Priority 특성 - 단위 테스트의 우선 순위를 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 우선 순위. + + + + + 우선 순위를 가져옵니다. + + + + + 테스트의 설명 + + + + + 테스트를 설명하는 클래스의 새 인스턴스를 초기화합니다. + + 설명입니다. + + + + 테스트의 설명을 가져옵니다. + + + + + CSS 프로젝트 구조 URI + + + + + CSS 프로젝트 구조 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 프로젝트 구조 URI입니다. + + + + CSS 프로젝트 구조 URI를 가져옵니다. + + + + + CSS 반복 URI + + + + + CSS 반복 URI에 대한 클래스의 새 인스턴스를 초기화합니다. + + CSS 반복 URI입니다. + + + + CSS 반복 URI를 가져옵니다. + + + + + WorkItem 특성 - 이 테스트와 연결된 작업 항목을 지정하는 데 사용됩니다. + + + + + WorkItem 특성에 대한 클래스의 새 인스턴스를 초기화합니다. + + 작업 항목에 대한 ID입니다. + + + + 연결된 작업 항목에 대한 ID를 가져옵니다. + + + + + Timeout 특성 - 단위 테스트의 시간 제한을 지정하는 데 사용됩니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한. + + + + + 미리 설정된 시간 제한이 있는 클래스의 새 인스턴스를 초기화합니다. + + + 시간 제한 + + + + + 시간 제한을 가져옵니다. + + + + + 어댑터에 반환할 TestResult 개체입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. + + + + + 결과의 표시 이름을 가져오거나 설정합니다. 여러 결과를 반환할 때 유용합니다. + Null인 경우 메서드 이름은 DisplayName으로 사용됩니다. + + + + + 테스트 실행의 결과를 가져오거나 설정합니다. + + + + + 테스트 실패 시 throw할 예외를 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에서 로그한 메시지의 출력을 가져오거나 설정합니다. + + + + + 테스트 코드에 의한 디버그 추적을 가져오거나 설정합니다. + + + + + Gets or sets the debug traces by test code. + + + + + 테스트 실행의 지속 시간을 가져오거나 설정합니다. + + + + + 데이터 소스에서 데이터 행 인덱스를 가져오거나 설정합니다. 데이터 기반 테스트에서 + 개별 데이터 행 실행의 결과에 대해서만 설정합니다. + + + + + 테스트 메서드의 반환 값을 가져오거나 설정합니다(현재 항상 Null). + + + + + 테스트로 첨부한 결과 파일을 가져오거나 설정합니다. + + + + + 데이터 기반 테스트에 대한 연결 문자열, 테이블 이름 및 행 액세스 방법을 지정합니다. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource의 기본 공급자 이름입니다. + + + + + 기본 데이터 액세스 방법입니다. + + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 데이터 소스에 액세스할 데이터 공급자, 연결 문자열, 데이터 테이블 및 데이터 액세스 방법으로 초기화됩니다. + + 고정 데이터 공급자 이름(예: System.Data.SqlClient) + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + 데이터에 액세스할 순서를 지정합니다. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 연결 문자열 및 테이블 이름으로 초기화됩니다. + OLEDB 데이터 소스에 액세스하기 위한 연결 문자열 및 데이터 테이블을 지정하세요. + + + 데이터 공급자별 연결 문자열. + 경고: 연결 문자열에는 중요한 데이터(예: 암호)가 포함될 수 있습니다. + 연결 문자열은 소스 코드와 컴파일된 어셈블리에 일반 텍스트로 저장됩니다. + 이 중요한 정보를 보호하려면 소스 코드 및 어셈블리에 대한 액세스를 제한하세요. + + 데이터 테이블의 이름. + + + + 클래스의 새 인스턴스를 초기화합니다. 이 인스턴스는 설정 이름과 연결된 연결 문자열 및 데이터 공급자로 초기화됩니다. + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에 있는 데이터 소스의 이름. + + + + 데이터 소스의 데이터 공급자를 나타내는 값을 가져옵니다. + + + 데이터 공급자 이름. 데이터 공급자를 개체 초기화에서 지정하지 않은 경우 System.Data.OleDb의 기본 공급자가 반환됩니다. + + + + + 데이터 소스의 연결 문자열을 나타내는 값을 가져옵니다. + + + + + 데이터를 제공하는 테이블 이름을 나타내는 값을 가져옵니다. + + + + + 데이터 소스에 액세스하는 데 사용되는 메서드를 가져옵니다. + + + + 값 중 하나입니다. 이(가) 초기화되지 않은 경우 다음 기본값이 반환됩니다. . + + + + + app.config 파일의 <microsoft.visualstudio.qualitytools> 섹션에서 찾은 데이터 소스의 이름을 가져옵니다. + + + + + 데이터를 인라인으로 지정할 수 있는 데이터 기반 테스트의 특성입니다. + + + + + 모든 데이터 행을 찾고 실행합니다. + + + 테스트 메서드. + + + 배열 . + + + + + 데이터 기반 테스트 메서드를 실행합니다. + + 실행할 테스트 메서드. + 데이터 행. + 실행 결과. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..4b958bf --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Służy do określenia elementu wdrożenia (pliku lub katalogu) dla wdrożenia testowego. + Może być określony w klasie testowej lub metodzie testowej. + Może mieć wiele wystąpień atrybutu w celu określenia więcej niż jednego elementu. + Ścieżka elementu może być bezwzględna lub względna. Jeśli jest względna, jest określana względem elementu RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Inicjuje nowe wystąpienie klasy . + + Plik lub katalog do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + + + + Inicjuje nowe wystąpienie klasy + + Względna lub bezwzględna ścieżka do pliku lub katalogu do wdrożenia. Ścieżka jest określana względem katalogu wyjściowego kompilacji. Element zostanie skopiowany do tego samego katalogu co wdrożone zestawy testowe. + Ścieżka katalogu, do którego mają być kopiowane elementy. Może być bezwzględna lub określana względem katalogu wdrażania. Wszystkie pliki i katalogi określone przez zostaną skopiowane do tego katalogu. + + + + Pobiera ścieżkę źródłowego pliku lub folderu do skopiowania. + + + + + Pobiera ścieżkę katalogu, do którego element jest kopiowany. + + + + + Wykonaj kod testowy w wątku interfejsu użytkownika dla aplikacji ze Sklepu Windows. + + + + + Wykonuje metodę testową w wątku interfejsu użytkownika. + + + Metoda testowa. + + + Tablica elementów wystąpienia. + + Throws when run on an async test method. + + + + + Klasa TestContext. Ta klasa powinna być w pełni abstrakcyjna i nie może zawierać żadnych + elementów członkowskich. Adapter zaimplementuje elementy członkowskie. Użytkownicy platformy powinni + uzyskiwać dostęp do tego elementu tylko za pośrednictwem prawidłowo zdefiniowanego interfejsu. + + + + + Pobiera właściwości testu. + + + + + Pobiera w pełni kwalifikowaną nazwę klasy zawierającej aktualnie wykonywaną metodę testową + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Pobiera nazwę aktualnie wykonywanej metody testowej + + + + + Pobiera wynik bieżącego testu. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..5593384 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pl/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Metoda TestMethod do wykonania. + + + + + Pobiera nazwę metody testowej. + + + + + Pobiera nazwę klasy testowej. + + + + + Pobiera zwracany typ metody testowej. + + + + + Pobiera parametry metody testowej. + + + + + Pobiera element methodInfo dla metody testowej. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Wywołuje metodę testową. + + + Argumenty przekazywane do metody testowej (np. w przypadku opartej na danych) + + + Wynik wywołania metody testowej. + + + This call handles asynchronous test methods as well. + + + + + Pobierz wszystkie atrybuty metody testowej. + + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Wszystkie atrybuty. + + + + + Pobierz atrybut określonego typu. + + System.Attribute type. + + Informacja o tym, czy atrybut zdefiniowany w klasie nadrzędnej jest prawidłowy. + + + Atrybuty określonego typu. + + + + + Element pomocniczy. + + + + + Sprawdzany parametr nie ma wartości null. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws argument null exception when parameter is null. + + + + Sprawdzany parametr nie ma wartości null i nie jest pusty. + + + Parametr. + + + Nazwa parametru. + + + Komunikat. + + Throws ArgumentException when parameter is null. + + + + Wyliczenie dotyczące sposobu dostępu do wierszy danych w teście opartym na danych. + + + + + Wiersze są zwracane po kolei. + + + + + Wiersze są zwracane w kolejności losowej. + + + + + Atrybut do definiowania danych wbudowanych dla metody testowej. + + + + + Inicjuje nowe wystąpienie klasy . + + Obiekt danych. + + + + Inicjuje nowe wystąpienie klasy , które pobiera tablicę argumentów. + + Obiekt danych. + Więcej danych. + + + + Pobiera dane do wywoływania metody testowej. + + + + + Pobiera lub ustawia nazwę wyświetlaną w wynikach testu do dostosowania. + + + + + Wyjątek niejednoznacznej asercji. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Klasa InternalTestFailureException. Używana do określenia wewnętrznego błędu przypadku testowego + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat wyjątku. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Atrybut określający, że jest oczekiwany wyjątek określonego typu + + + + + Inicjuje nowe wystąpienie klasy z oczekiwanym typem + + Typ oczekiwanego wyjątku + + + + Inicjuje nowe wystąpienie klasy z + oczekiwanym typem i komunikatem do uwzględnienia, gdy test nie zgłasza żadnego wyjątku. + + Typ oczekiwanego wyjątku + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ nie zostanie zgłoszony wyjątek + + + + + Pobiera wartość wskazującą typ oczekiwanego wyjątku + + + + + Pobiera lub ustawia wartość wskazującą, czy typy pochodne typu oczekiwanego wyjątku + są traktowane jako oczekiwane + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Weryfikuje, czy typ wyjątku zgłoszonego przez test jednostkowy jest oczekiwany + + Wyjątek zgłoszony przez test jednostkowy + + + + Klasa podstawowa dla atrybutów, które określają, że jest oczekiwany wyjątek z testu jednostkowego + + + + + Inicjuje nowe wystąpienie klasy z domyślnym komunikatem o braku wyjątku + + + + + Inicjuje nowe wystąpienie klasy z komunikatem o braku wyjątku + + + Komunikat do dołączenia do wyniku testu, jeśli test nie powiedzie się, ponieważ + nie zostanie zgłoszony wyjątek + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera komunikat do uwzględnienia w wyniku testu, jeśli test nie powiedzie się z powodu niezgłoszenia wyjątku + + + + + Pobiera domyślny komunikat bez wyjątku + + Nazwa typu atrybutu ExpectedException + Domyślny komunikat bez wyjątku + + + + Określa, czy wyjątek jest oczekiwany. Jeśli wykonanie metody zakończy się normalnie, oznacza to, + że wyjątek był oczekiwany. Jeśli metoda zgłosi wyjątek, oznacza to, + że wyjątek nie był oczekiwany, a komunikat zgłoszonego wyjątku + jest dołączony do wyniku testu. Klasy można użyć dla + wygody. Jeśli zostanie użyta klasa i asercja nie powiedzie się, + wynik testu zostanie ustawiony jako Niejednoznaczny. + + Wyjątek zgłoszony przez test jednostkowy + + + + Zgłoś ponownie wyjątek, jeśli jest to wyjątek AssertFailedException lub AssertInconclusiveException + + Wyjątek do ponownego zgłoszenia, jeśli jest to wyjątek asercji + + + + Ta klasa jest zaprojektowana w taki sposób, aby pomóc użytkownikowi wykonującemu testy jednostkowe dla typów używających typów ogólnych. + Element GenericParameterHelper zachowuje niektóre typowe ograniczenia typów ogólnych, + takie jak: + 1. publiczny konstruktor domyślny + 2. implementuje wspólny interfejs: IComparable, IEnumerable + + + + + Inicjuje nowe wystąpienie klasy , które + spełnia ograniczenie „newable” w typach ogólnych języka C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicjuje nowe wystąpienie klasy , które + inicjuje właściwość Data wartością dostarczoną przez użytkownika. + + Dowolna liczba całkowita + + + + Pobiera lub ustawia element Data + + + + + Wykonuje porównanie wartości dwóch obiektów GenericParameterHelper + + obiekt, z którym ma zostać wykonane porównanie + Wartość true, jeśli obiekt ma tę samą wartość co obiekt „this” typu GenericParameterHelper. + W przeciwnym razie wartość false. + + + + Zwraca wartość skrótu tego obiektu. + + Kod skrótu. + + + + Porównuje dane dwóch obiektów . + + Obiekt do porównania. + + Liczba ze znakiem, która wskazuje wartości względne tego wystąpienia i wartości. + + + Thrown when the object passed in is not an instance of . + + + + + Zwraca obiekt IEnumerator, którego długość jest określona na podstawie + właściwości Data. + + Obiekt IEnumerator + + + + Zwraca obiekt GenericParameterHelper równy + bieżącemu obiektowi. + + Sklonowany obiekt. + + + + Umożliwia użytkownikom rejestrowanie/zapisywanie śladów z testów jednostek w celach diagnostycznych. + + + + + Procedura obsługi elementu LogMessage. + + Komunikat do zarejestrowania. + + + + Zdarzenie, które ma być nasłuchiwane. Zgłaszane, gdy składnik zapisywania testu jednostkowego zapisze jakiś komunikat. + Zwykle zużywane przez adapter. + + + + + Interfejs API składnika zapisywania testu do wywołania na potrzeby rejestrowania komunikatów. + + Format ciągu z symbolami zastępczymi. + Parametry dla symboli zastępczych. + + + + Atrybut TestCategory używany do określenia kategorii testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy i stosuje kategorię do testu. + + + Kategoria testu. + + + + + Pobiera kategorie testu, które zostały zastosowane do testu. + + + + + Klasa podstawowa atrybutu „Category” + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicjuje nowe wystąpienie klasy . + Stosuje kategorię do testu. Ciągi zwrócone przez element TestCategories + są używane w poleceniu /category do filtrowania testów + + + + + Pobiera kategorię testu, która została zastosowana do testu. + + + + + Klasa AssertFailedException. Używana do wskazania niepowodzenia przypadku testowego + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Inicjuje nowe wystąpienie klasy . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków w ramach + testów jednostkowych. Jeśli testowany warunek nie zostanie spełniony, zostanie zgłoszony + wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość true, i zgłasza wyjątek, + jeśli warunek ma wartość false. + + + Warunek, którego wartość oczekiwana przez test to true. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość false. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is false. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is true. + + + + + Testuje, czy określony warunek ma wartość false, i zgłasza wyjątek, + jeśli warunek ma wartość true. + + + Warunek, którego wartość oczekiwana przez test to false. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość true. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is true. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość null, i zgłasza wyjątek, + jeśli ma inną wartość. + + + Obiekt, którego wartość oczekiwana przez test to null. + + + Komunikat do dołączenia do wyjątku, gdy element + nie ma wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is null. + + + + + Testuje, czy określony obiekt ma wartość inną niż null, i zgłasza wyjątek, + jeśli ma wartość null. + + + Obiekt, którego wartość oczekiwana przez test jest inna niż null. + + + Komunikat do dołączenia do wyjątku, gdy element + ma wartość null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null. + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy oba określone obiekty przywołują ten sam obiekt, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe nie przywołują tego samego obiektu. + + + Pierwszy obiekt do porównania. To jest wartość, której oczekuje test. + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest tym samym elementem co . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not refer to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone obiekty przywołują inne obiekty, + i zgłasza wyjątek, jeśli dwa obiekty wejściowe przywołują ten sam obiekt. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest taki sam jak element . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if refers to the same object + as . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są równe, i zgłasza wyjątek, + jeśli dwie wartości są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, której oczekuje test. + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości są różne, i zgłasza wyjątek, + jeśli dwie wartości są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + The type of values to compare. + + + Pierwsza wartość do porównania. To jest wartość, która według testu + nie powinna pasować . + + + Druga wartość do porównania. To jest wartość utworzona przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są równe, i zgłasza wyjątek, + jeśli dwa obiekty są różne. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest obiekt, którego oczekuje test. + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone obiekty są różne, i zgłasza wyjątek, + jeśli dwa obiekty są równe. Różne typy liczbowe są traktowane + jako różne, nawet jeśli wartości logiczne są równe. Wartość 42L jest różna od wartości 42. + + + Pierwszy obiekt do porównania. To jest wartość, która zgodnie z testem powinna + nie pasować do elementu . + + + Drugi obiekt do porównania. To jest obiekt utworzony przez testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa, której oczekuje test. + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości zmiennoprzecinkowe są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość zmiennoprzecinkowa do porównania. Test oczekuje, że ta wartość zmiennoprzecinkowa nie będzie + zgodna z elementem . + + + Druga wartość zmiennoprzecinkowa do porównania. To jest wartość zmiennoprzecinkowa utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwsza wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji, której oczekuje test. + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o więcej niż . + + + Komunikat do dołączenia do wyjątku, gdy element + jest różny od elementu o więcej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone wartości podwójnej precyzji są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwsza wartość podwójnej precyzji do porównania. Test oczekuje, że ta wartość podwójnej precyzji + nie będzie pasować do elementu . + + + Druga wartość podwójnej precyzji do porównania. To jest wartość podwójnej precyzji utworzona przez testowany kod. + + + Wymagana dokładność. Wyjątek zostanie zgłoszony, tylko jeśli + jest różny od elementu + o co najwyżej . + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi lub różny o mniej niż + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są równe, i zgłasza wyjątek, + jeśli są różne. + + + Pierwszy ciąg do porównania. To jest ciąg, którego oczekuje test. + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. Na potrzeby tego porównania jest używana niezmienna kultura. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone ciągi są różne, i zgłasza wyjątek, + jeśli są równe. + + + Pierwszy ciąg do porównania. To jest ciąg, który według testu + nie powinien pasować do elementu . + + + Drugi ciąg do porównania. To jest ciąg utworzony przez testowany kod. + + + Wartość logiczna wskazująca, czy porównanie uwzględnia wielkość liter. (Wartość true + wskazuje porównanie bez uwzględniania wielkości liter). + + + Obiekt CultureInfo, który określa informacje dotyczące porównania specyficznego dla kultury. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt jest wystąpieniem oczekiwanego + typu, i zgłasza wyjątek, jeśli oczekiwany typ nie należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu powinien być określonego typu. + + + Oczekiwany typ elementu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest wystąpieniem typu . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testuje, czy określony obiekt nie jest wystąpieniem nieprawidłowego + typu, i zgłasza wyjątek, jeśli podany typ należy + do hierarchii dziedziczenia obiektu. + + + Obiekt, który według testu nie powinien być określonego typu. + + + Element nie powinien być tego typu. + + + Komunikat do dołączenia do wyjątku, gdy element + jest wystąpieniem typu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Zgłasza wyjątek AssertFailedException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertFailedException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Always thrown. + + + + + Zgłasza wyjątek AssertInconclusiveException. + + + Komunikat do dołączenia do wyjątku. Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Always thrown. + + + + + Statyczne przeciążenia metody equals są używane do porównywania wystąpień dwóch typów pod kątem + równości odwołań. Ta metoda nie powinna być używana do porównywania dwóch wystąpień pod kątem + równości. Ten obiekt zawsze będzie zgłaszał wyjątek za pomocą metody Assert.Fail. Użyj metody + Assert.AreEqual i skojarzonych przeciążeń w testach jednostkowych. + + Obiekt A + Obiekt B + Zawsze wartość false. + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Typ wyjątku, którego zgłoszenie jest oczekiwane. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek + + AssertFailedException + , + jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Testuje, czy kod określony przez delegata zgłasza wyjątek dokładnie typu (a nie jego typu pochodnego) + i zgłasza wyjątek AssertFailedException, jeśli kod nie zgłasza wyjątku lub zgłasza wyjątek typu innego niż . + + Delegat dla kodu do przetestowania, który powinien zgłosić wyjątek. + + Komunikat do dołączenia do wyjątku, gdy element + nie zgłasza wyjątku typu . + + + Tablica parametrów do użycia podczas formatowania elementu . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Element wykonywanie delegata. + + + + + Zastępuje znaki null („\0”) ciągiem „\\0”. + + + Ciąg do wyszukania. + + + Przekonwertowany ciąg ze znakami null zastąpionymi ciągiem „\\0”. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Funkcja pomocnicza, która tworzy i zgłasza wyjątek AssertionFailedException + + + nazwa asercji zgłaszającej wyjątek + + + komunikat opisujący warunki dla błędu asercji + + + Parametry. + + + + + Sprawdza parametry pod kątem prawidłowych warunków + + + Parametr. + + + Nazwa asercji. + + + nazwa parametru + + + komunikat dla wyjątku nieprawidłowego parametru + + + Parametry. + + + + + Bezpiecznie konwertuje obiekt na ciąg, obsługując wartości null i znaki null. + Wartości null są konwertowane na ciąg „(null)”. Znaki null są konwertowane na ciąg „\\0”. + + + Obiekt do przekonwertowania na ciąg. + + + Przekonwertowany ciąg. + + + + + Asercja ciągu. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg zawiera podany podciąg, + i zgłasza wyjątek, jeśli podciąg nie występuje + w testowanym ciągu. + + + Ciąg, który powinien zawierać ciąg . + + + Ciąg, którego wystąpienie jest oczekiwane w ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg rozpoczyna się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie rozpoczyna się + podciągiem. + + + Ciąg, którego oczekiwany początek to . + + + Ciąg, który powinien być prefiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie zaczyna się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not begin with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg kończy się podanym podciągiem, + i zgłasza wyjątek, jeśli testowany ciąg nie kończy się + podciągiem. + + + Ciąg, którego oczekiwane zakończenie to . + + + Ciąg, który powinien być sufiksem ciągu . + + + Komunikat do dołączenia do wyjątku, gdy element + nie kończy się ciągiem . Komunikat + jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not end with + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg nie pasuje do wyrażenia. + + + Ciąg, który powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg ma + pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + nie pasuje do wzorca . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if does not match + . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if matches . + + + + + Testuje, czy określony ciąg nie pasuje do wyrażenia regularnego, + i zgłasza wyjątek, jeśli ciąg pasuje do wyrażenia. + + + Ciąg, który nie powinien pasować do wzorca . + + + Wyrażenie regularne, do którego ciąg nie + powinien pasować. + + + Komunikat do dołączenia do wyjątku, gdy element + dopasowania . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if matches . + + + + + Kolekcja klas pomocniczych na potrzeby testowania różnych warunków skojarzonych + z kolekcjami w ramach testów jednostkowych. Jeśli testowany warunek + nie jest spełniony, zostanie zgłoszony wyjątek. + + + + + Pobiera pojedyncze wystąpienie funkcji CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja zawiera podany element, + i zgłasza wyjątek, jeśli element nie znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie znajduje się w ciągu . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Thrown if is found in + . + + + + + Testuje, czy określona kolekcja nie zawiera podanego elementu, + i zgłasza wyjątek, jeśli element znajduje się w kolekcji. + + + Kolekcja, w której ma znajdować się wyszukiwany element. + + + Element, który nie powinien należeć do kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + znajduje się w kolekcji . Komunikat jest wyświetlony w wynikach + testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji mają wartości inne niż null, i zgłasza + wyjątek, jeśli którykolwiek element ma wartość null. + + + Kolekcja, w której mają być wyszukiwane elementy o wartości null. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera element o wartości null. Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a null element is found in . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy wszystkie elementy w określonej kolekcji są unikatowe, + i zgłasza wyjątek, jeśli dowolne dwa elementy w kolekcji są równe. + + + Kolekcja, w której mają być wyszukiwane zduplikowane elementy. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera co najmniej jeden zduplikowany element. Komunikat jest wyświetlony w + wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if a two or more equal elements are found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if an element in is not found in + . + + + + + Testuje, czy dana kolekcja stanowi podzbiór innej kolekcji, + i zgłasza wyjątek, jeśli dowolny element podzbioru znajduje się także + w nadzbiorze. + + + Kolekcja powinna być podzbiorem . + + + Kolekcja powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie można odnaleźć w . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is not found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Thrown if every element in is also found in + . + + + + + Testuje, czy jedna kolekcja nie jest podzbiorem innej kolekcji, + i zgłasza wyjątek, jeśli wszystkie elementy w podzbiorze znajdują się również + w nadzbiorze. + + + Kolekcja nie powinna być podzbiorem . + + + Kolekcja nie powinna być nadzbiorem + + + Komunikat do uwzględnienia w wyjątku, gdy każdy element w kolekcji + znajduje się również w kolekcji . + Komunikat jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if every element in is also found in + . + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają te same elementy, i zgłasza + wyjątek, jeśli któraś z kolekcji zawiera element niezawarty w drugiej + kolekcji. + + + Pierwsza kolekcja do porównania. Zawiera elementy oczekiwane przez + test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do uwzględnienia w wyjątku, gdy element został odnaleziony + w jednej z kolekcji, ale nie ma go w drugiej. Komunikat jest wyświetlany + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testuje, czy dwie kolekcje zawierają różne elementy, i zgłasza + wyjątek, jeśli dwie kolekcje zawierają identyczne elementy bez względu + na porządek. + + + Pierwsza kolekcja do porównania. Zawiera elementy, co do których test oczekuje, + że będą inne niż rzeczywista kolekcja. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + zawiera te same elementy co . Komunikat + jest wyświetlany w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Sprawdza, czy wszystkie elementy w określonej kolekcji są wystąpieniami + oczekiwanego typu i zgłasza wyjątek, jeśli oczekiwanego typu nie ma + w hierarchii dziedziczenia jednego lub większej liczby elementów. + + + Kolekcja zawierająca elementy, co do których test oczekuje, że będą + elementami określonego typu. + + + Oczekiwany typ każdego elementu kolekcji . + + + Komunikat do uwzględnienia w wyjątku, gdy elementu w + nie jest wystąpieniem + . Komunikat jest wyświetlony w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są równe, i zgłasza wyjątek, + jeśli dwie kolekcje nie są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja oczekiwana przez test. + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + nie jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is not equal to + . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Thrown if is equal to . + + + + + Testuje, czy określone kolekcje są nierówne, i zgłasza wyjątek, + jeśli dwie kolekcje są równe. Równość jest definiowana jako zawieranie tych samych + elementów w takim samym porządku i ilości. Różne odwołania do tej samej + wartości są uznawane za równe. + + + Pierwsza kolekcja do porównania. To jest kolekcja, co do której test oczekuje +, że nie będzie zgodna . + + + Druga kolekcja do porównania. To jest kolekcja utworzona przez + testowany kod. + + + Implementacja porównania do użycia podczas porównywania elementów kolekcji. + + + Komunikat do dołączenia do wyjątku, gdy element + jest równy elementowi . Komunikat jest wyświetlony + w wynikach testu. + + + Tablica parametrów do użycia podczas formatowania elementu . + + + Thrown if is equal to . + + + + + Określa, czy pierwsza kolekcja jest podzbiorem drugiej kolekcji. + Jeśli któryś zbiór zawiera zduplikowane elementy, liczba wystąpień + elementu w podzbiorze musi być mniejsza lub równa liczbie + wystąpień w nadzbiorze. + + + Kolekcja, co do której test oczekuje, że powinna być zawarta w . + + + Kolekcja, co do której test oczekuje, że powinna zawierać . + + + Wartość true, jeśli jest podzbiorem kolekcji + , w przeciwnym razie wartość false. + + + + + Tworzy słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + Kolekcja do przetworzenia. + + + Liczba elementów o wartości null w kolekcji. + + + Słownik zawierający liczbę wystąpień każdego elementu + w określonej kolekcji. + + + + + Znajduje niezgodny element w dwóch kolekcjach. Niezgodny + element to ten, którego liczba wystąpień w oczekiwanej kolekcji + jest inna niż w rzeczywistej kolekcji. Kolekcje + są uznawane za różne odwołania o wartości innej niż null z tą samą + liczbą elementów. Obiekt wywołujący jest odpowiedzialny za ten poziom weryfikacji. + Jeśli nie ma żadnego niezgodnego elementu, funkcja zwraca wynik + false i parametry wyjściowe nie powinny być używane. + + + Pierwsza kolekcja do porównania. + + + Druga kolekcja do porównania. + + + Oczekiwana liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Rzeczywista liczba wystąpień elementu + lub 0, jeśli nie ma żadnego niezgodnego + elementu. + + + Niezgodny element (może mieć wartość null) lub wartość null, jeśli + nie ma żadnego niezgodnego elementu. + + + wartość true, jeśli znaleziono niezgodny element; w przeciwnym razie wartość false. + + + + + porównuje obiekty przy użyciu funkcji object.Equals + + + + + Klasa podstawowa dla wyjątków struktury. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + Wyjątek. + + + + Inicjuje nowe wystąpienie klasy . + + Komunikat. + + + + Silnie typizowana klasa zasobów do wyszukiwania zlokalizowanych ciągów itp. + + + + + Zwraca buforowane wystąpienie ResourceManager używane przez tę klasę. + + + + + Przesłania właściwość CurrentUICulture bieżącego wątku dla wszystkich + przypadków przeszukiwania zasobów za pomocą tej silnie typizowanej klasy zasobów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg dostępu ma nieprawidłową składnię. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana kolekcja zawiera następującą liczbę wystąpień elementu <{2}>: {1}. Rzeczywista kolekcja zawiera następującą liczbę wystąpień: {3}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Znaleziono zduplikowany element: <{1}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano: <{1}>. Przypadek jest inny w wartości rzeczywistej: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy nie większej niż <{3}> między oczekiwaną wartością <{1}> i wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1} ({2})>. Rzeczywista wartość: <{3} ({4})>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwana wartość: <{1}>. Rzeczywista wartość: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano różnicy większej niż <{3}> między oczekiwaną wartością <{1}> a wartością rzeczywistą <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwano dowolnej wartości z wyjątkiem: <{1}>. Wartość rzeczywista: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie przekazuj typów wartości do metody AreSame(). Wartości przekonwertowane na typ Object nigdy nie będą takie same. Rozważ użycie metody AreEqual(). {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} — niepowodzenie. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do asynchronicznej metody TestMethod z elementem UITestMethodAttribute, które nie są obsługiwane. Usuń element asynchroniczny lub użyj elementu TestMethodAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje są puste. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Odwołania do obu kolekcji wskazują ten sam obiekt kolekcji. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Obie kolekcje zawierają te same elementy. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0}({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (null). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (object). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie zawiera ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} ({1}). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można użyć metody Assert.Equals dla asercji. Zamiast tego użyj metody Assert.AreEqual i przeciążeń. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Liczba elementów w kolekcjach nie jest zgodna. Oczekiwana wartość: <{1}>. Wartość rzeczywista: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {0} nie jest zgodny. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} nie ma oczekiwanego typu. Oczekiwany typ: <{2}>. Rzeczywisty typ: <{3}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Element w indeksie {1} ma wartość (null). Oczekiwany typ: <{2}>.{0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie kończy się ciągiem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nieprawidłowy argument. Element EqualsTester nie może używać wartości null. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie można przekonwertować obiektu typu {0} na typ {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Przywoływany obiekt wewnętrzny nie jest już prawidłowy. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Właściwość {0} ma typ {1}. Oczekiwano typu {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: {0} Oczekiwany typ: <{1}>. Rzeczywisty typ: <{2}>. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Niepoprawny typ: <{1}>. Rzeczywisty typ: <{2}>. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” jest zgodny ze wzorcem „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie określono atrybutu DataRowAttribute. Atrybut DataTestMethodAttribute wymaga co najmniej jednego atrybutu DataRowAttribute. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Nie zgłoszono wyjątku. Oczekiwany wyjątek: {1}. {0}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Parametr „{0}” jest nieprawidłowy. Wartość nie może być równa null. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Inna liczba elementów. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć konstruktora z określoną sygnaturą. Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: + Nie można odnaleźć określonego elementu członkowskiego ({0}). Może być konieczne ponowne wygenerowanie prywatnej metody dostępu + lub element członkowski może być zdefiniowany jako prywatny w klasie podstawowej. W drugim przypadku należy przekazać typ, + który definiuje element członkowski w konstruktorze obiektu PrivateObject. + . + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Ciąg „{0}” nie rozpoczyna się od ciągu „{1}”. {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Oczekiwanym typem wyjątku musi być typ System.Exception lub typ pochodzący od typu System.Exception. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: (Nie można pobrać komunikatu dotyczącego wyjątku typu {0} z powodu wyjątku). + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła oczekiwanego wyjątku {0}. {1}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa nie zgłosiła wyjątku. Wyjątek był oczekiwany przez atrybut {0} zdefiniowany w metodzie testowej. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1}. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Metoda testowa zgłosiła wyjątek {0}, ale oczekiwano wyjątku {1} lub typu, który od niego pochodzi. Komunikat o wyjątku: {2}. + + + + + Wyszukuje zlokalizowany ciąg podobny do następującego: Zgłoszono wyjątek {2}, ale oczekiwano wyjątku {1}. {0} + Komunikat o wyjątku: {3} + Ślad stosu: {4}. + + + + + wyniki testu jednostkowego + + + + + Test został wykonany, ale wystąpiły problemy. + Problemy mogą obejmować wyjątki lub asercje zakończone niepowodzeniem. + + + + + Test został ukończony, ale nie można stwierdzić, czy zakończył się powodzeniem, czy niepowodzeniem. + Może być używany dla przerwanych testów. + + + + + Test został wykonany bez żadnych problemów. + + + + + Test jest obecnie wykonywany. + + + + + Wystąpił błąd systemu podczas próby wykonania testu. + + + + + Upłynął limit czasu testu. + + + + + Test został przerwany przez użytkownika. + + + + + Stan testu jest nieznany + + + + + Udostępnia funkcjonalność pomocnika dla platformy testów jednostkowych + + + + + Pobiera komunikaty wyjątku, w tym rekursywnie komunikaty wszystkich wewnętrznych + wyjątków + + Wyjątek, dla którego mają zostać pobrane komunikaty + ciąg z informacjami o komunikacie o błędzie + + + + Wyliczenie dla limitów czasu, które może być używane z klasą . + Typ wyliczenia musi być zgodny + + + + + Nieskończone. + + + + + Atrybut klasy testowej. + + + + + Pobiera atrybut metody testowej, który umożliwia uruchomienie tego testu. + + Wystąpienie atrybutu metody testowej zdefiniowane w tej metodzie. + do użycia do uruchamiania tego testu. + Extensions can override this method to customize how all methods in a class are run. + + + + Atrybut metody testowej. + + + + + Wykonuje metodę testową. + + Metoda testowa do wykonania. + Tablica obiektów TestResult reprezentujących wyniki testu. + Extensions can override this method to customize running a TestMethod. + + + + Atrybut inicjowania testu. + + + + + Atrybut oczyszczania testu. + + + + + Atrybut ignorowania. + + + + + Atrybut właściwości testu. + + + + + Inicjuje nowe wystąpienie klasy . + + + Nazwa. + + + Wartość. + + + + + Pobiera nazwę. + + + + + Pobiera wartość. + + + + + Atrybut inicjowania klasy. + + + + + Atrybut oczyszczania klasy. + + + + + Atrybut inicjowania zestawu. + + + + + Atrybut oczyszczania zestawu. + + + + + Właściciel testu + + + + + Inicjuje nowe wystąpienie klasy . + + + Właściciel. + + + + + Pobiera właściciela. + + + + + Atrybut priorytetu służący do określania priorytetu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Priorytet. + + + + + Pobiera priorytet. + + + + + Opis testu + + + + + Inicjuje nowe wystąpienie klasy do opisu testu. + + Opis. + + + + Pobiera opis testu. + + + + + Identyfikator URI struktury projektu CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI struktury projektu CSS. + + Identyfikator URI struktury projektu CSS. + + + + Pobiera identyfikator URI struktury projektu CSS. + + + + + Identyfikator URI iteracji CSS + + + + + Inicjuje nowe wystąpienie klasy dla identyfikatora URI iteracji CSS. + + Identyfikator URI iteracji CSS. + + + + Pobiera identyfikator URI iteracji CSS. + + + + + Atrybut elementu roboczego służący do określania elementu roboczego skojarzonego z tym testem. + + + + + Inicjuje nowe wystąpienie klasy dla atrybutu WorkItem. + + Identyfikator dla elementu roboczego. + + + + Pobiera identyfikator dla skojarzonego elementu roboczego. + + + + + Atrybut limitu czasu służący do określania limitu czasu testu jednostkowego. + + + + + Inicjuje nowe wystąpienie klasy . + + + Limit czasu. + + + + + Inicjuje nowe wystąpienie klasy ze wstępnie ustawionym limitem czasu + + + Limit czasu + + + + + Pobiera limit czasu. + + + + + Obiekt TestResult zwracany do adaptera. + + + + + Inicjuje nowe wystąpienie klasy . + + + + + Pobiera lub ustawia nazwę wyświetlaną wyniku. Przydatny w przypadku zwracania wielu wyników. + Jeśli ma wartość null, nazwa metody jest używana jako nazwa wyświetlana. + + + + + Pobiera lub ustawia wynik wykonania testu. + + + + + Pobiera lub ustawia wyjątek zgłoszony, gdy test kończy się niepowodzeniem. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia dane wyjściowe komunikatu rejestrowanego przez kod testu. + + + + + Pobiera lub ustawia ślady debugowania przez kod testu. + + + + + Gets or sets the debug traces by test code. + + + + + Pobiera lub ustawia czas trwania wykonania testu. + + + + + Pobiera lub ustawia indeks wiersza danych w źródle danych. Ustawia tylko dla wyników oddzielnych + uruchomień wiersza danych w teście opartym na danych. + + + + + Pobiera lub ustawia wartość zwracaną metody testowej. (Obecnie zawsze wartość null). + + + + + Pobiera lub ustawia pliki wyników dołączone przez test. + + + + + Określa parametry połączenia, nazwę tabeli i metodę dostępu do wiersza w przypadku testowania opartego na danych. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Nazwa domyślnego dostawcy dla źródła danych. + + + + + Domyślna metoda uzyskiwania dostępu do danych. + + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych, parametrami połączenia, tabelą danych i metodą dostępu do danych w celu uzyskania dostępu do źródła danych. + + Niezmienna nazwa dostawcy danych, taka jak System.Data.SqlClient + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + Określa kolejność dostępu do danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z parametrami połączenia i nazwą tabeli. + Określ parametry połączenia i tabelę danych w celu uzyskania dostępu do źródła danych OLEDB. + + + Parametry połączenia specyficzne dla dostawcy danych. + OSTRZEŻENIE: parametry połączenia mogą zawierać poufne dane (na przykład hasło). + Parametry połączenia są przechowywane w postaci zwykłego tekstu w kodzie źródłowym i w skompilowanym zestawie. + Należy ograniczyć dostęp do kodu źródłowego i zestawu, aby chronić te poufne informacje. + + Nazwa tabeli danych. + + + + Inicjuje nowe wystąpienie klasy . To wystąpienie zostanie zainicjowane z dostawcą danych i parametrami połączenia skojarzonymi z nazwą ustawienia. + + Nazwa źródła danych znaleziona w sekcji <microsoft.visualstudio.qualitytools> pliku app.config. + + + + Pobiera wartość reprezentującą dostawcę danych źródła danych. + + + Nazwa dostawcy danych. Jeśli dostawca danych nie został wyznaczony w czasie inicjowania obiektu, zostanie zwrócony domyślny dostawca obiektu System.Data.OleDb. + + + + + Pobiera wartość reprezentującą parametry połączenia dla źródła danych. + + + + + Pobiera wartość wskazującą nazwę tabeli udostępniającej dane. + + + + + Pobiera metodę używaną do uzyskiwania dostępu do źródła danych. + + + + Jedna z . Jeśli nie zainicjowano , zwróci wartość domyślną . + + + + + Pobiera nazwę źródła danych znajdującego się w sekcji <microsoft.visualstudio.qualitytools> w pliku app.config. + + + + + Atrybut dla testu opartego na danych, w którym dane można określić bezpośrednio. + + + + + Znajdź wszystkie wiersze danych i wykonaj. + + + Metoda testowa. + + + Tablica elementów . + + + + + Uruchamianie metody testowej dla testu opartego na danych. + + Metoda testowa do wykonania. + Wiersz danych. + Wyniki wykonania. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..d5c4cce --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Usado para especificar o item de implantação (arquivo ou diretório) para implantação por teste. + Pode ser especificado em classe de teste ou em método de teste. + Pode ter várias instâncias do atributo para especificar mais de um item. + O caminho do item pode ser absoluto ou relativo. Se relativo, é relativo a RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Inicializa uma nova instância da classe . + + O arquivo ou o diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + + + + Inicializa uma nova instância da classe + + O caminho relativo ou absoluto ao arquivo ou ao diretório a ser implantado. O caminho é relativo ao diretório de saída do build. O item será copiado para o mesmo diretório que o dos assemblies de teste implantados. + O caminho do diretório para o qual os itens deverão ser copiados. Ele pode ser absoluto ou relativo ao diretório de implantação. Todos os arquivos e diretórios identificados por serão copiados para esse diretório. + + + + Obtém o caminho da pasta ou do arquivo de origem a ser copiado. + + + + + Obtém o caminho do diretório para o qual o item é copiado. + + + + + Executar código de teste no thread da Interface do Usuário para Aplicativos da Windows Store. + + + + + Executa o método de teste no Thread da Interface do Usuário. + + + O Método de teste. + + + Uma matriz de instâncias. + + Throws when run on an async test method. + + + + + Classe TestContext. Essa classe deve ser totalmente abstrata e não conter nenhum + membro. O adaptador implementará os membros. Os usuários na estrutura devem + acessá-la somente por meio de uma interface bem definida. + + + + + Obtém as propriedades de teste para um teste. + + + + + Obtém o Nome totalmente qualificado da classe contendo o método de teste executado no momento + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Obtém o Nome do método de teste executado no momento + + + + + Obtém o resultado do teste atual. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..2b63dd5 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/pt/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + O TestMethod para a execução. + + + + + Obtém o nome do método de teste. + + + + + Obtém o nome da classe de teste. + + + + + Obtém o tipo de retorno do método de teste. + + + + + Obtém os parâmetros do método de teste. + + + + + Obtém o methodInfo para o método de teste. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Invoca o método de teste. + + + Argumentos a serem passados ao método de teste. (Por exemplo, para testes controlados por dados) + + + Resultado da invocação do método de teste. + + + This call handles asynchronous test methods as well. + + + + + Obter todos os atributos do método de teste. + + + Se o atributo definido na classe pai é válido. + + + Todos os atributos. + + + + + Obter atributo de tipo específico. + + System.Attribute type. + + Se o atributo definido na classe pai é válido. + + + Os atributos do tipo especificado. + + + + + O auxiliar. + + + + + O parâmetro de verificação não nulo. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws argument null exception when parameter is null. + + + + O parâmetro de verificação não nulo nem vazio. + + + O parâmetro. + + + O nome do parâmetro. + + + A mensagem. + + Throws ArgumentException when parameter is null. + + + + Enumeração para como acessamos as linhas de dados no teste controlado por dados. + + + + + As linhas são retornadas em ordem sequencial. + + + + + As linhas são retornadas em ordem aleatória. + + + + + O atributo para definir dados embutidos para um método de teste. + + + + + Inicializa uma nova instância da classe . + + O objeto de dados. + + + + Inicializa a nova instância da classe que ocupa uma matriz de argumentos. + + Um objeto de dados. + Mais dados. + + + + Obtém Dados para chamar o método de teste. + + + + + Obtém ou define o nome de exibição nos resultados de teste para personalização. + + + + + A exceção inconclusiva da asserção. + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Classe InternalTestFailureException. Usada para indicar falha interna de um caso de teste + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem de exceção. + + + + Inicializa uma nova instância da classe . + + + + + Atributo que especifica que uma exceção do tipo especificado é esperada + + + + + Inicializa uma nova instância da classe com o tipo especificado + + Tipo da exceção esperada + + + + Inicializa uma nova instância da classe com + o tipo esperado e a mensagem a ser incluída quando nenhuma exceção é gerada pelo teste. + + Tipo da exceção esperada + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma exceção + + + + + Obtém um valor que indica o Tipo da exceção esperada + + + + + Obtém ou define um valor que indica se é para permitir tipos derivados do tipo da exceção esperada para + qualificá-la como esperada + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Verifica se o tipo da exceção gerada pelo teste de unidade é esperado + + A exceção gerada pelo teste de unidade + + + + Classe base para atributos que especificam que uma exceção de um teste de unidade é esperada + + + + + Inicializa uma nova instância da classe com uma mensagem de não exceção padrão + + + + + Inicializa a nova instância da classe com uma mensagem de não exceção + + + Mensagem a ser incluída no resultado do teste se ele falhar por não gerar uma + exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem a ser incluída no resultado do teste caso o teste falhe devido à não geração de uma exceção + + + + + Obtém a mensagem de não exceção padrão + + O nome do tipo de atributo ExpectedException + A mensagem de não exceção padrão + + + + Determina se uma exceção é esperada. Se o método é retornado, entende-se + que a exceção era esperada. Se o método gera uma exceção, entende-se + que a exceção não era esperada e a mensagem de exceção gerada + é incluída no resultado do teste. A classe pode ser usada para + conveniência. Se é usada e há falha de asserção, + o resultado do teste é definido como Inconclusivo. + + A exceção gerada pelo teste de unidade + + + + Gerar a exceção novamente se for uma AssertFailedException ou uma AssertInconclusiveException + + A exceção a ser gerada novamente se for uma exceção de asserção + + + + Essa classe é projetada para ajudar o usuário a executar o teste de unidade para os tipos que usam tipos genéricos. + GenericParameterHelper satisfaz algumas restrições comuns de tipos genéricos, + como: + 1. construtor público padrão + 2. implementa interface comum: IComparable, IEnumerable + + + + + Inicializa a nova instância da classe que + satisfaz a restrição 'newable' em genéricos C#. + + + This constructor initializes the Data property to a random value. + + + + + Inicializa a nova instância da classe que + inicializa a propriedade Data para um valor fornecido pelo usuário. + + Qualquer valor inteiro + + + + Obtém ou define Data + + + + + Executa a comparação de valores de dois objetos GenericParameterHelper + + objeto com o qual comparar + verdadeiro se o objeto tem o mesmo valor que 'esse' objeto GenericParameterHelper. + Caso contrário, falso. + + + + Retorna um código hash para esse objeto. + + O código hash. + + + + Compara os dados dos dois objetos . + + O objeto com o qual comparar. + + Um número assinado indicando os valores relativos dessa instância e valor. + + + Thrown when the object passed in is not an instance of . + + + + + Retorna um objeto IEnumerator cujo comprimento é derivado + da propriedade Data. + + O objeto IEnumerator + + + + Retorna um objeto GenericParameterHelper que é igual ao + objeto atual. + + O objeto clonado. + + + + Permite que usuários registrem/gravem rastros de testes de unidade para diagnósticos. + + + + + Manipulador para LogMessage. + + Mensagem a ser registrada. + + + + Evento a ser escutado. Acionado quando o gerador do teste de unidade escreve alguma mensagem. + Principalmente para ser consumido pelo adaptador. + + + + + API para o gravador de teste chamar Registrar mensagens. + + Formato de cadeia de caracteres com espaços reservados. + Parâmetros dos espaços reservados. + + + + Atributo TestCategory. Usado para especificar a categoria de um teste de unidade. + + + + + Inicializa a nova instância da classe e aplica a categoria ao teste. + + + A Categoria de teste. + + + + + Obtém as categorias de teste aplicadas ao teste. + + + + + Classe base para o atributo "Category" + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Inicializa a nova instância da classe . + Aplica a categoria ao teste. As cadeias de caracteres retornadas por TestCategories + são usadas com o comando /category para filtrar os testes + + + + + Obtém a categoria de teste aplicada ao teste. + + + + + Classe AssertFailedException. Usada para indicar falha em um caso de teste + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Inicializa uma nova instância da classe . + + + + + Uma coleção de classes auxiliares para testar várias condições nos + testes de unidade. Se a condição testada não é atendida, uma exceção + é gerada. + + + + + Obtém uma instância singleton da funcionalidade Asserção. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Thrown if is false. + + + + + Testa se a condição especificada é verdadeira e gera uma exceção + se a condição é falsa. + + + A condição que o teste espera ser verdadeira. + + + A mensagem a ser incluída na exceção quando + é falsa. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is false. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Thrown if is true. + + + + + Testa se a condição especificada é falsa e gera uma exceção + se a condição é verdadeira. + + + A condição que o teste espera ser falsa. + + + A mensagem a ser incluída na exceção quando + é verdadeira. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is true. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is not null. + + + + + Testa se o objeto especificado é nulo e gera uma exceção + caso ele não seja. + + + O objeto que o teste espera ser nulo. + + + A mensagem a ser incluída na exceção quando + não é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if is null. + + + + + Testa se o objeto especificado é não nulo e gera uma exceção + caso ele seja nulo. + + + O objeto que o teste espera que não seja nulo. + + + A mensagem a ser incluída na exceção quando + é nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null. + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem ao mesmo objeto e + gera uma exceção se as duas entradas não se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é o mesmo que . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not refer to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Thrown if refers to the same object + as . + + + + + Testa se os objetos especificados se referem a objetos diferentes e + gera uma exceção se as duas entradas se referem ao mesmo objeto. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é o mesmo que . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if refers to the same object + as . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is not equal to . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são iguais e gera uma exceção + se os dois valores não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trate-se do valor esperado pelo teste. + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os valores especificados são desiguais e gera uma exceção + se os dois valores são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + The type of values to compare. + + + O primeiro valor a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo valor a ser comparado. Trata-se do valor produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são iguais e gera uma exceção + se os dois objetos não são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do objeto esperado pelo teste. + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os objetos especificados são desiguais e gera uma exceção + se os dois objetos são iguais. Tipos numéricos diferentes são tratados + como desiguais mesmo se os valores lógicos são iguais. 42L não é igual a 42. + + + O primeiro objeto a ser comparado. Trata-se do valor que o teste espera que não + corresponda a . + + + O segundo objeto a ser comparado. Trata-se do objeto produzido pelo código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro float a ser comparado. Trata-se do float esperado pelo teste. + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os floats especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro float a ser comparado. Trata-se do float que o teste espera que não + corresponda a . + + + O segundo float a ser comparado. Trata-se do float produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + Thrown if is not equal to + . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são iguais e gera uma exceção + se eles não são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo esperado pelo teste. + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por mais de . + + + A mensagem a ser incluída na exceção quando + for diferente de por mais de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if is equal to . + + + + + Testa se os duplos especificados são desiguais e gera uma exceção + se eles são iguais. + + + O primeiro duplo a ser comparado. Trata-se do duplo que o teste espera que não + corresponda a . + + + O segundo duplo a ser comparado. Trata-se do duplo produzido pelo código em teste. + + + A precisão necessária. Uma exceção será gerada somente se + for diferente de + por no máximo . + + + A mensagem a ser incluída na exceção quando + é igual a ou diferente por menos de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são iguais e gera uma exceção + se elas não são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres esperada pelo teste. + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. A cultura invariável é usada para a comparação. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as cadeias de caracteres especificadas são desiguais e gera uma exceção + se elas são iguais. + + + A primeira cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres que o teste espera que não + corresponda a . + + + A segunda cadeia de caracteres a ser comparada. Trata-se da cadeia de caracteres produzida pelo código em teste. + + + Um booliano que indica uma comparação que diferencia ou não maiúsculas de minúsculas. (verdadeiro + indica uma comparação que diferencia maiúsculas de minúsculas.) + + + Um objeto CultureInfo que fornece informações de comparação específicas de cultura. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado é uma instância do tipo + esperado e gera uma exceção se o tipo esperado não está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que seja do tipo especificado. + + + O tipo esperado de . + + + A mensagem a ser incluída na exceção quando + não é uma instância de . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Testa se o objeto especificado não é uma instância do tipo + incorreto e gera uma exceção se o tipo especificado está na + hierarquia de herança do objeto. + + + O objeto que o teste espera que não seja do tipo especificado. + + + O tipo que não deve ser. + + + A mensagem a ser incluída na exceção quando + é uma instância de . A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Gera uma AssertFailedException. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertFailedException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Always thrown. + + + + + Gera uma AssertInconclusiveException. + + + A mensagem a ser incluída na exceção. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Always thrown. + + + + + Os métodos estático igual a sobrecargas são usados para comparar instâncias de dois tipos em relação à igualdade de + referência. Esse método não deve ser usado para comparar a igualdade de + duas instâncias. Esse objeto sempre gerará Assert.Fail. Use + Assert.AreEqual e sobrecargas associadas nos testes de unidade. + + Objeto A + Objeto B + Sempre falso. + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O tipo de exceção que se espera que seja gerada. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera + + AssertFailedException + + se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + + Delegado ao código a ser testado e que é esperado que gere exceção. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Testa se o código especificado pelo delegado gera a exceção exata especificada de tipo (e não de tipo derivado) + e gera AssertFailedException se o código não gera uma exceção ou gera uma exceção de outro tipo diferente de . + + Delegado ao código a ser testado e que é esperado que gere exceção. + + A mensagem a ser incluída na exceção quando + não gera exceção de tipo . + + + Uma matriz de parâmetros a serem usados ao formatar . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + O executando o representante. + + + + + Substitui os caracteres nulos ('\0') por "\\0". + + + A cadeia de caracteres a ser pesquisada. + + + A cadeia de caracteres convertida com os caracteres nulos substituídos por "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Função auxiliar que cria e gera uma AssertionFailedException + + + nome da asserção que gera uma exceção + + + mensagem que descreve as condições da falha de asserção + + + Os parâmetros. + + + + + Verifica o parâmetro das condições válidas + + + O parâmetro. + + + O Nome da asserção. + + + nome do parâmetro + + + mensagem da exceção de parâmetro inválido + + + Os parâmetros. + + + + + Converte com segurança um objeto em uma cadeia de caracteres manipulando valores e caracteres nulos. + Os valores nulos são convertidos em "(null)". Os caracteres nulos são convertidos em "\\0". + + + O objeto a ser convertido em uma cadeia de caracteres. + + + A cadeia de caracteres convertida. + + + + + A asserção da cadeia de caracteres. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada contém a subcadeia especificada + e gera uma exceção se a subcadeia não ocorre na + cadeia de teste. + + + A cadeia de caracteres que se espera que contenha . + + + A cadeia de caracteres que se espera que ocorra em . + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada começa com a subcadeia especificada + e gera uma exceção se a cadeia de teste não começa com a + subcadeia. + + + A cadeia de caracteres que se espera que comece com . + + + A cadeia de caracteres que se espera que seja um prefixo de . + + + A mensagem a ser incluída na exceção quando + não começa com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not begin with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada termina com a subcadeia especificada + e gera uma exceção se a cadeia de teste não termina com a + subcadeia. + + + A cadeia de caracteres que se espera que termine com . + + + A cadeia de caracteres que se espera que seja um sufixo de . + + + A mensagem a ser incluída na exceção quando + não termina com . A mensagem é + mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not end with + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada corresponde a uma expressão regular e + gera uma exceção se a cadeia não corresponde à expressão. + + + A cadeia de caracteres que se espera que corresponda a . + + + A expressão regular com a qual se espera que tenha + correspondência. + + + A mensagem a ser incluída na exceção quando + não corresponde a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if does not match + . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Thrown if matches . + + + + + Testa se a cadeia de caracteres especificada não corresponde a uma expressão regular + e gera uma exceção se a cadeia corresponde à expressão. + + + A cadeia de caracteres que se espera que não corresponda a . + + + A expressão regular com a qual se espera que é + esperado não corresponder. + + + A mensagem a ser incluída na exceção quando + corresponde a . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if matches . + + + + + Uma coleção de classes auxiliares para testar várias condições associadas + às coleções nos testes de unidade. Se a condição testada não é + atendida, uma exceção é gerada. + + + + + Obtém a instância singleton da funcionalidade CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada contém o elemento especificado + e gera uma exceção se o elemento não está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que esteja na coleção. + + + A mensagem a ser incluída na exceção quando + não está em . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Thrown if is found in + . + + + + + Testa se a coleção especificada não contém o elemento + especificado e gera uma exceção se o elemento está na coleção. + + + A coleção na qual pesquisar o elemento. + + + O elemento que se espera que não esteja na coleção. + + + A mensagem a ser incluída na exceção quando + está em . A mensagem é mostrada nos resultados de + teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is found in + . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são não nulos e gera + uma exceção se algum elemento é nulo. + + + A coleção na qual pesquisar elementos nulos. + + + A mensagem a ser incluída na exceção quando + contém um elemento nulo. A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a null element is found in . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se todos os itens na coleção especificada são exclusivos ou não e + gera uma exceção se dois elementos na coleção são iguais. + + + A coleção na qual pesquisar elementos duplicados. + + + A mensagem a ser incluída na exceção quando + contém pelo menos um elemento duplicado. A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if a two or more equal elements are found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção é um subconjunto de outra coleção e + gera uma exceção se algum elemento no subconjunto não está também no + superconjunto. + + + A coleção que se espera que seja um subconjunto de . + + + A coleção que se espera que seja um superconjunto de + + + A mensagem a ser incluída na exceção quando um elemento em + não é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is not found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Thrown if every element in is also found in + . + + + + + Testa se uma coleção não é um subconjunto de outra coleção e + gera uma exceção se todos os elementos no subconjunto também estão no + superconjunto. + + + A coleção que se espera que não seja um subconjunto de . + + + A coleção que se espera que não seja um superconjunto de + + + A mensagem a ser incluída na exceção quando todo elemento em + também é encontrado em . + A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if every element in is also found in + . + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm os mesmos elementos e gera uma + exceção se alguma das coleções contém um elemento que não está presente na outra + coleção. + + + A primeira coleção a ser comparada. Ela contém os elementos esperados pelo + teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando um elemento foi encontrado + em uma das coleções, mas não na outra. A mensagem é mostrada + nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se duas coleções contêm elementos diferentes e gera uma + exceção se as duas coleções contêm elementos idênticos sem levar em consideração + a ordem. + + + A primeira coleção a ser comparada. Ela contém os elementos que o teste + espera que sejam diferentes em relação à coleção real. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida + pelo código em teste. + + + A mensagem a ser incluída na exceção quando + contém os mesmos elementos que . A mensagem + é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se todos os elementos na coleção especificada são instâncias + do tipo esperado e gera uma exceção se o tipo esperado não + está na hierarquia de herança de um ou mais dos elementos. + + + A coleção que contém elementos que o teste espera que sejam do + tipo especificado. + + + O tipo esperado de cada elemento de . + + + A mensagem a ser incluída na exceção quando um elemento em + não é uma instância de + . A mensagem é mostrada nos resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são iguais e gera uma exceção + se as duas coleções não são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção esperada pelo teste. + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + não é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is not equal to + . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Thrown if is equal to . + + + + + Testa se as coleções especificadas são desiguais e gera uma exceção + se as duas coleções são iguais. A igualdade é definida como tendo os mesmos + elementos na mesma ordem e quantidade. Referências diferentes ao mesmo + valor são consideradas iguais. + + + A primeira coleção a ser comparada. Trata-se da coleção que o teste espera + que não corresponda a . + + + A segunda coleção a ser comparada. Trata-se da coleção produzida pelo + código em teste. + + + A implementação de comparação a ser usada ao comparar elementos da coleção. + + + A mensagem a ser incluída na exceção quando + é igual a . A mensagem é mostrada nos + resultados de teste. + + + Uma matriz de parâmetros a serem usados ao formatar . + + + Thrown if is equal to . + + + + + Determina se a primeira coleção é um subconjunto da segunda + coleção. Se os conjuntos contiverem elementos duplicados, o número + de ocorrências do elemento no subconjunto deverá ser menor ou igual + ao número de ocorrências no superconjunto. + + + A coleção que o teste espera que esteja contida em . + + + A coleção que o teste espera que contenha . + + + Verdadeiro se é um subconjunto de + , caso contrário, falso. + + + + + Cria um dicionário contendo o número de ocorrências de cada + elemento na coleção especificada. + + + A coleção a ser processada. + + + O número de elementos nulos na coleção. + + + Um dicionário contendo o número de ocorrências de cada elemento + na coleção especificada. + + + + + Encontra um elemento incompatível entre as duas coleções. Um elemento + incompatível é aquele que aparece um número diferente de vezes na + coleção esperada em relação à coleção real. É pressuposto que + as coleções sejam referências não nulas diferentes com o + mesmo número de elementos. O chamador é responsável por esse nível de + verificação. Se não houver nenhum elemento incompatível, a função retornará + falso e os parâmetros de saída não deverão ser usados. + + + A primeira coleção a ser comparada. + + + A segunda coleção a ser comparada. + + + O número esperado de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O número real de ocorrências de + ou 0 se não houver nenhum elemento + incompatível. + + + O elemento incompatível (poderá ser nulo) ou nulo se não houver nenhum + elemento incompatível. + + + verdadeiro se um elemento incompatível foi encontrado. Caso contrário, falso. + + + + + compara os objetos usando object.Equals + + + + + Classe base para exceções do Framework. + + + + + Inicializa uma nova instância da classe . + + + + + Inicializa uma nova instância da classe . + + A mensagem. + A exceção. + + + + Inicializa uma nova instância da classe . + + A mensagem. + + + + Uma classe de recurso fortemente tipada para pesquisar cadeias de caracteres localizadas, etc. + + + + + Retorna a instância de ResourceManager armazenada em cache usada por essa classe. + + + + + Substitui a propriedade CurrentUICulture do thread atual em todas + as pesquisas de recursos usando essa classe de recurso fortemente tipada. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres de acesso tem sintaxe inválida. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A coleção esperada contém {1} ocorrência(s) de <{2}>. A coleção real contém {3} ocorrência(s). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Item duplicado encontrado:<{1}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Maiúsculas e minúsculas diferentes para o valor real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença não maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1} ({2})>. Real:<{3} ({4})>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperado:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Esperada uma diferença maior que <{3}> entre o valor esperado <{1}> e o valor real <{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a É esperado qualquer valor, exceto:<{1}>. Real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não passe tipos de valores para AreSame(). Os valores convertidos em Object nunca serão os mesmos. Considere usar AreEqual(). {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante à Falha em {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada similar a TestMethod assíncrono com UITestMethodAttribute sem suporte. Remova o assíncrono ou use o TestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções estão vazias. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as referências de coleções apontam para o mesmo objeto de coleção. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Ambas as coleções contêm os mesmos elementos. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0}({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (nulo). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (objeto). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não contém a cadeia de caracteres '{1}'. {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} ({1}). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Assert.Equals não deve ser usado para Asserções. Use Assert.AreEqual e sobrecargas em seu lugar. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O número de elementos nas coleções não corresponde. Esperado:<{1}>. Real:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {0} não corresponde. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} não é de tipo esperado. Tipo esperado:<{2}>. Tipo real:<{3}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O elemento no índice {1} é (nulo). Tipo esperado:<{2}>.{0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não termina com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Argumento inválido – EqualsTester não pode usar nulos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Não é possível converter objeto do tipo {0} em {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O objeto interno referenciado não é mais válido. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A propriedade {0} é do tipo {1}; tipo esperado {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a {0} Tipo esperado:<{1}>. Tipo real:<{2}>.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Tipo incorreto:<{1}>. Tipo real:<{2}>. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' corresponde ao padrão '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhum DataRowAttribute especificado. Pelo menos um DataRowAttribute é necessário com DataTestMethodAttribute. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Nenhuma exceção gerada. A exceção {1} era esperada. {0}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O parâmetro '{0}' é inválido. O valor não pode ser nulo. {1}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Número diferente de elementos. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O construtor com a assinatura especificada não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a + O membro especificado ({0}) não pôde ser encontrado. Talvez seja necessário gerar novamente seu acessador particular + ou o membro pode ser particular e definido em uma classe base. Se o último for verdadeiro, será necessário passar o tipo + que define o membro no construtor do PrivateObject. + . + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a A cadeia de caracteres '{0}' não começa com a cadeia de caracteres '{1}'. {2}.. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O tipo de exceção esperado deve ser System.Exception ou um tipo derivado de System.Exception. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a (Falha ao obter a mensagem para uma exceção do tipo {0} devido a uma exceção.). + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou a exceção esperada {0}. {1}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste não gerou uma exceção. Uma exceção era esperada pelo atributo {0} definido no método de teste. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperada a exceção {1}. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a O método de teste gerou a exceção {0}, mas era esperado a exceção {1} ou um tipo derivado dela. Mensagem de exceção: {2}. + + + + + Pesquisa uma cadeia de caracteres localizada semelhante a Exceção gerada {2}, mas a exceção {1} era esperada. {0} + Mensagem de Exceção: {3} + Rastreamento de Pilha: {4}. + + + + + resultados de teste de unidade + + + + + O teste foi executado, mas ocorreram problemas. + Os problemas podem envolver exceções ou asserções com falha. + + + + + O teste foi concluído, mas não é possível dizer se houve aprovação ou falha. + Pode ser usado para testes anulados. + + + + + O teste foi executado sem nenhum problema. + + + + + O teste está em execução no momento. + + + + + Ocorreu um erro de sistema ao tentarmos executar um teste. + + + + + O tempo limite do teste foi atingido. + + + + + O teste foi anulado pelo usuário. + + + + + O teste está em um estado desconhecido + + + + + Fornece funcionalidade auxiliar para a estrutura do teste de unidade + + + + + Obtém as mensagens de exceção, incluindo as mensagens para todas as exceções internas + recursivamente + + Exceção ao obter mensagens para + cadeia de caracteres com informações de mensagem de erro + + + + Enumeração para tempos limite, a qual pode ser usada com a classe . + O tipo de enumeração deve corresponder + + + + + O infinito. + + + + + O atributo da classe de teste. + + + + + Obtém um atributo de método de teste que habilita a execução desse teste. + + A instância de atributo do método de teste definida neste método. + O a ser usado para executar esse teste. + Extensions can override this method to customize how all methods in a class are run. + + + + O atributo do método de teste. + + + + + Executa um método de teste. + + O método de teste a ser executado. + Uma matriz de objetos TestResult que representam resultados do teste. + Extensions can override this method to customize running a TestMethod. + + + + O atributo de inicialização do teste. + + + + + O atributo de limpeza do teste. + + + + + O atributo ignorar. + + + + + O atributo de propriedade de teste. + + + + + Inicializa uma nova instância da classe . + + + O nome. + + + O valor. + + + + + Obtém o nome. + + + + + Obtém o valor. + + + + + O atributo de inicialização de classe. + + + + + O atributo de limpeza de classe. + + + + + O atributo de inicialização de assembly. + + + + + O atributo de limpeza de assembly. + + + + + Proprietário do Teste + + + + + Inicializa uma nova instância da classe . + + + O proprietário. + + + + + Obtém o proprietário. + + + + + Atributo de prioridade. Usado para especificar a prioridade de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + A prioridade. + + + + + Obtém a prioridade. + + + + + Descrição do teste + + + + + Inicializa uma nova instância da classe para descrever um teste. + + A descrição. + + + + Obtém a descrição de um teste. + + + + + URI de Estrutura do Projeto de CSS + + + + + Inicializa a nova instância da classe para o URI da Estrutura do Projeto CSS. + + O URI da Estrutura do Projeto ECSS. + + + + Obtém o URI da Estrutura do Projeto CSS. + + + + + URI de Iteração de CSS + + + + + Inicializa uma nova instância da classe para o URI de Iteração do CSS. + + O URI de iteração do CSS. + + + + Obtém o URI de Iteração do CSS. + + + + + Atributo WorkItem. Usado para especificar um item de trabalho associado a esse teste. + + + + + Inicializa a nova instância da classe para o Atributo WorkItem. + + A ID para o item de trabalho. + + + + Obtém a ID para o item de trabalho associado. + + + + + Atributo de tempo limite. Usado para especificar o tempo limite de um teste de unidade. + + + + + Inicializa uma nova instância da classe . + + + O tempo limite. + + + + + Inicializa a nova instância da classe com um tempo limite predefinido + + + O tempo limite + + + + + Obtém o tempo limite. + + + + + O objeto TestResult a ser retornado ao adaptador. + + + + + Inicializa uma nova instância da classe . + + + + + Obtém ou define o nome de exibição do resultado. Útil ao retornar vários resultados. + Se for nulo, o nome do Método será usado como o DisplayName. + + + + + Obtém ou define o resultado da execução de teste. + + + + + Obtém ou define a exceção gerada quando o teste falha. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define a saída da mensagem registrada pelo código de teste. + + + + + Obtém ou define os rastreamentos de depuração pelo código de teste. + + + + + Gets or sets the debug traces by test code. + + + + + Obtém ou define a duração de execução do teste. + + + + + Obtém ou define o índice de linha de dados na fonte de dados. Defina somente para os resultados de execuções + individuais de um teste controlado por dados. + + + + + Obtém ou define o valor retornado do método de teste. (Sempre nulo no momento). + + + + + Obtém ou define os arquivos de resultado anexados pelo teste. + + + + + Especifica a cadeia de conexão, o nome de tabela e o método de acesso de linha para teste controlado por dados. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + O nome do provedor padrão para a DataSource. + + + + + O método de acesso a dados padrão. + + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados, uma cadeia de conexão, uma tabela de dados e um método de acesso a dados para acessar a fonte de dados. + + Nome do provedor de dados invariável, como System.Data.SqlClient + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + Especifica a ordem para acessar os dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com uma cadeia de conexão e um nome da tabela. + Especifique a cadeia de conexão e a tabela de dados para acessar a fonte de dados OLEDB. + + + Cadeia de conexão específica do provedor de dados. + AVISO: a cadeia de conexão pode conter dados confidenciais (por exemplo, uma senha). + A cadeia de conexão é armazenada em texto sem formatação no código-fonte e no assembly compilado. + Restrinja o acesso ao código-fonte e ao assembly para proteger essas formações confidenciais. + + O nome da tabela de dados. + + + + Inicializa a nova instância da classe . Essa instância será inicializada com um provedor de dados e com uma cadeia de conexão associada ao nome da configuração. + + O nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> do arquivo app.config. + + + + Obtém o valor que representa o provedor de dados da fonte de dados. + + + O nome do provedor de dados. Se um provedor de dados não foi designado na inicialização do objeto, o provedor de dados padrão de System.Data.OleDb será retornado. + + + + + Obtém o valor que representa a cadeia de conexão da fonte de dados. + + + + + Obtém um valor que indica o nome da tabela que fornece dados. + + + + + Obtém o método usado para acessar a fonte de dados. + + + + Um dos valores. Se o não for inicializado, o valor padrão será retornado . + + + + + Obtém o nome da fonte de dados encontrada na seção <microsoft.visualstudio.qualitytools> no arquivo app.config. + + + + + O atributo para teste controlado por dados em que os dados podem ser especificados de maneira embutida. + + + + + Encontrar todas as linhas de dados e executar. + + + O Método de teste. + + + Uma matriz de . + + + + + Executa o método de teste controlado por dados. + + O método de teste a ser executado. + Linha de Dados. + Resultados de execução. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..8221c4a --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Используется для указания элемента развертывания (файл или каталог) для развертывания каждого теста. + Может указываться для тестового класса или метода теста. + Чтобы указать несколько элементов, можно использовать несколько экземпляров атрибута. + Путь к элементу может быть абсолютным или относительным, в последнем случае он указывается по отношению к RunConfig.RelativePathRoot. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + Инициализирует новый экземпляр класса . + + Файл или каталог для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + + + + Инициализирует новый экземпляр класса + + Относительный или абсолютный путь к файлу или каталогу для развертывания. Этот путь задается относительно выходного каталога сборки. Элемент будет скопирован в тот же каталог, что и развернутые сборки теста. + Путь к каталогу, в который должны быть скопированы элементы. Он может быть абсолютным или относительным (по отношению к каталогу развертывания). Все файлы и каталоги, обозначенные при помощи будет скопировано в этот каталог. + + + + Получает путь к копируемым исходному файлу или папке. + + + + + Получает путь к каталогу, в который копируется элемент. + + + + + Выполнение кода теста в потоке пользовательского интерфейса для приложений Магазина Windows. + + + + + Выполнение метода теста для потока пользовательского интерфейса. + + + Метод теста. + + + Массив экземпляры. + + Throws when run on an async test method. + + + + + Класс TestContext. Этот класс должен быть полностью абстрактным и не должен содержать ни одного элемента. + Элементы будут реализованы в адаптере. Пользователи платформы должны обращаться к этому классу + только при помощи четко определенного интерфейса. + + + + + Получает свойства теста. + + + + + Получает полное имя класса, содержащего метод теста, который выполняется в данный момент + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Получает имя метода теста, выполняемого в данный момент + + + + + Получает текущий результат теста. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..f278594 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/ru/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4202 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + TestMethod для выполнения. + + + + + Получает имя метода теста. + + + + + Получает имя тестового класса. + + + + + Получает тип возвращаемого значения метода теста. + + + + + Получает параметры метода теста. + + + + + Получает methodInfo для метода теста. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Вызывает метод теста. + + + Аргументы, передаваемые методу теста (например, для управляемых данными тестов). + + + Результат вызова метода теста. + + + This call handles asynchronous test methods as well. + + + + + Получить все атрибуты метода теста. + + + Допустим ли атрибут, определенный в родительском классе. + + + Все атрибуты. + + + + + Получить атрибут указанного типа. + + System.Attribute type. + + Допустим ли атрибут, определенный в родительском классе. + + + Атрибуты указанного типа. + + + + + Вспомогательный метод. + + + + + Параметр проверки не имеет значения NULL. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws argument null exception when parameter is null. + + + + Параметр проверки не равен NULL или не пуст. + + + Параметр. + + + Имя параметра. + + + Сообщение. + + Throws ArgumentException when parameter is null. + + + + Перечисление, описывающее способ доступа к строкам данных в тестах, управляемых данными. + + + + + Строки возвращаются в последовательном порядке. + + + + + Строки возвращаются в случайном порядке. + + + + + Атрибут для определения встроенных данных для метода теста. + + + + + Инициализирует новый экземпляр класса . + + Объект данных. + + + + Инициализирует новый экземпляр класса , принимающий массив аргументов. + + Объект данных. + Дополнительные данные. + + + + Получает данные для вызова метода теста. + + + + + Получает или задает отображаемое имя в результатах теста для настройки. + + + + + Исключение утверждения с неопределенным результатом. + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Класс InternalTestFailureException. Используется для указания внутреннего сбоя для тестового случая + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение об исключении. + + + + Инициализирует новый экземпляр класса . + + + + + Атрибут, который указывает, что ожидается исключение указанного типа + + + + + Инициализирует новый экземпляр класса ожидаемого типа + + Тип ожидаемого исключения + + + + Инициализирует новый экземпляр класса + ожидаемого типа c сообщением для включения, когда тест не создает исключение. + + Тип ожидаемого исключения + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал исключение + + + + + Получает значение, указывающее тип ожидаемого исключения + + + + + Получает или задает значение, которое означает, являются ли ожидаемыми типы, производные + от типа ожидаемого исключения + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Проверяет, является ли ожидаемым тип исключения, созданного модульным тестом + + Исключение, созданное модульным тестом + + + + Базовый класс для атрибутов, которые указывают ожидать исключения из модульного теста + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений по умолчанию + + + + + Инициализирует новый экземпляр класса с сообщением об отсутствии исключений + + + Сообщение для включения в результат теста, если тест не был пройден из-за того, что не создал + исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение, включаемое в результаты теста, если он не пройден из-за того, что не возникло исключение + + + + + Получает сообщение по умолчанию об отсутствии исключений + + Название типа для атрибута ExpectedException + Сообщение об отсутствии исключений по умолчанию + + + + Определяет, ожидается ли исключение. Если метод возвращает управление, то + считается, что ожидалось исключение. Если метод создает исключение, то + считается, что исключение не ожидалось, и сообщение созданного исключения + включается в результат теста. Для удобства можно использовать класс . + Если используется и утверждение завершается с ошибкой, + то результат теста будет неопределенным. + + Исключение, созданное модульным тестом + + + + Повторно создать исключение при возникновении исключения AssertFailedException или AssertInconclusiveException + + Исключение, которое необходимо создать повторно, если это исключение утверждения + + + + Этот класс предназначен для пользователей, выполняющих модульное тестирование для универсальных типов. + GenericParameterHelper удовлетворяет некоторым распространенным ограничениям для универсальных типов, + например. + 1. Открытый конструктор по умолчанию + 2. Реализует общий интерфейс: IComparable, IEnumerable + + + + + Инициализирует новый экземпляр класса , который + удовлетворяет ограничению newable в универсальных типах C#. + + + This constructor initializes the Data property to a random value. + + + + + Инициализирует новый экземпляр класса , который + инициализирует свойство Data в указанное пользователем значение. + + Любое целочисленное значение + + + + Получает или задает данные + + + + + Сравнить значения двух объектов GenericParameterHelper + + объект, с которым будет выполнено сравнение + True, если obj имеет то же значение, что и объект "this" GenericParameterHelper. + В противном случае False. + + + + Возвращает хэш-код для этого объекта. + + Хэш-код. + + + + Сравнивает данные двух объектов . + + Объект для сравнения. + + Число со знаком, указывающее относительные значения этого экземпляра и значения. + + + Thrown when the object passed in is not an instance of . + + + + + Возвращает объект IEnumerator, длина которого является производной + от свойства Data. + + Объект IEnumerator + + + + Возвращает объект GenericParameterHelper, равный + текущему объекту. + + Клонированный объект. + + + + Позволяет пользователям регистрировать/записывать трассировки от модульных тестов для диагностики. + + + + + Обработчик LogMessage. + + Сообщение для записи в журнал. + + + + Прослушиваемое событие. Возникает, когда средство записи модульных тестов записывает сообщение. + Главным образом используется адаптером. + + + + + API, при помощи которого средство записи теста будет обращаться к сообщениям журнала. + + Строка формата с заполнителями. + Параметры для заполнителей. + + + + Атрибут TestCategory; используется для указания категории модульного теста. + + + + + Инициализирует новый экземпляр класса и применяет категорию к тесту. + + + Категория теста. + + + + + Возвращает или задает категории теста, которые были применены к тесту. + + + + + Базовый класс для атрибута Category + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + Инициализирует новый экземпляр класса . + Применяет к тесту категорию. Строки, возвращаемые TestCategories , + используются с командой /category для фильтрации тестов + + + + + Возвращает или задает категорию теста, которая была применена к тесту. + + + + + Класс AssertFailedException. Используется для указания сбоя тестового случая + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Инициализирует новый экземпляр класса . + + + + + Коллекция вспомогательных классов для тестирования различных условий в + модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции Assert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие истинным, и создает исключение, + если условие ложно. + + + Условие, которое должно быть истинным с точки зрения теста. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение False. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is false. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Thrown if is true. + + + + + Проверяет, является ли указанное условие ложным, и создает исключение, + если условие истинно. + + + Условие, которое с точки зрения теста должно быть ложным. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение True. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is true. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он не равен NULL. + + + Объект, который с точки зрения теста должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение, отличное от NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Thrown if is null. + + + + + Проверяет, имеет ли указанный объект значение NULL, и создает исключение, + если он равен NULL. + + + Объект, который не должен быть равен NULL. + + + Сообщение, которое будет добавлено в исключение, если + имеет значение NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if is null. + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на один и тот же объект, и + создает исключение, если два входных значения не ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — ожидаемое тестом значение. + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not refer to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if refers to the same object + as . + + + + + Проверяет, ссылаются ли указанные объекты на разные объекты, и + создает исключение, если два входных значения ссылаются на один и тот же объект. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if refers to the same object + as . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is not equal to . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на равенство и создает исключение, + если два значения не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это — ожидаемое тестом значение. + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные значения на неравенство и создает исключение, + если два значения равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + The type of values to compare. + + + Первое сравниваемое значение. Это значение с точки зрения теста не должно + соответствовать . + + + Второе сравниваемое значение. Это — значение, созданное тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на равенство и создает исключение, + если два объекта не равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — ожидаемый тестом объект. + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные объекты на неравенство и создает исключение, + если два объекта равны. Различные числовые типы + считаются неравными, даже если логические значения равны. Например, 42L не равно 42. + + + Первый сравниваемый объект. Это — значение, которое с точки зрения теста не должно + соответствовать . + + + Второй сравниваемый объект. Это — объект, созданный тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой для сравнения. Это число с плавающей запятой с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Thrown if is not equal to + . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на равенство и создает исключение, + если они не равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это — ожидаемое тестом число. + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + более чем на . + + + Сообщение, которое будет добавлено в исключение, если + отличается от более чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные числа с плавающей запятой двойной точности на неравенство и создает исключение, + если они равны. + + + Первое число с плавающей запятой двойной точности для сравнения. Это число с точки зрения теста не должно + соответствовать . + + + Второе число с плавающей запятой двойной точности для сравнения. Это — число, созданное тестируемым кодом. + + + Требуемая точность. Исключение будет создано, только если + отличается от + не более чем на . + + + Сообщение, которое будет добавлено в исключение, если + равен или отличается менее чем на + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет, равны ли указанные строки, и создает исключение, + если они не равны. При сравнении используются инвариантный язык и региональные параметры. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to . + + + + + Проверяет указанные строки на равенство и создает исключение, + если они не равны. + + + Первая сравниваемая строка. Это — ожидаемая тестом строка. + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет строки на неравенство и создает исключение, + если они равны. При сравнении используются инвариантные язык и региональные параметры. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные строки на неравенство и создает исключение, + если они равны. + + + Первая сравниваемая строка. Эта строка не должна с точки зрения теста + соответствовать . + + + Вторая сравниваемая строка. Это — строка, созданная тестируемым кодом. + + + Логический параметр, означающий сравнение с учетом или без учета регистра. (True + означает сравнение с учетом регистра.) + + + Объект CultureInfo, содержащий данные о языке и региональных стандартах, которые используются при сравнении. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром ожидаемого + типа, и создает исключение, если ожидаемый тип отсутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста должен иметь указанный тип. + + + Ожидаемый тип . + + + Сообщение, которое будет добавлено в исключение, если + не является экземпляром . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Проверяет, является ли указанный объект экземпляром неправильного + типа, и создает исключение, если указанный тип присутствует в + иерархии наследования объекта. + + + Объект, который с точки зрения теста не должен иметь указанный тип. + + + Тип, который параметр иметь не должен. + + + Сообщение, которое будет добавлено в исключение, если + является экземпляром класса . Сообщение отображается + в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Создает исключение AssertFailedException. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertFailedException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Always thrown. + + + + + Создает исключение AssertInconclusiveException. + + + Сообщение, которое нужно добавить в исключение. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Always thrown. + + + + + Статические переопределения равенства используются для сравнения экземпляров двух типов на равенство + ссылок. Этот метод не должен использоваться для сравнения двух экземпляров на + равенство. Этот объект всегда создает исключение с Assert.Fail. Используйте в ваших модульных тестах + Assert.AreEqual и связанные переопределения. + + Объект A + Объект B + False (всегда). + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Тип ожидаемого исключения. + + + + + Проверяет, создает ли код, указанный в делегате , заданное исключение типа (не производного), + и создает исключение + + AssertFailedException, + + если код не создает исключение, или создает исключение типа, отличного от . + + + Делегат для проверяемого кода, который должен создать исключение. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Проверяет, создает ли код, указанный с помощью делегата , в точности заданное исключение типа (и не производного типа ), + и создает исключение AssertFailedException , если код не создает исключение, или создает исключение типа, отличного от . + + Делегат для проверяемого кода, который должен создать исключение. + + Сообщение, которое будет добавлено в исключение, если + не создает исключение типа . + + + Массив параметров для использования при форматировании . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + выполнение делегата. + + + + + Заменяет NULL-символы ("\0") символами "\\0". + + + Искомая строка. + + + Преобразованная строка, в которой NULL-символы были заменены на "\\0". + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + Вспомогательная функция, которая создает и вызывает AssertionFailedException + + + имя утверждения, создавшего исключение + + + сообщение с описанием условий для сбоя утверждения + + + Параметры. + + + + + Проверяет параметр на допустимые условия + + + Параметр. + + + Имя утверждения. + + + имя параметра + + + сообщение об исключении, связанном с недопустимым параметром + + + Параметры. + + + + + Безопасно преобразует объект в строку, обрабатывая значения NULL и NULL-символы. + Значения NULL преобразуются в "(null)", NULL-символы — в "\\0". + + + Объект для преобразования в строку. + + + Преобразованная строка. + + + + + Утверждение строки. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли указанная строка заданную подстроку, + и создает исключение, если подстрока не содержится + в тестовой строке. + + + Строка, которая должна содержать . + + + Строка, которая должна входить в . + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Thrown if does not begin with + . + + + + + Проверяет, начинается ли указанная строка с указанной подстроки, + и создает исключение, если тестовая строка не начинается + с подстроки. + + + Строка, которая должна начинаться с . + + + Строка, которая должна быть префиксом . + + + Сообщение, которое будет добавлено в исключение, если + не начинается с . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not begin with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Thrown if does not end with + . + + + + + Проверяет, заканчивается ли указанная строка заданной подстрокой, + и создает исключение, если тестовая строка не заканчивается + заданной подстрокой. + + + Строка, которая должна заканчиваться на . + + + Строка, которая должна быть суффиксом . + + + Сообщение, которое будет добавлено в исключение, если + не заканчивается на . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not end with + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Thrown if does not match + . + + + + + Проверяет, соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка не соответствует регулярному выражению. + + + Строка, которая должна соответствовать . + + + Регулярное выражение, которому параметр должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + не соответствует . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if does not match + . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Thrown if matches . + + + + + Проверяет, не соответствует ли указанная строка регулярному выражению, + и создает исключение, если строка соответствует регулярному выражению. + + + Строка, которая не должна соответствовать . + + + Регулярное выражение, которому параметр не должен + соответствовать. + + + Сообщение, которое будет добавлено в исключение, если + соответствует . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if matches . + + + + + Коллекция вспомогательных классов для тестирования различных условий, связанных + с коллекциями в модульных тестах. Если проверяемое условие + ложно, создается исключение. + + + + + Получает одноэлементный экземпляр функции CollectionAssert. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли заданная коллекция указанный элемент, + и создает исключение, если элемент не входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + не находится в . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Thrown if is found in + . + + + + + Проверяет, содержит ли коллекция указанный элемент, + и создает исключение, если элемент входит в коллекцию. + + + Коллекция, в которой выполняется поиск элемента. + + + Элемент, который не должен входить в коллекцию. + + + Сообщение, которое будет добавлено в исключение, если + находится в . Сообщение отображается в результатах + тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is found in + . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Thrown if a null element is found in . + + + + + Проверяет, все ли элементы в указанной коллекции имеют значения, отличные от NULL, + и создает исключение, если какой-либо элемент имеет значение NULL. + + + Коллекция, в которой выполняется поиск элементов, имеющих значение NULL. + + + Сообщение, которое будет добавлено в исключение, если + содержит элемент, равный NULL. Сообщение отображается в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a null element is found in . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, уникальны ли все элементы в указанной коллекции, + и создает исключение, если любые два элемента в коллекции равны. + + + Коллекция, в которой выполняется поиск дубликатов элементов. + + + Сообщение, которое будет добавлено в исключение, если + содержит как минимум один элемент-дубликат. Это сообщение отображается в + результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if a two or more equal elements are found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if an element in is not found in + . + + + + + Проверяет, является ли коллекция подмножеством другой коллекции, и + создает исключение, если любой элемент подмножества не является также элементом + супермножества. + + + Коллекция, которая должна быть подмножеством . + + + Коллекция, которая должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если элемент в + не обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is not found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Thrown if every element in is also found in + . + + + + + Проверяет, не является ли коллекция подмножеством другой коллекции, и + создает исключение, если все элементы подмножества также входят в + супермножество. + + + Коллекция, которая не должна быть подмножеством . + + + Коллекция, которая не должна быть супермножеством + + + Сообщение, которое будет добавлено в исключение, если каждый элемент в + также обнаружен в . + Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if every element in is also found in + . + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции одинаковые элементы, и создает + исключение, если в любой из коллекций есть непарные + элементы. + + + Первая сравниваемая коллекция. Она содержит ожидаемые тестом + элементы. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если элемент был обнаружен + в одной коллекции, но не обнаружен в другой. Это сообщение отображается + в результатах теста. + + + Массив параметров для использования при форматировании . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, содержат ли две коллекции разные элементы, и создает + исключение, если две коллекции содержат одинаковые элементы (без учета + порядка). + + + Первая сравниваемая коллекция. Она содержит элементы, которые должны + отличаться от фактической коллекции с точки зрения теста. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + содержит такие же элементы, что и . Сообщение + отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет, все ли элементы в указанной коллекции являются экземплярами + ожидаемого типа, и создает исключение, если ожидаемый тип + не входит в иерархию наследования одного или нескольких элементов. + + + Содержащая элементы коллекция, которые с точки зрения теста должны иметь + указанный тип. + + + Ожидаемый тип каждого элемента . + + + Сообщение, которое будет добавлено в исключение, если элемент в + не является экземпляром + . Сообщение отображается в результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на равенство и создает исключение, + если две коллекции не равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Это — ожидаемая тестом коллекция. + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + не равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is not equal to + . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Thrown if is equal to . + + + + + Проверяет указанные коллекции на неравенство и создает исключение, + если две коллекции равны. Равенство определяется как наличие одинаковых + элементов в том же порядке и количестве. Различные ссылки на одно и то же + значение считаются равными. + + + Первая сравниваемая коллекция. Эта коллекция с точки зрения теста не + должна соответствовать . + + + Вторая сравниваемая коллекция. Это — коллекция, созданная + тестируемым кодом. + + + Реализация сравнения для сравнения элементов коллекции. + + + Сообщение, которое будет добавлено в исключение, если + равен . Сообщение отображается в + результатах тестирования. + + + Массив параметров для использования при форматировании . + + + Thrown if is equal to . + + + + + Определяет, является ли первая коллекция подмножеством второй + коллекции. Если любое из множеств содержит одинаковые элементы, то число + вхождений элемента в подмножестве должно быть меньше или + равно количеству вхождений в супермножестве. + + + Коллекция, которая с точки зрения теста должна содержаться в . + + + Коллекция, которая с точки зрения теста должна содержать . + + + Значение True, если является подмножеством + , в противном случае — False. + + + + + Создает словарь с числом вхождений каждого элемента + в указанной коллекции. + + + Обрабатываемая коллекция. + + + Число элементов, имеющих значение NULL, в коллекции. + + + Словарь с числом вхождений каждого элемента + в указанной коллекции. + + + + + Находит несоответствующий элемент между двумя коллекциями. Несоответствующий + элемент — это элемент, количество вхождений которого в ожидаемой коллекции отличается + от фактической коллекции. В качестве коллекций + ожидаются различные ссылки, отличные от null, с одинаковым + количеством элементов. За этот уровень проверки отвечает + вызывающий объект. Если несоответствующих элементов нет, функция возвращает + False, и выходные параметры использовать не следует. + + + Первая сравниваемая коллекция. + + + Вторая сравниваемая коллекция. + + + Ожидаемое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Фактическое число вхождений + или 0, если несоответствующие элементы + отсутствуют. + + + Несоответствующий элемент (может иметь значение NULL) или значение NULL, если несоответствующий + элемент отсутствует. + + + Значение True, если был найден несоответствующий элемент, в противном случае — False. + + + + + сравнивает объекты при помощи object.Equals + + + + + Базовый класс для исключений платформы. + + + + + Инициализирует новый экземпляр класса . + + + + + Инициализирует новый экземпляр класса . + + Сообщение. + Исключение. + + + + Инициализирует новый экземпляр класса . + + Сообщение. + + + + Строго типизированный класс ресурса для поиска локализованных строк и т. д. + + + + + Возвращает кэшированный экземпляр ResourceManager, использованный этим классом. + + + + + Переопределяет свойство CurrentUICulture текущего потока для всех операций + поиска ресурсов, в которых используется этот строго типизированный класс. + + + + + Ищет локализованную строку, похожую на "Синтаксис строки доступа неверен". + + + + + Ищет локализованную строку, похожую на "Ожидаемая коллекция содержит {1} вхождений <{2}>. Фактическая коллекция содержит {3} вхождений. {0}". + + + + + Ищет локализованную строку, похожую на "Обнаружен элемент-дубликат: <{1}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое значение имеет другой регистр: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять не больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1} ({2})>. Фактическое: <{3} ({4})>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое: <{1}>. Фактическое: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Различие между ожидаемым значением <{1}> и фактическим значением <{2}> должно было составлять больше <{3}>. {0}". + + + + + Ищет локализованную строку, похожую на "Ожидалось любое значение, кроме: <{1}>. Фактическое значение: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Не передавайте типы значений в AreSame(). Значения, преобразованные в объекты, никогда не будут одинаковыми. Воспользуйтесь методом AreEqual(). {0}". + + + + + Ищет локализованную строку, похожую на "Сбой {0}. {1}". + + + + + Ищет локализованную строку, аналогичную "Асинхронный метод TestMethod с UITestMethodAttribute не поддерживается. Удалите async или используйте TestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Обе коллекции пусты. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы". + + + + + Ищет локализованную строку, похожую на "Ссылки на обе коллекции указывают на один объект коллекции. {0}". + + + + + Ищет локализованную строку, похожую на "Обе коллекции содержат одинаковые элементы. {0}". + + + + + Ищет локализованную строку, похожую на "{0}({1})". + + + + + Ищет локализованную строку, похожую на "(NULL)". + + + + + Ищет локализованную строку, похожую на "(объект)". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не содержит строку "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "{0} ({1})". + + + + + Ищет локализованную строку, похожую на "Assert.Equals не следует использовать для Assertions. Используйте Assert.AreEqual и переопределения". + + + + + Ищет локализованную строку, похожую на "Число элементов в коллекциях не совпадает. Ожидаемое число: <{1}>. Фактическое: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {0} не соответствует". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет непредвиденный тип. Ожидаемый тип: <{2}>. Фактический тип: <{3}>.{0}". + + + + + Ищет локализованную строку, похожую на "Элемент с индексом {1} имеет значение (NULL). Ожидаемый тип: <{2}>.{0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не заканчивается строкой "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Недопустимый аргумент — EqualsTester не может использовать значения NULL". + + + + + Ищет локализованную строку, похожую на "Невозможно преобразовать объект типа {0} в {1}". + + + + + Ищет локализованную строку, похожую на "Внутренний объект, на который была сделана ссылка, более не действителен". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. {1}". + + + + + Ищет локализованную строку, похожую на "Свойство {0} имеет тип {1}; ожидаемый тип: {2}". + + + + + Ищет локализованную строку, похожую на "{0} Ожидаемый тип: <{1}>. Фактический тип: <{2}>". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Неправильный тип: <{1}>. Фактический тип: <{2}>. {0}". + + + + + Ищет локализованную строку, похожую на "Строка "{0}" соответствует шаблону "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Не указан атрибут DataRowAttribute. Необходимо указать как минимум один атрибут DataRowAttribute с атрибутом DataTestMethodAttribute". + + + + + Ищет локализованную строку, похожую на "Исключение не было создано. Ожидалось исключение {1}. {0}". + + + + + Ищет локализованную строку, похожую на "Параметр "{0}" недопустим. Значение не может быть равно NULL. {1}". + + + + + Ищет локализованную строку, похожую на "Число элементов различается". + + + + + Ищет локализованную строку, похожую на + "Не удалось найти конструктор с указанной сигнатурой. Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор класса PrivateObject". + . + + + + + Ищет локализованную строку, похожую на + "Не удалось найти указанный элемент ({0}). Возможно, потребуется повторно создать закрытый метод доступа, + или элемент может быть закрытым и определяться в базовом классе. В последнем случае необходимо передать тип, + определяющий элемент, в конструктор PrivateObject". + . + + + + + Ищет локализованную строку, похожую на "Строка "{0}" не начинается со строки "{1}". {2}". + + + + + Ищет локализованную строку, похожую на "Ожидаемое исключение должно иметь тип System.Exception или производный от него тип". + + + + + Ищет локализованную строку, похожую на "(Не удалось получить сообщение для исключения типа {0} из-за исключения.)". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал ожидаемое исключение {0}. {1}". + + + + + Ищет локализованную строку, похожую на "Метод теста не создал исключение. Исключение ожидалось атрибутом {0}, определенным в методе теста". + + + + + Ищет локализованную строку, похожую на "Метод теста создан исключение {0}, а ожидалось исключение {1}. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Метод теста создал исключение {0}, а ожидалось исключение {1} или производный от него тип. Сообщение исключения: {2}". + + + + + Ищет локализованную строку, похожую на "Создано исключение {2}, а ожидалось исключение {1}. {0} + Сообщение исключения: {3} + Стек трассировки: {4}". + + + + + результаты модульного теста + + + + + Тест был выполнен, но при его выполнении возникли проблемы. + Эти проблемы могут включать исключения или сбой утверждений. + + + + + Тест завершен, но результат его завершения неизвестен. + Может использоваться для прерванных тестов. + + + + + Тест был выполнен без проблем. + + + + + Тест выполняется в данный момент. + + + + + При попытке выполнения теста возникла ошибка в системе. + + + + + Время ожидания для теста истекло. + + + + + Тест прерван пользователем. + + + + + Тест находится в неизвестном состоянии + + + + + Предоставляет вспомогательные функции для платформы модульных тестов + + + + + Получает сообщения с исключениями, включая сообщения для всех внутренних исключений + (рекурсивно) + + Исключение, для которого следует получить сообщения + строка с сообщением об ошибке + + + + Перечисление для времен ожидания, которое можно использовать с классом . + Тип перечисления должен соответствовать + + + + + Бесконечно. + + + + + Атрибут тестового класса. + + + + + Получает атрибут метода теста, включающий выполнение этого теста. + + Для этого метода определен экземпляр атрибута метода теста. + + для использования для выполнения этого теста. + Extensions can override this method to customize how all methods in a class are run. + + + + Атрибут метода теста. + + + + + Выполняет метод теста. + + Выполняемый метод теста. + Массив объектов TestResult, представляющих результаты теста. + Extensions can override this method to customize running a TestMethod. + + + + Атрибут инициализации теста. + + + + + Атрибут очистки теста. + + + + + Атрибут игнорирования. + + + + + Атрибут свойства теста. + + + + + Инициализирует новый экземпляр класса . + + + Имя. + + + Значение. + + + + + Получает имя. + + + + + Получает значение. + + + + + Атрибут инициализации класса. + + + + + Атрибут очистки класса. + + + + + Атрибут инициализации сборки. + + + + + Атрибут очистки сборки. + + + + + Владелец теста + + + + + Инициализирует новый экземпляр класса . + + + Владелец. + + + + + Получает владельца. + + + + + Атрибут Priority; используется для указания приоритета модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Приоритет. + + + + + Получает приоритет. + + + + + Описание теста + + + + + Инициализирует новый экземпляр класса для описания теста. + + Описание. + + + + Получает описание теста. + + + + + URI структуры проекта CSS + + + + + Инициализирует новый экземпляр класса для URI структуры проекта CSS. + + URI структуры проекта CSS. + + + + Получает URI структуры проекта CSS. + + + + + URI итерации CSS + + + + + Инициализирует новый экземпляр класса для URI итерации CSS. + + URI итерации CSS. + + + + Получает URI итерации CSS. + + + + + Атрибут WorkItem; используется для указания рабочего элемента, связанного с этим тестом. + + + + + Инициализирует новый экземпляр класса для атрибута WorkItem. + + Идентификатор рабочего элемента. + + + + Получает идентификатор связанного рабочего элемента. + + + + + Атрибут Timeout; используется для указания времени ожидания модульного теста. + + + + + Инициализирует новый экземпляр класса . + + + Время ожидания. + + + + + Инициализирует новый экземпляр класса с заданным временем ожидания + + + Время ожидания + + + + + Получает время ожидания. + + + + + Объект TestResult, который возвращается адаптеру. + + + + + Инициализирует новый экземпляр класса . + + + + + Получает или задает отображаемое имя результата. Удобно для возврата нескольких результатов. + Если параметр равен NULL, имя метода используется в качестве DisplayName. + + + + + Получает или задает результат выполнения теста. + + + + + Получает или задает исключение, создаваемое, если тест не пройден. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает выходные данные сообщения, записываемого кодом теста. + + + + + Получает или задает трассировки отладки для кода теста. + + + + + Gets or sets the debug traces by test code. + + + + + Получает или задает продолжительность выполнения теста. + + + + + Возвращает или задает индекс строки данных в источнике данных. Задается только для результатов выполнения + отдельных строк данных для теста, управляемого данными. + + + + + Получает или задает возвращаемое значение для метода теста. (Сейчас всегда равно NULL.) + + + + + Возвращает или задает файлы результатов, присоединенные во время теста. + + + + + Задает строку подключения, имя таблицы и метод доступа к строкам для тестов, управляемых данными. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + Имя поставщика по умолчанию для DataSource. + + + + + Метод доступа к данным по умолчанию. + + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных, строкой подключения, таблицей данных и методом доступа к данным для доступа к источнику данных. + + Имя инвариантного поставщика данных, например System.Data.SqlClient + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + Задает порядок доступа к данным. + + + + Инициализирует новый экземпляр класса . Этот экземпляр будет инициализирован с строкой подключения и именем таблицы. + Укажите строку подключения и таблицу данных для доступа к источнику данных OLEDB. + + + Строка подключения для поставщика данных. + Внимание! Строка подключения может содержать конфиденциальные данные (например, пароль). + Строка подключения хранится в виде открытого текста в исходном коде и в скомпилированной сборке. + Ограничьте доступ к исходному коду и сборке для защиты конфиденциальных данных. + + Имя таблицы данных. + + + + Инициализирует новый экземпляр класса . Этот экземпляр инициализируется с поставщиком данных и строкой подключения, связанной с именем параметра. + + Имя источника данных, обнаруженного в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + Получает значение, представляющее поставщик данных для источника данных. + + + Имя поставщика данных. Если поставщик данных не был определен при инициализации объекта, будет возвращен поставщик по умолчанию, System.Data.OleDb. + + + + + Получает значение, представляющее строку подключения для источника данных. + + + + + Получает значение с именем таблицы, содержащей данные. + + + + + Возвращает метод, используемый для доступа к источнику данных. + + + + Один из значений. Если не инициализировано, возвращается значение по умолчанию . + + + + + Возвращает имя источника данных, обнаруженное в разделе <microsoft.visualstudio.qualitytools> файла app.config. + + + + + Атрибут для тестов, управляемых данными, в которых данные могут быть встроенными. + + + + + Найти все строки данных и выполнить. + + + Метод теста. + + + Массив . + + + + + Выполнение метода теста, управляемого данными. + + Выполняемый метод теста. + Строка данных. + Результаты выполнения. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..a512560 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + Test başına dağıtım için dağıtım öğesi (dosya veya dizin) belirtmek üzere kullanılır. + Test sınıfında veya test metodunda belirtilebilir. + Birden fazla öğe belirtmek için özniteliğin birden fazla örneğini içerebilir. + Öğe yolu mutlak veya göreli olabilir; göreli ise RunConfig.RelativePathRoot ile görelidir. + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + sınıfının yeni bir örneğini başlatır. + + Dağıtılacak dosya veya dizin. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + + + + sınıfının yeni bir örneğini başlatır + + Dağıtılacak dosya veya dizinin göreli ya da mutlak yolu. Yol, derleme çıktı dizinine göredir. Öğe, dağıtılan test bütünleştirilmiş kodlarıyla aynı dizine kopyalanır. + Öğelerin kopyalanacağı dizinin yolu. Dağıtım dizinine göre mutlak veya göreli olabilir. Tüm dosyalar ve dizinler şuna göre tanımlanır: bu dizine kopyalanacak. + + + + Kopyalanacak kaynak dosya veya klasörün yolunu alır. + + + + + Öğenin kopyalandığı dizinin yolunu alır. + + + + + Windows mağazası uygulamaları için UI iş parçacığında test kodunu çalıştırır. + + + + + UI İş Parçacığında test metodunu çalıştırır. + + + Test metodu. + + + Bir örnekler. + + Throws when run on an async test method. + + + + + TestContext sınıfı. Bu sınıf tamamen soyut olmalı ve herhangi bir üye + içermemelidir. Üyeler bağdaştırıcı tarafından uygulanır. Çerçevedeki kullanıcılar + buna yalnızca iyi tanımlanmış bir arabirim üzerinden erişmelidir. + + + + + Bir testin test özelliklerini alır. + + + + + O anda yürütülen test metodunu içeren sınıfın tam adını alır + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + Yürütülmekte olan test metodunun Adını alır + + + + + Geçerli test sonucunu alır. + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..b7a0029 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/tr/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + Yürütülecek TestMethod. + + + + + Test metodunun adını alır. + + + + + Test sınıfının adını alır. + + + + + Test metodunun dönüş türünü alır. + + + + + Test metodunun parametrelerini alır. + + + + + Test metodu için methodInfo değerini alır. + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + Test metodunu çağırır. + + + Test metoduna geçirilecek bağımsız değişkenler. (Örn. Veri temelli için) + + + Test yöntemi çağırma sonucu. + + + This call handles asynchronous test methods as well. + + + + + Test metodunun tüm özniteliklerini alır. + + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Tüm öznitelikler. + + + + + Belirli bir türdeki özniteliği alır. + + System.Attribute type. + + Üst sınıfta tanımlanan özniteliğin geçerli olup olmadığını belirtir. + + + Belirtilen türün öznitelikleri. + + + + + Yardımcı. + + + + + Denetim parametresi null değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws argument null exception when parameter is null. + + + + Denetim parametresi null veya boş değil. + + + Parametre. + + + Parametre adı. + + + İleti. + + Throws ArgumentException when parameter is null. + + + + Veri tabanlı testlerde veri satırlarına erişme şekline yönelik sabit listesi. + + + + + Satırlar sıralı olarak döndürülür. + + + + + Satırlar rastgele sırayla döndürülür. + + + + + Bir test metodu için satır içi verileri tanımlayan öznitelik. + + + + + sınıfının yeni bir örneğini başlatır. + + Veri nesnesi. + + + + Bir bağımsız değişken dizisi alan sınıfının yeni bir örneğini başlatır. + + Bir veri nesnesi. + Daha fazla veri. + + + + Çağıran test metodu verilerini alır. + + + + + Özelleştirme için test sonuçlarında görünen adı alır veya ayarlar. + + + + + Onay sonuçlandırılmadı özel durumu. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + InternalTestFailureException sınıfı. Bir test çalışmasının iç hatasını belirtmek için kullanılır + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + Özel durum iletisi. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Belirtilen türde bir özel durum beklemeyi belirten öznitelik + + + + + Beklenen tür ile sınıfının yeni bir örneğini başlatır + + Beklenen özel durum türü + + + + Beklenen tür ve test tarafından özel durum oluşturulmadığında eklenecek ileti ile sınıfının + yeni bir örneğini başlatır. + + Beklenen özel durum türü + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna dahil edilecek ileti + + + + + Beklenen özel durumun Türünü belirten bir değer alır + + + + + Beklenen özel durumun türünden türetilmiş türlerin beklenen özel durum türü olarak değerlendirilmesine izin verilip verilmeyeceğini + belirten değeri alır veya ayarlar + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Birim testi tarafından oluşturulan özel durum türünün beklendiğini doğrular + + Birim testi tarafından oluşturulan özel durum + + + + Birim testinden bir özel durum beklemek için belirtilen özniteliklerin temel sınıfı + + + + + Varsayılan bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + + + Bir 'özel durum yok' iletisi ile sınıfının yeni bir örneğini başlatır + + + Test bir özel durum oluşturmama nedeniyle başarısız olursa test sonucuna + dahil edilecek özel durum + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Özel durum oluşturulamaması nedeniyle testin başarısız olması durumunda, test sonucuna dahil edilecek olan iletiyi alır + + + + + Varsayılan 'özel durum yok' iletisini alır + + ExpectedException özniteliği tür adı + Özel durum olmayan varsayılan ileti + + + + Özel durumun beklenip beklenmediğini belirler. Metot dönüş yapıyorsa, özel + durumun beklendiği anlaşılır. Metot bir özel durum oluşturuyorsa, özel durumun + beklenmediği anlaşılır ve oluşturulan özel durumun iletisi test sonucuna + eklenir. Kolaylık sağlamak amacıyla sınıfı kullanılabilir. + kullanılırsa ve onaylama başarısız olursa, + test sonucu Belirsiz olarak ayarlanır. + + Birim testi tarafından oluşturulan özel durum + + + + Özel durum bir AssertFailedException veya AssertInconclusiveException ise özel durumu yeniden oluşturur + + Bir onaylama özel durumu ise yeniden oluşturulacak özel durum + + + + Bu sınıf, kullanıcının genel türler kullanan türlere yönelik birim testleri yapmasına yardımcı olmak üzere tasarlanmıştır. + GenericParameterHelper bazı genel tür kısıtlamalarını yerine getirir; + örneğin: + 1. genel varsayılan oluşturucu + 2. ortak arabirim uygular: IComparable, IEnumerable + + + + + sınıfının C# genel türlerindeki 'newable' + kısıtlamasını karşılayan yeni bir örneğini başlatır. + + + This constructor initializes the Data property to a random value. + + + + + sınıfının, Data özelliğini kullanıcı + tarafından sağlanan bir değerle başlatan yeni bir örneğini başlatır. + + Herhangi bir tamsayı değeri + + + + Verileri alır veya ayarlar + + + + + İki GenericParameterHelper nesnesi için değer karşılaştırması yapar + + karşılaştırma yapılacak nesne + nesne bu 'this' GenericParameterHelper nesnesiyle aynı değere sahipse true. + aksi takdirde false. + + + + Bu nesne için bir karma kod döndürür. + + Karma kod. + + + + İki nesnesinin verilerini karşılaştırır. + + Karşılaştırılacak nesne. + + Bu örnek ve değerin göreli değerlerini gösteren, işaretli sayı. + + + Thrown when the object passed in is not an instance of . + + + + + Uzunluğu Data özelliğinden türetilmiş bir IEnumerator nesnesi + döndürür. + + IEnumerator nesnesi + + + + Geçerli nesneye eşit olan bir GenericParameterHelper nesnesi + döndürür. + + Kopyalanan nesne. + + + + Kullanıcıların tanılama amacıyla birim testlerindeki izlemeleri günlüğe kaydetmesini/yazmasını sağlar. + + + + + LogMessage işleyicisi. + + Günlüğe kaydedilecek ileti. + + + + Dinlenecek olay. Birim testi yazıcı bir ileti yazdığında oluşturulur. + Genellikle bağdaştırıcı tarafından kullanılır. + + + + + İletileri günlüğe kaydetmek için çağrılacak test yazıcısı API'si. + + Yer tutucuları olan dize biçimi. + Yer tutucu parametreleri. + + + + TestCategory özniteliği; bir birim testinin kategorisini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır ve kategoriyi teste uygular. + + + Test Kategorisi. + + + + + Teste uygulanan test kategorilerini alır. + + + + + "Category" özniteliğinin temel sınıfı + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + sınıfının yeni bir örneğini başlatır. + Kategoriyi teste uygular. TestCategories tarafından döndürülen + dizeler /category komutu içinde testleri filtrelemek için kullanılır + + + + + Teste uygulanan test kategorisini alır. + + + + + AssertFailedException sınıfı. Test çalışmasının başarısız olduğunu göstermek için kullanılır + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + sınıfının yeni bir örneğini başlatır. + + + + + Birim testleri içindeki çeşitli koşulları test etmeye yönelik yardımcı + sınıf koleksiyonu. Test edilen koşul karşılanmazsa bir özel durum + oluşturulur. + + + + + Assert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Thrown if is false. + + + + + Belirtilen koşulun true olup olmadığını test eder ve koşul false ise + bir özel durum oluşturur. + + + Testte true olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + false. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is false. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Thrown if is true. + + + + + Belirtilen koşulun false olup olmadığını test eder ve koşul true ise + bir özel durum oluşturur. + + + Testte false olması beklenen koşul. + + + Şu durumda özel duruma dahil edilecek ileti + true. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is true. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Thrown if is not null. + + + + + Belirtilen nesnenin null olup olmadığını test eder ve değilse bir + özel durum oluşturur. + + + Testte null olması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null değil. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Thrown if is null. + + + + + Belirtilen dizenin null olup olmadığını test eder ve null ise bir özel durum + oluşturur. + + + Testte null olmaması beklenen nesne. + + + Şu durumda özel duruma dahil edilecek ileti + null. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null. + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen her iki nesnenin de aynı nesneye başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvurmuyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte beklenen değerdir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı değil: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not refer to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Thrown if refers to the same object + as . + + + + + Belirtilen nesnelerin farklı nesnelere başvurup başvurmadığını test eder + ve iki giriş aynı nesneye başvuruyorsa bir özel durum oluşturur. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynıdır: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if refers to the same object + as . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is not equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değer beklenir. + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen değerlerin eşit olup olmadığını test eder ve iki değer eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + The type of values to compare. + + + Karşılaştırılacak birinci değer. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci değer. Test kapsamındaki kod tarafından bu değer oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşit değilse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte beklenen nesnedir. + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen nesnelerin eşit olup olmadığını test eder ve iki nesne eşitse + bir özel durum oluşturur. Mantıksal değerleri eşit olsa bile + farklı sayısal türler eşit değil olarak kabul edilir. 42L, 42'ye eşit değildir. + + + Karşılaştırılacak birinci nesne. Testte bu değerin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci nesne. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci kayan nokta. Testte bu kayan nokta beklenir. + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen float'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak ilk kayan nokta. Testte bu kayan noktanın + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci kayan nokta. Test kapsamındaki kod tarafından bu nesne oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Thrown if is not equal to + . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşit değilse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çift beklenir. + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + şundan fazla: . + + + Şu durumda özel duruma dahil edilecek ileti + şundan farklıdır: şundan fazla: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen double'ların eşit olup olmadığını test eder ve eşitse + bir özel durum oluşturur. + + + Karşılaştırılacak birinci çift. Testte bu çiftin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci çift. Test kapsamındaki kod tarafından bu çift oluşturulur. + + + Gerekli doğruluk. Yalnızca şu durumlarda bir özel durum oluşturulur: + şundan farklı: + en fazla . + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: veya şu değerden daha az farklı: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşit değilse bir + özel durum oluşturur. + + + Karşılaştırılacak ilk dize. Testte bu dize beklenir. + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. Karşılaştırma için sabit kültür kullanılır. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen dizelerin eşit olup olmadığını test eder ve eşitse bir özel durum + oluşturur. + + + Karşılaştırılacak birinci dize. Testte bu dizenin eşleşmemesi + beklenir . + + + Karşılaştırılacak ikinci dize. Bu dize test kapsamındaki kod tarafından oluşturulur. + + + Büyük/küçük harfe duyarlı veya duyarsız bir karşılaştırmayı gösteren Boole değeri. (true + değeri büyük/küçük harfe duyarsız bir karşılaştırmayı belirtir.) + + + Kültüre özel karşılaştırma bilgileri veren bir CultureInfo nesnesi. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin beklenen türde bir örnek olup olmadığını test eder ve + beklenen tür, nesnenin devralma hiyerarşisinde değilse + bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen nesne. + + + Beklenen tür:. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneği değil: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Belirtilen nesnenin yanlış türde bir örnek olup olmadığını test eder + ve belirtilen tür nesnenin devralma hiyerarşisinde ise + bir özel durum oluşturur. + + + Testte beklenen türde olmaması beklenen nesne. + + + Tür olmamalıdır. + + + Şu durumda özel duruma dahil edilecek ileti + şunun bir örneğidir: . İleti test + sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + Bir AssertFailedException oluşturur. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertFailedException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Always thrown. + + + + + Bir AssertInconclusiveException oluşturur. + + + Özel duruma eklenecek ileti. İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Always thrown. + + + + + Statik eşit aşırı yüklemeler iki türün örneklerini başvuru eşitliği bakımından + karşılaştırmak için kullanılır. Bu metot iki örneği eşitlik bakımından karşılaştırmak için + kullanılmamalıdır. Bu nesne her zaman Assert.Fail ile oluşturulur. + Lütfen birim testlerinizde Assert.AreEqual ve ilişkili aşırı yüklemelerini kullanın. + + Nesne A + Nesne B + Her zaman false. + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Şu durumda özel duruma dahil edilecek ileti + şu türde bir özel durum oluşturmaz: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Oluşturulması beklenen özel durum türü. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa + + AssertFailedException + + oluşturur. + + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + temsilcisi tarafından belirtilen kodun tam olarak belirtilen türündeki (türetilmiş bir türde olmayan) özel durumu + oluşturup oluşturmadığını test eder ve kod özel durum oluşturmuyorsa veya türünden başka bir türde özel durum oluşturuyorsa AssertFailedException oluşturur. + + Test edilecek ve özel durum oluşturması beklenen kodun temsilcisi. + + Şu durumda özel duruma dahil edilecek ileti + tarafından şu türde özel durum oluşturulmadığı durumlarda oluşturulur: . + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + Bir temsilciyi çalıştırıyor. + + + + + Null karakterleri ('\0'), "\\0" ile değiştirir. + + + Aranacak dize. + + + Null karakterler içeren dönüştürülmüş dize "\\0" ile değiştirildi. + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + AssertionFailedException oluşturan yardımcı işlev + + + özel durum oluşturan onaylamanın adı + + + onaylama hatası koşullarını açıklayan ileti + + + Parametreler. + + + + + Parametreyi geçerli koşullar için denetler + + + Parametre. + + + Onaylama Adı. + + + parametre adı + + + iletisi geçersiz parametre özel durumu içindir + + + Parametreler. + + + + + Bir nesneyi güvenli bir şekilde dizeye dönüştürür, null değerleri ve null karakterleri işler. + Null değerler "(null)" değerine dönüştürülür. Null karakterler "\\0" değerine dönüştürülür. + + + Dizeye dönüştürülecek nesne. + + + Dönüştürülmüş dize. + + + + + Dize onayı. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyi içerip içermediğini test eder + ve alt dize test dizesinin içinde geçmiyorsa bir özel durum + oluşturur. + + + Şunu içermesi beklenen dize . + + + Şunun içinde gerçekleşmesi beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle başlayıp başlamadığını test eder + ve test dizesi alt dizeyle başlamıyorsa bir özel durum + oluşturur. + + + Şununla başlaması beklenen dize . + + + Şunun ön eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla başlamıyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not begin with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Thrown if does not end with + . + + + + + Belirtilen dizenin belirtilen alt dizeyle bitip bitmediğini test eder + ve test dizesi alt dizeyle bitmiyorsa bir özel durum + oluşturur. + + + Dizenin şununla bitmesi beklenir: . + + + Şunun son eki olması beklenen dize: . + + + Şu durumda özel duruma dahil edilecek ileti + şununla bitmiyor: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not end with + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşmiyorsa bir özel durum oluşturur. + + + Eşleşmesi beklenen dize . + + + Normal ifade: eşleşmesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşmiyor . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if does not match + . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Thrown if matches . + + + + + Belirtilen dizenin bir normal ifadeyle eşleşip eşleşmediğini test eder + ve dize ifadeyle eşleşiyorsa bir özel durum oluşturur. + + + Eşleşmemesi beklenen dize . + + + Normal ifade: eşleşmemesi + bekleniyor. + + + Şu durumda özel duruma dahil edilecek ileti + eşleşme . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if matches . + + + + + Birim testleri içindeki koleksiyonlarla ilişkili çeşitli koşulları test etmeye + yönelik yardımcı sınıf koleksiyonu. Test edilen koşul karşılanmazsa + bir özel durum oluşturulur. + + + + + CollectionAssert işlevselliğinin tekil örneğini alır. + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda değilse bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içinde değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Thrown if is found in + . + + + + + Belirtilen koleksiyonun belirtilen öğeyi içerip içermediğini test eder + ve öğe koleksiyonda bulunuyorsa bir özel durum oluşturur. + + + Öğenin aranacağı koleksiyon. + + + Koleksiyonda olmaması beklenen öğe. + + + Şu durumda özel duruma dahil edilecek ileti + şunun içindedir: . İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin null dışında değere sahip olup + olmadığını test eder ve herhangi bir öğe null ise özel durum oluşturur. + + + İçinde null öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + bir null öğe içeriyor. İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a null element is found in . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Thrown if a two or more equal elements are found in + . + + + + + Belirtilen koleksiyondaki tüm öğelerin benzersiz olup olmadığını test eder + ve koleksiyondaki herhangi iki öğe eşitse özel durum oluşturur. + + + Yinelenen öğelerin aranacağı koleksiyon. + + + Şu durumda özel duruma dahil edilecek ileti + en az bir yinelenen öğe içeriyor. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if a two or more equal elements are found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki herhangi bir öğe aynı zamanda üst kümede + yoksa bir özel durum oluşturur. + + + Şunun alt kümesi olması beklenen koleksiyon: . + + + Şunun üst kümesi olması beklenen koleksiyon: + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şurada bulunmuyor: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is not found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Thrown if every element in is also found in + . + + + + + Bir koleksiyonun başka bir koleksiyona ait alt küme olup olmadığını + test eder ve alt kümedeki tüm öğeler aynı zamanda üst kümede + bulunuyorsa bir özel durum oluşturur. + + + Şunun alt kümesi olmaması beklenen koleksiyon: . + + + Şunun üst kümesi olmaması beklenen koleksiyon: + + + Mesajın özel duruma dahil edilmesi için şuradaki her öğe: + ayrıca şurada bulunur: . + İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if every element in is also found in + . + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun aynı öğeleri içerip içermediğini test eder ve koleksiyonlardan + biri diğer koleksiyonda olmayan bir öğeyi içeriyorsa özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte beklenen öğeleri + içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Bir öğe koleksiyonlardan birinde varken diğerinde olmadığında + özel duruma eklenecek ileti. İleti, test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element was found in one of the collections but not + the other. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + İki koleksiyonun farklı öğeler içerip içermediğini test eder ve iki koleksiyon + sıraya bakılmaksızın aynı öğeleri içeriyorsa bir özel durum + oluşturur. + + + Karşılaştırılacak birinci koleksiyon. Testte gerçek koleksiyondan farklı olması beklenen + öğeleri içerir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından + bu koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şununla aynı öğeleri içerir: . İleti + test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyondaki tüm öğelerin beklenen türde örnekler + olup olmadığını test eder ve beklenen tür bir veya daha fazla öğenin + devralma hiyerarşisinde değilse bir özel durum oluşturur. + + + Testte belirtilen türde olması beklenen öğeleri içeren + koleksiyon. + + + Her öğe için beklenen tür . + + + İletinin özel duruma dahil edilmesi için şuradaki bir öğe: + şunun bir örneği değil: + . İleti test sonuçlarında gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon + eşit değilse bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve aynı miktarda + sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyon beklenir. + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti + şuna eşit değil: . İleti test sonuçlarında + gösterilir. + + + Biçimlendirme sırasında kullanılacak parametre dizisi . + + + Thrown if is not equal to + . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Thrown if is equal to . + + + + + Belirtilen koleksiyonların eşit olup olmadığını test eder ve iki koleksiyon eşitse + bir özel durum oluşturur. Eşitlik aynı öğelere aynı sırayla ve + aynı miktarda sahip olunması olarak tanımlanır. Aynı değere yönelik farklı başvurular + eşit olarak kabul edilir. + + + Karşılaştırılacak birinci koleksiyon. Testte bu koleksiyonun + eşleşmemesi beklenir . + + + Karşılaştırılacak ikinci koleksiyon. Test kapsamındaki kod tarafından bu + koleksiyon oluşturulur. + + + Koleksiyonun öğeleri karşılaştırılırken kullanılacak karşılaştırma uygulaması. + + + Şu durumda özel duruma dahil edilecek ileti: + şuna eşittir: . İleti test sonuçlarında + gösterilir. + + + Şu parametre biçimlendirilirken kullanılacak parametre dizisi: . + + + Thrown if is equal to . + + + + + Birinci koleksiyonun ikinci koleksiyona ait bir alt küme olup + olmadığını belirler. Kümelerden biri yinelenen öğeler içeriyorsa, + öğenin alt kümedeki oluşum sayısı üst kümedeki oluşum sayısına + eşit veya bu sayıdan daha az olmalıdır. + + + Testin içinde bulunmasını beklediği koleksiyon . + + + Testin içermesini beklediği koleksiyon . + + + Şu durumda true: şunun bir alt kümesidir: + , aksi takdirde false. + + + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren bir + sözlük oluşturur. + + + İşlenecek koleksiyon. + + + Koleksiyondaki null öğe sayısı. + + + Belirtilen koleksiyondaki her öğenin oluşum sayısını içeren + bir sözlük. + + + + + İki koleksiyon arasında eşleşmeyen bir öğe bulur. Eşleşmeyen öğe, + beklenen koleksiyonda gerçek koleksiyondakinden farklı sayıda görünen + öğedir. Koleksiyonların, + aynı sayıda öğeye sahip null olmayan farklı başvurular olduğu + varsayılır. Bu doğrulama düzeyinden + çağıran sorumludur. Eşleşmeyen bir öğe yoksa işlev + false değerini döndürür ve dış parametreler kullanılmamalıdır. + + + Karşılaştırılacak birinci koleksiyon. + + + Karşılaştırılacak ikinci koleksiyon. + + + Şunun için beklenen oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Gerçek oluşma sayısı: + veya uyumsuz öğe yoksa + 0. + + + Uyumsuz öğe (null olabilir) veya uyumsuz bir + öğe yoksa null. + + + uyumsuz bir öğe bulunduysa true; aksi takdirde false. + + + + + object.Equals kullanarak nesneleri karşılaştırır + + + + + Çerçeve Özel Durumları için temel sınıf. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + Özel durum. + + + + sınıfının yeni bir örneğini başlatır. + + İleti. + + + + Yerelleştirilmiş dizeleri aramak gibi işlemler için, türü kesin olarak belirtilmiş kaynak sınıfı. + + + + + Bu sınıf tarafından kullanılan, önbelleğe alınmış ResourceManager örneğini döndürür. + + + + + Türü kesin olarak belirlenmiş bu kaynak sınıfını kullanan + tüm kaynak aramaları için geçerli iş parçacığının CurrentUICulture özelliğini geçersiz kılar. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Erişim dizesinde geçersiz söz dizimi var. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen koleksiyon {1} <{2}> oluşumu içeriyor. Gerçek koleksiyon {3} oluşum içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yinelenen öğe bulundu:<{1}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek değer için büyük/küçük harf kullanımı farklı:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında en fazla <{3}> fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1} ({2})>. Gerçek:<{3} ({4})>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen:<{1}>. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen <{1}> değeri ile gerçek <{2}> değeri arasında <{3}> değerinden büyük bir fark bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: <{1}> dışında bir değer bekleniyordu. Gerçek:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Değer türlerini AreSame() metoduna geçirmeyin. Object türüne dönüştürülen değerler hiçbir zaman aynı olmaz. AreEqual(). kullanmayı deneyin {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} başarısız oldu. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: UITestMethodAttribute özniteliğine sahip async TestMethod metodu desteklenmiyor. async ifadesini kaldırın ya da TestMethodAttribute özniteliğini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da boş. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon başvurusu da aynı koleksiyon nesnesini işaret ediyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Her iki koleksiyon da aynı öğeleri içeriyor. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0}({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: null. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: nesne. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesini içermiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} ({1}). + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Assert.Equals, Onaylamalar için kullanılmamalıdır. Lütfen bunun yerine Assert.AreEqual ve aşırı yüklemelerini kullanın. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Koleksiyonlardaki öğe sayıları eşleşmiyor. Beklenen:<{1}>. Gerçek:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} dizinindeki öğe eşleşmiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {1} dizinindeki öğe beklenen türde değil. Beklenen tür:<{2}>. Gerçek tür:<{3}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dizeyi arar: {1} dizinindeki öğe (null). Beklenen tür:<{2}>.{0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle bitmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Geçersiz bağımsız değişken. EqualsTester null değerler kullanamaz. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} türündeki nesne {1} türüne dönüştürülemiyor. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Başvurulan iç nesne artık geçerli değil. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} özelliği {1} türüne sahip; beklenen tür {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {0} Beklenen tür:<{1}>. Gerçek tür:<{2}>. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşmiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Yanlış Tür:<{1}>. Gerçek tür:<{2}>. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' deseniyle eşleşiyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: No DataRowAttribute belirtilmedi. DataTestMethodAttribute ile en az bir DataRowAttribute gereklidir. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Özel durum oluşturulmadı. {1} özel durumu bekleniyordu. {0}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' parametresi geçersiz. Değer null olamaz. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Farklı sayıda öğe. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen imzaya sahip oluşturucu bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi + tanımlayan türü PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: + Belirtilen üye ({0}) bulunamadı. Özel erişimcinizi yeniden oluşturmanız gerekebilir + veya üye özel ve bir temel sınıfta tanımlanmış olabilir. İkinci durum geçerliyse üyeyi tanımlayan türü + PrivateObject oluşturucusuna geçirmeniz gerekir. + . + + + + + Şuna benzer bir yerelleştirilmiş dize arar: '{0}' dizesi '{1}' dizesiyle başlamıyor. {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Beklenen özel durum türü System.Exception veya System.Exception'dan türetilmiş bir tür olmalıdır. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Bir özel durum nedeniyle {0} türündeki özel durum için ileti alınamadı. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu beklenen {0} özel durumunu oluşturmadı. {1}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu bir özel durum oluşturmadı. Test metodunda tanımlanan {0} özniteliği tarafından bir özel durum bekleniyordu. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: Test metodu {0} özel durumunu oluşturdu, ancak {1} özel durumu veya bundan türetilmiş bir tür bekleniyordu. Özel durum iletisi: {2}. + + + + + Şuna benzer bir yerelleştirilmiş dize arar: {2} özel durumu oluşturuldu, ancak {1} özel durumu bekleniyordu. {0} + Özel Durum İletisi: {3} + Yığın İzleme: {4}. + + + + + birim testi sonuçları + + + + + Test yürütüldü ancak sorunlar oluştu. + Sorunlar özel durumları veya başarısız onaylamaları içerebilir. + + + + + Test tamamlandı ancak başarılı olup olmadığı belli değil. + İptal edilen testler için kullanılabilir. + + + + + Test bir sorun olmadan yürütüldü. + + + + + Test şu anda yürütülüyor. + + + + + Test yürütülmeye çalışılırken bir sistem hatası oluştu. + + + + + Test zaman aşımına uğradı. + + + + + Test, kullanıcı tarafından iptal edildi. + + + + + Test bilinmeyen bir durumda + + + + + Birim testi çerçevesi için yardımcı işlevini sağlar + + + + + Yinelemeli olarak tüm iç özel durumların iletileri dahil olmak üzere + özel durum iletilerini alır + + Şunun için iletilerin alınacağı özel durum: + hata iletisi bilgilerini içeren dize + + + + Zaman aşımları için sınıfı ile birlikte kullanılabilen sabit listesi. + Sabit listesinin türü eşleşmelidir + + + + + Sonsuz. + + + + + Test sınıfı özniteliği. + + + + + Bu testi çalıştırmayı sağlayan bir test metodu özniteliği alır. + + Bu metot üzerinde tanımlanan test metodu özniteliği örneği. + The bu testi çalıştırmak için kullanılabilir. + Extensions can override this method to customize how all methods in a class are run. + + + + Test metodu özniteliği. + + + + + Bir test metodu yürütür. + + Yürütülecek test metodu. + Testin sonuçlarını temsil eden bir TestResult nesneleri dizisi. + Extensions can override this method to customize running a TestMethod. + + + + Test başlatma özniteliği. + + + + + Test temizleme özniteliği. + + + + + Ignore özniteliği. + + + + + Test özelliği özniteliği. + + + + + sınıfının yeni bir örneğini başlatır. + + + Ad. + + + Değer. + + + + + Adı alır. + + + + + Değeri alır. + + + + + Sınıf başlatma özniteliği. + + + + + Sınıf temizleme özniteliği. + + + + + Bütünleştirilmiş kod başlatma özniteliği. + + + + + Bütünleştirilmiş kod temizleme özniteliği. + + + + + Test Sahibi + + + + + sınıfının yeni bir örneğini başlatır. + + + Sahip. + + + + + Sahibi alır. + + + + + Priority özniteliği; birim testinin önceliğini belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Öncelik. + + + + + Önceliği alır. + + + + + Testin açıklaması + + + + + Bir testi açıklamak için kullanılan sınıfının yeni bir örneğini başlatır. + + Açıklama. + + + + Bir testin açıklamasını alır. + + + + + CSS Proje Yapısı URI'si + + + + + CSS Proje Yapısı URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Proje Yapısı URI'si. + + + + CSS Proje Yapısı URI'sini alır. + + + + + CSS Yineleme URI'si + + + + + CSS Yineleme URI'si için sınıfının yeni bir örneğini başlatır. + + CSS Yineleme URI'si. + + + + CSS Yineleme URI'sini alır. + + + + + WorkItem özniteliği; bu testle ilişkili bir çalışma öğesini belirtmek için kullanılır. + + + + + WorkItem Özniteliği için sınıfının yeni bir örneğini başlatır. + + Bir iş öğesinin kimliği. + + + + İlişkili bir iş öğesinin kimliğini alır. + + + + + Timeout özniteliği; bir birim testinin zaman aşımını belirtmek için kullanılır. + + + + + sınıfının yeni bir örneğini başlatır. + + + Zaman aşımı. + + + + + sınıfının önceden ayarlanmış bir zaman aşımı ile yeni bir örneğini başlatır + + + Zaman aşımı + + + + + Zaman aşımını alır. + + + + + Bağdaştırıcıya döndürülecek TestResult nesnesi. + + + + + sınıfının yeni bir örneğini başlatır. + + + + + Sonucun görünen adını alır veya ayarlar. Birden fazla sonuç döndürürken yararlıdır. + Null ise Metot adı DisplayName olarak kullanılır. + + + + + Test yürütmesinin sonucunu alır veya ayarlar. + + + + + Test başarısız olduğunda oluşturulan özel durumu alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test kodu tarafından günlüğe kaydedilen iletinin çıktısını alır veya ayarlar. + + + + + Test koduna göre hata ayıklama izlemelerini alır veya ayarlar. + + + + + Gets or sets the debug traces by test code. + + + + + Test yürütme süresini alır veya ayarlar. + + + + + Veri kaynağındaki veri satırı dizinini alır veya ayarlar. Yalnızca, veri tabanlı bir testin tek bir veri satırının + çalıştırılmasına ait sonuçlar için ayarlayın. + + + + + Test metodunun dönüş değerini alır veya ayarlar. (Şu anda her zaman null). + + + + + Test tarafından eklenen sonuç dosyalarını alır veya ayarlar. + + + + + Veri tabanlı test için bağlantı dizesini, tablo adını ve satır erişim metodunu belirtir. + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource için varsayılan sağlayıcı adı. + + + + + Varsayılan veri erişimi metodu. + + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı, bağlantı dizesi, veri tablosu ve veri kaynağına erişmek için kullanılan veri erişimi metodu ile başlatılır. + + System.Data.SqlClient gibi değişmez veri sağlayıcısı adı + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + Verilere erişme sırasını belirtir. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir bağlantı dizesi ve tablo adı ile başlatılır. + OLEDB veri kaynağına erişmek için kullanılan bağlantı dizesini ve veri tablosunu belirtin. + + + Veri sağlayıcısına özgü bağlantı dizesi. + UYARI: Bağlantı dizesi, hassas veriler (parola gibi) içerebilir. + Bağlantı dizesi, kaynak kodunda ve derlenmiş bütünleştirilmiş kodda düz metin olarak depolanır. + Bu hassas bilgileri korumak için kaynak koda ve bütünleştirilmiş koda erişimi kısıtlayın. + + Veri tablosunun adı. + + + + sınıfının yeni bir örneğini başlatır. Bu örnek bir veri sağlayıcısı ile ve ayar adıyla ilişkili bir bağlantı dizesi ile başlatılır. + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan veri kaynağının adı. + + + + Veri kaynağının veri sağlayıcısını temsil eden bir değer alır. + + + Veri sağlayıcısı adı. Nesne başlatılırken bir veri sağlayıcısı belirtilmemişse varsayılan System.Data.OleDb sağlayıcısı döndürülür. + + + + + Veri kaynağının bağlantı dizesini temsil eden bir değer alır. + + + + + Verileri sağlayan tablo adını belirten bir değer alır. + + + + + Veri kaynağına erişmek için kullanılan metodu alır. + + + + Bir değerlerdir. Eğer başlatılmazsa, varsayılan değeri döndürür . + + + + + App.config dosyasındaki <microsoft.visualstudio.qualitytools> bölümünde bulunan bir veri kaynağının adını alır. + + + + + Verilerin satır içi belirtilebileceği veri tabanlı testin özniteliği. + + + + + Tüm veri satırlarını bulur ve yürütür. + + + Test Yöntemi. + + + Bir . + + + + + Veri tabanlı test metodunu çalıştırır. + + Yürütülecek test yöntemi. + Veri Satırı. + Yürütme sonuçları. + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..0eaba92 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用于为预测试部署指定部署项(文件或目录)。 + 可在测试类或测试方法上指定。 + 可使用多个特性实例来指定多个项。 + 项路径可以是绝对路径或相对路径,如果为相对路径,则相对于 RunConfig.RelativePathRoot。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + 初始化 类的新实例。 + + 要部署的文件或目录。路径与生成输出目录相关。将项复制到与已部署测试程序集相同的目录。 + + + + 初始化 类的新实例 + + 要部署的文件或目录的相对路径或绝对路径。该路径相对于生成输出目录。将项复制到与已部署测试程序集相同的目录。 + 要将项复制到其中的目录路径。它可以是绝对部署目录或相对部署目录。所有由以下对象标识的文件和目录: 将复制到此目录。 + + + + 获取要复制的源文件或文件夹的路径。 + + + + + 获取将项复制到其中的目录路径。 + + + + + 在 Windows 应用商店应用的 UI 线程中执行测试代码。 + + + + + 在 UI 线程上执行测试方法。 + + + 测试方法。 + + + 一系列实例。 + + Throws when run on an async test method. + + + + + TestContext 类。此类应完全抽象,且不包含任何 + 成员。适配器将实现成员。框架中的用户应 + 仅通过定义完善的接口对此进行访问。 + + + + + 获取测试的测试属性。 + + + + + 获取包含当前正在执行的测试方法的类的完全限定名称 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 获取当前正在执行的测试方法的名称 + + + + + 获取当前测试结果。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..0ccce3f --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用于执行的 TestMethod。 + + + + + 获取测试方法的名称。 + + + + + 获取测试类的名称。 + + + + + 获取测试方法的返回类型。 + + + + + 获取测试方法的参数。 + + + + + 获取测试方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 调用测试方法。 + + + 传递到测试方法的参数(例如,对于数据驱动) + + + 测试方法调用的结果。 + + + This call handles asynchronous test methods as well. + + + + + 获取测试方法的所有属性。 + + + 父类中定义的任何属性都有效。 + + + 所有特性。 + + + + + 获取特定类型的属性。 + + System.Attribute type. + + 父类中定义的任何属性都有效。 + + + 指定类型的属性。 + + + + + 帮助程序。 + + + + + 非 null 的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws argument null exception when parameter is null. + + + + 不为 null 或不为空的检查参数。 + + + 参数。 + + + 参数名称。 + + + 消息。 + + Throws ArgumentException when parameter is null. + + + + 枚举在数据驱动测试中访问数据行的方式。 + + + + + 按连续顺序返回行。 + + + + + 按随机顺序返回行。 + + + + + 用于定义测试方法内联数据的属性。 + + + + + 初始化 类的新实例。 + + 数据对象。 + + + + 初始化采用参数数组的 类的新实例。 + + 一个数据对象。 + 更多数据。 + + + + 获取数据以调用测试方法。 + + + + + 在测试结果中为自定义获取或设置显示名称。 + + + + + 断言无结论异常。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + InternalTestFailureException 类。用来指示测试用例的内部错误 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 类的新实例。 + + 异常消息。 + 异常。 + + + + 初始化 类的新实例。 + + 异常消息。 + + + + 初始化 类的新实例。 + + + + + 指定引发指定类型异常的属性 + + + + + 初始化含有预期类型的 类的新实例 + + 预期异常的类型 + + + + 初始化 类的新实例, + 测试未引发异常时,该类中会包含预期类型和消息。 + + 预期异常的类型 + + 测试由于未引发异常而失败时测试结果中要包含的消息 + + + + + 获取指示预期异常类型的值 + + + + + 获取或设置一个值,指示是否允许将派生自预期异常类型的类型 + 作为预期类型 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 验证由单元测试引发的异常类型是否为预期类型 + + 由单元测试引发的异常 + + + + 指定应从单元测试引发异常的属性基类 + + + + + 初始化含有默认无异常消息的 类的新实例 + + + + + 初始化含有一条无异常消息的 类的新实例 + + + 测试由于未引发异常而失败时测试结果中要包含的 + 消息 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 如果由于未引发异常导致测试失败,获取该消息以将其附加在测试结果中 + + + + + 获取默认无异常消息 + + ExpectedException 特性类型名称 + 默认非异常消息 + + + + 确定该异常是否为预期异常。如果返回了方法,则表示 + 该异常为预期异常。如果方法引发异常,则表示 + 该异常不是预期异常,且引发的异常消息 + 包含在测试结果中。为了方便, + 可使用 类。如果使用了 且断言失败, + 则表示测试结果设置为了“无结论”。 + + 由单元测试引发的异常 + + + + 如果异常为 AssertFailedException 或 AssertInconclusiveException,则再次引发该异常 + + 如果是断言异常则要重新引发的异常 + + + + 此类旨在帮助用户使用泛型类型为类型执行单元测试。 + GenericParameterHelper 满足某些常见的泛型类型限制, + 如: + 1.公共默认构造函数 + 2.实现公共接口: IComparable,IEnumerable + + + + + 初始化 类的新实例, + 该类满足 C# 泛型中的“可续订”约束。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 类的新实例, + 该类将数据属性初始化为用户提供的值。 + + 任意整数值 + + + + 获取或设置数据 + + + + + 比较两个 GenericParameterHelper 对象的值 + + 要进行比较的对象 + 如果 obj 与“此”GenericParameterHelper 对象具有相同的值,则为 true。 + 反之则为 false。 + + + + 为此对象返回哈希代码。 + + 哈希代码。 + + + + 比较两个 对象的数据。 + + 要比较的对象。 + + 有符号的数字表示此实例和值的相对值。 + + + Thrown when the object passed in is not an instance of . + + + + + 返回一个 IEnumerator 对象,该对象的长度派生自 + 数据属性。 + + IEnumerator 对象 + + + + 返回与当前对象相同的 GenericParameterHelper + 对象。 + + 克隆对象。 + + + + 允许用户记录/编写单元测试的跟踪以进行诊断。 + + + + + 用于 LogMessage 的处理程序。 + + 要记录的消息。 + + + + 要侦听的事件。单元测试编写器编写某些消息时引发。 + 主要供适配器使用。 + + + + + 测试编写器要将其调用到日志消息的 API。 + + 带占位符的字符串格式。 + 占位符的参数。 + + + + TestCategory 属性;用于指定单元测试的分类。 + + + + + 初始化 类的新实例并将分类应用到该测试。 + + + 测试类别。 + + + + + 获取已应用到测试的测试类别。 + + + + + "Category" 属性的基类 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 类的新实例。 + 将分类应用到测试。TestCategories 返回的字符串 + 与 /category 命令一起使用,以筛选测试 + + + + + 获取已应用到测试的测试分类。 + + + + + AssertFailedException 类。用于指示测试用例失败 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 初始化 类的新实例。 + + + + + 帮助程序类的集合,用于测试单元测试中 + 的各种条件。如果不满足被测条件,则引发 + 一个异常。 + + + + + 获取 Assert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + Thrown if is false. + + + + + 测试指定条件是否为 true, + 如果该条件为 false,则引发一个异常。 + + + 测试预期为 true 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 false。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is false. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + Thrown if is true. + + + + + 测试指定条件是否为 false,如果条件为 true, + 则引发一个异常。 + + + 测试预期为 false 的条件。 + + + 要包含在异常中的消息,条件是当 + 为 true。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is true. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + Thrown if is not null. + + + + + 测试指定的对象是否为 null,如果不是, + 则引发一个异常。 + + + 测试预期为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 不为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + Thrown if is null. + + + + + 测试指定对象是否非 null,如果为 null, + 则引发一个异常。 + + + 测试预期不为 null 的对象。 + + + 要包含在异常中的消息,条件是当 + 为 null。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null. + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的两个对象是否引用同一对象, + 如果两个输入不引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期的值。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不相同 。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not refer to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + Thrown if refers to the same object + as . + + + + + 测试指定的对象是否引用了不同对象, + 如果两个输入引用同一对象,则引发一个异常。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 相同 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if refers to the same object + as . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is not equal to . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定值是否相等, + 如果两个值不相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期的值。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的值是否不相等, + 如果两个值相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + The type of values to compare. + + + 要比较的第一个值。这是测试预期不匹配 + 的值 。 + + + 要比较的第二个值。这是测试下代码生成的值。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否相等, + 如果两个对象不相等,则引发一个异常。即使逻辑值相等, + 不同的数字类型也被视为不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期的对象。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定对象是否不相等, + 如果相等,则引发一个异常。即使逻辑值相等,不同的数字类型也被视为 + 不相等。42L 不等于 42。 + + + 要比较的第一个对象。这是测试预期与 + 以下内容不匹配的值: 。 + + + 要比较的第二个对象。这是在测试下由代码生成的对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否相等, + 如果不相等,则引发一个异常。 + + + 要比较的第一个浮点型。这是测试预期的浮点型。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的浮点型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个浮动。这是测试预期与 + 以下内容匹配的浮动: 。 + + + 要比较的第二个浮点型。这是测试下代码生成的浮点型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + Thrown if is not equal to + . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否相等。如果不相等, + 则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 超过 。 + + + 要包含在异常中的消息,条件是当 + 不同于 多于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的双精度型是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个双精度型。这是测试预期不匹配 + 的双精度型。 + + + 要比较的第二个双精度型。这是测试下代码生成的双精度型。 + + + 所需准确度。仅在以下情况下引发异常: + 不同于 + 最多 。 + + + 要包含在异常中的消息,条件是当 + 等于 或相差少于 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等, + 如果不相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to . + + + + + 测试指定的字符串是否相等,如果不相等, + 则引发一个异常。 + + + 要比较的第一个字符串。这是测试预期的字符串。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定字符串是否不相等, + 如果相等,则引发一个异常。使用固定区域性进行比较。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的字符串是否不相等, + 如果相等,则引发一个异常。 + + + 要比较的第一个字符串。 这是测试预期不匹配的 + 字符串 。 + + + 要比较的第二个字符串。这是在测试下由代码生成的字符串。 + + + 指示区分大小写或不区分大小写的比较的布尔。 (true + 指示区分大小写的比较。) + + + 提供区域性特定比较信息的 CultureInfo 对象。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定的对象是否是预期类型的一个实例, + 如果预期类型不位于对象的继承分层中, + 则引发一个异常。 + + + 测试预期为指定类型的对象。 + + + 预期类型。 + + + 要包含在异常中的消息,条件是当 + 不是一个实例。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 测试指定对象是否不是一个错误 + 类型实例,如果指定类型位于对象的 + 继承层次结构中,则引发一个异常。 + + + 测试预期不是指定类型的对象。 + + + 类型 不应。 + + + 要包含在异常中的消息,条件是当 + 是一个实例。消息显示 + 在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 引发 AssertFailedException。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertFailedException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + Always thrown. + + + + + 引发 AssertInconclusiveException。 + + + 包含在异常中的消息。信息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Always thrown. + + + + + 静态相等重载用于比较两种类型实例的引用 + 相等。此方法应用于比较两个实例的 + 相等。此对象始终会引发 Assert.Fail。请在单元测试中使用 + Assert.AreEqual 和关联的重载。 + + 对象 A + 对象 B + 始终为 False。 + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + 要包含在异常中的消息,条件是当 + 不引发类型的异常 。 + + + 在格式化时使用的参数数组 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 应该引发的异常类型。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 且 + 如果代码不引发异常或引发非 类型的异常,则引发 + + AssertFailedException + 。 + + + 委托到要进行测试且预期将引发异常的代码。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 测试委托 指定的代码是否能准确引发指定类型 异常(非派生类型异常), + 如果代码不引发异常或引发非 类型的异常,则引发 AssertFailedException。 + + 委托到要进行测试且预期将引发异常的代码。 + + 要包含在异常中的消息,条件是当 + 不引发异常类型。 + + + 在格式化时使用的参数数组 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 该 执行委托。 + + + + + 将 null 字符("\0")替换为 "\\0"。 + + + 要搜索的字符串。 + + + 其中 null 字符替换为 "\\0" 的转换字符串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 用于创建和引发 AssertionFailedException 的帮助程序函数 + + + 引发异常的断言名称 + + + 描述断言失败条件的消息 + + + 参数。 + + + + + 检查有效条件的参数 + + + 参数。 + + + 断言名称。 + + + 参数名称 + + + 无效参数异常的消息 + + + 参数。 + + + + + 将对象安全地转换为字符串,处理 null 值和 null 字符。 + 将 null 值转换为 "(null)"。将 null 字符转换为 "\\0"。 + + + 要转换为字符串的对象。 + + + 转换的字符串。 + + + + + 字符串断言。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定字符串是否包含指定子字符串, + 如果子字符串未出现在 + 测试字符串中,则引发一个异常。 + + + 预期要包含的字符串 。 + + + 字符串,预期出现在 。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + Thrown if does not begin with + . + + + + + 测试指定的字符串是否以指定的子字符串开头, + 如果测试字符串不以该子字符串开头, + 则引发一个异常。 + + + 字符串,预期开头为。 + + + 预期是前缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 开头不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not begin with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + Thrown if does not end with + . + + + + + 测试指定字符串是否以指定子字符串结尾, + 如果测试字符串不以子字符串结尾, + 则引发一个异常。 + + + 字符串,其结尾应为。 + + + 预期是后缀的字符串。 + + + 要包含在异常中的消息,条件是当 + 结尾不为 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not end with + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + Thrown if does not match + . + + + + + 测试指定的字符串是否匹配正则表达式,如果字符串不匹配正则表达式,则 + 引发一个异常。 + + + 预期匹配的字符串 。 + + + 正则表达式 应 + 匹配。 + + + 要包含在异常中的消息,条件是当 + 不匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if does not match + . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + Thrown if matches . + + + + + 测试指定字符串是否与正则表达式不匹配, + 如果字符串与表达式匹配,则引发一个异常。 + + + 预期不匹配的字符串。 + + + 正则表达式 预期 + 为不匹配。 + + + 要包含在异常中的消息,条件是当 + 匹配 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if matches . + + + + + 帮助程序类的集合,用于测试与单元测试内的集合相关联的 + 多种条件。如果不满足被测条件, + 则引发一个异常。 + + + + + 获取 CollectionAssert 功能的单一实例。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + Thrown if is not found in + . + + + + + 测试指定集合是否包含指定元素, + 如果集合不包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期位于集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 未处于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + Thrown if is found in + . + + + + + 测试指定的集合是否不包含指定 + 元素,如果集合包含该元素,则引发一个异常。 + + + 要在其中搜索元素的集合。 + + + 预期不在集合中的元素。 + + + 要包含在异常中的消息,条件是当 + 位于。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is found in + . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + Thrown if a null element is found in . + + + + + 测试指定的集合中所有项是否都为非 null, + 如果有元素为 null,则引发一个异常。 + + + 在其中搜索 null 元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含一个 null 元素。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a null element is found in . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试指定集合中的所有项是否都唯一, + 如果集合中有任何两个元素相等,则引发异常。 + + + 要在其中搜索重复元素的集合。 + + + 要包含在异常中的消息,条件是当 + 包含至少一个重复元素。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否是另一集合的子集, + 如果子集中的任何元素都不是超集中的元素, + 则引发一个异常。 + + + 预期为一个子集的集合。 + + + 预期为以下对象的超集的集合: + + + 包括在异常中的消息,此时元素位于 + 未找到 . + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is not found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + Thrown if every element in is also found in + . + + + + + 测试一个集合是否不是另一个集合的子集, + 如果子集中的所有元素同时位于超集中, + 则引发一个异常. + + + 预期不是一个子集的集合 。 + + + 预期不为超集的集合 + + + 要包含在异常中的消息,条件是当每个元素 + 还存在于. + 消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if every element in is also found in + . + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含相同的元素,如果 + 任一集合包含的元素不在另一 + 集合中,则引发一个异常。 + + + 要比较的第一个集合。它包含测试预期的 + 元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 当某个元素仅可在其中一个集合内找到时 + 要包含在异常中的消息。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试两个集合是否包含不同元素, + 如果这两个集合中包含相同元素,则不管 + 顺序如何,均引发一个异常。 + + + 要比较的第一个集合。这包含测试 + 预期与实际集合不同的元素。 + + + 要比较的第二个集合。这是在测试下 + 由代码生成的集合。 + + + 要包含在异常中的消息,条件是当 + 包含相同的元素 。消息 + 显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定集合中的所有元素是否是预期类型的 + 实例,如果预期类型 + 不在一个或多个这些元素的继承层次结构中,则引发一个异常。 + + + 包含测试预期为指定类型的 + 元素的集合。 + + + 每个元素的预期类型 。 + + + 包括在异常中的消息,此时元素位于 + 不是实例 + 。消息显示在测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 要包含在异常中的消息,条件是当 + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否相等,如果两个集合 + 不相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的 + 顺序和数量也相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期的集合。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是当 + 不等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组 。 + + + Thrown if is not equal to + . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + Thrown if is equal to . + + + + + 测试指定的集合是否不相等, + 如果两个集合相等,则引发一个异常。相等被定义为具有相同的元素,并且元素的顺序和数量 + 都相同。 + 对同一值的不同引用也视为相等。 + + + 要比较的第一个集合。这是测试预期与 + 以下内容不匹配的集合: 。 + + + 要比较的第二个集合。这是测试西下代码 + 生成的集合。 + + + 比较集合的元素时使用的比较实现。 + + + 要包含在异常中的消息,条件是: + 等于 。消息显示在 + 测试结果中。 + + + 在格式化时使用的参数数组。 + + + Thrown if is equal to . + + + + + 确定第一个集合是否为第二个 + 集合的子集。如果任一集合包含重复元素,则子集中元素 + 出现的次数必须小于或 + 等于在超集中元素出现的次数。 + + + 测试预期包含在以下对象中的集合: 。 + + + 测试预期要包含的集合 。 + + + 为 True,如果 是一个子集 + ,反之则为 False。 + + + + + 构造包含指定集合中每个元素的出现次数 + 的字典。 + + + 要处理的集合。 + + + 集合中 null 元素的数量。 + + + 包含指定集合中每个元素的发生次数 + 的字典。 + + + + + 在两个集合之间查找不匹配的元素。不匹配的元素是指 + 在预期集合中显示的次数与 + 在实际集合中显示的次数不相同的元素。假定 + 集合是具有相同元素数目 + 的不同非 null 引用。 调用方负责此级别的验证。 + 如果存在不匹配的元素,函数将返回 + false,并且不会使用 out 参数。 + + + 要比较的第一个集合。 + + + 要比较的第二个集合。 + + + 预期出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 实际出现次数 + 或者如果没有匹配的元素, + 则为 0。 + + + 不匹配元素(可能为 null),或者如果没有不匹配元素, + 则为 null。 + + + 如果找到不匹配的元素,则为 True;反之则为 False。 + + + + + 使用 Object.Equals 比较对象 + + + + + 框架异常的基类。 + + + + + 初始化 类的新实例。 + + + + + 初始化 类的新实例。 + + 消息。 + 异常。 + + + + 初始化 类的新实例。 + + 消息。 + + + + 一个强类型资源类,用于查找已本地化的字符串等。 + + + + + 返回此类使用的缓存的 ResourceManager 实例。 + + + + + 使用此强类型资源类为所有资源查找替代 + 当前线程的 CurrentUICulture 属性。 + + + + + 查找类似于“访问字符串具有无效语法。”的已本地化字符串。 + + + + + 查找类似于“预期集合包含 {1} 个 <{2}> 的匹配项。实际集合包含 {3} 个匹配项。{0}”的已本地化字符串。 + + + + + 查找类似于“找到了重复项: <{1}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际值的大小写有所不同: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应不大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1} ({2})>。实际为: <{3} ({4})>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期值 <{1}> 和实际值 <{2}> 之间的预期差异应大于 <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“预期为除 <{1}>外的任何值。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“不要向 AreSame() 传递值类型。转换为对象的值永远不会相同。请考虑使用 AreEqual()。{0}”的已本地化字符串。 + + + + + 查找类似于“{0} 失败。{1}”的已本地化字符串。 + + + + + 查找类似于“不支持具有 UITestMethodAttribute 的异步 TestMethod。请删除异步或使用 TestMethodAttribute。” 的已本地化字符串。 + + + + + 查找类似于“这两个集合都为空。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同元素。”的已本地化字符串。 + + + + + 查找类似于“这两个集合引用指向同一个集合对象。{0}”的已本地化字符串。 + + + + + 查找类似于“这两个集合包含相同的元素。{0}”的已本地化字符串。 + + + + + 查找类似于“{0}({1})”的已本地化字符串。 + + + + + 查找类似于 "(null)" 的已本地化字符串。 + + + + + 查找类似于“(对象)”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不包含字符串“{1}”。{2}。”的已本地化字符串。 + + + + + 查找类似于“{0} ({1})”的已本地化字符串。 + + + + + 查找类似于“Assert.Equals 不应用于断言。请改用 Assert.AreEqual 和重载。”的已本地化字符串。 + + + + + 查找类似于“集合中的元素数目不匹配。预期为: <{1}>。实际为: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {0} 处的元素不匹配。”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素不是预期类型。预期类型为: <{2}>。实际类型为: <{3}>。{0}”的已本地化字符串。 + + + + + 查找类似于“索引 {1} 处的元素为 (null)。预期类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”结尾。{2}。”的已本地化字符串。 + + + + + 查找类似于“参数无效 - EqualsTester 不能使用 null。”的已本地化字符串。 + + + + + 查找类似于“无法将类型 {0} 的对象转换为 {1}。”的本地化字符串。 + + + + + 查找类似于“引用的内部对象不再有效。”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。{1}。”的已本地化字符串。 + + + + + 查找类似于“属性 {0} 具有类型 {1};预期类型为 {2}。”的已本地化字符串。 + + + + + 查找类似于“{0} 预期类型: <{1}>。实际类型: <{2}>。”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”不匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“错误类型: <{1}>。实际类型: <{2}>。{0}”的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”与模式“{1}”匹配。{2}。”的已本地化字符串。 + + + + + 查找类似于“未指定 DataRowAttribute。DataTestMethodAttribute 至少需要一个 DataRowAttribute。”的已本地化字符串。 + + + + + 查找类似于“未引发异常。预期为 {1} 异常。{0}”的已本地化字符串。 + + + + + 查找类似于“参数 {0} 无效。值不能为 null。{1}。”的已本地化字符串。 + + + + + 查找类似于“不同元素数。”的已本地化字符串。 + + + + + 查找类似于 + “找不到具有指定签名的构造函数。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型传递到 + PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于 + “找不到指定成员({0})。可能需要重新生成专用访问器, + 或者成员可能为专用且在基类上进行了定义。如果后者为 true,则需将定义成员的类型 + 传递到 PrivateObject 的构造函数中。” + 的已本地化字符串。 + + + + + 查找类似于“字符串“{0}”不以字符串“{1}”开头。{2}。”的已本地化字符串。 + + + + + 查找类似于“预期异常类型必须是 System.Exception 或派生自 System.Exception 的类型。”的已本地化字符串。 + + + + + 查找类似于“(由于出现异常,未能获取 {0} 类型异常的消息。)”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发预期异常 {0}。{1}”的已本地化字符串。 + + + + + 查找类似于“测试方法未引发异常。预期测试方法上定义的属性 {0} 会引发异常。”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1}。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“测试方法引发异常 {0},但预期为异常 {1} 或从其派生的类型。异常消息: {2}”的已本地化字符串。 + + + + + 查找类似于“引发异常 {2},但预期为异常 {1}。{0} + 异常消息: {3} + 堆栈跟踪: {4}”的已本地化字符串。 + + + + + 单元测试结果 + + + + + 测试已执行,但出现问题。 + 问题可能涉及异常或失败的断言。 + + + + + 测试已完成,但无法确定它是已通过还是失败。 + 可用于已中止的测试。 + + + + + 测试已执行,未出现任何问题。 + + + + + 当前正在执行测试。 + + + + + 尝试执行测试时出现了系统错误。 + + + + + 测试已超时。 + + + + + 用户中止了测试。 + + + + + 测试处于未知状态 + + + + + 为单元测试框架提供帮助程序功能 + + + + + 以递归方式获取包括所有内部异常消息在内的 + 异常消息 + + 获取消息的异常 + 包含错误消息信息的字符串 + + + + 超时枚举,可与 类共同使用。 + 枚举类型必须相符 + + + + + 无限。 + + + + + 测试类属性。 + + + + + 获取可运行此测试的测试方法属性。 + + 在此方法上定义的测试方法属性实例。 + 将用于运行此测试。 + Extensions can override this method to customize how all methods in a class are run. + + + + 测试方法属性。 + + + + + 执行测试方法。 + + 要执行的测试方法。 + 表示测试结果的 TestResult 对象数组。 + Extensions can override this method to customize running a TestMethod. + + + + 测试初始化属性。 + + + + + 测试清理属性。 + + + + + 忽略属性。 + + + + + 测试属性特性。 + + + + + 初始化 类的新实例。 + + + 名称。 + + + 值。 + + + + + 获取名称。 + + + + + 获取值。 + + + + + 类初始化属性。 + + + + + 类清理属性。 + + + + + 程序集初始化属性。 + + + + + 程序集清理属性。 + + + + + 测试所有者 + + + + + 初始化 类的新实例。 + + + 所有者。 + + + + + 获取所有者。 + + + + + 优先级属性;用于指定单元测试的优先级。 + + + + + 初始化 类的新实例。 + + + 属性。 + + + + + 获取属性。 + + + + + 测试的描述 + + + + + 初始化 类的新实例,描述测试。 + + 说明。 + + + + 获取测试的说明。 + + + + + CSS 项目结构 URI + + + + + 为 CSS 项目结构 URI 初始化 类的新实例。 + + CSS 项目结构 URI。 + + + + 获取 CSS 项目结构 URI。 + + + + + CSS 迭代 URI + + + + + 为 CSS 迭代 URI 初始化 类的新实例。 + + CSS 迭代 URI。 + + + + 获取 CSS 迭代 URI。 + + + + + 工作项属性;用来指定与此测试关联的工作项。 + + + + + 为工作项属性初始化 类的新实例。 + + 工作项的 ID。 + + + + 获取关联工作项的 ID。 + + + + + 超时属性;用于指定单元测试的超时。 + + + + + 初始化 类的新实例。 + + + 超时。 + + + + + 初始化含有预设超时的 类的新实例 + + + 超时 + + + + + 获取超时。 + + + + + 要返回到适配器的 TestResult 对象。 + + + + + 初始化 类的新实例。 + + + + + 获取或设置结果的显示名称。这在返回多个结果时很有用。 + 如果为 null,则表示方法名用作了 DisplayName。 + + + + + 获取或设置测试执行的结果。 + + + + + 获取或设置测试失败时引发的异常。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 获取或设置由测试代码记录的消息输出。 + + + + + 通过测试代码获取或设置调试跟踪。 + + + + + Gets or sets the debug traces by test code. + + + + + 获取或设置测试执行的持续时间。 + + + + + 获取或设置数据源中的数据行索引。仅对数据驱动测试的数据行单次运行结果 + 进行设置。 + + + + + 获取或设置测试方法的返回值。(当前始终为 null)。 + + + + + 获取或设置测试附加的结果文件。 + + + + + 为数据驱动测试指定连接字符串、表名和行访问方法。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + DataSource 的默认提供程序名称。 + + + + + 默认数据访问方法。 + + + + + 初始化 类的新实例。将使用数据提供程序、连接字符串、数据表和访问数据源的数据访问方法初始化此实例。 + + 不变的数据提供程序名称,例如 System.Data.SqlClient + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + 指定访问数据的顺序。 + + + + 初始化 类的新实例。将使用连接字符串和表名初始化此实例。 + 指定连接字符串和数据表,访问 OLEDB 数据源。 + + + 特定于数据提供程序的连接字符串。 + 警告: 连接字符串可能包含敏感数据(例如密码)。 + 连接字符串以纯文本形式存储在源代码和编译程序集中。 + 限制对源代码和程序集的访问以保护此敏感信息。 + + 数据表的名称。 + + + + 初始化 类的新实例。将使用数据提供程序和与设置名称关联的连接字符串初始化此实例。 + + 在 app.config 文件中 <microsoft.visualstudio.qualitytools> 部分找到的数据源的名称。 + + + + 获取表示数据源的数据提供程序的值。 + + + 数据提供程序名称。如果数据提供程序未在对象初始化时进行指定,则将返回 System.Data.OleDb 的默认提供程序。 + + + + + 获取表示数据源的连接字符串的值。 + + + + + 获取指示提供数据的表名的值。 + + + + + 获取用于访问数据源的方法。 + + + + 其中一个 值。如果 未初始化,这将返回默认值。 + + + + + 获取 app.config 文件的 <microsoft.visualstudio.qualitytools> 部分中找到的数据源的名称。 + + + + + 可在其中将数据指定为内联的数据驱动测试的属性。 + + + + + 查找所有数据行并执行。 + + + 测试方法。 + + + 一系列。 + + + + + 运行数据驱动测试方法。 + + 要执行的测试方法。 + 数据行。 + 执行的结果。 + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml new file mode 100644 index 0000000..0eca881 --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions.xml @@ -0,0 +1,113 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework.Extensions + + + + + 用來指定每個測試部署的部署項目 (檔案或目錄)。 + 可以指定於測試類別或測試方法。 + 可以有屬性的多個執行個體來指定多個項目。 + 項目路徑可以是相對或絕對路徑,如果是相對路徑,則是 RunConfig.RelativePathRoot 的相對路徑。 + + + [DeploymentItem("file1.xml")] + [DeploymentItem("file2.xml", "DataFiles")] + [DeploymentItem("bin\Debug")] + + + Putting this in here so that UWP discovery works. We still do not want users to be using DeploymentItem in the UWP world - Hence making it internal. + We should separate out DeploymentItem logic in the adapter via a Framework extensiblity point. + Filed https://github.com/Microsoft/testfx/issues/100 to track this. + + + + + 初始化 類別的新執行個體。 + + 要部署的檔案或目錄。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + + + + 初始化 類別的新執行個體 + + 要部署之檔案或目錄的相對或絕對路徑。路徑是建置輸出目錄的相對路徑。項目將會複製到與已部署的測試組件相同的目錄。 + 要將項目複製到其中之目錄的路徑。它可以是部署目錄的絕對或相對路徑。下者所識別的所有檔案和目錄: 將會複製到這個目錄中。 + + + + 取得要複製之來源檔案或資料夾的路徑。 + + + + + 取得要將項目複製到其中之目錄的路徑。 + + + + + 在 Windows 市集應用程式的 UI 執行緒執行測試程式碼。 + + + + + 在 UI 執行緒執行測試方法。 + + + 測試方法。 + + + 下列項目的陣列: 執行個體。 + + Throws when run on an async test method. + + + + + TestContext 類別。這個類別應該是完全抽象的,而且未包含任何 + 成員。配接器將會實作成員。架構中的使用者只 + 應透過妥善定義的介面來存取這個項目。 + + + + + 取得測試的測試屬性。 + + + + + 取得包含目前正在執行之測試方法的類別完整名稱 + + + This property can be useful in attributes derived from ExpectedExceptionBaseAttribute. + Those attributes have access to the test context, and provide messages that are included + in the test results. Users can benefit from messages that include the fully-qualified + class name in addition to the name of the test method currently being executed. + + + + + 取得目前正在執行的測試方法名稱 + + + + + 取得目前測試結果。 + + + + + Used to write trace messages while the test is running + + formatted message string + + + + Used to write trace messages while the test is running + + format string + the arguments + + + diff --git a/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml new file mode 100644 index 0000000..611e17b --- /dev/null +++ b/ConsoleAppViereckTest/packages/MSTest.TestFramework.1.3.2/lib/uap10.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.TestFramework.xml @@ -0,0 +1,4201 @@ + + + + Microsoft.VisualStudio.TestPlatform.TestFramework + + + + + 用於執行的 TestMethod。 + + + + + 取得測試方法的名稱。 + + + + + 取得測試類別的名稱。 + + + + + 取得測試方法的傳回型別。 + + + + + 取得測試方法的參數。 + + + + + 取得測試方法的 methodInfo。 + + + This is just to retrieve additional information about the method. + Do not directly invoke the method using MethodInfo. Use ITestMethod.Invoke instead. + + + + + 叫用測試方法。 + + + 要傳遞至測試方法的引數。(例如,針對資料驅動) + + + 測試方法引動過程結果。 + + + This call handles asynchronous test methods as well. + + + + + 取得測試方法的所有屬性。 + + + 父類別中定義的屬性是否有效。 + + + 所有屬性。 + + + + + 取得特定類型的屬性。 + + System.Attribute type. + + 父類別中定義的屬性是否有效。 + + + 指定類型的屬性。 + + + + + 協助程式。 + + + + + 檢查參數不為 null。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws argument null exception when parameter is null. + + + + 檢查參數不為 null 或為空白。 + + + 參數。 + + + 參數名稱。 + + + 訊息。 + + Throws ArgumentException when parameter is null. + + + + 如何在資料驅動測試中存取資料列的列舉。 + + + + + 會以循序順序傳回資料列。 + + + + + 會以隨機順序傳回資料列。 + + + + + 用以定義測試方法之內嵌資料的屬性。 + + + + + 初始化 類別的新執行個體。 + + 資料物件。 + + + + 初始化 類別 (其採用引數的陣列) 的新執行個體。 + + 資料物件。 + 其他資料。 + + + + 取得用於呼叫測試方法的資料。 + + + + + 取得或設定測試結果中的顯示名稱來進行自訂。 + + + + + 判斷提示結果不明例外狀況。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + InternalTestFailureException 類別。用來表示測試案例的內部失敗 + + + This class is only added to preserve source compatibility with the V1 framework. + For all practical purposes either use AssertFailedException/AssertInconclusiveException. + + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 例外狀況訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 屬性,其指定預期所指定類型的例外狀況 + + + + + 初始化具預期類型之 類別的新執行個體 + + 預期的例外狀況類型 + + + + 初始化 類別 + (其具預期類型及訊息,用以在測試未擲回任何例外狀況時予以納入) 的新執行個體。 + + 預期的例外狀況類型 + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的訊息 + + + + + 取得值,指出預期例外狀況的類型 + + + + + 取得或設定值,指出是否允許類型衍生自預期例外狀況類型, + 以符合預期 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 驗證預期有單元測試所擲回的例外狀況類型 + + 單元測試所擲回的例外狀況 + + + + 指定以預期單元測試發生例外狀況之屬性的基底類別 + + + + + 使用預設無例外狀況訊息初始化 類別的新執行個體 + + + + + 初始化具無例外狀況訊息之 類別的新執行個體 + + + 測試因未擲回例外狀況而失敗時,要包含在測試結果中的 + 訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 如果測試因未擲回例外狀況而失敗,則取得測試結果中要包含的訊息 + + + + + 取得預設無例外狀況訊息 + + ExpectedException 屬性類型名稱 + 預設無例外狀況訊息 + + + + 判斷是否預期會發生例外狀況。如果傳回方法,則了解 + 預期會發生例外狀況。如果方法擲回例外狀況,則了解 + 預期不會發生例外狀況,而且測試結果中 + 會包含所擲回例外狀況的訊息。 類別可以基於便利 + 使用。如果使用 並且判斷提示失敗, + 則測試結果設定為 [結果不明]。 + + 單元測試所擲回的例外狀況 + + + + 如果它是 AssertFailedException 或 AssertInconclusiveException,會重新擲回例外狀況 + + 如果是判斷提示例外狀況,則重新擲回例外狀況 + + + + 這個類別的設計目的是要協助使用者執行使用泛型型別之類型的單元測試。 + GenericParameterHelper 滿足一些常用泛型型別條件約束 + 例如: + 1. 公用預設建構函式 + 2. 實作公用介面: IComparable、IEnumerable + + + + + 初始化 類別 (其符合 C# 泛型中的 'newable' 限制式) + 的新執行個體。 + + + This constructor initializes the Data property to a random value. + + + + + 初始化 類別 (其將 Data 屬性初始化為使用者提供的值) + 的新執行個體。 + + 任何整數值 + + + + 取得或設定資料 + + + + + 執行兩個 GenericParameterHelper 物件的值比較 + + 要與之執行比較的物件 + 如果 obj 的值與 'this' GenericParameterHelper 物件相同,則為 true。 + 否則為 false。 + + + + 傳回這個物件的雜湊碼。 + + 雜湊碼。 + + + + 比較這兩個 物件的資料。 + + 要比較的物件。 + + 已簽署的編號,表示此執行個體及值的相對值。 + + + Thrown when the object passed in is not an instance of . + + + + + 傳回長度衍生自 Data 屬性的 + IEnumerator 物件。 + + IEnumerator 物件 + + + + 傳回等於目前物件的 + GenericParameterHelper 物件。 + + 複製的物件。 + + + + 讓使用者從單位測試記錄/寫入追蹤以進行診斷。 + + + + + LogMessage 的處理常式。 + + 要記錄的訊息。 + + + + 要接聽的事件。在單元測試寫入器寫入一些訊息時引發。 + 主要由配接器取用。 + + + + + API,供測試寫入者呼叫以記錄訊息。 + + 含預留位置的字串格式。 + 預留位置的參數。 + + + + TestCategory 屬性; 用來指定單元測試的分類。 + + + + + 初始化 類別的新執行個體,並將分類套用至測試。 + + + 測試「分類」。 + + + + + 取得已套用至測試的測試分類。 + + + + + "Category" 屬性的基底類別 + + + The reason for this attribute is to let the users create their own implementation of test categories. + - test framework (discovery, etc) deals with TestCategoryBaseAttribute. + - The reason that TestCategories property is a collection rather than a string, + is to give more flexibility to the user. For instance the implementation may be based on enums for which the values can be OR'ed + in which case it makes sense to have single attribute rather than multiple ones on the same test. + + + + + 初始化 類別的新執行個體。 + 將分類套用至測試。TestCategories 所傳回的字串 + 會與 /category 命令搭配使用,以篩選測試 + + + + + 取得已套用至測試的測試分類。 + + + + + AssertFailedException 類別。用來表示測試案例失敗 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 初始化 類別的新執行個體。 + + + + + 要測試單元測試內各種條件的協助程式類別集合。 + 如果不符合正在測試的條件,則會擲回 + 例外狀況。 + + + + + 取得 Assert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void IsOfType<T>(this Assert assert, object obj)" + Users could then use a syntax similar to the default assertions which in this case is "Assert.That.IsOfType<Dog>(animal);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 true,並在條件為 false 時擲回 + 例外狀況。 + + + 測試預期為 true 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 false。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is false. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + Thrown if is true. + + + + + 測試指定的條件是否為 false,並在條件為 true 時擲回 + 例外狀況。 + + + 測試預期為 false 的條件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 true。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is true. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為 null,並在不是時擲回 + 例外狀況。 + + + 測試預期為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + Thrown if is null. + + + + + 測試指定的物件是否為非 null,並在為 null 時擲回 + 例外狀況。 + + + 測試預期不為 null 的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 為 null。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null. + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否都參照相同物件,並在兩個輸入 + 未參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。這是測試所預期的值。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者不同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not refer to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的物件是否參照不同物件,並在兩個輸入 + 參照相同的物件時擲回例外狀況。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 與下者相同: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if refers to the same object + as . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is not equal to . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否相等,並在兩個值不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。這是測試所預期的值。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的值是否不相等,並在兩個值相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + The type of values to compare. + + + 要比較的第一個值。測試預期這個值 + 不符合 。 + + + 要比較的第二個值。這是正在測試的程式碼所產生的值。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否相等,並在兩個物件不相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。這是測試所預期的物件。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否不相等,並在兩個物件相等時 + 擲回例外狀況。不同的數值類型會視為不相等, + 即使邏輯值相等也是一樣。42L 不等於 42。 + + + 要比較的第一個物件。測試預期這個值 + 不符合 。 + + + 要比較的第二個物件。這是正在測試的程式碼所產生的物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。這是測試所預期的 float。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的 float 是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個 float。測試預期這個 float 不 + 符合 。 + + + 要比較的第二個 float。這是正在測試的程式碼所產生的 float。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + Thrown if is not equal to + . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。這是測試所預期的雙精度浮點數。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 超過 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不同於 超過 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的雙精度浮點數是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個雙精度浮點數。測試預期這個雙精度浮點數 + 不符合 。 + + + 要比較的第二個雙精度浮點數。這是正在測試的程式碼所產生的雙精度浮點數。 + + + 所需的精確度。只有在下列情況才會擲回例外狀況: + 不同於 + 最多 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 或差異小於 + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否相等,並在不相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。這是測試所預期的字串。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。進行比較時不因文化特性 (Culture) 而異。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的字串是否不相等,並在相等時 + 擲回例外狀況。 + + + 要比較的第一個字串。測試預期這個字串 + 不符合 。 + + + 要比較的第二個字串。這是正在測試的程式碼所產生的字串。 + + + 表示區分大小寫或不區分大小寫的比較的布林值 (true + 表示不區分大小寫的比較)。 + + + 提供文化特性 (culture) 特定比較資訊的 CultureInfo 物件。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否為預期類型的執行個體, + 並在預期類型不在物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期為所指定類型的物件。 + + + 下者的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is null or + is not in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 測試指定的物件是否不是錯誤類型的執行個體, + 並在指定的類型位於物件的繼承階層中時 + 擲回例外狀況。 + + + 測試預期不為所指定類型的物件。 + + + 下者不應該屬於的類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 是下者的執行個體: 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not null and + is in the inheritance hierarchy + of . + + + + + 擲回 AssertFailedException。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertFailedException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Always thrown. + + + + + 擲回 AssertInconclusiveException。 + + + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Always thrown. + + + + + 「靜態等於多載」用於比較兩種類型的執行個體的參考 + 相等。這種方法不應該用於比較兩個執行個體是否 + 相等。這個物件一律會擲出 Assert.Fail。請在單元測試中使用 + Assert.AreEqual 和相關聯多載。 + + 物件 A + 物件 B + 一律為 False。 + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throw exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 預期擲回的例外狀況類型。 + + + + + 測試委派 所指定的程式碼會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並擲回 + + AssertFailedException + + (若程式碼未擲回例外狀況或擲回非 類型的例外狀況)。 + + + 要測試程式碼並預期擲回例外狀況的委派。 + + + Type of exception expected to be thrown. + + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 測試委派 所指定的程式碼是否會擲回 類型的確切指定例外狀況 (而非衍生類型) + 並於程式碼未擲回例外狀況或擲回非 類型的例外狀況時,擲回 AssertFailedException。 + + 委派給要進行測試且預期會擲回例外狀況的程式碼。 + + 在下列情況下,要包含在例外狀況中的訊息: + 未擲回下列類型的例外狀況: 。 + + + 在將下者格式化時要使用的參數陣列: 。 + + Type of exception expected to be thrown. + + Thrown if does not throws exception of type . + + + 執行委派。 + + + + + 以 "\\0" 取代 null 字元 ('\0')。 + + + 要搜尋的字串。 + + + null 字元以 "\\0" 取代的已轉換字串。 + + + This is only public and still present to preserve compatibility with the V1 framework. + + + + + 建立並擲回 AssertionFailedException 的 Helper 函數 + + + 擲回例外狀況的判斷提示名稱 + + + 描述判斷提示失敗條件的訊息 + + + 參數。 + + + + + 檢查參數的有效條件 + + + 參數。 + + + 判斷提示「名稱」。 + + + 參數名稱 + + + 無效參數例外狀況的訊息 + + + 參數。 + + + + + 將物件安全地轉換成字串,並處理 null 值和 null 字元。 + Null 值會轉換成 "(null)"。Null 字元會轉換成 "\\0"。 + + + 要轉換為字串的物件。 + + + 已轉換的字串。 + + + + + 字串判斷提示。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void ContainsWords(this StringAssert cusomtAssert, string value, ICollection substrings)" + Users could then use a syntax similar to the default assertions which in this case is "StringAssert.That.ContainsWords(value, substrings);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的字串是否包含指定的子字串, + 並在子字串未出現在測試字串內時 + 擲回例外狀況。 + + + 預期包含下者的字串: 。 + + + 預期在下列時間內發生的字串: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串開頭是否為指定的子字串, + 並在測試字串的開頭不是子字串時 + 擲回例外狀況。 + + + 字串預期開頭為 。 + + + 字串預期為下者的前置詞: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的開頭不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not begin with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not end with + . + + + + + 測試指定的字串結尾是否為指定的子字串, + 並在測試字串的結尾不是子字串時 + 擲回例外狀況。 + + + 字串預期結尾為 。 + + + 字串預期為下者的字尾: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 的結尾不是 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not end with + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否符合規則運算式, + 並在字串不符合運算式時擲回例外狀況。 + + + 預期符合下者的字串: 。 + + + 規則運算式, + 預期相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if does not match + . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + Thrown if matches . + + + + + 測試指定的字串是否不符合規則運算式, + 並在字串符合運算式時擲回例外狀況。 + + + 預期不符合下者的字串: 。 + + + 規則運算式, + 預期不相符。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 符合 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if matches . + + + + + 要測試與單元測試內集合相關聯之各種條件的 + 協助程式類別集合。如果不符合正在測試的條件, + 則會擲回例外狀況。 + + + + + 取得 CollectionAssert 功能的單一執行個體。 + + + Users can use this to plug-in custom assertions through C# extension methods. + For instance, the signature of a custom assertion provider could be "public static void AreEqualUnordered(this CollectionAssert cusomtAssert, ICollection expected, ICollection actual)" + Users could then use a syntax similar to the default assertions which in this case is "CollectionAssert.That.AreEqualUnordered(list1, list2);" + More documentation is at "https://github.com/Microsoft/testfx-docs". + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否包含指定的元素, + 並在元素不在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 未位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is found in + . + + + + + 測試指定的集合是否未包含指定的元素, + 並在元素在集合中時擲回例外狀況。 + + + 在其中搜尋元素的集合。 + + + 預期不在集合中的元素。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 位於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is found in + . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都為非 null,並在有任何元素為 null 時 + 擲回例外狀況。 + + + 要在其中搜尋 null 元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含 null 元素。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a null element is found in . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試所指定集合中的所有項目是否都是唯一的, + 並在集合中的任兩個元素相等時擲回例外狀況。 + + + 在其中搜尋重複元素的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含至少一個重複元素。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if a two or more equal elements are found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否為另一個集合的子集, + 並在子集中的任何元素也不在超集中時擲回 + 例外狀況。 + + + 集合預期為下者的子集: 。 + + + 集合預期為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 在下者中找不到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is not found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + Thrown if every element in is also found in + . + + + + + 測試其中一個集合是否不為另一個集合的子集, + 並在子集中的所有元素也都在超集中時擲回 + 例外狀況。 + + + 集合預期不為下者的子集: 。 + + + 集合預期不為下者的超集: + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的每個元素: + 也會在下者中找到: 。 + 訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if every element in is also found in + . + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含相同元素, + 並在任一集合包含不在其他集合中的元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試所預期的 + 元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在其中一個集合中找到元素但在另一個集合中找不到元素時 + 要包含在例外狀況中的訊息。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element was found in one of the collections but not + the other. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試兩個集合是否包含不同元素,並在兩個集合 + 包含不管順序的相同元素時 + 擲回例外狀況。 + + + 要比較的第一個集合。這包含測試預期與實際集合 + 不同的元素。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 包含與下者相同的元素: 。訊息 + 會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if the two collections contained the same elements, including + the same number of duplicate occurrences of each element. + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試所指定集合中的所有元素是否為預期類型的執行個體, + 並在預期類型不在一或多個元素的繼承階層中時 + 擲回例外狀況。 + + + 包含測試預期為所指定類型之元素 + 的集合。 + + + 下者的每個元素的預期類型: 。 + + + 在下列情況下,要包含在例外狀況中的訊息: 下者中的元素: + 不是下者的執行個體: + 。訊息會顯示在測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if an element in is null or + is not in the inheritance hierarchy + of an element in . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否相等,並在兩個集合不相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。這是測試所預期的集合。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 不等於 。訊息會顯示在 + 測試結果中。 + + + 在將下者格式化時要使用的參數陣列: 。 + + + Thrown if is not equal to + . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + Thrown if is equal to . + + + + + 測試指定的集合是否不相等,並在兩個集合相等時 + 擲回例外狀況。「相等」定義為具有相同順序和數量的 + 相同元素。相同值的不同參考視為 + 相等。 + + + 要比較的第一個集合。測試預期這個集合 + 不符合 。 + + + 要比較的第二個集合。這是正在測試的程式碼 + 所產生的集合。 + + + 要在比較集合元素時使用的比較實作。 + + + 在下列情況下,要包含在例外狀況中的訊息: + 等於 。訊息會顯示在 + 測試結果中。 + + + 參數陣列,使用時機為格式 。 + + + Thrown if is equal to . + + + + + 判斷第一個集合是否為第二個集合的子集。 + 如果任一個集合包含重複的元素,則元素 + 在子集中的出現次數必須小於或 + 等於在超集中的出現次數。 + + + 測試預期包含在下者中的集合: 。 + + + 測試預期包含下者的集合: 。 + + + True 的情況為 是下者的子集: + ,否則為 false。 + + + + + 建構字典,內含每個元素在所指定集合中 + 的出現次數。 + + + 要處理的集合。 + + + 集合中的 null 元素數目。 + + + 包含每個元素在所指定集合內之出現次數 + 的字典。 + + + + + 尋找兩個集合之間不相符的元素。不相符的元素 + 為出現在預期集合中的次數 + 不同於它在實際集合中出現的次數。 + 集合假設為具有數目相同之元素的不同非 null 參考。 + 呼叫者負責這個層級的驗證。 + 如果沒有不相符的元素,則函數會傳回 false, + 而且不應該使用 out 參數。 + + + 要比較的第一個集合。 + + + 要比較的第二個集合。 + + + 下者的預期出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 下者的實際出現次數: + 或 0 (如果沒有不相符的 + 元素)。 + + + 不相符的元素 (可能為 null) 或 null (如果沒有 + 不相符的元素)。 + + + 如果找到不相符的元素,則為 true,否則為 false。 + + + + + 使用 object.Equals 來比較物件 + + + + + 架構例外狀況的基底類別。 + + + + + 初始化 類別的新執行個體。 + + + + + 初始化 類別的新執行個體。 + + 訊息。 + 例外狀況。 + + + + 初始化 類別的新執行個體。 + + 訊息。 + + + + 強型別資源類別,用於查詢當地語系化字串等。 + + + + + 傳回這個類別所使用的快取的 ResourceManager 執行個體。 + + + + + 針對使用這個強型別資源類別的所有資源查閱, + 覆寫目前執行緒的 CurrentUICulture 屬性。 + + + + + 查閱與「存取字串有無效的語法。」類似的當地語系化字串。 + + + + + 查閱與「預期在集合中包含 {1} 項 <{2}>,但實際的集合卻有 {3} 項。{0}」類似的當地語系化字串。 + + + + + 查閱與「找到重複的項目:<{1}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。大小寫與下列實際值不同:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異不大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1} ({2})>。實際:<{3} ({4})>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期值 <{1}> 和實際值 <{2}> 之間的預期差異大於 <{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「預期任何值 (<{1}> 除外)。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「不要將實值型別傳遞給 AreSame()。轉換成 Object 的值從此不再一樣。請考慮使用 AreEqual()。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0} 失敗。{1}」類似的當地語系化字串。 + + + + + 不支援查詢類似非同步處理 TestMethod 與 UITestMethodAttribute 的當地語系化字串。移除非同步處理或使用 TestMethodAttribute。 + + + + + 查閱與「兩個集合都是空的。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。」類似的當地語系化字串。 + + + + + 查閱與「兩個集合參考都指向同一個集合物件。{0}」類似的當地語系化字串。 + + + + + 查閱與「兩個集合含有相同的元素。{0}」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「(null)」類似的當地語系化字串。 + + + + + 查閱與「(物件)」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 未包含字串 '{1}'。{2}。」類似的當地語系化字串。 + + + + + 查閱與「{0}({1})」類似的當地語系化字串。 + + + + + 查閱與「Assert.Equals 不應使用於判斷提示。請改用 Assert.AreEqual 及多載。」類似的當地語系化字串。 + + + + + 查閱與「集合中的元素數目不符。預期:<{1}>。實際:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {0} 的元素不符。」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的項目不是預期的類型。預期的類型:<{2}>。實際的類型:<{3}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「位於索引 {1} 的元素是 (null)。預期的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 結尾。{2}。」類似的當地語系化字串。 + + + + + 查閱與「無效的引數 - EqualsTester 無法使用 null。」類似的當地語系化字串。 + + + + + 查閱與「無法將 {0} 類型的物件轉換為 {1}。」類似的當地語系化字串。 + + + + + 查閱與「所參考的內部物件已不再有效。」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。{1}。」類似的當地語系化字串。 + + + + + 查閱與「屬性 {0} 具有類型 {1}; 預期為類型 {2}。」類似的當地語系化字串。 + + + + + 查閱與「{0} 預期的類型:<{1}>。實際的類型:<{2}>。」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 不符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「錯誤的類型:<{1}>。實際的類型:<{2}>。{0}」類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 與模式 '{1}' 相符。{2}。」類似的當地語系化字串。 + + + + + 查閱與「未指定 DataRowAttribute。至少一個 DataRowAttribute 必須配合 DataTestMethodAttribute 使用。」類似的當地語系化字串。 + + + + + 查閱與「未擲回任何例外狀況。預期為 {1} 例外狀況。{0}」類似的當地語系化字串。 + + + + + 查閱與「參數 '{0}' 無效。值不能為 null。{1}。」類似的當地語系化字串。 + + + + + 查閱與「元素數目不同。」類似的當地語系化字串。 + + + + + 查閱與「找不到具有所指定簽章的建構函式。 + 您可能必須重新產生私用存取子,或者該成員可能為私用, + 並且定義在基底類別上。如果是後者,您必須將定義 + 該成員的類型傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「找不到所指定的成員 ({0})。 + 您可能必須重新產生私用存取子, + 或者該成員可能為私用,並且定義在基底類別上。如果是後者,您必須將定義該成員的類型 + 傳送至 PrivateObject 的建構函式。」 + 類似的當地語系化字串。 + + + + + 查閱與「字串 '{0}' 不是以字串 '{1}' 開頭。{2}。」類似的當地語系化字串。 + + + + + 查閱與「預期的例外狀況類型必須是 System.Exception 或衍生自 System.Exception 的類型。」類似的當地語系化字串。 + + + + + 查閱與「(由於發生例外狀況,所以無法取得 {0} 類型之例外狀況的訊息。)」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回預期的例外狀況 {0}。{1}」類似的當地語系化字串。 + + + + + 查閱與「測試方法未擲回例外狀況。測試方法上定義的屬性 {0} 需要例外狀況。」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1}。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「測試方法擲回例外狀況 {0},但是需要的是例外狀況 {1} 或由它衍生的類型。例外狀況訊息: {2}」類似的當地語系化字串。 + + + + + 查閱與「擲回例外狀況 {2},但需要的是例外狀況 {1}。{0} + 例外狀況訊息: {3} + 堆疊追蹤: {4}」類似的當地語系化字串。 + + + + + 單元測試結果 + + + + + 已執行測試,但發生問題。 + 問題可能包含例外狀況或失敗的判斷提示。 + + + + + 測試已完成,但是無法指出成功還是失敗。 + 可能用於已中止測試。 + + + + + 已執行測試且沒有任何問題。 + + + + + 目前正在執行測試。 + + + + + 嘗試執行測試時發生系統錯誤。 + + + + + 測試逾時。 + + + + + 使用者已中止測試。 + + + + + 測試處於未知狀態 + + + + + 提供單元測試架構的協助程式功能 + + + + + 遞迴地取得例外狀況訊息 (包含所有內部例外狀況 + 的訊息) + + 要為其取得訊息的例外狀況 + 含有錯誤訊息資訊的字串 + + + + 逾時的列舉,可以與 類別搭配使用。 + 列舉的類型必須相符 + + + + + 無限。 + + + + + 測試類別屬性。 + + + + + 取得可讓您執行此測試的測試方法屬性。 + + 此方法上所定義的測試方法屬性執行個體。 + 要用來執行此測試。 + Extensions can override this method to customize how all methods in a class are run. + + + + 測試方法屬性。 + + + + + 執行測試方法。 + + 要執行的測試方法。 + 代表測試結果的 TestResult 物件陣列。 + Extensions can override this method to customize running a TestMethod. + + + + 測試初始化屬性。 + + + + + 測試清除屬性。 + + + + + Ignore 屬性。 + + + + + 測試屬性 (property) 屬性 (attribute)。 + + + + + 初始化 類別的新執行個體。 + + + 名稱。 + + + 值。 + + + + + 取得名稱。 + + + + + 取得值。 + + + + + 類別會將屬性初始化。 + + + + + 類別清除屬性。 + + + + + 組件會將屬性初始化。 + + + + + 組件清除屬性。 + + + + + 測試擁有者 + + + + + 初始化 類別的新執行個體。 + + + 擁有者。 + + + + + 取得擁有者。 + + + + + Priority 屬性; 用來指定單元測試的優先順序。 + + + + + 初始化 類別的新執行個體。 + + + 優先順序。 + + + + + 取得優先順序。 + + + + + 測試描述 + + + + + 初始化 類別的新執行個體來描述測試。 + + 描述。 + + + + 取得測試的描述。 + + + + + CSS 專案結構 URI + + + + + 初始化用於 CSS 專案結構 URI 之 類別的新執行個體。 + + CSS 專案結構 URI。 + + + + 取得 CSS 專案結構 URI。 + + + + + CSS 反覆項目 URI + + + + + 初始化用於 CSS 反覆項目 URI 之 類別的新執行個體。 + + CSS 反覆項目 URI。 + + + + 取得 CSS 反覆項目 URI。 + + + + + 工作項目屬性; 用來指定與這個測試相關聯的工作項目。 + + + + + 初始化用於工作項目屬性之 類別的新執行個體。 + + 工作項目的識別碼。 + + + + 取得建立關聯之工作項目的識別碼。 + + + + + Timeout 屬性; 用來指定單元測試的逾時。 + + + + + 初始化 類別的新執行個體。 + + + 逾時。 + + + + + 初始化具有預設逾時之 類別的新執行個體 + + + 逾時 + + + + + 取得逾時。 + + + + + 要傳回給配接器的 TestResult 物件。 + + + + + 初始化 類別的新執行個體。 + + + + + 取得或設定結果的顯示名稱。適用於傳回多個結果時。 + 如果為 null,則使用「方法名稱」當成 DisplayName。 + + + + + 取得或設定測試執行的結果。 + + + + + 取得或設定測試失敗時所擲回的例外狀況。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 取得或設定測試程式碼所記錄之訊息的輸出。 + + + + + 透過測試程式碼取得或設定偵錯追蹤。 + + + + + Gets or sets the debug traces by test code. + + + + + 取得或設定測試執行的持續時間。 + + + + + 取得或設定資料來源中的資料列索引。僅針對個別執行資料驅動測試之資料列 + 的結果所設定。 + + + + + 取得或設定測試方法的傳回值 (目前一律為 null)。 + + + + + 取得或設定測試所附加的結果檔案。 + + + + + 指定連接字串、表格名稱和資料列存取方法來進行資料驅動測試。 + + + [DataSource("Provider=SQLOLEDB.1;Data Source=source;Integrated Security=SSPI;Initial Catalog=EqtCoverage;Persist Security Info=False", "MyTable")] + [DataSource("dataSourceNameFromConfigFile")] + + + + + 資料來源的預設提供者名稱。 + + + + + 預設資料存取方法。 + + + + + 初始化 類別的新執行個體。將使用資料提供者、連接字串、運算列表和資料存取方法將這個執行個體初始化,以存取資料來源。 + + 非變異資料提供者名稱 (例如 System.Data.SqlClient) + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + 指定資料的存取順序。 + + + + 初始化 類別的新執行個體。此執行個體將使用連接字串和表格名稱進行初始化。 + 指定連接字串和運算列表以存取 OLEDB 資料來源。 + + + 資料提供者特定連接字串。 + 警告: 連接字串可能會包含敏感性資料 (例如,密碼)。 + 連接字串是以純文字形式儲存在原始程式碼中和編譯的組件中。 + 限制對原始程式碼和組件的存取,以保護這項機密資訊。 + + 運算列表的名稱。 + + + + 初始化 類別的新執行個體。將使用與設定名稱相關聯的資料提供者和連接字串將這個執行個體初始化。 + + 在 app.config 檔案的 <microsoft.visualstudio.qualitytools> 區段中找到資料來源名稱。 + + + + 取得值,代表資料來源的資料提供者。 + + + 資料提供者名稱。如果未在物件初始化時指定資料提供者,將會傳回 System.Data.OleDb 的預設提供者。 + + + + + 取得值,代表資料來源的連接字串。 + + + + + 取得值,指出提供資料的表格名稱。 + + + + + 取得用來存取資料來源的方法。 + + + + 下列其中之一: 值。如果 未進行初始化,則這會傳回預設值 。 + + + + + 取得在 app.config 檔案 <microsoft.visualstudio.qualitytools> 區段中找到的資料來源名稱。 + + + + + 可在其中內嵌指定資料之資料驅動測試的屬性。 + + + + + 尋找所有資料列,並執行。 + + + 測試「方法」。 + + + 下列項目的陣列: 。 + + + + + 執行資料驅動測試方法。 + + 要執行的測試方法。 + 資料列。 + 執行結果。 + + +

  • (nTZ8^^Y^ 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≫%u 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