From f6d0619353147510f525bd4f258bf71a831e8550 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Thu, 19 Mar 2026 02:05:05 +0000 Subject: [PATCH 1/5] Update dependencies from build 306817 Updated Dependencies: Microsoft.CodeAnalysis, Microsoft.CodeAnalysis.Analyzers, Microsoft.CodeAnalysis.CSharp, Microsoft.Net.Compilers.Toolset (Version 5.6.0-2.26166.111 -> 5.6.0-2.26168.106) Microsoft.CodeAnalysis.NetAnalyzers, Microsoft.DotNet.ApiCompat.Task, Microsoft.NET.Workload.Emscripten.Current.Manifest-11.0.100.Transport (Version 11.0.100-preview.3.26166.111 -> 11.0.100-preview.3.26168.106) Microsoft.DotNet.Arcade.Sdk, Microsoft.DotNet.Build.Tasks.Archives, Microsoft.DotNet.Build.Tasks.Feed, Microsoft.DotNet.Build.Tasks.Installers, Microsoft.DotNet.Build.Tasks.Packaging, Microsoft.DotNet.Build.Tasks.TargetFramework, Microsoft.DotNet.Build.Tasks.Templating, Microsoft.DotNet.Build.Tasks.Workloads, Microsoft.DotNet.CodeAnalysis, Microsoft.DotNet.GenAPI, Microsoft.DotNet.GenFacades, Microsoft.DotNet.Helix.Sdk, Microsoft.DotNet.PackageTesting, Microsoft.DotNet.RemoteExecutor, Microsoft.DotNet.SharedFramework.Sdk, Microsoft.DotNet.XliffTasks, Microsoft.DotNet.XUnitExtensions (Version 11.0.0-beta.26166.111 -> 11.0.0-beta.26168.106) Microsoft.DotNet.Cecil (Version 0.11.5-preview.26166.111 -> 0.11.5-preview.26168.106) Microsoft.DotNet.XUnitAssert (Version 2.9.3-beta.26166.111 -> 3.2.2-beta.26168.106) Microsoft.DotNet.XUnitConsoleRunner (Version 2.9.3-beta.26166.111 -> 2.9.3-beta.26168.106) Microsoft.NET.Sdk.IL, Microsoft.NETCore.App.Ref, Microsoft.NETCore.ILAsm, runtime.native.System.IO.Ports, System.Reflection.Metadata, System.Reflection.MetadataLoadContext, System.Text.Json (Version 11.0.0-preview.3.26166.111 -> 11.0.0-preview.3.26168.106) NuGet.Frameworks, NuGet.Packaging, NuGet.ProjectModel, NuGet.Versioning (Version 7.6.0-rc.16711 -> 7.6.0-rc.16906) System.CommandLine (Version 3.0.0-preview.3.26166.111 -> 3.0.0-preview.3.26168.106) [[ commit created by automation ]] --- eng/Version.Details.props | 78 ++++----- eng/Version.Details.xml | 158 +++++++++--------- eng/common/build.ps1 | 2 + eng/common/build.sh | 6 + eng/common/core-templates/job/renovate.yml | 68 +++++++- eng/common/core-templates/stages/renovate.yml | 27 ++- eng/common/renovate.env | 3 + eng/common/tools.ps1 | 7 + eng/common/tools.sh | 10 +- global.json | 8 +- 10 files changed, 238 insertions(+), 129 deletions(-) diff --git a/eng/Version.Details.props b/eng/Version.Details.props index 03466d31bedfb5..32cea2adf680d6 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -6,45 +6,45 @@ This file should be imported by eng/Versions.props - 5.6.0-2.26166.111 - 5.6.0-2.26166.111 - 5.6.0-2.26166.111 - 11.0.100-preview.3.26166.111 - 11.0.100-preview.3.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 0.11.5-preview.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 11.0.0-beta.26166.111 - 2.9.3-beta.26166.111 - 2.9.3-beta.26166.111 - 11.0.0-beta.26166.111 - 5.6.0-2.26166.111 - 11.0.0-preview.3.26166.111 - 11.0.100-preview.3.26166.111 - 11.0.0-preview.3.26166.111 - 11.0.0-preview.3.26166.111 - 7.6.0-rc.16711 - 7.6.0-rc.16711 - 7.6.0-rc.16711 - 7.6.0-rc.16711 - 11.0.0-preview.3.26166.111 - 3.0.0-preview.3.26166.111 - 11.0.0-preview.3.26166.111 - 11.0.0-preview.3.26166.111 - 11.0.0-preview.3.26166.111 + 5.6.0-2.26168.106 + 5.6.0-2.26168.106 + 5.6.0-2.26168.106 + 11.0.100-preview.3.26168.106 + 11.0.100-preview.3.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 0.11.5-preview.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 11.0.0-beta.26168.106 + 3.2.2-beta.26168.106 + 2.9.3-beta.26168.106 + 11.0.0-beta.26168.106 + 5.6.0-2.26168.106 + 11.0.0-preview.3.26168.106 + 11.0.100-preview.3.26168.106 + 11.0.0-preview.3.26168.106 + 11.0.0-preview.3.26168.106 + 7.6.0-rc.16906 + 7.6.0-rc.16906 + 7.6.0-rc.16906 + 7.6.0-rc.16906 + 11.0.0-preview.3.26168.106 + 3.0.0-preview.3.26168.106 + 11.0.0-preview.3.26168.106 + 11.0.0-preview.3.26168.106 + 11.0.0-preview.3.26168.106 11.0.0-alpha.0.26159.1 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 499c836ad76431..29150b6749e1cd 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,5 +1,5 @@ - + https://github.com/dotnet/icu @@ -37,91 +37,91 @@ https://github.com/dotnet/llvm-project 2098c63f212ffbb4bcfaa87f6b9669228a72d0d2 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 https://github.com/dotnet/runtime-assets @@ -259,33 +259,33 @@ https://github.com/dotnet/llvm-project 2098c63f212ffbb4bcfaa87f6b9669228a72d0d2 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 https://github.com/dotnet/xharness @@ -299,9 +299,9 @@ https://github.com/dotnet/xharness 607b3de9cf2dbfec6734e686e68d2813b40b2b51 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 https://dev.azure.com/dnceng/internal/_git/dotnet-optimization @@ -327,29 +327,29 @@ https://github.com/dotnet/runtime-assets b18b12364ccdfe1c61037260c459acd35eb806f3 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 https://dev.azure.com/dnceng/internal/_git/dotnet-optimization @@ -361,21 +361,21 @@ - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 - + https://github.com/dotnet/dotnet - 3ccdcc4cf9b93bf3504275d4506144cf68c15b2c + 803eb28628f5623c108f1bf33504c86e19815821 https://github.com/dotnet/node diff --git a/eng/common/build.ps1 b/eng/common/build.ps1 index 8cfee107e7a35e..18397a60eb85e0 100644 --- a/eng/common/build.ps1 +++ b/eng/common/build.ps1 @@ -6,6 +6,7 @@ Param( [string][Alias('v')]$verbosity = "minimal", [string] $msbuildEngine = $null, [bool] $warnAsError = $true, + [string] $warnNotAsError = '', [bool] $nodeReuse = $true, [switch] $buildCheck = $false, [switch][Alias('r')]$restore, @@ -70,6 +71,7 @@ function Print-Usage() { Write-Host " -excludeCIBinarylog Don't output binary log (short: -nobl)" Write-Host " -prepareMachine Prepare machine for CI run, clean up processes after build" Write-Host " -warnAsError Sets warnaserror msbuild parameter ('true' or 'false')" + Write-Host " -warnNotAsError Sets a semi-colon delimited list of warning codes that should not be treated as errors" Write-Host " -msbuildEngine Msbuild engine to use to run build ('dotnet', 'vs', or unspecified)." Write-Host " -excludePrereleaseVS Set to exclude build engines in prerelease versions of Visual Studio" Write-Host " -nativeToolsOnMachine Sets the native tools on machine environment variable (indicating that the script should use native tools on machine)" diff --git a/eng/common/build.sh b/eng/common/build.sh index ec3e80d189ea3f..5883e53bcfb182 100755 --- a/eng/common/build.sh +++ b/eng/common/build.sh @@ -42,6 +42,7 @@ usage() echo " --prepareMachine Prepare machine for CI run, clean up processes after build" echo " --nodeReuse Sets nodereuse msbuild parameter ('true' or 'false')" echo " --warnAsError Sets warnaserror msbuild parameter ('true' or 'false')" + echo " --warnNotAsError Sets a semi-colon delimited list of warning codes that should not be treated as errors" echo " --buildCheck Sets /check msbuild parameter" echo " --fromVMR Set when building from within the VMR" echo "" @@ -78,6 +79,7 @@ ci=false clean=false warn_as_error=true +warn_not_as_error='' node_reuse=true build_check=false binary_log=false @@ -176,6 +178,10 @@ while [[ $# -gt 0 ]]; do warn_as_error=$2 shift ;; + -warnnotaserror) + warn_not_as_error=$2 + shift + ;; -nodereuse) node_reuse=$2 shift diff --git a/eng/common/core-templates/job/renovate.yml b/eng/common/core-templates/job/renovate.yml index b662269d5db9a3..26b5901819a9c2 100644 --- a/eng/common/core-templates/job/renovate.yml +++ b/eng/common/core-templates/job/renovate.yml @@ -53,6 +53,30 @@ parameters: type: boolean default: false +# Name of the arcade repository resource in the pipeline. +# This allows repos which haven't been onboarded to Arcade to still use this +# template by checking out the repo as a resource with a custom name and pointing +# this parameter to it. +- name: arcadeRepoResource + type: string + default: self + +# Directory name for the self repo under $(Build.SourcesDirectory) in multi-checkout. +# In multi-checkout (when arcadeRepoResource != 'self'), Azure DevOps checks out the +# self repo to $(Build.SourcesDirectory)/. Set this to match the auto-generated +# directory name. Using the auto-generated name is necessary rather than explicitly +# defining a checkout path because container jobs expect repos to live under the agent's +# workspace ($(Pipeline.Workspace)). On some self-hosted setups the host path +# (e.g., /mnt/vss/_work) differs from the container path (e.g., /__w), and a custom checkout +# path can fail validation. Using the default checkout location keeps the paths consistent +# and avoids this issue. +- name: selfRepoName + type: string + default: '' +- name: arcadeRepoName + type: string + default: '' + # Pool configuration for the job. - name: pool type: object @@ -71,16 +95,33 @@ jobs: # Changing the variable name here would require updating the name in https://github.com/dotnet/arcade/blob/main/eng/renovate.json as well. - name: renovateVersion value: '42' + readonly: true - name: dryRunArg + readonly: true ${{ if eq(parameters.dryRun, true) }}: value: 'full' ${{ else }}: value: '' - name: recreateWhenArg + readonly: true ${{ if eq(parameters.forceRecreatePR, true) }}: value: 'always' ${{ else }}: value: '' + # In multi-checkout (without custom paths), Azure DevOps places each repo under + # $(Build.SourcesDirectory)/. selfRepoName must be provided in that case. + - name: selfRepoPath + readonly: true + ${{ if eq(parameters.arcadeRepoResource, 'self') }}: + value: '$(Build.SourcesDirectory)' + ${{ else }}: + value: '$(Build.SourcesDirectory)/${{ parameters.selfRepoName }}' + - name: arcadeRepoPath + readonly: true + ${{ if eq(parameters.arcadeRepoResource, 'self') }}: + value: '$(Build.SourcesDirectory)' + ${{ else }}: + value: '$(Build.SourcesDirectory)/${{ parameters.arcadeRepoName }}' pool: ${{ parameters.pool }} templateContext: @@ -96,8 +137,19 @@ jobs: steps: - checkout: self fetchDepth: 1 + + - ${{ if ne(parameters.arcadeRepoResource, 'self') }}: + - checkout: ${{ parameters.arcadeRepoResource }} + fetchDepth: 1 - - script: renovate-config-validator $(Build.SourcesDirectory)/${{parameters.renovateConfigPath}} + - script: | + renovate-config-validator $(selfRepoPath)/${{parameters.renovateConfigPath}} 2>&1 | tee /tmp/renovate-config-validator.out + validatorExit=${PIPESTATUS[0]} + if grep -q '^ WARN:' /tmp/renovate-config-validator.out; then + echo "##vso[task.logissue type=warning]Renovate config validator produced warnings." + echo "##vso[task.complete result=SucceededWithIssues]" + fi + exit $validatorExit displayName: Validate Renovate config env: LOG_LEVEL: info @@ -105,8 +157,14 @@ jobs: LOG_FILE: $(Build.ArtifactStagingDirectory)/renovate-config-validator.json - script: | - . $(Build.SourcesDirectory)/eng/common/renovate.env - renovate + . $(arcadeRepoPath)/eng/common/renovate.env + renovate 2>&1 | tee /tmp/renovate.out + renovateExit=${PIPESTATUS[0]} + if grep -q '^ WARN:' /tmp/renovate.out; then + echo "##vso[task.logissue type=warning]Renovate produced warnings." + echo "##vso[task.complete result=SucceededWithIssues]" + fi + exit $renovateExit displayName: Run Renovate env: RENOVATE_FORK_TOKEN: $(BotAccount-dotnet-renovate-bot-PAT) @@ -118,11 +176,11 @@ jobs: LOG_LEVEL: info LOG_FILE_LEVEL: debug LOG_FILE: $(Build.ArtifactStagingDirectory)/renovate.json - RENOVATE_CONFIG_FILE: $(Build.SourcesDirectory)/${{parameters.renovateConfigPath}} + RENOVATE_CONFIG_FILE: $(selfRepoPath)/${{parameters.renovateConfigPath}} - script: | echo "PRs created by Renovate:" - if [ -s "$(Build.ArtifactStagingDirectory)/renovate-log.json" ]; then + if [ -s "$(Build.ArtifactStagingDirectory)/renovate.json" ]; then if ! jq -r 'select(.msg == "PR created" and .pr != null) | "https://github.com/\(.repository)/pull/\(.pr)"' "$(Build.ArtifactStagingDirectory)/renovate-log.json" | sort -u; then echo "##vso[task.logissue type=warning]Failed to parse Renovate log file with jq." echo "##vso[task.complete result=SucceededWithIssues]" diff --git a/eng/common/core-templates/stages/renovate.yml b/eng/common/core-templates/stages/renovate.yml index 6844616f491a85..41f3b6cc8570fd 100644 --- a/eng/common/core-templates/stages/renovate.yml +++ b/eng/common/core-templates/stages/renovate.yml @@ -35,6 +35,21 @@ parameters: type: boolean default: false +# Name of the arcade repository resource in the pipeline. +# This allows repos which haven't been onboarded to Arcade to still use this +# template by checking out the repo as a resource with a custom name and pointing +# this parameter to it. +- name: arcadeRepoResource + type: string + default: 'self' + +- name: selfRepoName + type: string + default: '' +- name: arcadeRepoName + type: string + default: '' + # Pool configuration for the pipeline. - name: pool type: object @@ -69,6 +84,13 @@ extends: pool: ${{ parameters.pool }} sdl: sourceAnalysisPool: ${{ parameters.sdlPool }} + # When repos that aren't onboarded to Arcade use this template, they set the + # arcadeRepoResource parameter to point to their Arcade repo resource. In that case, + # Aracde will be excluded from SDL analysis. + ${{ if ne(parameters.arcadeRepoResource, 'self') }}: + sourceRepositoriesToScan: + exclude: + - repository: ${{ parameters.arcadeRepoResource }} containers: RenovateContainer: image: mcr.microsoft.com/dotnet-buildtools/prereqs:azurelinux-3.0-renovate-${{ parameters.renovateVersion }}-amd64 @@ -76,7 +98,7 @@ extends: - stage: Renovate displayName: Run Renovate jobs: - - template: /eng/common/core-templates/job/renovate.yml + - template: /eng/common/core-templates/job/renovate.yml@${{ parameters.arcadeRepoResource }} parameters: renovateConfigPath: ${{ parameters.renovateConfigPath }} gitHubRepo: ${{ parameters.gitHubRepo }} @@ -84,3 +106,6 @@ extends: dryRun: ${{ parameters.dryRun }} forceRecreatePR: ${{ parameters.forceRecreatePR }} pool: ${{ parameters.pool }} + arcadeRepoResource: ${{ parameters.arcadeRepoResource }} + selfRepoName: ${{ parameters.selfRepoName }} + arcadeRepoName: ${{ parameters.arcadeRepoName }} diff --git a/eng/common/renovate.env b/eng/common/renovate.env index 9f79dbc6b5fab5..17ecc05d9b1998 100644 --- a/eng/common/renovate.env +++ b/eng/common/renovate.env @@ -37,3 +37,6 @@ export RENOVATE_PR_BODY_TEMPLATE='{{{header}}}{{{table}}}{{{warnings}}}{{{notes} # https://docs.renovatebot.com/self-hosted-configuration/#globalextends # Disable the Dependency Dashboard issue that tracks all updates export RENOVATE_GLOBAL_EXTENDS='[":disableDependencyDashboard"]' + +# Allow all commands for post-upgrade commands. +export RENOVATE_ALLOWED_COMMANDS='[".*"]' diff --git a/eng/common/tools.ps1 b/eng/common/tools.ps1 index e9adff89e98f2c..c96f5018fe43a8 100644 --- a/eng/common/tools.ps1 +++ b/eng/common/tools.ps1 @@ -34,6 +34,9 @@ # Configures warning treatment in msbuild. [bool]$warnAsError = if (Test-Path variable:warnAsError) { $warnAsError } else { $true } +# Specifies semi-colon delimited list of warning codes that should not be treated as errors. +[string]$warnNotAsError = if (Test-Path variable:warnNotAsError) { $warnNotAsError } else { '' } + # Specifies which msbuild engine to use for build: 'vs', 'dotnet' or unspecified (determined based on presence of tools.vs in global.json). [string]$msbuildEngine = if (Test-Path variable:msbuildEngine) { $msbuildEngine } else { $null } @@ -839,6 +842,10 @@ function MSBuild-Core() { $cmdArgs += ' /p:TreatWarningsAsErrors=false' } + if ($warnNotAsError) { + $cmdArgs += " /warnnotaserror:$warnNotAsError /p:AdditionalWarningsNotAsErrors=$warnNotAsError" + } + foreach ($arg in $args) { if ($null -ne $arg -and $arg.Trim() -ne "") { if ($arg.EndsWith('\')) { diff --git a/eng/common/tools.sh b/eng/common/tools.sh index a564925507581d..a6e0ed594fda17 100755 --- a/eng/common/tools.sh +++ b/eng/common/tools.sh @@ -52,6 +52,9 @@ fi # Configures warning treatment in msbuild. warn_as_error=${warn_as_error:-true} +# Specifies semi-colon delimited list of warning codes that should not be treated as errors. +warn_not_as_error=${warn_not_as_error:-''} + # True to attempt using .NET Core already that meets requirements specified in global.json # installed on the machine instead of downloading one. use_installed_dotnet_cli=${use_installed_dotnet_cli:-true} @@ -530,7 +533,12 @@ function MSBuild-Core { mt_switch="-mt" fi - RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch $mt_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@" + local warnnotaserror_switch="" + if [[ -n "$warn_not_as_error" ]]; then + warnnotaserror_switch="/warnnotaserror:$warn_not_as_error /p:AdditionalWarningsNotAsErrors=$warn_not_as_error" + fi + + RunBuildTool "$_InitializeBuildToolCommand" /m /nologo /clp:Summary /v:$verbosity /nr:$node_reuse $warnaserror_switch $mt_switch $warnnotaserror_switch /p:TreatWarningsAsErrors=$warn_as_error /p:ContinuousIntegrationBuild=$ci "$@" } function GetDarc { diff --git a/global.json b/global.json index f284cc45834019..4904a84923a839 100644 --- a/global.json +++ b/global.json @@ -8,11 +8,11 @@ "dotnet": "11.0.100-preview.3.26161.119" }, "msbuild-sdks": { - "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26166.111", - "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26166.111", - "Microsoft.DotNet.SharedFramework.Sdk": "11.0.0-beta.26166.111", + "Microsoft.DotNet.Arcade.Sdk": "11.0.0-beta.26168.106", + "Microsoft.DotNet.Helix.Sdk": "11.0.0-beta.26168.106", + "Microsoft.DotNet.SharedFramework.Sdk": "11.0.0-beta.26168.106", "Microsoft.Build.NoTargets": "3.7.0", "Microsoft.Build.Traversal": "3.4.0", - "Microsoft.NET.Sdk.IL": "11.0.0-preview.3.26166.111" + "Microsoft.NET.Sdk.IL": "11.0.0-preview.3.26168.106" } } From 4d4d4b5741080c0c4989efe9d6ec1f8cb7500391 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 19 Mar 2026 20:00:22 +0000 Subject: [PATCH 2/5] Fix build errors introduced by xunit.assert swap --- .../tests/ArrayListTests.cs | 8 +- .../tests/DataContractSerializerTests.cs | 12 +- .../XmlSerializerTests.Internal.cs | 8 +- .../XmlSerializerTests.RuntimeOnly.cs | 164 +++---- .../tests/XmlSerializer/XmlSerializerTests.cs | 202 ++++---- .../BinaryFormattedObjectTests.cs | 8 +- .../tests/DataContractJsonSerializer.cs | 406 ++++++++-------- .../tests/DataContractSerializer.cs | 436 +++++++++--------- .../DataContractSerializerStressTests.cs | 2 +- 9 files changed, 626 insertions(+), 620 deletions(-) diff --git a/src/libraries/System.Collections.NonGeneric/tests/ArrayListTests.cs b/src/libraries/System.Collections.NonGeneric/tests/ArrayListTests.cs index cb423fe50ba19e..12e6305f139f7d 100644 --- a/src/libraries/System.Collections.NonGeneric/tests/ArrayListTests.cs +++ b/src/libraries/System.Collections.NonGeneric/tests/ArrayListTests.cs @@ -1148,7 +1148,7 @@ public static void GetEnumerator_Basic_ArrayListContainingItself() int index = 0; while (enumerator.MoveNext()) { - Assert.StrictEqual(enumerator.Current, arrList2[index]); + Assert.Equal(enumerator.Current, arrList2[index]); index++; } enumerator.Reset(); @@ -1167,7 +1167,7 @@ public static void GetEnumerator_Basic_DerivedArrayList() int index = 0; while (enumerator.MoveNext()) { - Assert.StrictEqual(enumerator.Current, arrList[index]); + Assert.Equal(enumerator.Current, arrList[index]); index++; } enumerator.Reset(); @@ -1229,7 +1229,7 @@ public static void GetEnumerator_Int_Int_ArrayListContainingItself() for (int i = 0; i < tempArray.Length; i++) { enumerator.MoveNext(); - Assert.StrictEqual(tempArray[i], enumerator.Current); + Assert.Equal(tempArray[i], enumerator.Current); } Assert.False(enumerator.MoveNext()); @@ -1244,7 +1244,7 @@ public static void GetEnumerator_Int_Int_ArrayListContainingItself() for (int i = 1; i < tempArray.Length - 1; i++) { enumerator.MoveNext(); - Assert.StrictEqual(tempArray[i], enumerator.Current); + Assert.Equal(tempArray[i], enumerator.Current); } Assert.False(enumerator.MoveNext()); diff --git a/src/libraries/System.Drawing.Primitives/tests/DataContractSerializerTests.cs b/src/libraries/System.Drawing.Primitives/tests/DataContractSerializerTests.cs index b1c96b18f73706..93b1c51c10adb6 100644 --- a/src/libraries/System.Drawing.Primitives/tests/DataContractSerializerTests.cs +++ b/src/libraries/System.Drawing.Primitives/tests/DataContractSerializerTests.cs @@ -32,7 +32,7 @@ public static void DCS_Point() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -53,7 +53,7 @@ public static void DCS_PointF() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -76,7 +76,7 @@ public static void DCS_Rectangle() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -97,7 +97,7 @@ public static void DCS_RectangleF() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -118,7 +118,7 @@ public static void DCS_Size() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -139,7 +139,7 @@ public static void DCS_SizeF() }; for (int i = 0; i < objs.Length; i++) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } } diff --git a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.Internal.cs b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.Internal.cs index 9ff61f7fdf513b..733b5ae83c1952 100644 --- a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.Internal.cs +++ b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.Internal.cs @@ -41,7 +41,7 @@ public static void Xml_DerivedIXmlSerializable() var expectedXml = WithXmlHeader(@$""); var fromBase = SerializeAndDeserialize(dClass, expectedXml, () => new XmlSerializer(typeof(XmlSerializableBaseClass), new Type[] { typeof(XmlSerializableDerivedClass) })); Assert.Equal(dClass.AttributeString, fromBase.AttributeString); - Assert.StrictEqual(dClass.DateTimeValue, fromBase.DateTimeValue); + Assert.Equal(dClass.DateTimeValue, fromBase.DateTimeValue); Assert.Equal(dClass.BoolValue, fromBase.BoolValue); // Derived class does not apply XmlRoot attribute to force itself to be emitted with the base class element name, so update expected xml accordingly. @@ -49,7 +49,7 @@ public static void Xml_DerivedIXmlSerializable() expectedXml = WithXmlHeader(@""); var fromDerived = SerializeAndDeserialize(dClass, expectedXml, () => new XmlSerializer(typeof(XmlSerializableDerivedClass))); Assert.Equal(dClass.AttributeString, fromDerived.AttributeString); - Assert.StrictEqual(dClass.DateTimeValue, fromDerived.DateTimeValue); + Assert.Equal(dClass.DateTimeValue, fromDerived.DateTimeValue); Assert.Equal(dClass.BoolValue, fromDerived.BoolValue); } @@ -106,7 +106,9 @@ public static void Xml_XmlSchema() var actual = SerializeAndDeserialize(schema, expectedXml, () => new XmlSerializer(typeof(XmlSchema))); - Assert.Equivalent(schema, actual); + Assert.Equal(schema.TargetNamespace, actual.TargetNamespace); + Assert.Equal(schema.ElementFormDefault, actual.ElementFormDefault); + Assert.Equal(schema.Items.Count, actual.Items.Count); } } diff --git a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.RuntimeOnly.cs b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.RuntimeOnly.cs index 3c04059c5e4249..5e57f747f5ce65 100644 --- a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.RuntimeOnly.cs +++ b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.RuntimeOnly.cs @@ -59,19 +59,19 @@ public static void Xml_ByteArrayNull() [Fact] public static void Xml_CharAsRoot() { - Assert.StrictEqual(char.MinValue, SerializeAndDeserialize(char.MinValue, + Assert.Equal(char.MinValue, SerializeAndDeserialize(char.MinValue, @" 0")); - Assert.StrictEqual(char.MaxValue, SerializeAndDeserialize(char.MaxValue, + Assert.Equal(char.MaxValue, SerializeAndDeserialize(char.MaxValue, @" 65535")); - Assert.StrictEqual('a', SerializeAndDeserialize('a', + Assert.Equal('a', SerializeAndDeserialize('a', @" 97")); - Assert.StrictEqual('\u00F1', SerializeAndDeserialize('\u00F1', + Assert.Equal('\u00F1', SerializeAndDeserialize('\u00F1', @" 241")); - Assert.StrictEqual('\u6F22', SerializeAndDeserialize('\u6F22', + Assert.Equal('\u6F22', SerializeAndDeserialize('\u6F22', @" 28450")); } @@ -79,13 +79,13 @@ public static void Xml_CharAsRoot() [Fact] public static void Xml_ByteAsRoot() { - Assert.StrictEqual(10, SerializeAndDeserialize(10, + Assert.Equal(10, SerializeAndDeserialize(10, @" 10")); - Assert.StrictEqual(byte.MinValue, SerializeAndDeserialize(byte.MinValue, + Assert.Equal(byte.MinValue, SerializeAndDeserialize(byte.MinValue, @" 0")); - Assert.StrictEqual(byte.MaxValue, SerializeAndDeserialize(byte.MaxValue, + Assert.Equal(byte.MaxValue, SerializeAndDeserialize(byte.MaxValue, @" 255")); } @@ -97,21 +97,21 @@ public static void Xml_DateTimeAsRoot() // DO NOT USE TimeZoneInfo.Local.BaseUtcOffset ! var offsetMinutes = (int)TimeZoneInfo.Local.GetUtcOffset(new DateTime(2013, 1, 2)).TotalMinutes; var timeZoneString = string.Format("{0:+;-}{1}", offsetMinutes, new TimeSpan(0, offsetMinutes, 0).ToString(@"hh\:mm")); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2), + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2), @" 2013-01-02T00:00:00"), new DateTime(2013, 1, 2)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local), string.Format(@" + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local), string.Format(@" 2013-01-02T03:04:05.006{0}", timeZoneString)), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified), + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified), @" 2013-01-02T03:04:05.006"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), @" 2013-01-02T03:04:05.006Z"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)); - Assert.StrictEqual(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), + Assert.Equal(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), @" 0001-01-01T00:00:00Z"), DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc)); - Assert.StrictEqual(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc), + Assert.Equal(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc), @" 9999-12-31T23:59:59.9999999Z"), DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc)); } @@ -121,7 +121,7 @@ public static void Xml_DecimalAsRoot() { foreach (decimal value in new decimal[] { (decimal)-1.2, (decimal)0, (decimal)2.3, decimal.MinValue, decimal.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value.ToString(CultureInfo.InvariantCulture))), value); } } @@ -129,19 +129,19 @@ public static void Xml_DecimalAsRoot() [Fact] public static void Xml_DoubleAsRoot() { - Assert.StrictEqual(-1.2, SerializeAndDeserialize(-1.2, + Assert.Equal(-1.2, SerializeAndDeserialize(-1.2, @" -1.2")); - Assert.StrictEqual(0, SerializeAndDeserialize(0, + Assert.Equal(0, SerializeAndDeserialize(0, @" 0")); - Assert.StrictEqual(2.3, SerializeAndDeserialize(2.3, + Assert.Equal(2.3, SerializeAndDeserialize(2.3, @" 2.3")); - Assert.StrictEqual(double.MinValue, SerializeAndDeserialize(double.MinValue, + Assert.Equal(double.MinValue, SerializeAndDeserialize(double.MinValue, @" -1.7976931348623157E+308")); - Assert.StrictEqual(double.MaxValue, SerializeAndDeserialize(double.MaxValue, + Assert.Equal(double.MaxValue, SerializeAndDeserialize(double.MaxValue, @" 1.7976931348623157E+308")); } @@ -149,13 +149,13 @@ public static void Xml_DoubleAsRoot() [Fact] public static void Xml_FloatAsRoot() { - Assert.StrictEqual((float)-1.2, SerializeAndDeserialize((float)-1.2, + Assert.Equal((float)-1.2, SerializeAndDeserialize((float)-1.2, @" -1.2")); - Assert.StrictEqual((float)0, SerializeAndDeserialize((float)0, + Assert.Equal((float)0, SerializeAndDeserialize((float)0, @" 0")); - Assert.StrictEqual((float)2.3, SerializeAndDeserialize((float)2.3, + Assert.Equal((float)2.3, SerializeAndDeserialize((float)2.3, @" 2.3")); } @@ -163,10 +163,10 @@ public static void Xml_FloatAsRoot() [Fact] public static void Xml_FloatAsRoot_NotNetFramework() { - Assert.StrictEqual(float.MinValue, SerializeAndDeserialize(float.MinValue, + Assert.Equal(float.MinValue, SerializeAndDeserialize(float.MinValue, @" -3.4028235E+38")); - Assert.StrictEqual(float.MaxValue, SerializeAndDeserialize(float.MaxValue, + Assert.Equal(float.MaxValue, SerializeAndDeserialize(float.MaxValue, @" 3.4028235E+38")); } @@ -183,7 +183,7 @@ private static void Xml_GuidAsRoot_Helper(XmlSerializer serializer) foreach (Guid value in new Guid[] { Guid.NewGuid(), Guid.Empty }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value.ToString())), value); } } @@ -193,7 +193,7 @@ public static void Xml_IntAsRoot() { foreach (int value in new int[] { -1, 0, 2, int.MinValue, int.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -203,7 +203,7 @@ public static void Xml_LongAsRoot() { foreach (long value in new long[] { (long)-1, (long)0, (long)2, long.MinValue, long.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -211,13 +211,13 @@ public static void Xml_LongAsRoot() [Fact] public static void Xml_ObjectAsRoot() { - Assert.StrictEqual(1, SerializeAndDeserialize(1, + Assert.Equal(1, SerializeAndDeserialize(1, @" 1")); - Assert.StrictEqual(true, SerializeAndDeserialize(true, + Assert.Equal(true, SerializeAndDeserialize(true, @" true")); - Assert.StrictEqual("abc", SerializeAndDeserialize("abc", + Assert.Equal("abc", SerializeAndDeserialize("abc", @" abc")); Assert.Null(SerializeAndDeserialize(null, @@ -227,10 +227,10 @@ public static void Xml_ObjectAsRoot() [Fact] public static void Xml_XmlQualifiedNameAsRoot() { - Assert.StrictEqual(SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), + Assert.Equal(SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), @" q1:abc"), new XmlQualifiedName("abc", "def")); - Assert.StrictEqual(XmlQualifiedName.Empty, SerializeAndDeserialize(XmlQualifiedName.Empty, + Assert.Equal(XmlQualifiedName.Empty, SerializeAndDeserialize(XmlQualifiedName.Empty, @"")); } @@ -239,7 +239,7 @@ public static void Xml_ShortAsRoot() { foreach (short value in new short[] { (short)-1.2, (short)0, (short)2.3, short.MinValue, short.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -249,7 +249,7 @@ public static void Xml_SbyteAsRoot() { foreach (sbyte value in new sbyte[] { (sbyte)3, (sbyte)0, sbyte.MinValue, sbyte.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -288,7 +288,7 @@ public static void Xml_UintAsRoot() { foreach (uint value in new uint[] { (uint)3, (uint)0, uint.MinValue, uint.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -298,7 +298,7 @@ public static void Xml_UlongAsRoot() { foreach (ulong value in new ulong[] { (ulong)3, (ulong)0, ulong.MinValue, ulong.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -308,7 +308,7 @@ public static void Xml_UshortAsRoot() { foreach (ushort value in new ushort[] { (ushort)3, (ushort)0, ushort.MinValue, ushort.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@" + Assert.Equal(SerializeAndDeserialize(value, string.Format(@" {0}", value)), value); } } @@ -522,10 +522,10 @@ public static void Xml_WithXElement() private static void VerifyXElementObject(XElement x1, XElement x2, bool checkFirstAttribute = true) { Assert.Equal(x1.Value, x2.Value); - Assert.StrictEqual(x1.Name, x2.Name); + Assert.Equal(x1.Name, x2.Name); if (checkFirstAttribute) { - Assert.StrictEqual(x1.FirstAttribute.Name, x2.FirstAttribute.Name); + Assert.Equal(x1.FirstAttribute.Name, x2.FirstAttribute.Name); Assert.Equal(x1.FirstAttribute.Value, x2.FirstAttribute.Value); } } @@ -583,7 +583,7 @@ public static void Xml_WithArrayOfXElement() "); - Assert.StrictEqual(original.a.Length, actual.a.Length); + Assert.Equal(original.a.Length, actual.a.Length); VerifyXElementObject(original.a[0], actual.a[0], checkFirstAttribute: false); VerifyXElementObject(original.a[1], actual.a[1], checkFirstAttribute: false); VerifyXElementObject(original.a[2], actual.a[2], checkFirstAttribute: false); @@ -609,7 +609,7 @@ public static void Xml_WithListOfXElement() "); - Assert.StrictEqual(original.list.Count, actual.list.Count); + Assert.Equal(original.list.Count, actual.list.Count); VerifyXElementObject(original.list[0], actual.list[0], checkFirstAttribute: false); VerifyXElementObject(original.list[1], actual.list[1], checkFirstAttribute: false); VerifyXElementObject(original.list[2], actual.list[2], checkFirstAttribute: false); @@ -743,7 +743,7 @@ public static void Xml_DefaultNamespaceChange_SimpleTypeAsRoot() ", () => { return new XmlSerializer(typeof(SimpleType), "MycustomDefaultNamespace"); }); Assert.Equal(value.P1, o.P1); - Assert.StrictEqual(value.P2, o.P2); + Assert.Equal(value.P2, o.P2); } [Fact] @@ -760,7 +760,7 @@ public static void Xml_DefaultNamespaceChange_SimpleTypeAsRoot_WithXmlSerializer ", () => { return new XmlSerializer(typeof(SimpleType), "MycustomDefaultNamespace"); }, xns: xns); Assert.Equal(value.P1, o.P1); - Assert.StrictEqual(value.P2, o.P2); + Assert.Equal(value.P2, o.P2); } [Fact] @@ -907,15 +907,15 @@ public static void Xml_TestTypeWithPrivateOrNoSetters() var noSetter = new TypeWithNoSetters(25); var actualNoSetter = SerializeAndDeserialize(noSetter, WithXmlHeader("")); Assert.NotNull(actualNoSetter); - Assert.StrictEqual(25, noSetter.NoSetter); - Assert.StrictEqual(200, actualNoSetter.NoSetter); // 200 is what the default constructor sets it to. + Assert.Equal(25, noSetter.NoSetter); + Assert.Equal(200, actualNoSetter.NoSetter); // 200 is what the default constructor sets it to. // But private setters aren't a problem if the class is ISerializable. var value = new TypeWithPrivateOrNoSettersButIsIXmlSerializable(32, 52); var actual = SerializeAndDeserialize(value, WithXmlHeader("\r\n 32\r\n 52\r\n")); Assert.NotNull(actual); - Assert.StrictEqual(value.PrivateSetter, actual.PrivateSetter); - Assert.StrictEqual(value.NoSetter, actual.NoSetter); + Assert.Equal(value.PrivateSetter, actual.PrivateSetter); + Assert.Equal(value.NoSetter, actual.NoSetter); } [Fact] @@ -951,18 +951,18 @@ public static void Xml_TestTypeWithListPropertiesWithoutPublicSetters() "); - Assert.StrictEqual(value.PropertyWithXmlElementAttribute.Count, actual.PropertyWithXmlElementAttribute.Count); + Assert.Equal(value.PropertyWithXmlElementAttribute.Count, actual.PropertyWithXmlElementAttribute.Count); Assert.Equal(value.PropertyWithXmlElementAttribute[0], actual.PropertyWithXmlElementAttribute[0]); Assert.Equal(value.PropertyWithXmlElementAttribute[1], actual.PropertyWithXmlElementAttribute[1]); - Assert.StrictEqual(value.IntList.Count, actual.IntList.Count); - Assert.StrictEqual(value.IntList[0], actual.IntList[0]); - Assert.StrictEqual(value.StringList.Count, actual.StringList.Count); + Assert.Equal(value.IntList.Count, actual.IntList.Count); + Assert.Equal(value.IntList[0], actual.IntList[0]); + Assert.Equal(value.StringList.Count, actual.StringList.Count); Assert.Equal(value.StringList[0], actual.StringList[0]); Assert.Equal(value.StringList[1], actual.StringList[1]); - Assert.StrictEqual(value.AnotherStringList.Count, actual.AnotherStringList.Count); + Assert.Equal(value.AnotherStringList.Count, actual.AnotherStringList.Count); Assert.Equal(value.AnotherStringList[0], actual.AnotherStringList[0]); - Assert.StrictEqual(value.PublicIntListField[0], actual.PublicIntListField[0]); - Assert.StrictEqual(value.PublicIntListFieldWithXmlElementAttribute[0], actual.PublicIntListFieldWithXmlElementAttribute[0]); + Assert.Equal(value.PublicIntListField[0], actual.PublicIntListField[0]); + Assert.Equal(value.PublicIntListFieldWithXmlElementAttribute[0], actual.PublicIntListFieldWithXmlElementAttribute[0]); // In an annoyingly inconsistent behavior, if a list property does not have a setter at all, the serializer is smart enough to // not try to set an empty list. So the property will be either empty or null depending on how the default constructor leaves it. Assert.Null(actual.AlwaysNullList); @@ -1112,8 +1112,8 @@ public static void Xml_HighScoreManager() Foo "); - Assert.StrictEqual(1, actual.Count); - Assert.StrictEqual(value[0].Id, actual[0].Id); + Assert.Equal(1, actual.Count); + Assert.Equal(value[0].Id, actual[0].Id); Assert.Equal(value[0].Name, actual[0].Name); } @@ -1133,7 +1133,7 @@ public static void Xml_TypeWithNestedPublicType() Bar "); - Assert.StrictEqual(2, actual.Count); + Assert.Equal(2, actual.Count); Assert.Equal(value[0].Name, actual[0].Name); Assert.Equal(value[1].Name, actual[1].Name); } @@ -1154,7 +1154,7 @@ public static void Xml_PublicTypeWithNestedPublicTypeWithNestedPublicType() Bar "); - Assert.StrictEqual(2, actual.Count); + Assert.Equal(2, actual.Count); Assert.Equal(value[0].Name, actual[0].Name); Assert.Equal(value[1].Name, actual[1].Name); } @@ -1192,12 +1192,12 @@ Episode 2 XmlSerializer serializer = new XmlSerializer(typeof(List)); stream.Seek(0, SeekOrigin.Begin); List actual = (List)serializer.Deserialize(stream); - Assert.StrictEqual(2, actual.Count); + Assert.Equal(2, actual.Count); Assert.Equal("SecondAdventureImage", actual[0].ImageName); - Assert.StrictEqual(SlideEventType.LaunchSection, actual[0].EventType); + Assert.Equal(SlideEventType.LaunchSection, actual[0].EventType); Assert.Equal("Adventures.Episode2.Details", actual[0].EventData); Assert.Equal(actual[0].ImageName, actual[1].ImageName); - Assert.StrictEqual(actual[0].EventType, actual[1].EventType); + Assert.Equal(actual[0].EventType, actual[1].EventType); Assert.Equal(actual[0].EventData, actual[1].EventData); } @@ -1275,16 +1275,16 @@ public static void Xml_ConstructorWithXmlAttributeOverrides() [Fact] public static void Xml_TimeSpanAsRoot() { - Assert.StrictEqual(new TimeSpan(1, 2, 3), SerializeAndDeserialize(new TimeSpan(1, 2, 3), + Assert.Equal(new TimeSpan(1, 2, 3), SerializeAndDeserialize(new TimeSpan(1, 2, 3), @" PT1H2M3S")); - Assert.StrictEqual(TimeSpan.Zero, SerializeAndDeserialize(TimeSpan.Zero, + Assert.Equal(TimeSpan.Zero, SerializeAndDeserialize(TimeSpan.Zero, @" PT0S")); - Assert.StrictEqual(TimeSpan.MinValue, SerializeAndDeserialize(TimeSpan.MinValue, + Assert.Equal(TimeSpan.MinValue, SerializeAndDeserialize(TimeSpan.MinValue, @" -P10675199DT2H48M5.4775808S")); - Assert.StrictEqual(TimeSpan.MaxValue, SerializeAndDeserialize(TimeSpan.MaxValue, + Assert.Equal(TimeSpan.MaxValue, SerializeAndDeserialize(TimeSpan.MaxValue, @" P10675199DT2H48M5.4775807S")); } @@ -2274,10 +2274,10 @@ public static void Xml_Soap_WithNullables() WithNullables actual = SerializeAndDeserializeWithWrapper(value, serializer, baseline); - Assert.StrictEqual(value.OptionalInt, actual.OptionalInt); - Assert.StrictEqual(value.Optional, actual.Optional); - Assert.StrictEqual(value.Optionull, actual.Optionull); - Assert.StrictEqual(value.OptionullInt, actual.OptionullInt); + Assert.Equal(value.OptionalInt, actual.OptionalInt); + Assert.Equal(value.Optional, actual.Optional); + Assert.Equal(value.Optionull, actual.Optionull); + Assert.Equal(value.OptionullInt, actual.OptionullInt); Assert.Null(actual.Struct2); Assert.Null(actual.Struct1); // This behavior doesn't seem right. But this is the behavior on desktop. } @@ -2292,8 +2292,8 @@ public static void Xml_Soap_Enums() item, "\r\n\r\n Option1\r\n Option2\r\n", () => serializer); - Assert.StrictEqual(item.Short, actual.Short); - Assert.StrictEqual(item.Int, actual.Int); + Assert.Equal(item.Short, actual.Short); + Assert.Equal(item.Int, actual.Int); } [Fact] @@ -3482,15 +3482,15 @@ public static void Xml_DefaultNamespaceChange_XmlAttributesTestAsRoot() <xml>Hello XML</xml>XmlNamespaceDeclarationsPropertyValue1onetwothree", () => { return new XmlSerializer(typeof(XmlSerializerAttributes), "MycustomDefaultNamespace"); }); - Assert.StrictEqual(value.EnumType, actual.EnumType); - Assert.StrictEqual(value.MyChoice, actual.MyChoice); + Assert.Equal(value.EnumType, actual.EnumType); + Assert.Equal(value.MyChoice, actual.MyChoice); Assert.Equal(value.XmlArrayProperty[0], actual.XmlArrayProperty[0]); Assert.Equal(value.XmlArrayProperty[1], actual.XmlArrayProperty[1]); Assert.Equal(value.XmlArrayProperty[2], actual.XmlArrayProperty[2]); - Assert.StrictEqual(value.XmlAttributeProperty, actual.XmlAttributeProperty); - Assert.StrictEqual(value.XmlElementProperty, actual.XmlElementProperty); + Assert.Equal(value.XmlAttributeProperty, actual.XmlAttributeProperty); + Assert.Equal(value.XmlElementProperty, actual.XmlElementProperty); Assert.Equal(value.XmlEnumProperty, actual.XmlEnumProperty); - Assert.StrictEqual(value.XmlIncludeProperty, actual.XmlIncludeProperty); + Assert.Equal(value.XmlIncludeProperty, actual.XmlIncludeProperty); Assert.Equal(value.XmlNamespaceDeclarationsProperty, actual.XmlNamespaceDeclarationsProperty); Assert.Equal(value.XmlTextProperty, actual.XmlTextProperty); } @@ -3516,10 +3516,10 @@ public static void Xml_NookTypes() var deserializedValue = SerializeAndDeserialize(value, "\r\n\r\n \r\n 3\r\n 6\r\n 5\r\n 4\r\n \r\n 1\r\n Current\r\n Microsoft\r\n true\r\n \r\n \r\n Ean\r\n 2013-01-02T00:00:00\r\n 1\r\n 1\r\n offset\r\n \r\n \r\n \r\n one\r\n two\r\n \r\n false\r\n", null, true); - Assert.StrictEqual(deserializedValue.ArticleViewCount, value.ArticleViewCount); + Assert.Equal(deserializedValue.ArticleViewCount, value.ArticleViewCount); Assert.Equal(deserializedValue.CurrentlyReadingProductEAN, value.CurrentlyReadingProductEAN); - Assert.StrictEqual(deserializedValue.CurrentPaymentType, value.CurrentPaymentType); - Assert.StrictEqual(deserializedValue.IsFirstRun, value.IsFirstRun); + Assert.Equal(deserializedValue.CurrentPaymentType, value.CurrentPaymentType); + Assert.Equal(deserializedValue.IsFirstRun, value.IsFirstRun); } [Fact] @@ -3588,7 +3588,7 @@ public static void Xml_ValidateExceptionOnUnspecifiedRootSerializationType() { var value = new UnspecifiedRootSerializationType(); var actual = SerializeAndDeserialize(value, "\r\n\r\n 0\r\n", () => { return new XmlSerializer(Type.GetType(typeof(UnspecifiedRootSerializationType).FullName)); }); - Assert.StrictEqual(value.MyIntProperty, actual.MyIntProperty); + Assert.Equal(value.MyIntProperty, actual.MyIntProperty); Assert.Equal(value.MyStringProperty, actual.MyStringProperty); } @@ -3623,7 +3623,7 @@ public static void Xml_DefaultNamespaceChange_ObjectAsRoot() DecimalNumber", serializerFactory); - Assert.StrictEqual(value, actual); + Assert.Equal(value, actual); } [Fact] diff --git a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.cs b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.cs index a559c4fd5a8199..1b25b4a94540d9 100644 --- a/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.cs +++ b/src/libraries/System.Private.Xml/tests/XmlSerializer/XmlSerializerTests.cs @@ -60,7 +60,7 @@ public static void Xml_TypeWithDateTimePropertyAsXmlTime() TypeWithDateTimePropertyAsXmlTime localTimeObjectRoundTrip = SerializeAndDeserialize(localTimeObject, string.Format(WithXmlHeader(@"{0}"), localTimeString)); - Assert.StrictEqual(localTimeObject.Value, localTimeObjectRoundTrip.Value); + Assert.Equal(localTimeObject.Value, localTimeObjectRoundTrip.Value); TypeWithDateTimePropertyAsXmlTime utcTimeObject = new TypeWithDateTimePropertyAsXmlTime() { @@ -70,7 +70,7 @@ public static void Xml_TypeWithDateTimePropertyAsXmlTime() TypeWithDateTimePropertyAsXmlTime utcTimeRoundTrip = SerializeAndDeserialize(utcTimeObject, WithXmlHeader(@"15:15:26.9870000Z")); - Assert.StrictEqual(utcTimeObject.Value, utcTimeRoundTrip.Value); + Assert.Equal(utcTimeObject.Value, utcTimeRoundTrip.Value); } [Fact] @@ -359,28 +359,28 @@ public static IEnumerable Xml_ImmutableCollections_MemberData() [Fact] public static void Xml_EnumAsRoot() { - Assert.StrictEqual(MyEnum.Two, SerializeAndDeserialize(MyEnum.Two, + Assert.Equal(MyEnum.Two, SerializeAndDeserialize(MyEnum.Two, @" Two")); - Assert.StrictEqual(ByteEnum.Option1, SerializeAndDeserialize(ByteEnum.Option1, + Assert.Equal(ByteEnum.Option1, SerializeAndDeserialize(ByteEnum.Option1, @" Option1")); - Assert.StrictEqual(SByteEnum.Option1, SerializeAndDeserialize(SByteEnum.Option1, + Assert.Equal(SByteEnum.Option1, SerializeAndDeserialize(SByteEnum.Option1, @" Option1")); - Assert.StrictEqual(ShortEnum.Option1, SerializeAndDeserialize(ShortEnum.Option1, + Assert.Equal(ShortEnum.Option1, SerializeAndDeserialize(ShortEnum.Option1, @" Option1")); - Assert.StrictEqual(IntEnum.Option1, SerializeAndDeserialize(IntEnum.Option1, + Assert.Equal(IntEnum.Option1, SerializeAndDeserialize(IntEnum.Option1, @" Option1")); - Assert.StrictEqual(UIntEnum.Option1, SerializeAndDeserialize(UIntEnum.Option1, + Assert.Equal(UIntEnum.Option1, SerializeAndDeserialize(UIntEnum.Option1, @" Option1")); - Assert.StrictEqual(LongEnum.Option1, SerializeAndDeserialize(LongEnum.Option1, + Assert.Equal(LongEnum.Option1, SerializeAndDeserialize(LongEnum.Option1, @" Option1")); - Assert.StrictEqual(ULongEnum.Option1, SerializeAndDeserialize(ULongEnum.Option1, + Assert.Equal(ULongEnum.Option1, SerializeAndDeserialize(ULongEnum.Option1, @" Option1")); } @@ -397,8 +397,8 @@ public static void Xml_EnumAsMember() "); Assert.NotNull(y); - Assert.StrictEqual(x.F1, y.F1); - Assert.StrictEqual(x.P1, y.P1); + Assert.Equal(x.F1, y.F1); + Assert.Equal(x.P1, y.P1); } #if !XMLSERIALIZERGENERATORTESTS @@ -409,7 +409,7 @@ public static void Xml_EnumAsObject() object o2 = SerializeAndDeserialize(o, WithXmlHeader(@"2")); Assert.NotNull(o2); - Assert.StrictEqual((int)o, o2); + Assert.Equal((int)o, o2); Assert.Equal(MyEnum.Three, (MyEnum)o2); } #endif @@ -427,7 +427,7 @@ public static void Xml_DCClassWithEnumAndStruct() One "); - Assert.StrictEqual(value.MyEnum1, actual.MyEnum1); + Assert.Equal(value.MyEnum1, actual.MyEnum1); Assert.Equal(value.MyStruct.Data, actual.MyStruct.Data); } @@ -487,7 +487,7 @@ public static void Xml_KnownTypesThroughConstructor() ", () => { return new XmlSerializer(typeof(KnownTypesThroughConstructor), new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) }); }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.Equal(((SimpleKnownTypeValue)value.SimpleTypeValue).StrProperty, ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -510,8 +510,8 @@ public static void Xml_BaseClassAndDerivedClassWithSameProperty() "); - Assert.StrictEqual(value.DateTimeProperty, actual.DateTimeProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); + Assert.Equal(value.DateTimeProperty, actual.DateTimeProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.Equal(value.ListProperty.ToArray(), actual.ListProperty.ToArray()); @@ -530,8 +530,8 @@ public static void Xml_BaseClassAndDerivedClassWithSameProperty() 0001-01-01T00:00:00.00001 "); - Assert.StrictEqual(value.DateTimeProperty, actual.DateTimeProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); + Assert.Equal(value.DateTimeProperty, actual.DateTimeProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.Empty(actual.ListProperty.ToArray()); @@ -548,7 +548,7 @@ public static void Xml_EnumFlags() var value2 = SerializeAndDeserialize(value1, @" One Four"); - Assert.StrictEqual(value1, value2); + Assert.Equal(value1, value2); } [ConditionalFact(typeof(PlatformDetection), nameof(PlatformDetection.IsReflectionEmitSupported))] @@ -567,7 +567,7 @@ public static void Xml_SerializeClassThatImplementsInterface() Assert.Equal(value.ClassID, actual.ClassID); Assert.Equal(value.DisplayName, actual.DisplayName); Assert.Equal(value.Id, actual.Id); - Assert.StrictEqual(value.IsLoaded, actual.IsLoaded); + Assert.Equal(value.IsLoaded, actual.IsLoaded); } [Fact] @@ -586,16 +586,16 @@ public static void Xml_XmlAttributesTest() None <xml>Hello XML</xml>XmlNamespaceDeclarationsPropertyValue1onetwothree"); - Assert.StrictEqual(actual.EnumType, value.EnumType); - Assert.StrictEqual(actual.MyChoice, value.MyChoice); + Assert.Equal(actual.EnumType, value.EnumType); + Assert.Equal(actual.MyChoice, value.MyChoice); object[] stringArray = actual.XmlArrayProperty.Where(x => x != null) .Select(x => x.ToString()) .ToArray(); Assert.Equal(stringArray, value.XmlArrayProperty); - Assert.StrictEqual(actual.XmlAttributeProperty, value.XmlAttributeProperty); - Assert.StrictEqual(actual.XmlElementProperty, value.XmlElementProperty); + Assert.Equal(actual.XmlAttributeProperty, value.XmlAttributeProperty); + Assert.Equal(actual.XmlElementProperty, value.XmlElementProperty); Assert.Equal(actual.XmlEnumProperty, value.XmlEnumProperty); - Assert.StrictEqual(actual.XmlIncludeProperty, value.XmlIncludeProperty); + Assert.Equal(actual.XmlIncludeProperty, value.XmlIncludeProperty); Assert.Equal(actual.XmlNamespaceDeclarationsProperty, value.XmlNamespaceDeclarationsProperty); Assert.Equal(actual.XmlTextProperty, value.XmlTextProperty); } @@ -617,9 +617,9 @@ public static void Xml_XmlAnyAttributeTest() stream.Position = 0; var obj = (TypeWithAnyAttribute)serializer.Deserialize(stream); Assert.NotNull(obj); - Assert.StrictEqual(intProperty, obj.IntProperty); + Assert.Equal(intProperty, obj.IntProperty); Assert.Equal(name, obj.Name); - Assert.StrictEqual(2, obj.Attributes.Length); + Assert.Equal(2, obj.Attributes.Length); Assert.Equal(attribute1, obj.Attributes[0].Value); Assert.Equal(attribute2, obj.Attributes[1].Value); } @@ -639,8 +639,8 @@ public static void Xml_Struct() "); // Assert - Assert.StrictEqual(result.Some.A, value.Some.A); - Assert.StrictEqual(result.Some.B, value.Some.B); + Assert.Equal(result.Some.A, value.Some.A); + Assert.Equal(result.Some.B, value.Some.B); } [Fact] @@ -653,8 +653,8 @@ public static void Xml_Enums() Option1 Option2 "); - Assert.StrictEqual(item.Short, actual.Short); - Assert.StrictEqual(item.Int, actual.Int); + Assert.Equal(item.Short, actual.Short); + Assert.Equal(item.Int, actual.Int); } [Fact] @@ -674,13 +674,13 @@ public static void Xml_Nullables() "); - Assert.StrictEqual(item.OptionalInt, actual.OptionalInt); - Assert.StrictEqual(item.Optional, actual.Optional); - Assert.StrictEqual(item.Optionull, actual.Optionull); - Assert.StrictEqual(item.OptionullInt, actual.OptionullInt); + Assert.Equal(item.OptionalInt, actual.OptionalInt); + Assert.Equal(item.Optional, actual.Optional); + Assert.Equal(item.Optionull, actual.Optionull); + Assert.Equal(item.OptionullInt, actual.OptionullInt); Assert.Null(actual.Struct2); - Assert.StrictEqual(item.Struct1.Value.A, actual.Struct1.Value.A); - Assert.StrictEqual(item.Struct1.Value.B, actual.Struct1.Value.B); + Assert.Equal(item.Struct1.Value.A, actual.Struct1.Value.A); + Assert.Equal(item.Struct1.Value.B, actual.Struct1.Value.B); } [Fact] @@ -691,14 +691,14 @@ public static void Xml_DerivedClasses() var expectedXml = WithXmlHeader(@""); var fromBase = SerializeAndDeserialize(dClass, expectedXml, () => new XmlSerializer(typeof(SimpleBaseClass))); Assert.Equal(dClass.AttributeString, fromBase.AttributeString); - Assert.StrictEqual(dClass.DateTimeValue, fromBase.DateTimeValue); + Assert.Equal(dClass.DateTimeValue, fromBase.DateTimeValue); Assert.Equal(dClass.BoolValue, fromBase.BoolValue); // Derived class does not apply XmlRoot attribute to force itself to be emitted with the base class element name, so update expected xml accordingly. expectedXml = WithXmlHeader(@""); var fromDerived = SerializeAndDeserialize(dClass, expectedXml, () => new XmlSerializer(typeof(SimpleDerivedClass))); Assert.Equal(dClass.AttributeString, fromDerived.AttributeString); - Assert.StrictEqual(dClass.DateTimeValue, fromDerived.DateTimeValue); + Assert.Equal(dClass.DateTimeValue, fromDerived.DateTimeValue); Assert.Equal(dClass.BoolValue, fromDerived.BoolValue); } @@ -710,7 +710,7 @@ public static void Xml_ClassImplementingIXmlSerializable() @" "); Assert.Equal(value.StringValue, actual.StringValue); - Assert.StrictEqual(value.GetPrivateMember(), actual.GetPrivateMember()); + Assert.Equal(value.GetPrivateMember(), actual.GetPrivateMember()); Assert.True(ClassImplementingIXmlSerializable.ReadXmlInvoked); Assert.True(ClassImplementingIXmlSerializable.WriteXmlInvoked); } @@ -722,7 +722,7 @@ public static void Xml_TypeWithFieldNameEndBySpecified() var actual = SerializeAndDeserialize(value, @"MyField"); Assert.Equal(value.MyField, actual.MyField); - Assert.StrictEqual(0, actual.MyFieldIgnored); + Assert.Equal(0, actual.MyFieldIgnored); } [Fact] @@ -732,12 +732,12 @@ public static void XML_TypeWithXmlSchemaFormAttribute() var actual = SerializeAndDeserialize(value, @"1abctrue"); - Assert.StrictEqual(value.NoneSchemaFormListProperty.Count, actual.NoneSchemaFormListProperty.Count); + Assert.Equal(value.NoneSchemaFormListProperty.Count, actual.NoneSchemaFormListProperty.Count); Assert.Equal(value.NoneSchemaFormListProperty[0], actual.NoneSchemaFormListProperty[0]); - Assert.StrictEqual(value.UnqualifiedSchemaFormListProperty.Count, actual.UnqualifiedSchemaFormListProperty.Count); - Assert.StrictEqual(value.UnqualifiedSchemaFormListProperty[0], actual.UnqualifiedSchemaFormListProperty[0]); - Assert.StrictEqual(value.QualifiedSchemaFormListProperty.Count, actual.QualifiedSchemaFormListProperty.Count); - Assert.StrictEqual(value.QualifiedSchemaFormListProperty[0], actual.QualifiedSchemaFormListProperty[0]); + Assert.Equal(value.UnqualifiedSchemaFormListProperty.Count, actual.UnqualifiedSchemaFormListProperty.Count); + Assert.Equal(value.UnqualifiedSchemaFormListProperty[0], actual.UnqualifiedSchemaFormListProperty[0]); + Assert.Equal(value.QualifiedSchemaFormListProperty.Count, actual.QualifiedSchemaFormListProperty.Count); + Assert.Equal(value.QualifiedSchemaFormListProperty[0], actual.QualifiedSchemaFormListProperty[0]); } [Fact] @@ -758,7 +758,7 @@ public static void XML_TypeWithXmlTextAttributeOnArray() @" val1val2"); Assert.NotNull(actual.Text); - Assert.StrictEqual(1, actual.Text.Length); + Assert.Equal(1, actual.Text.Length); Assert.Equal("val1val2", actual.Text[0]); } @@ -784,7 +784,7 @@ public static void Xml_TypeWithXmlElementProperty() var expected = new TypeWithXmlElementProperty() { Elements = new[] { productElement, categoryElement } }; var actual = SerializeAndDeserialize(expected, WithXmlHeader(@"Product innertextCategory innertext")); - Assert.StrictEqual(expected.Elements.Length, actual.Elements.Length); + Assert.Equal(expected.Elements.Length, actual.Elements.Length); for (int i = 0; i < expected.Elements.Length; ++i) { Assert.Equal(expected.Elements[i].InnerText, actual.Elements[i].InnerText); @@ -906,7 +906,7 @@ public static void Xml_DifferentSerializeDeserializeOverloads() // XmlSerializer.Deserialize(XmlReader) var actual = (SimpleType)serializer.Deserialize(reader); Assert.Equal(expected.P1, actual.P1); - Assert.StrictEqual(expected.P2, actual.P2); + Assert.Equal(expected.P2, actual.P2); stream.Dispose(); } @@ -919,7 +919,7 @@ public static void Xml_TypeWithTimeSpanProperty() var deserializedObj = SerializeAndDeserialize(obj, WithXmlHeader(@" PT0.001S ")); - Assert.StrictEqual(obj.TimeSpanProperty, deserializedObj.TimeSpanProperty); + Assert.Equal(obj.TimeSpanProperty, deserializedObj.TimeSpanProperty); } [ConditionalFact(typeof(XmlSerializerTests), nameof(DefaultValueAttributeIsSupported))] @@ -979,14 +979,14 @@ public static void Xml_TypeWithDateTimeOffsetProperty() "); - Assert.StrictEqual(obj.DTO, deserializedObj.DTO); - Assert.StrictEqual(obj.DTO2, deserializedObj.DTO2); - Assert.StrictEqual(defDTO, deserializedObj.DTO2); - Assert.StrictEqual(obj.DTOWithDefault, deserializedObj.DTOWithDefault); - Assert.StrictEqual(defDTO, deserializedObj.DTOWithDefault); - Assert.StrictEqual(obj.NullableDTO, deserializedObj.NullableDTO); + Assert.Equal(obj.DTO, deserializedObj.DTO); + Assert.Equal(obj.DTO2, deserializedObj.DTO2); + Assert.Equal(defDTO, deserializedObj.DTO2); + Assert.Equal(obj.DTOWithDefault, deserializedObj.DTOWithDefault); + Assert.Equal(defDTO, deserializedObj.DTOWithDefault); + Assert.Equal(obj.NullableDTO, deserializedObj.NullableDTO); Assert.True(deserializedObj.NullableDTO == null); - Assert.StrictEqual(obj.NullableDTOWithDefault, deserializedObj.NullableDTOWithDefault); + Assert.Equal(obj.NullableDTOWithDefault, deserializedObj.NullableDTOWithDefault); Assert.True(deserializedObj.NullableDTOWithDefault == null); } @@ -1053,7 +1053,7 @@ public static void Xml_DateOnlyAsRoot(string dateString) var result = SerializeAndDeserialize(doObj, WithXmlHeader($""" {FormatDateString(doObj)} """)); - Assert.StrictEqual(doObj, result); + Assert.Equal(doObj, result); } [Theory] @@ -1081,7 +1081,7 @@ public static void Xml_TimeOnlyAsRoot(string timeString) var result = SerializeAndDeserialize(toObj, WithXmlHeader($""" {FormatTimeString(toObj)} """)); - Assert.StrictEqual(toObj, result); + Assert.Equal(toObj, result); } [Theory] @@ -1181,17 +1181,17 @@ public static void Xml_TypeWithDateOnlyAndTimeOnly() """), () => doSerializer); // Verify round trip - Assert.StrictEqual(doObj.Today, doResult.Today); - Assert.StrictEqual(doObj.CustomDate, doResult.CustomDate); - Assert.StrictEqual(defaultDateOnly, doResult.DefaultDate); + Assert.Equal(doObj.Today, doResult.Today); + Assert.Equal(doObj.CustomDate, doResult.CustomDate); + Assert.Equal(defaultDateOnly, doResult.DefaultDate); Assert.Null(doResult.NullableDate); - Assert.StrictEqual(doObj.NullableDateWithValue, doResult.NullableDateWithValue); + Assert.Equal(doObj.NullableDateWithValue, doResult.NullableDateWithValue); Assert.Null(doResult.NullableDefaultDate); - Assert.StrictEqual(doObj.Now, doResult.Now); - Assert.StrictEqual(doObj.CustomTime, doResult.CustomTime); - Assert.StrictEqual(defaultTimeOnly, doResult.DefaultTime); + Assert.Equal(doObj.Now, doResult.Now); + Assert.Equal(doObj.CustomTime, doResult.CustomTime); + Assert.Equal(defaultTimeOnly, doResult.DefaultTime); Assert.Null(doResult.NullableTime); - Assert.StrictEqual(doObj.NullableTimeWithValue, doResult.NullableTimeWithValue); + Assert.Equal(doObj.NullableTimeWithValue, doResult.NullableTimeWithValue); Assert.Null(doResult.NullableDefaultTime); } @@ -1222,7 +1222,7 @@ public static void Xml_XsdDate_With_DateOnly_And_DateTime() """), () => doSerializer); var dtdObj = (DateTimeDateWrapper)Deserialize(dtdSerializer, xml); - Assert.StrictEqual(now.Date, dtdObj.TestValue); + Assert.Equal(now.Date, dtdObj.TestValue); Assert.Equal(DateTimeKind.Unspecified, dtdObj.TestValue.Kind); // Verify DateTime (Unspecified) -> DateOnly @@ -1233,7 +1233,7 @@ public static void Xml_XsdDate_With_DateOnly_And_DateTime() """), () => dtdSerializer); doObj = (DateOnlyWrapper)Deserialize(doSerializer, xml); - Assert.StrictEqual(DateOnly.FromDateTime(dtdObj.TestValue /* now */), doObj.TestValue); + Assert.Equal(DateOnly.FromDateTime(dtdObj.TestValue /* now */), doObj.TestValue); // Verify DateTime (Local) -> DateOnly dtdObj = new DateTimeDateWrapper() { TestValue = localNow }; @@ -1243,7 +1243,7 @@ public static void Xml_XsdDate_With_DateOnly_And_DateTime() """), () => dtdSerializer); doObj = (DateOnlyWrapper)Deserialize(doSerializer, xml); - Assert.StrictEqual(DateOnly.FromDateTime(dtdObj.TestValue /* localNow */), doObj.TestValue); + Assert.Equal(DateOnly.FromDateTime(dtdObj.TestValue /* localNow */), doObj.TestValue); // Verify DateTime (Utc) -> DateOnly dtdObj = new DateTimeDateWrapper() { TestValue = utcNow }; @@ -1253,7 +1253,7 @@ public static void Xml_XsdDate_With_DateOnly_And_DateTime() """), () => dtdSerializer); doObj = (DateOnlyWrapper)Deserialize(doSerializer, xml); - Assert.StrictEqual(DateOnly.FromDateTime(dtdObj.TestValue /* utcNow */), doObj.TestValue); + Assert.Equal(DateOnly.FromDateTime(dtdObj.TestValue /* utcNow */), doObj.TestValue); } [Theory] @@ -1287,7 +1287,7 @@ public static void Xml_XsdTime_With_TimeOnly_And_DateTime(string dateTimeString, """), () => toSerializer); var dttObj = (DateTimeTimeWrapper)Deserialize(dttSerializer, xml); - Assert.StrictEqual(testTime.TimeOfDay, dttObj.TestValue.TimeOfDay); + Assert.Equal(testTime.TimeOfDay, dttObj.TestValue.TimeOfDay); Assert.Equal(DateTimeKind.Unspecified, dttObj.TestValue.Kind); Assert.Equal(DateTime.MinValue.Date, dttObj.TestValue.Date); @@ -1300,7 +1300,7 @@ public static void Xml_XsdTime_With_TimeOnly_And_DateTime(string dateTimeString, """), () => dttSerializer); var toaxtObj = (TimeOnlyAsXsdTimeWrapper)Deserialize(toaxtSerializer, xml); - Assert.StrictEqual(TimeOnly.FromDateTime(dttObj.TestValue /* now */), toaxtObj.TestValue); + Assert.Equal(TimeOnly.FromDateTime(dttObj.TestValue /* now */), toaxtObj.TestValue); } [Fact] @@ -1311,7 +1311,7 @@ public static void Xml_TypeWithByteProperty() WithXmlHeader(@" 123 ")); - Assert.StrictEqual(obj.ByteProperty, deserializedObj.ByteProperty); + Assert.Equal(obj.ByteProperty, deserializedObj.ByteProperty); } [Fact] @@ -1417,7 +1417,7 @@ public static void Xml_SimpleType() ")); Assert.NotNull(deserializedObj); Assert.Equal(obj.P1, deserializedObj.P1); - Assert.StrictEqual(obj.P2, deserializedObj.P2); + Assert.Equal(obj.P2, deserializedObj.P2); } [Fact] @@ -1464,24 +1464,24 @@ public static void Xml_BaseClassAndDerivedClass2WithSameProperty() "); - Assert.StrictEqual(value.DateTimeProperty, actual.DateTimeProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); + Assert.Equal(value.DateTimeProperty, actual.DateTimeProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.Equal(value.ListProperty.ToArray(), actual.ListProperty.ToArray()); // All base properties have been hidden, so they should be default here in the base class BaseClassWithSamePropertyName castAsBase = (BaseClassWithSamePropertyName)actual; - Assert.StrictEqual(default(DateTime), castAsBase.DateTimeProperty); - Assert.StrictEqual(default(int), castAsBase.IntProperty); + Assert.Equal(default(DateTime), castAsBase.DateTimeProperty); + Assert.Equal(default(int), castAsBase.IntProperty); Assert.Null(castAsBase.StringProperty); Assert.Null(castAsBase.ListProperty); // IntProperty and StringProperty are not hidden in Derived2, so they should be set here in the middle DerivedClassWithSameProperty castAsMiddle = (DerivedClassWithSameProperty)actual; - Assert.StrictEqual(value.IntProperty, castAsMiddle.IntProperty); + Assert.Equal(value.IntProperty, castAsMiddle.IntProperty); Assert.Equal(value.StringProperty, castAsMiddle.StringProperty); // The other properties should be default - Assert.StrictEqual(default(DateTime), castAsMiddle.DateTimeProperty); + Assert.Equal(default(DateTime), castAsMiddle.DateTimeProperty); Assert.Null(castAsMiddle.ListProperty); @@ -1496,24 +1496,24 @@ public static void Xml_BaseClassAndDerivedClass2WithSameProperty() 0001-01-01T00:00:00.00001Z "); - Assert.StrictEqual(value.DateTimeProperty, actual.DateTimeProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); + Assert.Equal(value.DateTimeProperty, actual.DateTimeProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.Empty(actual.ListProperty.ToArray()); // All base properties have been hidden, so they should be default here in the base class castAsBase = (BaseClassWithSamePropertyName)actual; - Assert.StrictEqual(default(DateTime), castAsBase.DateTimeProperty); - Assert.StrictEqual(default(int), castAsBase.IntProperty); + Assert.Equal(default(DateTime), castAsBase.DateTimeProperty); + Assert.Equal(default(int), castAsBase.IntProperty); Assert.Null(castAsBase.StringProperty); Assert.Null(castAsBase.ListProperty); // IntProperty and StringProperty are not hidden in Derived2, so they should be set here in the middle castAsMiddle = (DerivedClassWithSameProperty)actual; - Assert.StrictEqual(value.IntProperty, castAsMiddle.IntProperty); + Assert.Equal(value.IntProperty, castAsMiddle.IntProperty); Assert.Equal(value.StringProperty, castAsMiddle.StringProperty); // The other properties should be default - Assert.StrictEqual(default(DateTime), castAsMiddle.DateTimeProperty); + Assert.Equal(default(DateTime), castAsMiddle.DateTimeProperty); Assert.Null(castAsMiddle.ListProperty); } @@ -1533,8 +1533,8 @@ public static void Xml_TypeWithPropertiesHavingDefaultValue_DefaultValue() Assert.NotNull(actual); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.Equal(value.EmptyStringProperty, actual.EmptyStringProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); - Assert.StrictEqual(value.CharProperty, actual.CharProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); + Assert.Equal(value.CharProperty, actual.CharProperty); } [Fact] @@ -1563,7 +1563,7 @@ public static void Xml_TypeWithEnumPropertyHavingDefaultValue() skipStringCompare: false); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); value = new TypeWithEnumPropertyHavingDefaultValue() { EnumProperty = IntEnum.Option1 }; @@ -1572,7 +1572,7 @@ public static void Xml_TypeWithEnumPropertyHavingDefaultValue() skipStringCompare: false); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); } [Fact] @@ -1583,7 +1583,7 @@ public static void Xml_TypeWithEnumFlagPropertyHavingDefaultValue() WithXmlHeader("\r\n Two Three\r\n")); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); value = new TypeWithEnumFlagPropertyHavingDefaultValue(); @@ -1591,7 +1591,7 @@ public static void Xml_TypeWithEnumFlagPropertyHavingDefaultValue() WithXmlHeader("")); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); } [Fact] @@ -1607,7 +1607,7 @@ public static void Xml_Soap_TypeWithEnumFlagPropertyHavingDefaultValue() () => serializer); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); value = new TypeWithEnumFlagPropertyHavingDefaultValue(); @@ -1617,7 +1617,7 @@ public static void Xml_Soap_TypeWithEnumFlagPropertyHavingDefaultValue() () => serializer); Assert.NotNull(actual); - Assert.StrictEqual(value.EnumProperty, actual.EnumProperty); + Assert.Equal(value.EnumProperty, actual.EnumProperty); } [Fact] @@ -1631,7 +1631,7 @@ public static void Xml_TypeWithXmlQualifiedName() var actual = SerializeAndDeserialize(value, WithXmlHeader("\r\n FooName\r\n"), skipStringCompare: false); Assert.NotNull(actual); - Assert.StrictEqual(value.Value, actual.Value); + Assert.Equal(value.Value, actual.Value); } [Fact] @@ -1651,7 +1651,7 @@ public static void Xml_Soap_TypeWithXmlQualifiedName() () => serializer); Assert.NotNull(actual); - Assert.StrictEqual(value.Value, actual.Value); + Assert.Equal(value.Value, actual.Value); } [Fact] @@ -2476,7 +2476,7 @@ public static void Xml_TypeWithMismatchBetweenAttributeAndPropertyType() var value = new TypeWithMismatchBetweenAttributeAndPropertyType(); var actual = SerializeAndDeserialize(value, @""); - Assert.StrictEqual(value.IntValue, actual.IntValue); + Assert.Equal(value.IntValue, actual.IntValue); } [Fact] @@ -2592,8 +2592,8 @@ public static void ValidateXElement() Assert.NotNull(retWrapper); Assert.NotNull(retWrapper.Value); - Assert.Equal("Root", retWrapper.Value.Name); - Assert.Equivalent(wrapper, retWrapper); + Assert.Equal(wrapper.Value.Name, retWrapper.Value.Name); + Assert.Equal(wrapper.Value.ToString(), retWrapper.Value.ToString()); } [Fact] diff --git a/src/libraries/System.Resources.Extensions/tests/BinaryFormatTests/FormattedObject/BinaryFormattedObjectTests.cs b/src/libraries/System.Resources.Extensions/tests/BinaryFormatTests/FormattedObject/BinaryFormattedObjectTests.cs index b08874b1336203..86a53df86ca1b1 100644 --- a/src/libraries/System.Resources.Extensions/tests/BinaryFormatTests/FormattedObject/BinaryFormattedObjectTests.cs +++ b/src/libraries/System.Resources.Extensions/tests/BinaryFormatTests/FormattedObject/BinaryFormattedObjectTests.cs @@ -102,7 +102,9 @@ public void ReadHashTableWithRepeatedStrings() // Everything in the second keys is a string reference. SZArrayRecord arrayRecord = (SZArrayRecord)systemClass.GetSerializationRecord("Keys")!; SerializationRecord[] array = arrayRecord.GetArray(); - Assert.Equivalent(new string[] { "TheOther", "That", "This" }, array.OfType>().Select(sr => sr.Value).ToArray()); + Assert.Equal( + new string[] { "TheOther", "That", "This" }.Order(), + array.OfType>().Select(sr => sr.Value).Order()); } [Fact] @@ -122,7 +124,9 @@ public void ReadHashTableWithNullValues() // Everything in the second keys is a string reference. SZArrayRecord keysRecord = (SZArrayRecord)systemClass.GetSerializationRecord("Keys")!; SerializationRecord[] keysRecords = keysRecord.GetArray(); - Assert.Equivalent(new string[] { "Yowza", "Youza", "Meeza" }, keysRecords.OfType>().Select(sr => sr.Value).ToArray()); + Assert.Equal( + new string[] { "Yowza", "Youza", "Meeza" }.Order(), + keysRecords.OfType>().Select(sr => sr.Value).Order()); SZArrayRecord valuesRecord = (SZArrayRecord)systemClass.GetSerializationRecord("Values")!; SerializationRecord[] valuesRecords = valuesRecord.GetArray(); diff --git a/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs b/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs index 6bece0e9ada512..573f2090b5bf2f 100644 --- a/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs +++ b/src/libraries/System.Runtime.Serialization.Json/tests/DataContractJsonSerializer.cs @@ -51,47 +51,47 @@ public static void DCJS_ByteArrayAsRoot() public static void DCJS_CharAsRoot() { // Special characters - Assert.StrictEqual((char)0x2f, SerializeAndDeserialize((char)0x2f, @"""\/""")); // Expected output string is: \/ - Assert.StrictEqual((char)0x5c, SerializeAndDeserialize((char)0x5c, @"""\\""")); // \\ - Assert.StrictEqual((char)0x27, SerializeAndDeserialize((char)0x27, @"""'""")); // ' - Assert.StrictEqual((char)0x22, SerializeAndDeserialize((char)0x22, @"""\""""")); // \" + Assert.Equal((char)0x2f, SerializeAndDeserialize((char)0x2f, @"""\/""")); // Expected output string is: \/ + Assert.Equal((char)0x5c, SerializeAndDeserialize((char)0x5c, @"""\\""")); // \\ + Assert.Equal((char)0x27, SerializeAndDeserialize((char)0x27, @"""'""")); // ' + Assert.Equal((char)0x22, SerializeAndDeserialize((char)0x22, @"""\""""")); // \" // There are 5 ranges of characters that have output in the form of "\u". // The following tests the start and end character and at least one character in each range // and also in between the ranges. // #1. 0x0000 - 0x001F - Assert.StrictEqual(char.MinValue, SerializeAndDeserialize(char.MinValue, @"""\u0000""")); - Assert.StrictEqual((char)0x10, SerializeAndDeserialize((char)0x10, @"""\u0010""")); - Assert.StrictEqual((char)0x1f, SerializeAndDeserialize((char)0x1f, @"""\u001f""")); + Assert.Equal(char.MinValue, SerializeAndDeserialize(char.MinValue, @"""\u0000""")); + Assert.Equal((char)0x10, SerializeAndDeserialize((char)0x10, @"""\u0010""")); + Assert.Equal((char)0x1f, SerializeAndDeserialize((char)0x1f, @"""\u001f""")); // Between #1 and #2 - Assert.StrictEqual('a', SerializeAndDeserialize('a', @"""a""")); // 0x0061 + Assert.Equal('a', SerializeAndDeserialize('a', @"""a""")); // 0x0061 // #2. 0x0085 - Assert.StrictEqual((char)0x85, SerializeAndDeserialize((char)0x85, @"""\u0085""")); + Assert.Equal((char)0x85, SerializeAndDeserialize((char)0x85, @"""\u0085""")); // Between #2 and #3 - Assert.StrictEqual('\u00F1', SerializeAndDeserialize('\u00F1', "\"\u00F1\"")); // 0x00F1 + Assert.Equal('\u00F1', SerializeAndDeserialize('\u00F1', "\"\u00F1\"")); // 0x00F1 // #3. 0x2028 - 0x2029 - Assert.StrictEqual((char)0x2028, SerializeAndDeserialize((char)0x2028, @"""\u2028""")); - Assert.StrictEqual((char)0x2029, SerializeAndDeserialize((char)0x2029, @"""\u2029""")); + Assert.Equal((char)0x2028, SerializeAndDeserialize((char)0x2028, @"""\u2028""")); + Assert.Equal((char)0x2029, SerializeAndDeserialize((char)0x2029, @"""\u2029""")); // Between #3 and #4 - Assert.StrictEqual('?', SerializeAndDeserialize('?', @"""?""")); // 0x6F22 + Assert.Equal('?', SerializeAndDeserialize('?', @"""?""")); // 0x6F22 // #4. 0xD800 - 0xDFFF - Assert.StrictEqual((char)0xd800, SerializeAndDeserialize((char)0xd800, @"""\ud800""")); - Assert.StrictEqual((char)0xdabc, SerializeAndDeserialize((char)0xdabc, @"""\udabc""")); - Assert.StrictEqual((char)0xdfff, SerializeAndDeserialize((char)0xdfff, @"""\udfff""")); + Assert.Equal((char)0xd800, SerializeAndDeserialize((char)0xd800, @"""\ud800""")); + Assert.Equal((char)0xdabc, SerializeAndDeserialize((char)0xdabc, @"""\udabc""")); + Assert.Equal((char)0xdfff, SerializeAndDeserialize((char)0xdfff, @"""\udfff""")); // Between #4 and #5 - Assert.StrictEqual((char)0xeabc, SerializeAndDeserialize((char)0xeabc, "\"\uEABC\"")); + Assert.Equal((char)0xeabc, SerializeAndDeserialize((char)0xeabc, "\"\uEABC\"")); // #5. 0xFFFE - 0xFFFF - Assert.StrictEqual((char)0xfffe, SerializeAndDeserialize((char)0xfffe, @"""\ufffe""")); - Assert.StrictEqual(char.MaxValue, SerializeAndDeserialize(char.MaxValue, @"""\uffff""")); + Assert.Equal((char)0xfffe, SerializeAndDeserialize((char)0xfffe, @"""\ufffe""")); + Assert.Equal(char.MaxValue, SerializeAndDeserialize(char.MaxValue, @"""\uffff""")); } [Fact] @@ -100,17 +100,17 @@ public static void DCJS_NewLineChars() char ch1 = (char)0x0085; char ch2 = (char)0x2028; char ch3 = (char)0x2029; - Assert.StrictEqual(SerializeAndDeserialize(ch1, @"""\u0085"""), ch1); - Assert.StrictEqual(SerializeAndDeserialize(ch2, @"""\u2028"""), ch2); - Assert.StrictEqual(SerializeAndDeserialize(ch3, @"""\u2029"""), ch3); + Assert.Equal(SerializeAndDeserialize(ch1, @"""\u0085"""), ch1); + Assert.Equal(SerializeAndDeserialize(ch2, @"""\u2028"""), ch2); + Assert.Equal(SerializeAndDeserialize(ch3, @"""\u2029"""), ch3); } [Fact] public static void DCJS_ByteAsRoot() { - Assert.StrictEqual(10, SerializeAndDeserialize(10, "10")); - Assert.StrictEqual(byte.MinValue, SerializeAndDeserialize(byte.MinValue, "0")); - Assert.StrictEqual(byte.MaxValue, SerializeAndDeserialize(byte.MaxValue, "255")); + Assert.Equal(10, SerializeAndDeserialize(10, "10")); + Assert.Equal(byte.MinValue, SerializeAndDeserialize(byte.MinValue, "0")); + Assert.Equal(byte.MaxValue, SerializeAndDeserialize(byte.MaxValue, "255")); } [Fact] @@ -120,11 +120,11 @@ public static void DCJS_DateTimeAsRoot() // DO NOT USE TimeZoneInfo.Local.BaseUtcOffset ! var offsetMinutes = (int)TimeZoneInfo.Local.GetUtcOffset(new DateTime(2013, 1, 2)).TotalMinutes; var timeZoneString = string.Format("{0:+;-}{1}", offsetMinutes, new TimeSpan(0, offsetMinutes, 0).ToString(@"hhmm")); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357084800000{0})\/""", timeZoneString)), new DateTime(2013, 1, 2).AddMinutes(offsetMinutes)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357095845006{0})\/""", timeZoneString)), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local).AddMinutes(offsetMinutes)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357095845006{0})\/""", timeZoneString)), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified).AddMinutes(offsetMinutes)); - Assert.StrictEqual(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), @"""\/Date(1357095845006)\/"""), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)); - Assert.StrictEqual(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), @"""\/Date(-62135596800000)\/"""), DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc)); + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357084800000{0})\/""", timeZoneString)), new DateTime(2013, 1, 2).AddMinutes(offsetMinutes)); + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357095845006{0})\/""", timeZoneString)), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local).AddMinutes(offsetMinutes)); + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified).AddMinutes(offsetMinutes), string.Format(@"""\/Date(1357095845006{0})\/""", timeZoneString)), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified).AddMinutes(offsetMinutes)); + Assert.Equal(SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), @"""\/Date(1357095845006)\/"""), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)); + Assert.Equal(SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), @"""\/Date(-62135596800000)\/"""), DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc)); SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc), @"""\/Date(253402300799999)\/"""); } @@ -133,37 +133,37 @@ public static void DCJS_DecimalAsRoot() { foreach (decimal value in new decimal[] { (decimal)-1.2, (decimal)0, (decimal)2.3, decimal.MinValue, decimal.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString(CultureInfo.InvariantCulture)), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString(CultureInfo.InvariantCulture)), value); } } [Fact] public static void DCJS_DoubleAsRoot() { - Assert.StrictEqual(-1.2, SerializeAndDeserialize(-1.2, "-1.2")); - Assert.StrictEqual(0.0, SerializeAndDeserialize(0.0, "0")); - Assert.StrictEqual(0.0, SerializeAndDeserialize(-0.0, "-0")); + Assert.Equal(-1.2, SerializeAndDeserialize(-1.2, "-1.2")); + Assert.Equal(0.0, SerializeAndDeserialize(0.0, "0")); + Assert.Equal(0.0, SerializeAndDeserialize(-0.0, "-0")); Assert.Equal("-0", SerializeAndDeserialize(-0.0, "-0").ToString()); - Assert.StrictEqual(2.3, SerializeAndDeserialize(2.3, "2.3")); - Assert.StrictEqual(double.MinValue, SerializeAndDeserialize(double.MinValue, "-1.7976931348623157E+308")); - Assert.StrictEqual(double.MaxValue, SerializeAndDeserialize(double.MaxValue, "1.7976931348623157E+308")); + Assert.Equal(2.3, SerializeAndDeserialize(2.3, "2.3")); + Assert.Equal(double.MinValue, SerializeAndDeserialize(double.MinValue, "-1.7976931348623157E+308")); + Assert.Equal(double.MaxValue, SerializeAndDeserialize(double.MaxValue, "1.7976931348623157E+308")); } [Fact] public static void DCJS_FloatAsRoot() { - Assert.StrictEqual((float)-1.2, SerializeAndDeserialize((float)-1.2, "-1.2")); - Assert.StrictEqual((float)0.0, SerializeAndDeserialize((float)0.0, "0")); - Assert.StrictEqual((float)0.0, SerializeAndDeserialize((float)-0.0, "-0")); + Assert.Equal((float)-1.2, SerializeAndDeserialize((float)-1.2, "-1.2")); + Assert.Equal((float)0.0, SerializeAndDeserialize((float)0.0, "0")); + Assert.Equal((float)0.0, SerializeAndDeserialize((float)-0.0, "-0")); Assert.Equal("-0", SerializeAndDeserialize((float)-0.0, "-0").ToString()); - Assert.StrictEqual((float)2.3, SerializeAndDeserialize((float)2.3, "2.3")); + Assert.Equal((float)2.3, SerializeAndDeserialize((float)2.3, "2.3")); } [Fact] public static void DCJS_FloatAsRoot_NotNetFramework() { - Assert.StrictEqual(float.MinValue, SerializeAndDeserialize(float.MinValue, "-3.4028235E+38")); - Assert.StrictEqual(float.MaxValue, SerializeAndDeserialize(float.MaxValue, "3.4028235E+38")); + Assert.Equal(float.MinValue, SerializeAndDeserialize(float.MinValue, "-3.4028235E+38")); + Assert.Equal(float.MaxValue, SerializeAndDeserialize(float.MaxValue, "3.4028235E+38")); } [Fact] @@ -171,11 +171,11 @@ public static void DCJS_DateOnlyAsRoot() { DateOnly value = new DateOnly(2024, 12, 31); string expected = "\"2024-12-31\""; // JSON primitive as string - Assert.StrictEqual(value, SerializeAndDeserialize(value, expected)); + Assert.Equal(value, SerializeAndDeserialize(value, expected)); DateOnly? nullable = new DateOnly(2001, 1, 1); string expectedNullable = "\"2001-01-01\""; - Assert.StrictEqual(nullable, SerializeAndDeserialize(nullable, expectedNullable)); + Assert.Equal(nullable, SerializeAndDeserialize(nullable, expectedNullable)); } [Fact] @@ -183,11 +183,11 @@ public static void DCJS_TimeOnlyAsRoot() { TimeOnly value = new TimeOnly(13, 5, 7, 123); string expected = "\"13:05:07.123\""; - Assert.StrictEqual(value, SerializeAndDeserialize(value, expected)); + Assert.Equal(value, SerializeAndDeserialize(value, expected)); TimeOnly whole = new TimeOnly(6, 30, 0); string expectedWhole = "\"06:30:00\""; - Assert.StrictEqual(whole, SerializeAndDeserialize(whole, expectedWhole)); + Assert.Equal(whole, SerializeAndDeserialize(whole, expectedWhole)); } [Fact] @@ -195,7 +195,7 @@ public static void DCJS_GuidAsRoot() { foreach (Guid value in new Guid[] { Guid.NewGuid(), Guid.Empty }) { - Assert.StrictEqual(SerializeAndDeserialize(value, string.Format(@"""{0}""", value.ToString())), value); + Assert.Equal(SerializeAndDeserialize(value, string.Format(@"""{0}""", value.ToString())), value); } } @@ -204,7 +204,7 @@ public static void DCJS_IntAsRoot() { foreach (int value in new int[] { -1, 0, 2, int.MinValue, int.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } @@ -213,24 +213,24 @@ public static void DCJS_LongAsRoot() { foreach (long value in new long[] { (long)-1, (long)0, (long)2, long.MinValue, long.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } [Fact] public static void DCJS_ObjectAsRoot() { - Assert.StrictEqual(1, SerializeAndDeserialize(1, "1")); - Assert.StrictEqual(true, SerializeAndDeserialize(true, "true")); + Assert.Equal(1, SerializeAndDeserialize(1, "1")); + Assert.Equal(true, SerializeAndDeserialize(true, "true")); Assert.Null(SerializeAndDeserialize(null, "null")); - Assert.StrictEqual("abc", SerializeAndDeserialize("abc", @"""abc""")); + Assert.Equal("abc", SerializeAndDeserialize("abc", @"""abc""")); } [Fact] public static void DCJS_XmlQualifiedNameAsRoot() { - Assert.StrictEqual(SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), @"""abc:def"""), new XmlQualifiedName("abc", "def")); - Assert.StrictEqual(SerializeAndDeserialize(XmlQualifiedName.Empty, @""""""), XmlQualifiedName.Empty); + Assert.Equal(SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), @"""abc:def"""), new XmlQualifiedName("abc", "def")); + Assert.Equal(SerializeAndDeserialize(XmlQualifiedName.Empty, @""""""), XmlQualifiedName.Empty); } [Fact] @@ -238,7 +238,7 @@ public static void DCJS_ShortAsRoot() { foreach (short value in new short[] { (short)-1.2, (short)0, (short)2.3, short.MinValue, short.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } @@ -247,7 +247,7 @@ public static void DCJS_SbyteAsRoot() { foreach (sbyte value in new sbyte[] { (sbyte)3, (sbyte)0, sbyte.MinValue, sbyte.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } @@ -338,10 +338,10 @@ public static void DCJS_StringAsRoot_BackwardCompatibility() [Fact] public static void DCJS_TimeSpanAsRoot() { - Assert.StrictEqual(SerializeAndDeserialize(new TimeSpan(1, 2, 3), @"""PT1H2M3S"""), new TimeSpan(1, 2, 3)); - Assert.StrictEqual(SerializeAndDeserialize(TimeSpan.Zero, @"""PT0S"""), TimeSpan.Zero); - Assert.StrictEqual(SerializeAndDeserialize(TimeSpan.MinValue, @"""-P10675199DT2H48M5.4775808S"""), TimeSpan.MinValue); - Assert.StrictEqual(SerializeAndDeserialize(TimeSpan.MaxValue, @"""P10675199DT2H48M5.4775807S"""), TimeSpan.MaxValue); + Assert.Equal(SerializeAndDeserialize(new TimeSpan(1, 2, 3), @"""PT1H2M3S"""), new TimeSpan(1, 2, 3)); + Assert.Equal(SerializeAndDeserialize(TimeSpan.Zero, @"""PT0S"""), TimeSpan.Zero); + Assert.Equal(SerializeAndDeserialize(TimeSpan.MinValue, @"""-P10675199DT2H48M5.4775808S"""), TimeSpan.MinValue); + Assert.Equal(SerializeAndDeserialize(TimeSpan.MaxValue, @"""P10675199DT2H48M5.4775807S"""), TimeSpan.MaxValue); } [Fact] @@ -349,7 +349,7 @@ public static void DCJS_UintAsRoot() { foreach (uint value in new uint[] { (uint)3, (uint)0, uint.MinValue, uint.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } @@ -358,7 +358,7 @@ public static void DCJS_UlongAsRoot() { foreach (ulong value in new ulong[] { (ulong)3, (ulong)0, ulong.MinValue, ulong.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } @@ -367,15 +367,15 @@ public static void DCJS_UshortAsRoot() { foreach (ushort value in new ushort[] { (ushort)3, (ushort)0, ushort.MinValue, ushort.MaxValue }) { - Assert.StrictEqual(SerializeAndDeserialize(value, value.ToString()), value); + Assert.Equal(SerializeAndDeserialize(value, value.ToString()), value); } } [Fact] public static void DCJS_UriAsRoot() { - Assert.StrictEqual(SerializeAndDeserialize(new Uri(@"http://abc/"), @"""http:\/\/abc\/"""), new Uri(@"http://abc/")); - Assert.StrictEqual(SerializeAndDeserialize(new Uri(@"http://abc/def/x.aspx?p1=12&p2=34"), @"""http:\/\/abc\/def\/x.aspx?p1=12&p2=34"""), new Uri(@"http://abc/def/x.aspx?p1=12&p2=34")); + Assert.Equal(SerializeAndDeserialize(new Uri(@"http://abc/"), @"""http:\/\/abc\/"""), new Uri(@"http://abc/")); + Assert.Equal(SerializeAndDeserialize(new Uri(@"http://abc/def/x.aspx?p1=12&p2=34"), @"""http:\/\/abc\/def\/x.aspx?p1=12&p2=34"""), new Uri(@"http://abc/def/x.aspx?p1=12&p2=34")); } [Fact] @@ -955,9 +955,9 @@ public static void DCJS_CustomType() Assert.NotNull(y); Assert.NotNull(y.PropX); - Assert.StrictEqual(x.PropX.PropC, y.PropX.PropC); - Assert.StrictEqual(((MyTypeC)x.PropX).PropB, ((MyTypeC)y.PropX).PropB); - Assert.StrictEqual(x.PropY, y.PropY); + Assert.Equal(x.PropX.PropC, y.PropX.PropC); + Assert.Equal(((MyTypeC)x.PropX).PropB, ((MyTypeC)y.PropX).PropB); + Assert.Equal(x.PropY, y.PropY); } [Fact] @@ -989,14 +989,14 @@ public static void DCJS_IgnoreDataMemberAttribute() [Fact] public static void DCJS_EnumAsRoot() { - Assert.StrictEqual(MyEnum.Two, SerializeAndDeserialize(MyEnum.Two, "1")); - Assert.StrictEqual(ByteEnum.Option1, SerializeAndDeserialize(ByteEnum.Option1, "1")); - Assert.StrictEqual(SByteEnum.Option1, SerializeAndDeserialize(SByteEnum.Option1, "1")); - Assert.StrictEqual(ShortEnum.Option1, SerializeAndDeserialize(ShortEnum.Option1, "1")); - Assert.StrictEqual(IntEnum.Option1, SerializeAndDeserialize(IntEnum.Option1, "1")); - Assert.StrictEqual(UIntEnum.Option1, SerializeAndDeserialize(UIntEnum.Option1, "1")); - Assert.StrictEqual(LongEnum.Option1, SerializeAndDeserialize(LongEnum.Option1, "1")); - Assert.StrictEqual(ULongEnum.Option1, SerializeAndDeserialize(ULongEnum.Option1, "1")); + Assert.Equal(MyEnum.Two, SerializeAndDeserialize(MyEnum.Two, "1")); + Assert.Equal(ByteEnum.Option1, SerializeAndDeserialize(ByteEnum.Option1, "1")); + Assert.Equal(SByteEnum.Option1, SerializeAndDeserialize(SByteEnum.Option1, "1")); + Assert.Equal(ShortEnum.Option1, SerializeAndDeserialize(ShortEnum.Option1, "1")); + Assert.Equal(IntEnum.Option1, SerializeAndDeserialize(IntEnum.Option1, "1")); + Assert.Equal(UIntEnum.Option1, SerializeAndDeserialize(UIntEnum.Option1, "1")); + Assert.Equal(LongEnum.Option1, SerializeAndDeserialize(LongEnum.Option1, "1")); + Assert.Equal(ULongEnum.Option1, SerializeAndDeserialize(ULongEnum.Option1, "1")); } [Fact] @@ -1006,8 +1006,8 @@ public static void DCJS_EnumAsMember() TypeWithEnumMembers y = SerializeAndDeserialize(x, @"{""F1"":2,""P1"":1}"); Assert.NotNull(y); - Assert.StrictEqual(x.F1, y.F1); - Assert.StrictEqual(x.P1, y.P1); + Assert.Equal(x.F1, y.F1); + Assert.Equal(x.P1, y.P1); } [Fact] @@ -1016,8 +1016,8 @@ public static void DCJS_DCClassWithEnumAndStruct() var x = new DCClassWithEnumAndStruct(true); var y = SerializeAndDeserialize(x, @"{""MyEnum1"":0,""MyStruct"":{""Data"":""Data""}}"); - Assert.StrictEqual(x.MyStruct, y.MyStruct); - Assert.StrictEqual(x.MyEnum1, y.MyEnum1); + Assert.Equal(x.MyStruct, y.MyStruct); + Assert.Equal(x.MyEnum1, y.MyEnum1); } [Fact] @@ -1030,12 +1030,12 @@ public static void DCJS_SuspensionManager() var y = SerializeAndDeserialize>(dict0, @"[{""Key"":""Key0"",""Value"":[{""__type"":""KeyValuePairOfstringanyType:#System.Collections.Generic"",""key"":""Key1-0"",""value"":""Value1-0""},{""__type"":""KeyValuePairOfstringanyType:#System.Collections.Generic"",""key"":""Key1-1"",""value"":[{""__type"":""KeyValuePairOfstringanyType:#System.Collections.Generic"",""key"":""Key2-0"",""value"":""Value2-0""}]}]}]" ); Assert.NotNull(y); - Assert.StrictEqual(1, y.Count); + Assert.Equal(1, y.Count); Assert.True(y["Key0"] is object[]); Assert.Equal("Key1-0", ((KeyValuePair)((object[])y["Key0"])[0]).Key); - Assert.StrictEqual("Value1-0", ((KeyValuePair)((object[])y["Key0"])[0]).Value); + Assert.Equal("Value1-0", ((KeyValuePair)((object[])y["Key0"])[0]).Value); Assert.True(((KeyValuePair)((object[])y["Key0"])[1]).Value is object[]); - Assert.StrictEqual("Value2-0", ((KeyValuePair)((object[])((KeyValuePair)((object[])y["Key0"])[1]).Value)[0]).Value); + Assert.Equal("Value2-0", ((KeyValuePair)((object[])((KeyValuePair)((object[])y["Key0"])[1]).Value)[0]).Value); } [Fact] @@ -1045,7 +1045,7 @@ public static void DCJS_KeyValuePairOfStringObject() var y = SerializeAndDeserialize>(x, @"{""key"":""key1"",""value"":""key1value""}"); Assert.Equal("key1", y.Key); - Assert.StrictEqual("key1value", y.Value); + Assert.Equal("key1value", y.Value); } [Fact] @@ -1067,12 +1067,12 @@ public static void DCJS_DictionaryWithVariousKeyValueTypes() var x = new DictionaryWithVariousKeyValueTypes(true); var y = SerializeAndDeserialize(x, @"{""WithEnums"":[{""Key"":1,""Value"":2},{""Key"":0,""Value"":0}],""WithNullables"":[{""Key"":-32768,""Value"":true},{""Key"":0,""Value"":false},{""Key"":32767,""Value"":null}],""WithStructs"":[{""Key"":{""value"":10},""Value"":{""value"":12}},{""Key"":{""value"":2147483647},""Value"":{""value"":-2147483648}}]}"); - Assert.StrictEqual(MyEnum.Three, y.WithEnums[MyEnum.Two]); - Assert.StrictEqual(MyEnum.One, y.WithEnums[MyEnum.One]); - Assert.StrictEqual(y.WithStructs[new StructNotSerializable() { value = 10 }], new StructNotSerializable() { value = 12 }); - Assert.StrictEqual(y.WithStructs[new StructNotSerializable() { value = int.MaxValue }], new StructNotSerializable() { value = int.MinValue }); - Assert.StrictEqual(true, y.WithNullables[short.MinValue]); - Assert.StrictEqual(false, y.WithNullables[0]); + Assert.Equal(MyEnum.Three, y.WithEnums[MyEnum.Two]); + Assert.Equal(MyEnum.One, y.WithEnums[MyEnum.One]); + Assert.Equal(y.WithStructs[new StructNotSerializable() { value = 10 }], new StructNotSerializable() { value = 12 }); + Assert.Equal(y.WithStructs[new StructNotSerializable() { value = int.MaxValue }], new StructNotSerializable() { value = int.MinValue }); + Assert.Equal(true, y.WithNullables[short.MinValue]); + Assert.Equal(false, y.WithNullables[0]); Assert.Null(y.WithNullables[short.MaxValue]); } @@ -1122,10 +1122,10 @@ public static void DCJS_WithDuplicateNames() var y = SerializeAndDeserialize(x, "{\"ClassA1\":{\"Name\":\"Hello World! \u6F22 \u00F1\"},\"ClassA2\":{\"Nombre\":\"\"},\"EnumA1\":1,\"EnumA2\":1,\"StructA1\":{\"Text\":\"\"},\"StructA2\":{\"Texto\":\"\"}}"); Assert.Equal(x.ClassA1.Name, y.ClassA1.Name); - Assert.StrictEqual(x.StructA1, y.StructA1); - Assert.StrictEqual(x.EnumA1, y.EnumA1); - Assert.StrictEqual(x.EnumA2, y.EnumA2); - Assert.StrictEqual(x.StructA2, y.StructA2); + Assert.Equal(x.StructA1, y.StructA1); + Assert.Equal(x.EnumA1, y.EnumA1); + Assert.Equal(x.EnumA2, y.EnumA2); + Assert.Equal(x.StructA2, y.StructA2); } [Fact] @@ -1152,10 +1152,10 @@ public static void DCJS_WithXElement() private static void VerifyXElementObject(XElement x1, XElement x2, bool checkFirstAttribute = true) { Assert.Equal(x1.Value, x2.Value); - Assert.StrictEqual(x1.Name, x2.Name); + Assert.Equal(x1.Name, x2.Name); if (checkFirstAttribute) { - Assert.StrictEqual(x1.FirstAttribute.Name, x2.FirstAttribute.Name); + Assert.Equal(x1.FirstAttribute.Name, x2.FirstAttribute.Name); Assert.Equal(x1.FirstAttribute.Value, x2.FirstAttribute.Value); } } @@ -1176,7 +1176,7 @@ public static void DCJS_WithArrayOfXElement() var original = new WithArrayOfXElement(true); var actual = SerializeAndDeserialize(original, @"{""a"":[""item0<\/item>"",""item1<\/item>"",""item2<\/item>""]}"); - Assert.StrictEqual(original.a.Length, actual.a.Length); + Assert.Equal(original.a.Length, actual.a.Length); VerifyXElementObject(original.a[0], actual.a[0], checkFirstAttribute: false); VerifyXElementObject(original.a[1], actual.a[1], checkFirstAttribute: false); VerifyXElementObject(original.a[2], actual.a[2], checkFirstAttribute: false); @@ -1188,7 +1188,7 @@ public static void DCJS_WithListOfXElement() var original = new WithListOfXElement(true); var actual = SerializeAndDeserialize(original, @"{""list"":[""item0<\/item>"",""item1<\/item>"",""item2<\/item>""]}"); - Assert.StrictEqual(original.list.Count, actual.list.Count); + Assert.Equal(original.list.Count, actual.list.Count); VerifyXElementObject(original.list[0], actual.list[0], checkFirstAttribute: false); VerifyXElementObject(original.list[1], actual.list[1], checkFirstAttribute: false); VerifyXElementObject(original.list[2], actual.list[2], checkFirstAttribute: false); @@ -1226,11 +1226,11 @@ public static void DCJS_JaggedArrayAsRoot() object[] objectArray = new object[] { 1, 1.0F, 1.0, "string", Guid.Parse("2054fd3e-e118-476a-9962-1a882be51860"), new DateTime(2013, 1, 2).AddMinutes(offsetMinutes) }; var actualObjectArray = SerializeAndDeserialize(objectArray, string.Format(@"[1,1,1,""string"",""2054fd3e-e118-476a-9962-1a882be51860"",""\/Date(1357084800000{0})\/""]", timeZoneString)); - Assert.StrictEqual(1, actualObjectArray[0]); - Assert.StrictEqual(1, actualObjectArray[1]); - Assert.StrictEqual(1, actualObjectArray[2]); - Assert.StrictEqual("string", actualObjectArray[3]); - Assert.StrictEqual(Guid.Parse("2054fd3e-e118-476a-9962-1a882be51860"), Guid.Parse(actualObjectArray[4].ToString())); + Assert.Equal(1, actualObjectArray[0]); + Assert.Equal(1, actualObjectArray[1]); + Assert.Equal(1, actualObjectArray[2]); + Assert.Equal("string", actualObjectArray[3]); + Assert.Equal(Guid.Parse("2054fd3e-e118-476a-9962-1a882be51860"), Guid.Parse(actualObjectArray[4].ToString())); Assert.Equal(string.Format("/Date(1357084800000{0})/", timeZoneString), actualObjectArray[5].ToString()); int[][][] jaggedIntegerArray2 = new int[][][] { new int[][] { new int[] { 1 }, new int[] { 3 } }, new int[][] { new int[] { 0 } }, new int[][] { new int[] { } } }; @@ -1305,7 +1305,7 @@ public static void DCJS_EnumFlags() { EnumFlags original = EnumFlags.One | EnumFlags.Four; var actual = SerializeAndDeserialize(original, "9"); - Assert.StrictEqual(original, actual); + Assert.Equal(original, actual); } @@ -1326,13 +1326,13 @@ public static void DCJS_Nullables() var actual = SerializeAndDeserialize(item, baseline); // Assert - Assert.StrictEqual(item.OptionalInt, actual.OptionalInt); - Assert.StrictEqual(item.Optional, actual.Optional); - Assert.StrictEqual(item.Optionull, actual.Optionull); - Assert.StrictEqual(item.OptionullInt, actual.OptionullInt); + Assert.Equal(item.OptionalInt, actual.OptionalInt); + Assert.Equal(item.Optional, actual.Optional); + Assert.Equal(item.Optionull, actual.Optionull); + Assert.Equal(item.OptionullInt, actual.OptionullInt); Assert.Null(actual.Struct2); - Assert.StrictEqual(item.Struct1.Value.A, actual.Struct1.Value.A); - Assert.StrictEqual(item.Struct1.Value.B, actual.Struct1.Value.B); + Assert.Equal(item.Struct1.Value.A, actual.Struct1.Value.A); + Assert.Equal(item.Struct1.Value.B, actual.Struct1.Value.B); } [Fact] @@ -1340,8 +1340,8 @@ public static void DCJS_InternalTypeSerialization() { var value = new InternalType() { InternalProperty = 12 }; var deserializedValue = SerializeAndDeserialize(value, @"{""InternalProperty"":12,""PrivateProperty"":100}"); - Assert.StrictEqual(deserializedValue.InternalProperty, value.InternalProperty); - Assert.StrictEqual(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); + Assert.Equal(deserializedValue.InternalProperty, value.InternalProperty); + Assert.Equal(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); } [Fact] @@ -1349,8 +1349,8 @@ public static void DCJS_PrivateTypeSerialization() { var value = new PrivateType(); var deserializedValue = SerializeAndDeserialize(value, @"{""InternalProperty"":1,""PrivateProperty"":2}"); - Assert.StrictEqual(deserializedValue.GetInternalPropertyValue(), value.GetInternalPropertyValue()); - Assert.StrictEqual(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); + Assert.Equal(deserializedValue.GetInternalPropertyValue(), value.GetInternalPropertyValue()); + Assert.Equal(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); } [Fact] @@ -1362,7 +1362,7 @@ public static void DCJS_KnownTypesThroughConstructor() @"{""EnumValue"":0,""SimpleTypeValue"":{""__type"":""SimpleKnownTypeValue:#SerializationTypes"",""StrProperty"":""PropertyValue""}}", null, () => { return new DataContractJsonSerializer(typeof(KnownTypesThroughConstructor), new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) }); }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.True(actual.SimpleTypeValue is SimpleKnownTypeValue); Assert.Equal("PropertyValue", ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -1423,7 +1423,7 @@ public static void DCJS_ClassWithDatetimeOffsetTypeProperty() { var value = new TypeWithDateTimeOffsetTypeProperty() { ModifiedTime = new DateTimeOffset(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)) }; var actual = SerializeAndDeserialize(value, @"{""ModifiedTime"":{""DateTime"":""\/Date(1357095845006)\/"",""OffsetMinutes"":0}}"); - Assert.StrictEqual(value.ModifiedTime, actual.ModifiedTime); + Assert.Equal(value.ModifiedTime, actual.ModifiedTime); } @@ -1455,7 +1455,7 @@ public static void DCJS_TypeWithDateTimeStringProperty() stream.Position = 0; var obj2 = (TypeWithDateTimeStringProperty)dcjs.ReadObject(stream); Assert.Equal(obj.DateTimeString, obj2.DateTimeString); - Assert.StrictEqual(obj.CurrentDateTime, obj2.CurrentDateTime); + Assert.Equal(obj.CurrentDateTime, obj2.CurrentDateTime); } // Deserialization only. The provided string of DateTimeString is in different format than the serialized string. @@ -1479,11 +1479,11 @@ public static void DCJS_TypeWithGenericDictionaryAsKnownType() value.Foo.Add(20, new Level() { Name = "Bar", LevelNo = 2 }); var deserializedValue = SerializeAndDeserialize(value, @"{""Foo"":[{""Key"":10,""Value"":{""LevelNo"":1,""Name"":""Foo""}},{""Key"":20,""Value"":{""LevelNo"":2,""Name"":""Bar""}}]}"); - Assert.StrictEqual(2, deserializedValue.Foo.Count); + Assert.Equal(2, deserializedValue.Foo.Count); Assert.Equal("Foo", deserializedValue.Foo[10].Name); - Assert.StrictEqual(1, deserializedValue.Foo[10].LevelNo); + Assert.Equal(1, deserializedValue.Foo[10].LevelNo); Assert.Equal("Bar", deserializedValue.Foo[20].Name); - Assert.StrictEqual(2, deserializedValue.Foo[20].LevelNo); + Assert.Equal(2, deserializedValue.Foo[20].LevelNo); } [Fact] @@ -1504,7 +1504,7 @@ public static void DCJS_TypeWithKnownTypeAttributeAndListOfInterfaceMember() value.Articles = new List() { new SummaryArticle() { Title = "Bar Summary" } }; var deserializedValue = SerializeAndDeserialize(value, @"{""Articles"":[{""__type"":""SummaryArticle:#SerializationTypes"",""Category"":""Summary"",""Title"":""Bar Summary""}]}"); - Assert.StrictEqual(1, deserializedValue.Articles.Count); + Assert.Equal(1, deserializedValue.Articles.Count); Assert.Equal("Summary", deserializedValue.Articles[0].Category); Assert.Equal("Bar Summary", deserializedValue.Articles[0].Title); } @@ -1526,56 +1526,56 @@ private static void DCJS_Tuple1() { Tuple value = new Tuple(1); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple2() { Tuple value = new Tuple(1, 2); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple3() { Tuple value = new Tuple(1, 2, 3); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple4() { Tuple value = new Tuple(1, 2, 3, 4); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3,""m_Item4"":4}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple5() { Tuple value = new Tuple(1, 2, 3, 4, 5); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3,""m_Item4"":4,""m_Item5"":5}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple6() { Tuple value = new Tuple(1, 2, 3, 4, 5, 6); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3,""m_Item4"":4,""m_Item5"":5,""m_Item6"":6}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple7() { Tuple value = new Tuple(1, 2, 3, 4, 5, 6, 7); var deserializedValue = SerializeAndDeserialize>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3,""m_Item4"":4,""m_Item5"":5,""m_Item6"":6,""m_Item7"":7}"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCJS_Tuple8() { Tuple> value = new Tuple>(1, 2, 3, 4, 5, 6, 7, new Tuple(8)); var deserializedValue = SerializeAndDeserialize>>(value, @"{""m_Item1"":1,""m_Item2"":2,""m_Item3"":3,""m_Item4"":4,""m_Item5"":5,""m_Item6"":6,""m_Item7"":7,""m_Rest"":{""m_Item1"":8}}"); - Assert.StrictEqual>>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } [Fact] @@ -1587,8 +1587,8 @@ public static void DCJS_GenericQueue() var deserializedValue = SerializeAndDeserialize>(value, @"{""_array"":[1,0,0,0],""_head"":0,""_size"":1,""_tail"":1,""_version"":2}"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); } [Fact] @@ -1601,9 +1601,9 @@ public static void DCJS_GenericStack() var deserializedValue = SerializeAndDeserialize>(value, @"{""_array"":[123,456,0,0],""_size"":2,""_version"":2}"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); - Assert.StrictEqual(a1[1], a2[1]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); + Assert.Equal(a1[1], a2[1]); } [Fact] @@ -1616,8 +1616,8 @@ public static void DCJS_Queue() var deserializedValue = SerializeAndDeserialize(value, @"{""_array"":[123,""Foo"",null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],""_growFactor"":200,""_head"":0,""_size"":2,""_tail"":2,""_version"":2}"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); } [Fact] @@ -1630,9 +1630,9 @@ public static void DCJS_Stack() var deserializedValue = SerializeAndDeserialize(value, @"{""_array"":[123,""Foo"",null,null,null,null,null,null,null,null],""_size"":2,""_version"":2}"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); - Assert.StrictEqual(a1[1], a2[1]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); + Assert.Equal(a1[1], a2[1]); } [Fact] @@ -1642,9 +1642,9 @@ public static void DCJS_SortedList() value.Add(456, "Foo"); value.Add(123, "Bar"); var deserializedValue = SerializeAndDeserialize(value, @"[{""Key"":123,""Value"":""Bar""},{""Key"":456,""Value"":""Foo""}]"); - Assert.StrictEqual(value.Count, deserializedValue.Count); - Assert.StrictEqual(value[0], deserializedValue[0]); - Assert.StrictEqual(value[1], deserializedValue[1]); + Assert.Equal(value.Count, deserializedValue.Count); + Assert.Equal(value[0], deserializedValue[0]); + Assert.Equal(value[1], deserializedValue[1]); } [Fact] @@ -1652,10 +1652,10 @@ public static void DCJS_SystemVersion() { Version value = new Version(1, 2, 3, 4); var deserializedValue = SerializeAndDeserialize(value, @"{""_Build"":3,""_Major"":1,""_Minor"":2,""_Revision"":4}"); - Assert.StrictEqual(value.Major, deserializedValue.Major); - Assert.StrictEqual(value.Minor, deserializedValue.Minor); - Assert.StrictEqual(value.Build, deserializedValue.Build); - Assert.StrictEqual(value.Revision, deserializedValue.Revision); + Assert.Equal(value.Major, deserializedValue.Major); + Assert.Equal(value.Minor, deserializedValue.Minor); + Assert.Equal(value.Build, deserializedValue.Build); + Assert.Equal(value.Revision, deserializedValue.Revision); } [Fact] @@ -1670,10 +1670,10 @@ public static void DCJS_ObjectArrayAsObject() DataContractJsonSerializer dcjs = new DataContractJsonSerializer(typeof(object)); var deserializedValue = (object[])dcjs.ReadObject(stream); - Assert.StrictEqual(3, deserializedValue.Length); - Assert.StrictEqual("Foo", deserializedValue[0]); - Assert.StrictEqual(123, deserializedValue[1]); - Assert.StrictEqual("456", deserializedValue[2]); + Assert.Equal(3, deserializedValue.Length); + Assert.Equal("Foo", deserializedValue[0]); + Assert.Equal(123, deserializedValue[1]); + Assert.Equal("456", deserializedValue[2]); } [Fact] @@ -1685,8 +1685,8 @@ public static void DCJS_GenericTypeWithNestedGenerics() data2 = 4.56 }; var deserializedValue = SerializeAndDeserialize.InnerGeneric>(value, @"{""data1"":123,""data2"":4.56}"); - Assert.StrictEqual(value.data1, deserializedValue.data1); - Assert.StrictEqual(value.data2, deserializedValue.data2); + Assert.Equal(value.data1, deserializedValue.data1); + Assert.Equal(value.data2, deserializedValue.data2); } [Fact] @@ -1735,7 +1735,7 @@ public static void DCJS_UseSimpleDictionaryFormat() dict.Add("key2", "value2"); var deserialized = SerializeAndDeserialize(dict, @"{""key1"":""value1"",""key2"":""value2""}", new DataContractJsonSerializerSettings { UseSimpleDictionaryFormat = true }); - Assert.StrictEqual(2, deserialized.Count); + Assert.Equal(2, deserialized.Count); Assert.True(deserialized.ContainsKey("key1")); Assert.True(deserialized.ContainsKey("key2")); Assert.Equal(dict["key1"], deserialized["key1"]); @@ -1764,7 +1764,7 @@ public static void DCJS_ReadOnlyCollection() List list = new List() { "Foo", "Bar" }; ReadOnlyCollection value = new ReadOnlyCollection(list); var deserializedValue = SerializeAndDeserialize>(value, @"{""list"":[""Foo"",""Bar""]}"); - Assert.StrictEqual(value.Count, deserializedValue.Count); + Assert.Equal(value.Count, deserializedValue.Count); Assert.Equal(value[0], deserializedValue[0]); Assert.Equal(value[1], deserializedValue[1]); } @@ -1778,9 +1778,9 @@ public static void DCJS_ReadOnlyDictionary() ReadOnlyDictionary value = new ReadOnlyDictionary(dict); var deserializedValue = SerializeAndDeserialize(value, @"{""m_dictionary"":[{""Key"":""Foo"",""Value"":1},{""Key"":""Bar"",""Value"":2}]}"); - Assert.StrictEqual(value.Count, deserializedValue.Count); - Assert.StrictEqual(value["Foo"], deserializedValue["Foo"]); - Assert.StrictEqual(value["Bar"], deserializedValue["Bar"]); + Assert.Equal(value.Count, deserializedValue.Count); + Assert.Equal(value["Foo"], deserializedValue["Foo"]); + Assert.Equal(value["Bar"], deserializedValue["Bar"]); } [Fact] @@ -1790,7 +1790,7 @@ public static void DCJS_KeyValuePair() var deserializedValue = SerializeAndDeserialize>(value, @"{""key"":""FooKey"",""value"":""FooValue""}"); Assert.Equal(value.Key, deserializedValue.Key); - Assert.StrictEqual(value.Value, deserializedValue.Value); + Assert.Equal(value.Value, deserializedValue.Value); } [Fact] @@ -1842,8 +1842,8 @@ public static void DCJS_CollectionDataContractWithCustomKeyName() var deserializedValue = SerializeAndDeserialize(value, @"[{""Key"":100,""Value"":123},{""Key"":200,""Value"":456}]"); Assert.NotNull(deserializedValue); - Assert.StrictEqual(value[100], deserializedValue[100]); - Assert.StrictEqual(value[200], deserializedValue[200]); + Assert.Equal(value[100], deserializedValue[100]); + Assert.Equal(value[200], deserializedValue[200]); } [Fact] @@ -1855,8 +1855,8 @@ public static void DCJS_CollectionDataContractWithCustomKeyNameDuplicate() var deserializedValue = SerializeAndDeserialize(value, @"[{""Key"":100,""Value"":123},{""Key"":200,""Value"":456}]"); Assert.NotNull(deserializedValue); - Assert.StrictEqual(value[100], deserializedValue[100]); - Assert.StrictEqual(value[200], deserializedValue[200]); + Assert.Equal(value[100], deserializedValue[100]); + Assert.Equal(value[200], deserializedValue[200]); } [Fact] @@ -1869,7 +1869,7 @@ public static void DCJS_TypeWithCollectionWithoutDefaultConstructor() Assert.NotNull(deserializedValue); Assert.NotNull(deserializedValue.CollectionProperty); - Assert.StrictEqual(value.CollectionProperty.Count, deserializedValue.CollectionProperty.Count); + Assert.Equal(value.CollectionProperty.Count, deserializedValue.CollectionProperty.Count); Assert.True(Enumerable.SequenceEqual(value.CollectionProperty, deserializedValue.CollectionProperty)); } @@ -1882,7 +1882,7 @@ public static void DCJS_DataMemberNames() ScreenOrientation = "horizontal" }; var actual = SerializeAndDeserialize(obj, @"{""screen_dpi(x:y)"":440,""screen:orientation"":""horizontal""}"); - Assert.StrictEqual(obj.ScreenDpi, actual.ScreenDpi); + Assert.Equal(obj.ScreenDpi, actual.ScreenDpi); Assert.Equal(obj.ScreenOrientation, actual.ScreenOrientation); } @@ -1927,7 +1927,7 @@ public static void DCJS_TypeWithXmlElementProperty() categoryElement.InnerText = "Category innertext"; var expected = new TypeWithXmlElementProperty() { Elements = new[] { productElement, categoryElement } }; var actual = SerializeAndDeserialize(expected, @"{""Elements"":[""Product innertext<\/Product>"",""Category innertext<\/Category>""]}"); - Assert.StrictEqual(expected.Elements.Length, actual.Elements.Length); + Assert.Equal(expected.Elements.Length, actual.Elements.Length); for (int i = 0; i < expected.Elements.Length; ++i) { Assert.Equal(expected.Elements[i].InnerText, actual.Elements[i].InnerText); @@ -1973,7 +1973,7 @@ public static void DCJS_TypeWithPrimitiveProperties() TypeWithPrimitiveProperties x = new TypeWithPrimitiveProperties { P1 = "abc", P2 = 11 }; TypeWithPrimitiveProperties y = SerializeAndDeserialize(x, "{\"P1\":\"abc\",\"P2\":11}"); Assert.Equal(x.P1, y.P1); - Assert.StrictEqual(x.P2, y.P2); + Assert.Equal(x.P2, y.P2); } [Fact] @@ -1982,7 +1982,7 @@ public static void DCJS_TypeWithPrimitiveFields() TypeWithPrimitiveFields x = new TypeWithPrimitiveFields { P1 = "abc", P2 = 11 }; TypeWithPrimitiveFields y = SerializeAndDeserialize(x, "{\"P1\":\"abc\",\"P2\":11}"); Assert.Equal(x.P1, y.P1); - Assert.StrictEqual(x.P2, y.P2); + Assert.Equal(x.P2, y.P2); } [Fact] @@ -2003,16 +2003,16 @@ public static void DCJS_TypeWithAllPrimitiveProperties() IntMember = 123 }; TypeWithAllPrimitiveProperties y = SerializeAndDeserialize(x, "{\"BooleanMember\":true,\"CharMember\":\"C\",\"DateTimeMember\":\"\\/Date(1467969011000)\\/\",\"DecimalMember\":-14554481076115341312123,\"DoubleMember\":123.456,\"FloatMember\":456.789,\"GuidMember\":\"2054fd3e-e118-476a-9962-1a882be51860\",\"IntMember\":123,\"StringMember\":\"abc\"}"); - Assert.StrictEqual(x.BooleanMember, y.BooleanMember); - //Assert.StrictEqual(x.ByteArrayMember, y.ByteArrayMember); - Assert.StrictEqual(x.CharMember, y.CharMember); - Assert.StrictEqual(x.DateTimeMember, y.DateTimeMember); - Assert.StrictEqual(x.DecimalMember, y.DecimalMember); - Assert.StrictEqual(x.DoubleMember, y.DoubleMember); - Assert.StrictEqual(x.FloatMember, y.FloatMember); - Assert.StrictEqual(x.GuidMember, y.GuidMember); + Assert.Equal(x.BooleanMember, y.BooleanMember); + //Assert.Equal(x.ByteArrayMember, y.ByteArrayMember); + Assert.Equal(x.CharMember, y.CharMember); + Assert.Equal(x.DateTimeMember, y.DateTimeMember); + Assert.Equal(x.DecimalMember, y.DecimalMember); + Assert.Equal(x.DoubleMember, y.DoubleMember); + Assert.Equal(x.FloatMember, y.FloatMember); + Assert.Equal(x.GuidMember, y.GuidMember); Assert.Equal(x.StringMember, y.StringMember); - Assert.StrictEqual(x.IntMember, y.IntMember); + Assert.Equal(x.IntMember, y.IntMember); } #region Array of primitive types @@ -2022,7 +2022,7 @@ public static void DCJS_ArrayOfBoolean() { var value = new bool[] { true, false, true }; var deserialized = SerializeAndDeserialize(value, "[true,false,true]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2031,7 +2031,7 @@ public static void DCJS_ArrayOfDateTime() { var value = new DateTime[] { new DateTime(2000, 1, 2, 3, 4, 5, DateTimeKind.Utc), new DateTime(2011, 2, 3, 4, 5, 6, DateTimeKind.Utc) }; var deserialized = SerializeAndDeserialize(value, "[\"\\/Date(946782245000)\\/\",\"\\/Date(1296705906000)\\/\"]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2040,7 +2040,7 @@ public static void DCJS_ArrayOfDecimal() { var value = new decimal[] { new decimal(1, 2, 3, false, 1), new decimal(4, 5, 6, true, 2) }; var deserialized = SerializeAndDeserialize(value, "[5534023222971858944.1,-1106804644637321461.80]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2049,7 +2049,7 @@ public static void DCJS_ArrayOfInt32() { var value = new int[] { 123, int.MaxValue, int.MinValue }; var deserialized = SerializeAndDeserialize(value, "[123,2147483647,-2147483648]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2058,7 +2058,7 @@ public static void DCJS_ArrayOfInt64() { var value = new long[] { 123, long.MaxValue, long.MinValue }; var deserialized = SerializeAndDeserialize(value, "[123,9223372036854775807,-9223372036854775808]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2067,7 +2067,7 @@ public static void DCJS_ArrayOfSingle() { var value = new float[] { 1.23f, 4.56f, 7.89f }; var deserialized = SerializeAndDeserialize(value, "[1.23,4.56,7.89]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2076,7 +2076,7 @@ public static void DCJS_ArrayOfDouble() { var value = new double[] { 1.23, 4.56, 7.89 }; var deserialized = SerializeAndDeserialize(value, "[1.23,4.56,7.89]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2085,7 +2085,7 @@ public static void DCJS_ArrayOfString() { var value = new string[] { "abc", "def", "xyz" }; var deserialized = SerializeAndDeserialize(value, "[\"abc\",\"def\",\"xyz\"]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2098,7 +2098,7 @@ public static void DCJS_ArrayOfTypeWithPrimitiveProperties() new TypeWithPrimitiveProperties() { P1 = "def" , P2 = 456 }, }; var deserialized = SerializeAndDeserialize(value, "[{\"P1\":\"abc\",\"P2\":123},{\"P1\":\"def\",\"P2\":456}]"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2111,7 +2111,7 @@ public static void DCJS_GenericICollectionOfBoolean() { var value = new TypeImplementsGenericICollection() { true, false, true }; var deserialized = SerializeAndDeserialize(value, "[true,false,true]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2120,7 +2120,7 @@ public static void DCJS_GenericICollectionOfDecimal() { var value = new TypeImplementsGenericICollection() { new decimal(1, 2, 3, false, 1), new decimal(4, 5, 6, true, 2) }; var deserialized = SerializeAndDeserialize(value, "[5534023222971858944.1,-1106804644637321461.80]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2131,7 +2131,7 @@ public static void DCJS_GenericICollectionOfInt32() TypeImplementsGenericICollection y = SerializeAndDeserialize(x, "[123,2147483647,-2147483648]"); Assert.NotNull(y); - Assert.StrictEqual(x.Count, y.Count); + Assert.Equal(x.Count, y.Count); Assert.True(x.SequenceEqual(y)); } @@ -2140,7 +2140,7 @@ public static void DCJS_GenericICollectionOfInt64() { var value = new TypeImplementsGenericICollection() { 123, long.MaxValue, long.MinValue }; var deserialized = SerializeAndDeserialize(value, "[123,9223372036854775807,-9223372036854775808]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2149,7 +2149,7 @@ public static void DCJS_GenericICollectionOfSingle() { var value = new TypeImplementsGenericICollection() { 1.23f, 4.56f, 7.89f }; var deserialized = SerializeAndDeserialize(value, "[1.23,4.56,7.89]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2158,7 +2158,7 @@ public static void DCJS_GenericICollectionOfDouble() { var value = new TypeImplementsGenericICollection() { 1.23, 4.56, 7.89 }; var deserialized = SerializeAndDeserialize(value, "[1.23,4.56,7.89]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2169,7 +2169,7 @@ public static void DCJS_GenericICollectionOfString() TypeImplementsGenericICollection deserialized = SerializeAndDeserialize(value, "[\"a1\",\"a2\"]"); Assert.NotNull(deserialized); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(value.SequenceEqual(deserialized)); } @@ -2182,7 +2182,7 @@ public static void DCJS_GenericICollectionOfTypeWithPrimitiveProperties() new TypeWithPrimitiveProperties() { P1 = "def" , P2 = 456 }, }; var deserialized = SerializeAndDeserialize(value, "[{\"P1\":\"abc\",\"P2\":123},{\"P1\":\"def\",\"P2\":456}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2197,7 +2197,7 @@ public static void DCJS_GenericDictionaryOfInt32Boolean() value.Add(123, true); value.Add(456, false); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":123,\"Value\":true},{\"Key\":456,\"Value\":false}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2208,7 +2208,7 @@ public static void DCJS_GenericDictionaryOfInt32String() value.Add(123, "abc"); value.Add(456, "def"); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":123,\"Value\":\"abc\"},{\"Key\":456,\"Value\":\"def\"}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2219,7 +2219,7 @@ public static void DCJS_GenericDictionaryOfStringInt32() value.Add("abc", 123); value.Add("def", 456); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":\"abc\",\"Value\":123},{\"Key\":\"def\",\"Value\":456}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2234,7 +2234,7 @@ public static void DCJS_NonGenericDictionaryOfInt32Boolean() value.Add(123, true); value.Add(456, false); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":123,\"Value\":true},{\"Key\":456,\"Value\":false}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -2246,7 +2246,7 @@ public static void DCJS_NonGenericDictionaryOfInt32String() value.Add(123, "abc"); value.Add(456, "def"); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":123,\"Value\":\"abc\"},{\"Key\":456,\"Value\":\"def\"}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -2258,7 +2258,7 @@ public static void DCJS_NonGenericDictionaryOfStringInt32() value.Add("abc", 123); value.Add("def", 456); var deserialized = SerializeAndDeserialize(value, "[{\"Key\":\"abc\",\"Value\":123},{\"Key\":\"def\",\"Value\":456}]"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -2953,9 +2953,9 @@ public static void DCJS_ReadOnlyDictionaryCausingDuplicateInvalidDataContract() dict["Bar"] = 2; var value = new ReadOnlyDictionary(dict); var deserializedValue = SerializeAndDeserialize(value, "{\"m_dictionary\":[{\"Key\":\"Foo\",\"Value\":1},{\"Key\":\"Bar\",\"Value\":2}]}", null, () => new DataContractJsonSerializer(typeof(ReadOnlyDictionary))); - Assert.StrictEqual(value.Count, deserializedValue.Count); - Assert.StrictEqual(value["Foo"], deserializedValue["Foo"]); - Assert.StrictEqual(value["Bar"], deserializedValue["Bar"]); + Assert.Equal(value.Count, deserializedValue.Count); + Assert.Equal(value["Foo"], deserializedValue["Foo"]); + Assert.Equal(value["Bar"], deserializedValue["Bar"]); } [Fact] diff --git a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs index a81b26b629ba27..f4a641458286c0 100644 --- a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs +++ b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializer.cs @@ -62,7 +62,7 @@ public static void DCS_DateTimeOffsetAsRoot() }; for (int i = 0; i < objs.Length; ++i) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(objs[i], serializedStrings[i]), objs[i]); } } @@ -85,31 +85,31 @@ public static void DCS_ByteArrayAsRoot() [Fact] public static void DCS_CharAsRoot() { - Assert.StrictEqual(char.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(char.MinValue, @"0")); - Assert.StrictEqual(char.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(char.MaxValue, @"65535")); - Assert.StrictEqual('a', DataContractSerializerHelper.SerializeAndDeserialize('a', @"97")); - Assert.StrictEqual('\u00F1', DataContractSerializerHelper.SerializeAndDeserialize('\u00F1', @"241")); - Assert.StrictEqual('\u6F22', DataContractSerializerHelper.SerializeAndDeserialize('\u6F22', @"28450")); + Assert.Equal(char.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(char.MinValue, @"0")); + Assert.Equal(char.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(char.MaxValue, @"65535")); + Assert.Equal('a', DataContractSerializerHelper.SerializeAndDeserialize('a', @"97")); + Assert.Equal('\u00F1', DataContractSerializerHelper.SerializeAndDeserialize('\u00F1', @"241")); + Assert.Equal('\u6F22', DataContractSerializerHelper.SerializeAndDeserialize('\u6F22', @"28450")); } [Fact] public static void DCS_ByteAsRoot() { - Assert.StrictEqual(10, DataContractSerializerHelper.SerializeAndDeserialize(10, @"10")); - Assert.StrictEqual(byte.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(byte.MinValue, @"0")); - Assert.StrictEqual(byte.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(byte.MaxValue, @"255")); + Assert.Equal(10, DataContractSerializerHelper.SerializeAndDeserialize(10, @"10")); + Assert.Equal(byte.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(byte.MinValue, @"0")); + Assert.Equal(byte.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(byte.MaxValue, @"255")); } [Fact] public static void DCS_DateTimeAsRoot() { var offsetMinutes = (int)TimeZoneInfo.Local.GetUtcOffset(new DateTime(2013, 1, 2)).TotalMinutes; - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2), @"2013-01-02T00:00:00"), new DateTime(2013, 1, 2)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local), string.Format(@"2013-01-02T03:04:05.006{0:+;-}{1}", offsetMinutes, new TimeSpan(0, offsetMinutes, 0).ToString(@"hh\:mm"))), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified), @"2013-01-02T03:04:05.006"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), @"2013-01-02T03:04:05.006Z"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), @"0001-01-01T00:00:00Z"), DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc), @"9999-12-31T23:59:59.9999999Z"), DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2), @"2013-01-02T00:00:00"), new DateTime(2013, 1, 2)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local), string.Format(@"2013-01-02T03:04:05.006{0:+;-}{1}", offsetMinutes, new TimeSpan(0, offsetMinutes, 0).ToString(@"hh\:mm"))), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified), @"2013-01-02T03:04:05.006"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Unspecified)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc), @"2013-01-02T03:04:05.006Z"), new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc), @"0001-01-01T00:00:00Z"), DateTime.SpecifyKind(DateTime.MinValue, DateTimeKind.Utc)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc), @"9999-12-31T23:59:59.9999999Z"), DateTime.SpecifyKind(DateTime.MaxValue, DateTimeKind.Utc)); } [Fact] @@ -129,33 +129,33 @@ public static void DCS_DecimalAsRoot() { foreach (decimal value in new decimal[] { (decimal)-1.2, (decimal)0, (decimal)2.3, decimal.MinValue, decimal.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value.ToString(CultureInfo.InvariantCulture))), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value.ToString(CultureInfo.InvariantCulture))), value); } } [Fact] public static void DCS_DoubleAsRoot() { - Assert.StrictEqual(-1.2, DataContractSerializerHelper.SerializeAndDeserialize(-1.2, @"-1.2")); - Assert.StrictEqual(0, DataContractSerializerHelper.SerializeAndDeserialize(0, @"0")); - Assert.StrictEqual(2.3, DataContractSerializerHelper.SerializeAndDeserialize(2.3, @"2.3")); - Assert.StrictEqual(double.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(double.MinValue, @"-1.7976931348623157E+308")); - Assert.StrictEqual(double.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(double.MaxValue, @"1.7976931348623157E+308")); + Assert.Equal(-1.2, DataContractSerializerHelper.SerializeAndDeserialize(-1.2, @"-1.2")); + Assert.Equal(0, DataContractSerializerHelper.SerializeAndDeserialize(0, @"0")); + Assert.Equal(2.3, DataContractSerializerHelper.SerializeAndDeserialize(2.3, @"2.3")); + Assert.Equal(double.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(double.MinValue, @"-1.7976931348623157E+308")); + Assert.Equal(double.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(double.MaxValue, @"1.7976931348623157E+308")); } [Fact] public static void DCS_FloatAsRoot() { - Assert.StrictEqual((float)-1.2, DataContractSerializerHelper.SerializeAndDeserialize((float)-1.2, @"-1.2")); - Assert.StrictEqual((float)0, DataContractSerializerHelper.SerializeAndDeserialize((float)0, @"0")); - Assert.StrictEqual((float)2.3, DataContractSerializerHelper.SerializeAndDeserialize((float)2.3, @"2.3")); + Assert.Equal((float)-1.2, DataContractSerializerHelper.SerializeAndDeserialize((float)-1.2, @"-1.2")); + Assert.Equal((float)0, DataContractSerializerHelper.SerializeAndDeserialize((float)0, @"0")); + Assert.Equal((float)2.3, DataContractSerializerHelper.SerializeAndDeserialize((float)2.3, @"2.3")); } [Fact] public static void DCS_FloatAsRoot_NotNetFramework() { - Assert.StrictEqual(float.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(float.MinValue, @"-3.4028235E+38")); - Assert.StrictEqual(float.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(float.MaxValue, @"3.4028235E+38")); + Assert.Equal(float.MinValue, DataContractSerializerHelper.SerializeAndDeserialize(float.MinValue, @"-3.4028235E+38")); + Assert.Equal(float.MaxValue, DataContractSerializerHelper.SerializeAndDeserialize(float.MaxValue, @"3.4028235E+38")); } [Fact] @@ -163,12 +163,12 @@ public static void DCS_DateOnlyAsRoot() { DateOnly value = new DateOnly(2024, 12, 31); string expected = @"2024-12-31"; - Assert.StrictEqual(value, DataContractSerializerHelper.SerializeAndDeserialize(value, expected)); + Assert.Equal(value, DataContractSerializerHelper.SerializeAndDeserialize(value, expected)); // Nullable DateOnly? nullable = new DateOnly(2001, 1, 1); string expectedNullable = @"2001-01-01"; - Assert.StrictEqual(nullable, DataContractSerializerHelper.SerializeAndDeserialize(nullable, expectedNullable)); + Assert.Equal(nullable, DataContractSerializerHelper.SerializeAndDeserialize(nullable, expectedNullable)); } [Fact] @@ -187,7 +187,7 @@ public static void DCS_BinarySerializationOfDateOnly() ms.Position = 0; using var reader = XmlDictionaryReader.CreateBinaryReader(ms, null, XmlDictionaryReaderQuotas.Max, null, null); var roundTrip = (DateOnly)dcs.ReadObject(reader)!; - Assert.StrictEqual(dateOnly, roundTrip); + Assert.Equal(dateOnly, roundTrip); } [Fact] @@ -195,12 +195,12 @@ public static void DCS_TimeOnlyAsRoot() { TimeOnly value = new TimeOnly(13, 5, 7, 123); // 13:05:07.123 string expected = @"13:05:07.123"; - Assert.StrictEqual(value, DataContractSerializerHelper.SerializeAndDeserialize(value, expected)); + Assert.Equal(value, DataContractSerializerHelper.SerializeAndDeserialize(value, expected)); // Whole second (no fraction should be emitted) TimeOnly wholeSecond = new TimeOnly(6, 30, 0); string expectedWhole = @"06:30:00"; - Assert.StrictEqual(wholeSecond, DataContractSerializerHelper.SerializeAndDeserialize(wholeSecond, expectedWhole)); + Assert.Equal(wholeSecond, DataContractSerializerHelper.SerializeAndDeserialize(wholeSecond, expectedWhole)); } [Fact] @@ -219,7 +219,7 @@ public static void DCS_BinarySerializationOfTimeOnly() ms.Position = 0; using var reader = XmlDictionaryReader.CreateBinaryReader(ms, null, XmlDictionaryReaderQuotas.Max, null, null); var roundTrip = (TimeOnly)dcs.ReadObject(reader)!; - Assert.StrictEqual(timeOnly, roundTrip); + Assert.Equal(timeOnly, roundTrip); } [Fact] @@ -247,7 +247,7 @@ public static void DCS_GuidAsRoot() { foreach (Guid value in new Guid[] { Guid.NewGuid(), Guid.Empty }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value.ToString())), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value.ToString())), value); } } @@ -256,7 +256,7 @@ public static void DCS_IntAsRoot() { foreach (int value in new int[] { -1, 0, 2, int.MinValue, int.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } @@ -265,24 +265,24 @@ public static void DCS_LongAsRoot() { foreach (long value in new long[] { (long)-1, (long)0, (long)2, long.MinValue, long.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } [Fact] public static void DCS_ObjectAsRoot() { - Assert.StrictEqual(1, DataContractSerializerHelper.SerializeAndDeserialize(1, @"1")); - Assert.StrictEqual(true, DataContractSerializerHelper.SerializeAndDeserialize(true, @"true")); - Assert.StrictEqual("abc", DataContractSerializerHelper.SerializeAndDeserialize("abc", @"abc")); + Assert.Equal(1, DataContractSerializerHelper.SerializeAndDeserialize(1, @"1")); + Assert.Equal(true, DataContractSerializerHelper.SerializeAndDeserialize(true, @"true")); + Assert.Equal("abc", DataContractSerializerHelper.SerializeAndDeserialize("abc", @"abc")); Assert.Null(DataContractSerializerHelper.SerializeAndDeserialize(null, @"")); } [Fact] public static void DCS_XmlQualifiedNameAsRoot() { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), @"a:abc"), new XmlQualifiedName("abc", "def")); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(XmlQualifiedName.Empty, @""), XmlQualifiedName.Empty); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new XmlQualifiedName("abc", "def"), @"a:abc"), new XmlQualifiedName("abc", "def")); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(XmlQualifiedName.Empty, @""), XmlQualifiedName.Empty); } [Fact] @@ -290,7 +290,7 @@ public static void DCS_ShortAsRoot() { foreach (short value in new short[] { (short)-1.2, (short)0, (short)2.3, short.MinValue, short.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } @@ -299,7 +299,7 @@ public static void DCS_SbyteAsRoot() { foreach (sbyte value in new sbyte[] { (sbyte)3, (sbyte)0, sbyte.MinValue, sbyte.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } @@ -317,10 +317,10 @@ public static void DCS_StringAsRoot() [Fact] public static void DCS_TimeSpanAsRoot() { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new TimeSpan(1, 2, 3), @"PT1H2M3S"), new TimeSpan(1, 2, 3)); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.Zero, @"PT0S"), TimeSpan.Zero); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.MinValue, @"-P10675199DT2H48M5.4775808S"), TimeSpan.MinValue); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.MaxValue, @"P10675199DT2H48M5.4775807S"), TimeSpan.MaxValue); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new TimeSpan(1, 2, 3), @"PT1H2M3S"), new TimeSpan(1, 2, 3)); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.Zero, @"PT0S"), TimeSpan.Zero); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.MinValue, @"-P10675199DT2H48M5.4775808S"), TimeSpan.MinValue); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(TimeSpan.MaxValue, @"P10675199DT2H48M5.4775807S"), TimeSpan.MaxValue); } [Fact] @@ -328,7 +328,7 @@ public static void DCS_UintAsRoot() { foreach (uint value in new uint[] { (uint)3, (uint)0, uint.MinValue, uint.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } @@ -337,7 +337,7 @@ public static void DCS_UlongAsRoot() { foreach (ulong value in new ulong[] { (ulong)3, (ulong)0, ulong.MinValue, ulong.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } @@ -346,15 +346,15 @@ public static void DCS_UshortAsRoot() { foreach (ushort value in new ushort[] { (ushort)3, (ushort)0, ushort.MinValue, ushort.MaxValue }) { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"{0}", value)), value); } } [Fact] public static void DCS_UriAsRoot() { - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new Uri("http://abc/"), @"http://abc/"), new Uri("http://abc/")); - Assert.StrictEqual(DataContractSerializerHelper.SerializeAndDeserialize(new Uri("http://abc/def/x.aspx?p1=12&p2=34"), @"http://abc/def/x.aspx?p1=12&p2=34"), new Uri("http://abc/def/x.aspx?p1=12&p2=34")); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new Uri("http://abc/"), @"http://abc/"), new Uri("http://abc/")); + Assert.Equal(DataContractSerializerHelper.SerializeAndDeserialize(new Uri("http://abc/def/x.aspx?p1=12&p2=34"), @"http://abc/def/x.aspx?p1=12&p2=34"), new Uri("http://abc/def/x.aspx?p1=12&p2=34")); } [Fact] @@ -930,9 +930,9 @@ public static void DCS_CustomType() Assert.NotNull(y); Assert.NotNull(y.PropX); - Assert.StrictEqual(x.PropX.PropC, y.PropX.PropC); - Assert.StrictEqual(((MyTypeC)x.PropX).PropB, ((MyTypeC)y.PropX).PropB); - Assert.StrictEqual(x.PropY, y.PropY); + Assert.Equal(x.PropX.PropC, y.PropX.PropC); + Assert.Equal(((MyTypeC)x.PropX).PropB, ((MyTypeC)y.PropX).PropB); + Assert.Equal(x.PropY, y.PropY); } [Fact] @@ -978,14 +978,14 @@ public static void DCS_IgnoreDataMemberAttribute() public static void DCS_EnumAsRoot() { //The approved types for an enum are byte, sbyte, short, ushort, int, uint, long, or ulong. - Assert.StrictEqual(MyEnum.Two, DataContractSerializerHelper.SerializeAndDeserialize(MyEnum.Two, @"Two")); - Assert.StrictEqual(ByteEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ByteEnum.Option1, @"Option1")); - Assert.StrictEqual(SByteEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(SByteEnum.Option1, @"Option1")); - Assert.StrictEqual(ShortEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ShortEnum.Option1, @"Option1")); - Assert.StrictEqual(IntEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(IntEnum.Option1, @"Option1")); - Assert.StrictEqual(UIntEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(UIntEnum.Option1, @"Option1")); - Assert.StrictEqual(LongEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(LongEnum.Option1, @"Option1")); - Assert.StrictEqual(ULongEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ULongEnum.Option1, @"Option1")); + Assert.Equal(MyEnum.Two, DataContractSerializerHelper.SerializeAndDeserialize(MyEnum.Two, @"Two")); + Assert.Equal(ByteEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ByteEnum.Option1, @"Option1")); + Assert.Equal(SByteEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(SByteEnum.Option1, @"Option1")); + Assert.Equal(ShortEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ShortEnum.Option1, @"Option1")); + Assert.Equal(IntEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(IntEnum.Option1, @"Option1")); + Assert.Equal(UIntEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(UIntEnum.Option1, @"Option1")); + Assert.Equal(LongEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(LongEnum.Option1, @"Option1")); + Assert.Equal(ULongEnum.Option1, DataContractSerializerHelper.SerializeAndDeserialize(ULongEnum.Option1, @"Option1")); } [Fact] @@ -995,8 +995,8 @@ public static void DCS_EnumAsMember() TypeWithEnumMembers y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"ThreeTwo"); Assert.NotNull(y); - Assert.StrictEqual(x.F1, y.F1); - Assert.StrictEqual(x.P1, y.P1); + Assert.Equal(x.F1, y.F1); + Assert.Equal(x.P1, y.P1); } [Fact] @@ -1005,8 +1005,8 @@ public static void DCS_DCClassWithEnumAndStruct() var x = new DCClassWithEnumAndStruct(true); var y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"OneData"); - Assert.StrictEqual(x.MyStruct, y.MyStruct); - Assert.StrictEqual(x.MyEnum1, y.MyEnum1); + Assert.Equal(x.MyStruct, y.MyStruct); + Assert.Equal(x.MyEnum1, y.MyEnum1); } [Fact] @@ -1019,7 +1019,7 @@ public static void DCS_SuspensionManager() Dictionary y = DataContractSerializerHelper.SerializeAndDeserialize>(x, @"Key1subkey1subkey1value"); Assert.NotNull(y); - Assert.StrictEqual(1, y.Count); + Assert.Equal(1, y.Count); Assert.True(y["Key1"] is Dictionary); Assert.Equal("subkey1value", ((y["Key1"] as Dictionary)["subkey1"]) as string); } @@ -1053,7 +1053,7 @@ public static void DCS_DataMemberNames() ScreenOrientation = "horizontal" }; var actual = DataContractSerializerHelper.SerializeAndDeserialize(obj, "440horizontal"); - Assert.StrictEqual(obj.ScreenDpi, actual.ScreenDpi); + Assert.Equal(obj.ScreenDpi, actual.ScreenDpi); Assert.Equal(obj.ScreenOrientation, actual.ScreenOrientation); } @@ -1079,12 +1079,12 @@ public static void DCS_DictionaryWithVariousKeyValueTypes() var y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"TwoThreeOneOne-32768true0false3276710122147483647-2147483648"); - Assert.StrictEqual(MyEnum.Three, y.WithEnums[MyEnum.Two]); - Assert.StrictEqual(MyEnum.One, y.WithEnums[MyEnum.One]); - Assert.StrictEqual(new StructNotSerializable() { value = 12 }, y.WithStructs[new StructNotSerializable() { value = 10 }]); - Assert.StrictEqual(new StructNotSerializable() { value = int.MinValue }, y.WithStructs[new StructNotSerializable() { value = int.MaxValue }]); - Assert.StrictEqual(true, y.WithNullables[short.MinValue]); - Assert.StrictEqual(false, y.WithNullables[0]); + Assert.Equal(MyEnum.Three, y.WithEnums[MyEnum.Two]); + Assert.Equal(MyEnum.One, y.WithEnums[MyEnum.One]); + Assert.Equal(new StructNotSerializable() { value = 12 }, y.WithStructs[new StructNotSerializable() { value = 10 }]); + Assert.Equal(new StructNotSerializable() { value = int.MinValue }, y.WithStructs[new StructNotSerializable() { value = int.MaxValue }]); + Assert.Equal(true, y.WithNullables[short.MinValue]); + Assert.Equal(false, y.WithNullables[0]); Assert.Null(y.WithNullables[short.MaxValue]); } @@ -1105,10 +1105,10 @@ public static void DCS_WithDuplicateNames() var y = DataContractSerializerHelper.SerializeAndDeserialize(x, "Hello World! \u6F22 \u00F1twodos"); Assert.Equal(x.ClassA1.Name, y.ClassA1.Name); - Assert.StrictEqual(x.StructA1, y.StructA1); - Assert.StrictEqual(x.EnumA1, y.EnumA1); - Assert.StrictEqual(x.EnumA2, y.EnumA2); - Assert.StrictEqual(x.StructA2, y.StructA2); + Assert.Equal(x.StructA1, y.StructA1); + Assert.Equal(x.EnumA1, y.EnumA1); + Assert.Equal(x.EnumA2, y.EnumA2); + Assert.Equal(x.StructA2, y.StructA2); } [Fact] @@ -1134,10 +1134,10 @@ public static void DCS_WithXElement() private static void VerifyXElementObject(XElement x1, XElement x2, bool checkFirstAttribute = true) { Assert.Equal(x1.Value, x2.Value); - Assert.StrictEqual(x1.Name, x2.Name); + Assert.Equal(x1.Name, x2.Name); if (checkFirstAttribute) { - Assert.StrictEqual(x1.FirstAttribute.Name, x2.FirstAttribute.Name); + Assert.Equal(x1.FirstAttribute.Name, x2.FirstAttribute.Name); Assert.Equal(x1.FirstAttribute.Value, x2.FirstAttribute.Value); } } @@ -1158,7 +1158,7 @@ public static void DCS_WithArrayOfXElement() var original = new WithArrayOfXElement(true); var actual = DataContractSerializerHelper.SerializeAndDeserialize(original, @"item0item1item2"); - Assert.StrictEqual(original.a.Length, actual.a.Length); + Assert.Equal(original.a.Length, actual.a.Length); VerifyXElementObject(original.a[0], actual.a[0], checkFirstAttribute: false); VerifyXElementObject(original.a[1], actual.a[1], checkFirstAttribute: false); VerifyXElementObject(original.a[2], actual.a[2], checkFirstAttribute: false); @@ -1170,7 +1170,7 @@ public static void DCS_WithListOfXElement() var original = new WithListOfXElement(true); var actual = DataContractSerializerHelper.SerializeAndDeserialize(original, @"item0item1item2"); - Assert.StrictEqual(original.list.Count, actual.list.Count); + Assert.Equal(original.list.Count, actual.list.Count); VerifyXElementObject(original.list[0], actual.list[0], checkFirstAttribute: false); VerifyXElementObject(original.list[1], actual.list[1], checkFirstAttribute: false); VerifyXElementObject(original.list[2], actual.list[2], checkFirstAttribute: false); @@ -1407,8 +1407,8 @@ public static void DCS_BaseClassAndDerivedClassWithSameProperty() value.ListProperty.AddRange(new string[] { "one", "two", "three" }); var actual = DataContractSerializerHelper.SerializeAndDeserialize(value, @"0001-01-01T00:00:0000001-01-01T00:00:00.000015onetwothreeTestString"); - Assert.StrictEqual(value.DateTimeProperty, actual.DateTimeProperty); - Assert.StrictEqual(value.IntProperty, actual.IntProperty); + Assert.Equal(value.DateTimeProperty, actual.DateTimeProperty); + Assert.Equal(value.IntProperty, actual.IntProperty); Assert.Equal(value.StringProperty, actual.StringProperty); Assert.NotNull(actual.ListProperty); Assert.True(value.ListProperty.Count == actual.ListProperty.Count); @@ -1452,7 +1452,7 @@ public static void DCS_EnumFlags() { EnumFlags value1 = EnumFlags.One | EnumFlags.Four; var value2 = DataContractSerializerHelper.SerializeAndDeserialize(value1, @"One Four"); - Assert.StrictEqual(value1, value2); + Assert.Equal(value1, value2); } [Fact] @@ -1483,13 +1483,13 @@ public static void DCS_Nullables() var actual = DataContractSerializerHelper.SerializeAndDeserialize(item, baseline); // Assert - Assert.StrictEqual(item.OptionalInt, actual.OptionalInt); - Assert.StrictEqual(item.Optional, actual.Optional); - Assert.StrictEqual(item.Optionull, actual.Optionull); - Assert.StrictEqual(item.OptionullInt, actual.OptionullInt); + Assert.Equal(item.OptionalInt, actual.OptionalInt); + Assert.Equal(item.Optional, actual.Optional); + Assert.Equal(item.Optionull, actual.Optionull); + Assert.Equal(item.OptionullInt, actual.OptionullInt); Assert.Null(actual.Struct2); - Assert.StrictEqual(item.Struct1.Value.A, actual.Struct1.Value.A); - Assert.StrictEqual(item.Struct1.Value.B, actual.Struct1.Value.B); + Assert.Equal(item.Struct1.Value.A, actual.Struct1.Value.A); + Assert.Equal(item.Struct1.Value.B, actual.Struct1.Value.B); } [Fact] @@ -1507,8 +1507,8 @@ public static void DCS_InternalTypeSerialization() { var value = new InternalType() { InternalProperty = 12 }; var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"12100"); - Assert.StrictEqual(deserializedValue.InternalProperty, value.InternalProperty); - Assert.StrictEqual(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); + Assert.Equal(deserializedValue.InternalProperty, value.InternalProperty); + Assert.Equal(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); } [Fact] @@ -1544,8 +1544,8 @@ public static void DCS_PrivateTypeSerialization() { var value = new PrivateType(); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"12"); - Assert.StrictEqual(deserializedValue.GetInternalPropertyValue(), value.GetInternalPropertyValue()); - Assert.StrictEqual(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); + Assert.Equal(deserializedValue.GetInternalPropertyValue(), value.GetInternalPropertyValue()); + Assert.Equal(deserializedValue.GetPrivatePropertyValue(), value.GetPrivatePropertyValue()); } #region private type has to be in with in the class @@ -1632,7 +1632,7 @@ public static void DCS_KnownTypesThroughConstructor() @"OnePropertyValue", null, () => { return new DataContractSerializer(typeof(KnownTypesThroughConstructor), new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) }); }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.True(actual.SimpleTypeValue is SimpleKnownTypeValue); Assert.Equal("PropertyValue", ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -1647,9 +1647,9 @@ public static void DCS_DuplicatedKnownTypesWithAdapterThroughConstructor() @"2015-11-11T00:00:00Z02015-11-11T00:00:00Z0", null, () => { return new DataContractSerializer(typeof(KnownTypesThroughConstructor), new Type[] { typeof(DateTimeOffset), typeof(DateTimeOffset) }); }); - Assert.StrictEqual((DateTimeOffset)value.EnumValue, (DateTimeOffset)actual.EnumValue); + Assert.Equal((DateTimeOffset)value.EnumValue, (DateTimeOffset)actual.EnumValue); Assert.True(actual.SimpleTypeValue is DateTimeOffset); - Assert.StrictEqual((DateTimeOffset)actual.SimpleTypeValue, (DateTimeOffset)actual.SimpleTypeValue); + Assert.Equal((DateTimeOffset)actual.SimpleTypeValue, (DateTimeOffset)actual.SimpleTypeValue); } [Fact] @@ -1661,7 +1661,7 @@ public static void DCS_KnownTypesThroughSettings() @"OnePropertyValue", new DataContractSerializerSettings() { KnownTypes = new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) } }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.True(actual.SimpleTypeValue is SimpleKnownTypeValue); Assert.Equal("PropertyValue", ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -1675,7 +1675,7 @@ public static void DCS_RootNameNamespaceAndKnownTypesThroughConstructorAsStrings @"OnePropertyValue", null, () => { return new DataContractSerializer(typeof(KnownTypesThroughConstructor), "ChangedRoot", "http://changedNamespace", new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) }); }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.True(actual.SimpleTypeValue is SimpleKnownTypeValue); Assert.Equal("PropertyValue", ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -1690,7 +1690,7 @@ public static void DCS_RootNameNamespaceAndKnownTypesThroughConstructorAsXmlDict @"OnePropertyValue", null, () => { return new DataContractSerializer(typeof(KnownTypesThroughConstructor), xmlDictionary.Add("ChangedRoot"), xmlDictionary.Add("http://changedNamespace"), new Type[] { typeof(MyEnum), typeof(SimpleKnownTypeValue) }); }); - Assert.StrictEqual((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); + Assert.Equal((MyEnum)value.EnumValue, (MyEnum)actual.EnumValue); Assert.True(actual.SimpleTypeValue is SimpleKnownTypeValue); Assert.Equal("PropertyValue", ((SimpleKnownTypeValue)actual.SimpleTypeValue).StrProperty); } @@ -1704,7 +1704,7 @@ public static void DCS_ExceptionObject() Assert.Equal(value.Message, actual.Message); Assert.Equal(value.Source, actual.Source); Assert.Equal(value.StackTrace, actual.StackTrace); - Assert.StrictEqual(value.HResult, actual.HResult); + Assert.Equal(value.HResult, actual.HResult); Assert.Equal(value.HelpLink, actual.HelpLink); } @@ -1718,7 +1718,7 @@ public static void DCS_MyArgumentExceptionObject() Assert.Equal(value.ParamName, actual.ParamName); Assert.Equal(value.Source, actual.Source); Assert.Equal(value.StackTrace, actual.StackTrace); - Assert.StrictEqual(value.HResult, actual.HResult); + Assert.Equal(value.HResult, actual.HResult); Assert.Equal(value.HelpLink, actual.HelpLink); } @@ -1731,7 +1731,7 @@ public static void DCS_ExceptionMessageWithSpecialChars() Assert.Equal(value.Message, actual.Message); Assert.Equal(value.Source, actual.Source); Assert.Equal(value.StackTrace, actual.StackTrace); - Assert.StrictEqual(value.HResult, actual.HResult); + Assert.Equal(value.HResult, actual.HResult); Assert.Equal(value.HelpLink, actual.HelpLink); } @@ -1744,13 +1744,13 @@ public static void DCS_InnerExceptionMessageWithSpecialChars() Assert.Equal(value.Message, actual.Message); Assert.Equal(value.Source, actual.Source); Assert.Equal(value.StackTrace, actual.StackTrace); - Assert.StrictEqual(value.HResult, actual.HResult); + Assert.Equal(value.HResult, actual.HResult); Assert.Equal(value.HelpLink, actual.HelpLink); Assert.Equal(value.InnerException.Message, actual.InnerException.Message); Assert.Equal(value.InnerException.Source, actual.InnerException.Source); Assert.Equal(value.InnerException.StackTrace, actual.InnerException.StackTrace); - Assert.StrictEqual(value.InnerException.HResult, actual.InnerException.HResult); + Assert.Equal(value.InnerException.HResult, actual.InnerException.HResult); Assert.Equal(value.InnerException.HelpLink, actual.InnerException.HelpLink); } @@ -1761,7 +1761,7 @@ public static void DCS_TypeWithUriTypeProperty() var actual = DataContractSerializerHelper.SerializeAndDeserialize(value, @"http://www.bing.com/"); - Assert.StrictEqual(value.ConfigUri, actual.ConfigUri); + Assert.Equal(value.ConfigUri, actual.ConfigUri); } [Fact] @@ -1769,7 +1769,7 @@ public static void DCS_TypeWithDatetimeOffsetTypeProperty() { var value = new TypeWithDateTimeOffsetTypeProperty() { ModifiedTime = new DateTimeOffset(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Utc)) }; var actual = DataContractSerializerHelper.SerializeAndDeserialize(value, @"2013-01-02T03:04:05.006Z0"); - Assert.StrictEqual(value.ModifiedTime, actual.ModifiedTime); + Assert.Equal(value.ModifiedTime, actual.ModifiedTime); // Assume that UTC offset doesn't change more often than once in the day 2013-01-02 // DO NOT USE TimeZoneInfo.Local.BaseUtcOffset ! @@ -1777,11 +1777,11 @@ public static void DCS_TypeWithDatetimeOffsetTypeProperty() // Adding offsetMinutes to ModifiedTime property so the DateTime component in serialized strings are time-zone independent value = new TypeWithDateTimeOffsetTypeProperty() { ModifiedTime = new DateTimeOffset(new DateTime(2013, 1, 2, 3, 4, 5, 6).AddMinutes(offsetMinutes)) }; actual = DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"2013-01-02T03:04:05.006Z{0}", offsetMinutes)); - Assert.StrictEqual(value.ModifiedTime, actual.ModifiedTime); + Assert.Equal(value.ModifiedTime, actual.ModifiedTime); value = new TypeWithDateTimeOffsetTypeProperty() { ModifiedTime = new DateTimeOffset(new DateTime(2013, 1, 2, 3, 4, 5, 6, DateTimeKind.Local).AddMinutes(offsetMinutes)) }; actual = DataContractSerializerHelper.SerializeAndDeserialize(value, string.Format(@"2013-01-02T03:04:05.006Z{0}", offsetMinutes)); - Assert.StrictEqual(value.ModifiedTime, actual.ModifiedTime); + Assert.Equal(value.ModifiedTime, actual.ModifiedTime); } [Fact] @@ -1801,56 +1801,56 @@ private static void DCS_Tuple1() { Tuple value = new Tuple(1); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"1"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple2() { Tuple value = new Tuple(1, 2); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"12"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple3() { Tuple value = new Tuple(1, 2, 3); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"123"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple4() { Tuple value = new Tuple(1, 2, 3, 4); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"1234"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple5() { Tuple value = new Tuple(1, 2, 3, 4, 5); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"12345"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple6() { Tuple value = new Tuple(1, 2, 3, 4, 5, 6); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"123456"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple7() { Tuple value = new Tuple(1, 2, 3, 4, 5, 6, 7); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"1234567"); - Assert.StrictEqual>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } private static void DCS_Tuple8() { Tuple> value = new Tuple>(1, 2, 3, 4, 5, 6, 7, new Tuple(8)); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>>(value, @"12345678"); - Assert.StrictEqual>>(value, deserializedValue); + Assert.Equal(value, deserializedValue); } [Fact] @@ -1862,8 +1862,8 @@ public static void DCS_GenericQueue() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"<_array xmlns:a=""http://schemas.microsoft.com/2003/10/Serialization/Arrays"">1000<_head>0<_size>1<_tail>1<_version>2"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); } [Fact] @@ -1876,9 +1876,9 @@ public static void DCS_GenericStack() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"<_array xmlns:a=""http://schemas.microsoft.com/2003/10/Serialization/Arrays"">12345600<_size>2<_version>2"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); - Assert.StrictEqual(a1[1], a2[1]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); + Assert.Equal(a1[1], a2[1]); } [Fact] @@ -1891,8 +1891,8 @@ public static void DCS_Queue() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"<_array xmlns:a=""http://schemas.microsoft.com/2003/10/Serialization/Arrays"">123Foo<_growFactor>200<_head>0<_size>2<_tail>2<_version>2"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); } [Fact] @@ -1905,9 +1905,9 @@ public static void DCS_Stack() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"<_array xmlns:a=""http://schemas.microsoft.com/2003/10/Serialization/Arrays"">123Foo<_size>2<_version>2"); var a1 = value.ToArray(); var a2 = deserializedValue.ToArray(); - Assert.StrictEqual(a1.Length, a2.Length); - Assert.StrictEqual(a1[0], a2[0]); - Assert.StrictEqual(a1[1], a2[1]); + Assert.Equal(a1.Length, a2.Length); + Assert.Equal(a1[0], a2[0]); + Assert.Equal(a1[1], a2[1]); } [Fact] @@ -1917,9 +1917,9 @@ public static void DCS_SortedList() value.Add(456, "Foo"); value.Add(123, "Bar"); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123Bar456Foo"); - Assert.StrictEqual(value.Count, deserializedValue.Count); - Assert.StrictEqual(value[0], deserializedValue[0]); - Assert.StrictEqual(value[1], deserializedValue[1]); + Assert.Equal(value.Count, deserializedValue.Count); + Assert.Equal(value[0], deserializedValue[0]); + Assert.Equal(value[1], deserializedValue[1]); } [Fact] @@ -1928,10 +1928,10 @@ public static void DCS_SystemVersion() Version value = new Version(1, 2, 3, 4); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"<_Build>3<_Major>1<_Minor>2<_Revision>4"); - Assert.StrictEqual(value.Major, deserializedValue.Major); - Assert.StrictEqual(value.Minor, deserializedValue.Minor); - Assert.StrictEqual(value.Build, deserializedValue.Build); - Assert.StrictEqual(value.Revision, deserializedValue.Revision); + Assert.Equal(value.Major, deserializedValue.Major); + Assert.Equal(value.Minor, deserializedValue.Minor); + Assert.Equal(value.Build, deserializedValue.Build); + Assert.Equal(value.Revision, deserializedValue.Revision); } [Fact] @@ -1939,7 +1939,7 @@ public static void DCS_TypeWithCommonTypeProperties() { TypeWithCommonTypeProperties value = new TypeWithCommonTypeProperties { Ts = new TimeSpan(1, 1, 1), Id = new Guid("ad948f1e-9ba9-44c8-8e2e-b6ba969ec987") }; var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"ad948f1e-9ba9-44c8-8e2e-b6ba969ec987PT1H1M1S"); - Assert.StrictEqual(value, deserializedValue); + Assert.Equal(value, deserializedValue); } [Fact] @@ -1947,9 +1947,9 @@ public static void DCS_TypeWithTypeProperty() { TypeWithTypeProperty value = new TypeWithTypeProperty { Id = 123, Name = "Jon Doe" }; var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123Jon Doe"); - Assert.StrictEqual(value.Id, deserializedValue.Id); + Assert.Equal(value.Id, deserializedValue.Id); Assert.Equal(value.Name, deserializedValue.Name); - Assert.StrictEqual(value.Type, deserializedValue.Type); + Assert.Equal(value.Type, deserializedValue.Type); } [Fact] @@ -1959,7 +1959,7 @@ public static void DCS_TypeWithExplicitIEnumerableImplementation() value.Add("Foo"); value.Add("Bar"); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"FooBar"); - Assert.StrictEqual(2, deserializedValue.Count); + Assert.Equal(2, deserializedValue.Count); IEnumerator enumerator = ((IEnumerable)deserializedValue).GetEnumerator(); enumerator.MoveNext(); Assert.Equal("Foo", (string)enumerator.Current); @@ -1975,11 +1975,11 @@ public static void DCS_TypeWithGenericDictionaryAsKnownType() value.Foo.Add(20, new Level() { Name = "Bar", LevelNo = 2 }); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"101Foo202Bar"); - Assert.StrictEqual(2, deserializedValue.Foo.Count); + Assert.Equal(2, deserializedValue.Foo.Count); Assert.Equal("Foo", deserializedValue.Foo[10].Name); - Assert.StrictEqual(1, deserializedValue.Foo[10].LevelNo); + Assert.Equal(1, deserializedValue.Foo[10].LevelNo); Assert.Equal("Bar", deserializedValue.Foo[20].Name); - Assert.StrictEqual(2, deserializedValue.Foo[20].LevelNo); + Assert.Equal(2, deserializedValue.Foo[20].LevelNo); } [Fact] @@ -2000,7 +2000,7 @@ public static void DCS_TypeWithKnownTypeAttributeAndListOfInterfaceMember() value.Articles = new List() { new SummaryArticle() { Title = "Bar Summary" } }; var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"SummaryBar Summary"); - Assert.StrictEqual(1, deserializedValue.Articles.Count); + Assert.Equal(1, deserializedValue.Articles.Count); Assert.Equal("Summary", deserializedValue.Articles[0].Category); Assert.Equal("Bar Summary", deserializedValue.Articles[0].Title); } @@ -2087,8 +2087,8 @@ public static void DCS_GenericTypeWithNestedGenerics() data2 = 4.56 }; var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize.InnerGeneric>(value, @"1234.56"); - Assert.StrictEqual(value.data1, deserializedValue.data1); - Assert.StrictEqual(value.data2, deserializedValue.data2); + Assert.Equal(value.data1, deserializedValue.data1); + Assert.Equal(value.data2, deserializedValue.data2); } [Fact] @@ -2108,7 +2108,7 @@ public static void DCS_DuplicatedKeyXmlQualifiedName() XmlQualifiedName qname = new XmlQualifiedName("abc", "def"); TypeWithXmlQualifiedName value = new TypeWithXmlQualifiedName() { Value = qname }; TypeWithXmlQualifiedName deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"a:abc"); - Assert.StrictEqual(value.Value, deserialized.Value); + Assert.Equal(value.Value, deserialized.Value); } [Fact] @@ -2133,7 +2133,7 @@ public static void DCS_ReadOnlyCollection() List list = new List() { "Foo", "Bar" }; ReadOnlyCollection value = new ReadOnlyCollection(list); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"FooBar"); - Assert.StrictEqual(value.Count, deserializedValue.Count); + Assert.Equal(value.Count, deserializedValue.Count); Assert.Equal(value[0], deserializedValue[0]); Assert.Equal(value[1], deserializedValue[1]); } @@ -2147,9 +2147,9 @@ public static void DCS_ReadOnlyDictionary() ReadOnlyDictionary value = new ReadOnlyDictionary(dict); var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"Foo1Bar2"); - Assert.StrictEqual(value.Count, deserializedValue.Count); - Assert.StrictEqual(value["Foo"], deserializedValue["Foo"]); - Assert.StrictEqual(value["Bar"], deserializedValue["Bar"]); + Assert.Equal(value.Count, deserializedValue.Count); + Assert.Equal(value["Foo"], deserializedValue["Foo"]); + Assert.Equal(value["Bar"], deserializedValue["Bar"]); } [Fact] @@ -2159,7 +2159,7 @@ public static void DCS_KeyValuePair() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize>(value, @"FooKeyFooValue"); Assert.Equal(value.Key, deserializedValue.Key); - Assert.StrictEqual(value.Value, deserializedValue.Value); + Assert.Equal(value.Value, deserializedValue.Value); } [Fact] @@ -2225,8 +2225,8 @@ public static void DCS_CollectionDataContractWithCustomKeyName() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"100123200456"); Assert.NotNull(deserializedValue); - Assert.StrictEqual(value[100], deserializedValue[100]); - Assert.StrictEqual(value[200], deserializedValue[200]); + Assert.Equal(value[100], deserializedValue[100]); + Assert.Equal(value[200], deserializedValue[200]); } [Fact] @@ -2238,8 +2238,8 @@ public static void DCS_CollectionDataContractWithCustomKeyNameDuplicate() var deserializedValue = DataContractSerializerHelper.SerializeAndDeserialize(value, @"100123200456"); Assert.NotNull(deserializedValue); - Assert.StrictEqual(value[100], deserializedValue[100]); - Assert.StrictEqual(value[200], deserializedValue[200]); + Assert.Equal(value[100], deserializedValue[100]); + Assert.Equal(value[200], deserializedValue[200]); } [Fact] @@ -2252,7 +2252,7 @@ public static void DCS_TypeWithCollectionWithoutDefaultConstructor() Assert.NotNull(deserializedValue); Assert.NotNull(deserializedValue.CollectionProperty); - Assert.StrictEqual(value.CollectionProperty.Count, deserializedValue.CollectionProperty.Count); + Assert.Equal(value.CollectionProperty.Count, deserializedValue.CollectionProperty.Count); Assert.True(Enumerable.SequenceEqual(value.CollectionProperty, deserializedValue.CollectionProperty)); } @@ -2298,7 +2298,7 @@ public static void DCS_XmlDictionaryQuotas(XmlDictionaryReaderQuotas quotas, boo if (shouldSucceed) { var deserializedObject = (TypeWithTypeWithIntAndStringPropertyProperty)serializer.ReadObject(reader); - Assert.StrictEqual(10, deserializedObject.ObjectProperty.SampleInt); + Assert.Equal(10, deserializedObject.ObjectProperty.SampleInt); Assert.Equal("Sample string", deserializedObject.ObjectProperty.SampleString); } else @@ -2373,7 +2373,7 @@ public static void DCS_TypeWithXmlElementProperty() var expected = new TypeWithXmlElementProperty() { Elements = new[] { productElement, categoryElement } }; var actual = DataContractSerializerHelper.SerializeAndDeserialize(expected, @"Product innertextCategory innertext"); - Assert.StrictEqual(expected.Elements.Length, actual.Elements.Length); + Assert.Equal(expected.Elements.Length, actual.Elements.Length); for (int i = 0; i < expected.Elements.Length; ++i) { Assert.Equal(expected.Elements[i].InnerText, actual.Elements[i].InnerText); @@ -2504,7 +2504,7 @@ public static void DCS_TypeWithPrimitiveProperties() TypeWithPrimitiveProperties x = new TypeWithPrimitiveProperties { P1 = "abc", P2 = 11 }; TypeWithPrimitiveProperties y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"abc11"); Assert.Equal(x.P1, y.P1); - Assert.StrictEqual(x.P2, y.P2); + Assert.Equal(x.P2, y.P2); } [Fact] @@ -2513,7 +2513,7 @@ public static void DCS_TypeWithPrimitiveFields() TypeWithPrimitiveFields x = new TypeWithPrimitiveFields { P1 = "abc", P2 = 11 }; TypeWithPrimitiveFields y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"abc11"); Assert.Equal(x.P1, y.P1); - Assert.StrictEqual(x.P2, y.P2); + Assert.Equal(x.P2, y.P2); } [Fact] @@ -2534,16 +2534,16 @@ public static void DCS_TypeWithAllPrimitiveProperties() IntMember = 123 }; TypeWithAllPrimitiveProperties y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"true672016-07-08T09:10:11-14554481076115341312123123.456456.7892054fd3e-e118-476a-9962-1a882be51860123abc"); - Assert.StrictEqual(x.BooleanMember, y.BooleanMember); - //Assert.StrictEqual(x.ByteArrayMember, y.ByteArrayMember); - Assert.StrictEqual(x.CharMember, y.CharMember); - Assert.StrictEqual(x.DateTimeMember, y.DateTimeMember); - Assert.StrictEqual(x.DecimalMember, y.DecimalMember); - Assert.StrictEqual(x.DoubleMember, y.DoubleMember); - Assert.StrictEqual(x.FloatMember, y.FloatMember); - Assert.StrictEqual(x.GuidMember, y.GuidMember); + Assert.Equal(x.BooleanMember, y.BooleanMember); + //Assert.Equal(x.ByteArrayMember, y.ByteArrayMember); + Assert.Equal(x.CharMember, y.CharMember); + Assert.Equal(x.DateTimeMember, y.DateTimeMember); + Assert.Equal(x.DecimalMember, y.DecimalMember); + Assert.Equal(x.DoubleMember, y.DoubleMember); + Assert.Equal(x.FloatMember, y.FloatMember); + Assert.Equal(x.GuidMember, y.GuidMember); Assert.Equal(x.StringMember, y.StringMember); - Assert.StrictEqual(x.IntMember, y.IntMember); + Assert.Equal(x.IntMember, y.IntMember); } #region Array of primitive types @@ -2553,7 +2553,7 @@ public static void DCS_ArrayOfBoolean() { var value = new bool[] { true, false, true }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"truefalsetrue"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2562,7 +2562,7 @@ public static void DCS_ArrayOfDateTime() { var value = new DateTime[] { new DateTime(2000, 1, 2, 3, 4, 5, DateTimeKind.Utc), new DateTime(2011, 2, 3, 4, 5, 6, DateTimeKind.Utc) }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"2000-01-02T03:04:05Z2011-02-03T04:05:06Z"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2571,7 +2571,7 @@ public static void DCS_ArrayOfDecimal() { var value = new decimal[] { new decimal(1, 2, 3, false, 1), new decimal(4, 5, 6, true, 2) }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"5534023222971858944.1-1106804644637321461.80"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2580,7 +2580,7 @@ public static void DCS_ArrayOfInt32() { var value = new int[] { 123, int.MaxValue, int.MinValue }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1232147483647-2147483648"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2589,7 +2589,7 @@ public static void DCS_ArrayOfInt64() { var value = new long[] { 123, long.MaxValue, long.MinValue }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1239223372036854775807-9223372036854775808"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2598,7 +2598,7 @@ public static void DCS_ArrayOfSingle() { var value = new float[] { 1.23f, 4.56f, 7.89f }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1.234.567.89"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2607,7 +2607,7 @@ public static void DCS_ArrayOfDouble() { var value = new double[] { 1.23, 4.56, 7.89 }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1.234.567.89"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2616,7 +2616,7 @@ public static void DCS_ArrayOfString() { var value = new string[] { "abc", "def", "xyz" }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"abcdefxyz"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2629,7 +2629,7 @@ public static void DCS_ArrayOfTypeWithPrimitiveProperties() new TypeWithPrimitiveProperties() { P1 = "def" , P2 = 456 }, }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"abc123def456"); - Assert.StrictEqual(value.Length, deserialized.Length); + Assert.Equal(value.Length, deserialized.Length); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2645,10 +2645,10 @@ public static void DCS_ArrayOfSimpleType() } var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, baseline: null, skipStringCompare: true); - Assert.StrictEqual(value.Length, deserialized.Length); - Assert.StrictEqual(0, deserialized[0].P2); - Assert.StrictEqual(1, deserialized[1].P2); - Assert.StrictEqual(count-1, deserialized[count-1].P2); + Assert.Equal(value.Length, deserialized.Length); + Assert.Equal(0, deserialized[0].P2); + Assert.Equal(1, deserialized[1].P2); + Assert.Equal(count-1, deserialized[count-1].P2); } [Fact] @@ -2672,7 +2672,7 @@ public static void DCS_GenericICollectionOfBoolean() { var value = new TypeImplementsGenericICollection() { true, false, true }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"truefalsetrue"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2681,7 +2681,7 @@ public static void DCS_GenericICollectionOfDecimal() { var value = new TypeImplementsGenericICollection() { new decimal(1, 2, 3, false, 1), new decimal(4, 5, 6, true, 2) }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"5534023222971858944.1-1106804644637321461.80"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2692,7 +2692,7 @@ public static void DCS_GenericICollectionOfInt32() TypeImplementsGenericICollection y = DataContractSerializerHelper.SerializeAndDeserialize(x, @"1232147483647-2147483648"); Assert.NotNull(y); - Assert.StrictEqual(x.Count, y.Count); + Assert.Equal(x.Count, y.Count); Assert.True(x.SequenceEqual(y)); } @@ -2701,7 +2701,7 @@ public static void DCS_GenericICollectionOfInt64() { var value = new TypeImplementsGenericICollection() { 123, long.MaxValue, long.MinValue }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1239223372036854775807-9223372036854775808"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2710,7 +2710,7 @@ public static void DCS_GenericICollectionOfSingle() { var value = new TypeImplementsGenericICollection() { 1.23f, 4.56f, 7.89f }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1.234.567.89"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2719,7 +2719,7 @@ public static void DCS_GenericICollectionOfDouble() { var value = new TypeImplementsGenericICollection() { 1.23, 4.56, 7.89 }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"1.234.567.89"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2730,7 +2730,7 @@ public static void DCS_GenericICollectionOfString() TypeImplementsGenericICollection deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"a1a2"); Assert.NotNull(deserialized); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(value.SequenceEqual(deserialized)); } @@ -2743,7 +2743,7 @@ public static void DCS_GenericICollectionOfTypeWithPrimitiveProperties() new TypeWithPrimitiveProperties() { P1 = "def" , P2 = 456 }, }; var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"abc123def456"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value, deserialized)); } @@ -2770,7 +2770,7 @@ public static void DCS_GenericDictionaryOfInt32Boolean() value.Add(123, true); value.Add(456, false); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123true456false"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2781,7 +2781,7 @@ public static void DCS_GenericDictionaryOfInt32String() value.Add(123, "abc"); value.Add(456, "def"); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123abc456def"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2792,7 +2792,7 @@ public static void DCS_GenericDictionaryOfStringInt32() value.Add("abc", 123); value.Add("def", 456); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"abc123def456"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.ToArray(), deserialized.ToArray())); } @@ -2807,7 +2807,7 @@ public static void DCS_NonGenericDictionaryOfInt32Boolean() value.Add(123, true); value.Add(456, false); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123true456false"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -2819,7 +2819,7 @@ public static void DCS_NonGenericDictionaryOfInt32String() value.Add(123, "abc"); value.Add(456, "def"); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"123abc456def"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -2831,7 +2831,7 @@ public static void DCS_NonGenericDictionaryOfStringInt32() value.Add("abc", 123); value.Add("def", 456); var deserialized = DataContractSerializerHelper.SerializeAndDeserialize(value, @"abc123def456"); - Assert.StrictEqual(value.Count, deserialized.Count); + Assert.Equal(value.Count, deserialized.Count); Assert.True(Enumerable.SequenceEqual(value.Keys.Cast().ToArray(), deserialized.Keys.Cast().ToArray())); Assert.True(Enumerable.SequenceEqual(value.Values.Cast().ToArray(), deserialized.Values.Cast().ToArray())); } @@ -4056,7 +4056,7 @@ public static void DCS_BasicPerSerializerRoundTripAndCompare_EnumStruct_NotNetFr public static void DCS_KnownSerializableTypes_KeyValuePair_2() { KeyValuePair kvp = new KeyValuePair("the_key", 42); - Assert.StrictEqual(kvp, DataContractSerializerHelper.SerializeAndDeserialize>(kvp, "the_key42")); + Assert.Equal(kvp, DataContractSerializerHelper.SerializeAndDeserialize>(kvp, "the_key42")); } [Fact] @@ -4067,7 +4067,7 @@ public static void DCS_KnownSerializableTypes_Queue_1() q.Enqueue("second"); Queue q2 = DataContractSerializerHelper.SerializeAndDeserialize>(q, "<_array xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">firstsecond<_head>0<_size>2<_tail>2<_version>3"); Assert.Equal(q, q2); - Assert.StrictEqual(q.Count, q2.Count); + Assert.Equal(q.Count, q2.Count); Assert.Equal(q.Dequeue(), q2.Dequeue()); Assert.Equal(q.Dequeue(), q2.Dequeue()); } @@ -4080,7 +4080,7 @@ public static void DCS_KnownSerializableTypes_Stack_1() stk.Push("last"); Stack result = DataContractSerializerHelper.SerializeAndDeserialize>(stk, "<_array xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">firstlast<_size>2<_version>2"); Assert.Equal(stk, result); - Assert.StrictEqual(stk.Count, result.Count); + Assert.Equal(stk.Count, result.Count); Assert.Equal(stk.Pop(), result.Pop()); Assert.Equal(stk.Pop(), result.Pop()); } @@ -4091,7 +4091,7 @@ public static void DCS_KnownSerializableTypes_ReadOnlyCollection_1() ReadOnlyCollection roc = new ReadOnlyCollection(new string[] { "one", "two", "three", "four" }); ReadOnlyCollection result = DataContractSerializerHelper.SerializeAndDeserialize>(roc, "onetwothreefour"); Assert.Equal(roc, result); - Assert.StrictEqual(roc.Count, result.Count); + Assert.Equal(roc.Count, result.Count); for (int i = 0; i < roc.Count; i++) Assert.Equal(roc[i], result[i]); @@ -4103,7 +4103,7 @@ public static void DCS_KnownSerializableTypes_ReadOnlyDictionary_2() ReadOnlyDictionary rod = new ReadOnlyDictionary(new Dictionary { { "one", 1 }, { "two", 22 }, { "three", 333 }, { "four", 4444 } }); ReadOnlyDictionary result = DataContractSerializerHelper.SerializeAndDeserialize>(rod, "one1two22three333four4444"); Assert.Equal(rod, result); - Assert.StrictEqual(rod.Count, result.Count); + Assert.Equal(rod.Count, result.Count); foreach (var kvp in rod) { @@ -4120,9 +4120,9 @@ public static void DCS_KnownSerializableTypes_Queue() q.Enqueue("second"); Queue q2 = DataContractSerializerHelper.SerializeAndDeserialize(q, "<_array xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">firstsecond<_growFactor>200<_head>0<_size>2<_tail>2<_version>2"); Assert.Equal(q, q2); - Assert.StrictEqual(q.Count, q2.Count); - Assert.StrictEqual(q.Dequeue(), q2.Dequeue()); - Assert.StrictEqual(q.Dequeue(), q2.Dequeue()); + Assert.Equal(q.Count, q2.Count); + Assert.Equal(q.Dequeue(), q2.Dequeue()); + Assert.Equal(q.Dequeue(), q2.Dequeue()); } [Fact] @@ -4133,9 +4133,9 @@ public static void DCS_KnownSerializableTypes_Stack() stk.Push("last"); Stack result = DataContractSerializerHelper.SerializeAndDeserialize(stk, "<_array xmlns:a=\"http://schemas.microsoft.com/2003/10/Serialization/Arrays\">firstlast<_size>2<_version>2"); Assert.Equal(stk, result); - Assert.StrictEqual(stk.Count, result.Count); - Assert.StrictEqual(stk.Pop(), result.Pop()); - Assert.StrictEqual(stk.Pop(), result.Pop()); + Assert.Equal(stk.Count, result.Count); + Assert.Equal(stk.Pop(), result.Pop()); + Assert.Equal(stk.Pop(), result.Pop()); } [Fact] @@ -4144,42 +4144,42 @@ public static void DCS_KnownSerializableTypes_CultureInfo() { // Turns out, CultureInfo is not serialzable, even if it is included in s_knownSerializableTypeInfos CultureInfo ci = new CultureInfo("pl"); - Assert.StrictEqual(ci, DataContractSerializerHelper.SerializeAndDeserialize(ci, "", null, null, true)); + Assert.Equal(ci, DataContractSerializerHelper.SerializeAndDeserialize(ci, "", null, null, true)); } [Fact] public static void DCS_KnownSerializableTypes_Version() { Version ver = new Version(5, 4, 3); - Assert.StrictEqual(ver, DataContractSerializerHelper.SerializeAndDeserialize(ver, "<_Build>3<_Major>5<_Minor>4<_Revision>-1")); + Assert.Equal(ver, DataContractSerializerHelper.SerializeAndDeserialize(ver, "<_Build>3<_Major>5<_Minor>4<_Revision>-1")); } [Fact] public static void DCS_KnownSerializableTypes_Tuples() { Tuple t1 = new Tuple("first"); - Assert.StrictEqual(t1, DataContractSerializerHelper.SerializeAndDeserialize>(t1, "first")); + Assert.Equal(t1, DataContractSerializerHelper.SerializeAndDeserialize>(t1, "first")); Tuple t2 = new Tuple("first", "second"); - Assert.StrictEqual(t2, DataContractSerializerHelper.SerializeAndDeserialize>(t2, "firstsecond")); + Assert.Equal(t2, DataContractSerializerHelper.SerializeAndDeserialize>(t2, "firstsecond")); Tuple t3 = new Tuple("first", "second", "third"); - Assert.StrictEqual(t3, DataContractSerializerHelper.SerializeAndDeserialize>(t3, "firstsecondthird")); + Assert.Equal(t3, DataContractSerializerHelper.SerializeAndDeserialize>(t3, "firstsecondthird")); Tuple t4 = new Tuple("first", "second", "third", "fourth"); - Assert.StrictEqual(t4, DataContractSerializerHelper.SerializeAndDeserialize>(t4, "firstsecondthirdfourth")); + Assert.Equal(t4, DataContractSerializerHelper.SerializeAndDeserialize>(t4, "firstsecondthirdfourth")); Tuple t5 = new Tuple("first", "second", "third", "fourth", "fifth"); - Assert.StrictEqual(t5, DataContractSerializerHelper.SerializeAndDeserialize>(t5, "firstsecondthirdfourthfifth")); + Assert.Equal(t5, DataContractSerializerHelper.SerializeAndDeserialize>(t5, "firstsecondthirdfourthfifth")); Tuple t6 = new Tuple("first", "second", "third", "fourth", "fifth", "sixth"); - Assert.StrictEqual(t6, DataContractSerializerHelper.SerializeAndDeserialize>(t6, "firstsecondthirdfourthfifthsixth")); + Assert.Equal(t6, DataContractSerializerHelper.SerializeAndDeserialize>(t6, "firstsecondthirdfourthfifthsixth")); Tuple t7 = new Tuple("first", "second", "third", "fourth", "fifth", "sixth", "seventh"); - Assert.StrictEqual(t7, DataContractSerializerHelper.SerializeAndDeserialize>(t7, "firstsecondthirdfourthfifthsixthseventh")); + Assert.Equal(t7, DataContractSerializerHelper.SerializeAndDeserialize>(t7, "firstsecondthirdfourthfifthsixthseventh")); Tuple> t8 = new Tuple>("first", "second", "third", "fourth", "fifth", "sixth", "seventh", new Tuple(8, 9, "tenth")); - Assert.StrictEqual(t8, DataContractSerializerHelper.SerializeAndDeserialize>>(t8, "firstsecondthirdfourthfifthsixthseventh89tenth")); + Assert.Equal(t8, DataContractSerializerHelper.SerializeAndDeserialize>>(t8, "firstsecondthirdfourthfifthsixthseventh89tenth")); } [Fact] @@ -4214,7 +4214,7 @@ public static void DCS_MyPersonSurrogate() dcs.WriteObject(ms, myFamily); ms.Position = 0; var newFamily = (Family)dcs.ReadObject(ms); - Assert.StrictEqual(myFamily.Members.Length, newFamily.Members.Length); + Assert.Equal(myFamily.Members.Length, newFamily.Members.Length); for (int i = 0; i < myFamily.Members.Length; ++i) { Assert.Equal(myFamily.Members[i].Name, newFamily.Members[i].Name); diff --git a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializerStressTests.cs b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializerStressTests.cs index c091ce99ab60cb..3e9d727c6186b2 100644 --- a/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializerStressTests.cs +++ b/src/libraries/System.Runtime.Serialization.Xml/tests/DataContractSerializerStressTests.cs @@ -49,7 +49,7 @@ public static void DCS_MyPersonSurrogate_Stress() dcs.WriteObject(ms, myFamily); ms.Position = 0; var newFamily = (FamilyForStress)dcs.ReadObject(ms); - Assert.StrictEqual(myFamily.Members.Length, newFamily.Members.Length); + Assert.Equal(myFamily.Members.Length, newFamily.Members.Length); for (int i = 0; i < myFamily.Members.Length; ++i) { Assert.Equal(myFamily.Members[i].Name, newFamily.Members[i].Name); From 003af127d19bfad76464a67a60263b60678421e8 Mon Sep 17 00:00:00 2001 From: Andy Gocke Date: Thu, 19 Mar 2026 23:19:56 +0000 Subject: [PATCH 3/5] Fix TestNativeDigits, which it looks like wasn't running properly --- .../NumberFormatInfo/NumberFormatInfoTests.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs b/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs index eec70faf7c4f3a..a002197c2fe700 100644 --- a/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs +++ b/src/libraries/System.Runtime/tests/System.Globalization.Tests/NumberFormatInfo/NumberFormatInfoTests.cs @@ -133,7 +133,7 @@ public void PrsNativeDigitsTest(string cultureName) public static IEnumerable NativeDigitTestData() { - yield return new object[] { "ccp-Cakm-BD", new string[] { "\U0001E950", "\U0001E951", "\U0001E952", "\U0001E953", "\U0001E954", "\U0001E955", "\U0001E956", "\U0001E957", "\U0001E958", "\U0001E959" }}; + yield return new object[] { "ccp-Cakm-BD", new string[] { "\U00011136", "\U00011137", "\U00011138", "\U00011139", "\U0001113A", "\U0001113B", "\U0001113C", "\U0001113D", "\U0001113E", "\U0001113F" }}; yield return new object[] { "ar-SA", new string[] {"\u0660", "\u0661", "\u0662", "\u0663", "\u0664", "\u0665", "\u0666", "\u0667", "\u0668", "\u0669" }}; yield return new object[] { "en-US", new string[] { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9" }}; yield return new object[] { "ur-IN", new string[] { "\u06F0", "\u06F1", "\u06F2", "\u06F3", "\u06F4", "\u06F5", "\u06F6", "\u06F7", "\u06F8", "\u06F9" }}; From c965de322b915901c024de378557abbbfe6696d1 Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" Date: Sat, 21 Mar 2026 02:04:02 +0000 Subject: [PATCH 4/5] Update dependencies from build 307118 Updated Dependencies: Microsoft.CodeAnalysis, Microsoft.CodeAnalysis.Analyzers, Microsoft.CodeAnalysis.CSharp, Microsoft.Net.Compilers.Toolset (Version 5.6.0-2.26168.106 -> 5.6.0-2.26170.109) Microsoft.CodeAnalysis.NetAnalyzers, Microsoft.DotNet.ApiCompat.Task, Microsoft.NET.Workload.Emscripten.Current.Manifest-11.0.100.Transport (Version 11.0.100-preview.3.26168.106 -> 11.0.100-preview.3.26170.109) Microsoft.DotNet.Arcade.Sdk, Microsoft.DotNet.Build.Tasks.Archives, Microsoft.DotNet.Build.Tasks.Feed, Microsoft.DotNet.Build.Tasks.Installers, Microsoft.DotNet.Build.Tasks.Packaging, Microsoft.DotNet.Build.Tasks.TargetFramework, Microsoft.DotNet.Build.Tasks.Templating, Microsoft.DotNet.Build.Tasks.Workloads, Microsoft.DotNet.CodeAnalysis, Microsoft.DotNet.GenAPI, Microsoft.DotNet.GenFacades, Microsoft.DotNet.Helix.Sdk, Microsoft.DotNet.PackageTesting, Microsoft.DotNet.RemoteExecutor, Microsoft.DotNet.SharedFramework.Sdk, Microsoft.DotNet.XliffTasks, Microsoft.DotNet.XUnitExtensions (Version 11.0.0-beta.26168.106 -> 11.0.0-beta.26170.109) Microsoft.DotNet.Cecil (Version 0.11.5-preview.26168.106 -> 0.11.5-preview.26170.109) Microsoft.DotNet.XUnitAssert (Version 3.2.2-beta.26168.106 -> 3.2.2-beta.26170.109) Microsoft.DotNet.XUnitConsoleRunner (Version 2.9.3-beta.26168.106 -> 2.9.3-beta.26170.109) Microsoft.NET.Sdk.IL, Microsoft.NETCore.App.Ref, Microsoft.NETCore.ILAsm, runtime.native.System.IO.Ports, System.Reflection.Metadata, System.Reflection.MetadataLoadContext, System.Text.Json (Version 11.0.0-preview.3.26168.106 -> 11.0.0-preview.3.26170.109) NuGet.Frameworks, NuGet.Packaging, NuGet.ProjectModel, NuGet.Versioning (Version 7.6.0-rc.16906 -> 7.6.0-rc.17109) System.CommandLine (Version 3.0.0-preview.3.26168.106 -> 3.0.0-preview.3.26170.109) [[ commit created by automation ]] --- eng/Version.Details.props | 78 +++++----- eng/Version.Details.xml | 158 ++++++++++----------- eng/common/core-templates/job/renovate.yml | 9 +- eng/common/native/install-dependencies.sh | 7 - global.json | 8 +- 5 files changed, 128 insertions(+), 132 deletions(-) diff --git a/eng/Version.Details.props b/eng/Version.Details.props index 32cea2adf680d6..f21c2fcb79cf4e 100644 --- a/eng/Version.Details.props +++ b/eng/Version.Details.props @@ -6,45 +6,45 @@ This file should be imported by eng/Versions.props - 5.6.0-2.26168.106 - 5.6.0-2.26168.106 - 5.6.0-2.26168.106 - 11.0.100-preview.3.26168.106 - 11.0.100-preview.3.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 0.11.5-preview.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 11.0.0-beta.26168.106 - 3.2.2-beta.26168.106 - 2.9.3-beta.26168.106 - 11.0.0-beta.26168.106 - 5.6.0-2.26168.106 - 11.0.0-preview.3.26168.106 - 11.0.100-preview.3.26168.106 - 11.0.0-preview.3.26168.106 - 11.0.0-preview.3.26168.106 - 7.6.0-rc.16906 - 7.6.0-rc.16906 - 7.6.0-rc.16906 - 7.6.0-rc.16906 - 11.0.0-preview.3.26168.106 - 3.0.0-preview.3.26168.106 - 11.0.0-preview.3.26168.106 - 11.0.0-preview.3.26168.106 - 11.0.0-preview.3.26168.106 + 5.6.0-2.26170.109 + 5.6.0-2.26170.109 + 5.6.0-2.26170.109 + 11.0.100-preview.3.26170.109 + 11.0.100-preview.3.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 0.11.5-preview.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 11.0.0-beta.26170.109 + 3.2.2-beta.26170.109 + 2.9.3-beta.26170.109 + 11.0.0-beta.26170.109 + 5.6.0-2.26170.109 + 11.0.0-preview.3.26170.109 + 11.0.100-preview.3.26170.109 + 11.0.0-preview.3.26170.109 + 11.0.0-preview.3.26170.109 + 7.6.0-rc.17109 + 7.6.0-rc.17109 + 7.6.0-rc.17109 + 7.6.0-rc.17109 + 11.0.0-preview.3.26170.109 + 3.0.0-preview.3.26170.109 + 11.0.0-preview.3.26170.109 + 11.0.0-preview.3.26170.109 + 11.0.0-preview.3.26170.109 11.0.0-alpha.0.26159.1 diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 29150b6749e1cd..741e2c57167fe8 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,5 +1,5 @@ - + https://github.com/dotnet/icu @@ -37,91 +37,91 @@ https://github.com/dotnet/llvm-project 2098c63f212ffbb4bcfaa87f6b9669228a72d0d2 - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e https://github.com/dotnet/runtime-assets @@ -259,33 +259,33 @@ https://github.com/dotnet/llvm-project 2098c63f212ffbb4bcfaa87f6b9669228a72d0d2 - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e https://github.com/dotnet/xharness @@ -299,9 +299,9 @@ https://github.com/dotnet/xharness 607b3de9cf2dbfec6734e686e68d2813b40b2b51 - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e https://dev.azure.com/dnceng/internal/_git/dotnet-optimization @@ -327,29 +327,29 @@ https://github.com/dotnet/runtime-assets b18b12364ccdfe1c61037260c459acd35eb806f3 - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e https://dev.azure.com/dnceng/internal/_git/dotnet-optimization @@ -361,21 +361,21 @@ - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e - + https://github.com/dotnet/dotnet - 803eb28628f5623c108f1bf33504c86e19815821 + e921c3d511279a7ed37f83dbd346019c5b3ffc0e https://github.com/dotnet/node diff --git a/eng/common/core-templates/job/renovate.yml b/eng/common/core-templates/job/renovate.yml index 26b5901819a9c2..ab233539b5dc24 100644 --- a/eng/common/core-templates/job/renovate.yml +++ b/eng/common/core-templates/job/renovate.yml @@ -96,6 +96,9 @@ jobs: - name: renovateVersion value: '42' readonly: true + - name: renovateLogFilePath + value: '$(Build.ArtifactStagingDirectory)/renovate.json' + readonly: true - name: dryRunArg readonly: true ${{ if eq(parameters.dryRun, true) }}: @@ -175,13 +178,13 @@ jobs: RENOVATE_RECREATE_WHEN: $(recreateWhenArg) LOG_LEVEL: info LOG_FILE_LEVEL: debug - LOG_FILE: $(Build.ArtifactStagingDirectory)/renovate.json + LOG_FILE: $(renovateLogFilePath) RENOVATE_CONFIG_FILE: $(selfRepoPath)/${{parameters.renovateConfigPath}} - script: | echo "PRs created by Renovate:" - if [ -s "$(Build.ArtifactStagingDirectory)/renovate.json" ]; then - if ! jq -r 'select(.msg == "PR created" and .pr != null) | "https://github.com/\(.repository)/pull/\(.pr)"' "$(Build.ArtifactStagingDirectory)/renovate-log.json" | sort -u; then + if [ -s "$(renovateLogFilePath)" ]; then + if ! jq -r 'select(.msg == "PR created" and .pr != null) | "https://github.com/\(.repository)/pull/\(.pr)"' "$(renovateLogFilePath)" | sort -u; then echo "##vso[task.logissue type=warning]Failed to parse Renovate log file with jq." echo "##vso[task.complete result=SucceededWithIssues]" fi diff --git a/eng/common/native/install-dependencies.sh b/eng/common/native/install-dependencies.sh index 23b42886236ff6..4742177a7685d5 100755 --- a/eng/common/native/install-dependencies.sh +++ b/eng/common/native/install-dependencies.sh @@ -47,13 +47,6 @@ case "$os" in export HOMEBREW_NO_INSTALLED_DEPENDENTS_CHECK=1 # Skip brew update for now, see https://github.com/actions/setup-python/issues/577 # brew update --preinstall - - # Remove Homebrew LLVM if present. The CI runner image may ship with a - # Homebrew LLVM whose libraries (e.g., libunwind.dylib) are the wrong - # architecture or conflict with the Apple SDK, breaking native linking. - # The build uses Apple clang from /usr/bin/clang exclusively. - brew uninstall --ignore-dependencies llvm@18 2>/dev/null || true - brew bundle --no-upgrade --file=- < Date: Sat, 21 Mar 2026 05:55:40 +0000 Subject: [PATCH 5/5] Fix CI failures from upstream merge - ThreadPoolBoundHandle.PlatformNotSupported: Add partial modifier for Browser+MT coexistence - PortableThreadPool.Unix: Exclude from Browser+MT builds (Browser.Threads.cs provides stubs) - BFloat16Tests: Cast float/double literals to BFloat16 for NativeAOT xunit v3 compat - StringTests: Wrap char literals in new Rune() for Contains_Rune_StringComparison test data Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> --- .../System.Private.CoreLib.Shared.projitems | 2 +- ...eadPoolBoundHandle.PlatformNotSupported.cs | 2 +- .../System/Numerics/BFloat16Tests.cs | 10 +-- .../System/StringTests.cs | 62 +++++++++---------- 4 files changed, 38 insertions(+), 38 deletions(-) diff --git a/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems b/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems index ece38286e289a0..1b9019fe2eedcf 100644 --- a/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems +++ b/src/libraries/System.Private.CoreLib/src/System.Private.CoreLib.Shared.projitems @@ -2867,7 +2867,7 @@ - + diff --git a/src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolBoundHandle.PlatformNotSupported.cs b/src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolBoundHandle.PlatformNotSupported.cs index ab99e8eaad2468..7f36e6117e26cb 100644 --- a/src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolBoundHandle.PlatformNotSupported.cs +++ b/src/libraries/System.Private.CoreLib/src/System/Threading/ThreadPoolBoundHandle.PlatformNotSupported.cs @@ -6,7 +6,7 @@ namespace System.Threading { - public sealed class ThreadPoolBoundHandle : IDisposable + public sealed partial class ThreadPoolBoundHandle : IDisposable { public SafeHandle Handle => null!; diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Numerics/BFloat16Tests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Numerics/BFloat16Tests.cs index 08597497d80b3a..52c517c73109d0 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Numerics/BFloat16Tests.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/Numerics/BFloat16Tests.cs @@ -1344,7 +1344,7 @@ public static IEnumerable ExpM1_TestData() yield return new object[] { (BFloat16)(2.297f), (BFloat16)(8.938f), CrossPlatformMachineEpsilon * (BFloat16)10 }; // value: (ln(10)) yield return new object[] { (BFloat16)(2.719f), (BFloat16)(14.19f), CrossPlatformMachineEpsilon * (BFloat16)100 }; // value: (e) yield return new object[] { (BFloat16)(3.141f), (BFloat16)(22.12f), CrossPlatformMachineEpsilon * (BFloat16)100 }; // value: (pi) - yield return new object[] { BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, 0.0 }; + yield return new object[] { BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, (BFloat16)0.0f }; } [Theory] @@ -1388,7 +1388,7 @@ public static IEnumerable Exp2_TestData() yield return new object[] { (BFloat16)(2.297f), (BFloat16)(4.906f), CrossPlatformMachineEpsilon * (BFloat16)10 }; // value: (ln(10)) yield return new object[] { (BFloat16)(2.719f), (BFloat16)(6.594f), CrossPlatformMachineEpsilon * (BFloat16)10 }; // value: (e) yield return new object[] { (BFloat16)(3.141f), (BFloat16)(8.812f), CrossPlatformMachineEpsilon * (BFloat16)10 }; // value: (pi) - yield return new object[] { BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, 0.0f }; + yield return new object[] { BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, (BFloat16)0.0f }; } [Theory] @@ -1550,8 +1550,8 @@ public static IEnumerable LogP1_TestData() yield return new object[] { (BFloat16)(-0.5078f), (BFloat16)(-0.707f), CrossPlatformMachineEpsilon }; // expected: -(1 / sqrt(2)) yield return new object[] { (BFloat16)(-0.5f), (BFloat16)(-0.6914f), CrossPlatformMachineEpsilon }; // expected: -(ln(2)) yield return new object[] { (BFloat16)(-0.4707f), (BFloat16)(-0.6367f), CrossPlatformMachineEpsilon }; // expected: -(2 / pi) - yield return new object[] { (BFloat16)(-0f), (BFloat16)(0f), 0.0f }; - yield return new object[] { (BFloat16)(0f), (BFloat16)(0f), 0.0f }; + yield return new object[] { (BFloat16)(-0f), (BFloat16)(0f), (BFloat16)0.0f }; + yield return new object[] { (BFloat16)(0f), (BFloat16)(0f), (BFloat16)0.0f }; yield return new object[] { (BFloat16)(0.375f), (BFloat16)(0.3184f), CrossPlatformMachineEpsilon }; // expected: (1 / pi) yield return new object[] { (BFloat16)(0.543f), (BFloat16)(0.4336f), CrossPlatformMachineEpsilon }; // expected: (log10(e)) yield return new object[] { (BFloat16)(0.8906f), (BFloat16)(0.6367f), CrossPlatformMachineEpsilon }; // expected: (2 / pi) @@ -1714,7 +1714,7 @@ public static IEnumerable Hypot_TestData() yield return new object[] { BFloat16.PositiveInfinity, BFloat16.Zero, BFloat16.PositiveInfinity, BFloat16.Zero }; yield return new object[] { BFloat16.PositiveInfinity, BFloat16.One, BFloat16.PositiveInfinity, BFloat16.Zero }; yield return new object[] { BFloat16.PositiveInfinity, BFloat16.E, BFloat16.PositiveInfinity, BFloat16.Zero }; - yield return new object[] { BFloat16.PositiveInfinity, 10.0f, BFloat16.PositiveInfinity, BFloat16.Zero }; + yield return new object[] { BFloat16.PositiveInfinity, (BFloat16)10.0f, BFloat16.PositiveInfinity, BFloat16.Zero }; yield return new object[] { BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, BFloat16.PositiveInfinity, BFloat16.Zero }; } diff --git a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/StringTests.cs b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/StringTests.cs index 8df87a3c49f4ba..f38bc1e9a7fa13 100644 --- a/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/StringTests.cs +++ b/src/libraries/System.Runtime/tests/System.Runtime.Tests/System/StringTests.cs @@ -271,47 +271,47 @@ public static void Contains_Char_StringComparison(string s, char value, StringCo public static IEnumerable Contains_Rune_StringComparison_TestData() { // CurrentCulture - yield return new object[] { "Hello", 'H', StringComparison.CurrentCulture, true }; - yield return new object[] { "Hello", 'Z', StringComparison.CurrentCulture, false }; - yield return new object[] { "Hello", 'e', StringComparison.CurrentCulture, true }; - yield return new object[] { "Hello", 'E', StringComparison.CurrentCulture, false }; - yield return new object[] { "", 'H', StringComparison.CurrentCulture, false }; - yield return new object[] { "", '\u0301', StringComparison.CurrentCulture, false }; // Using non-ASCII character to test ICU path + yield return new object[] { "Hello", new Rune('H'), StringComparison.CurrentCulture, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.CurrentCulture, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.CurrentCulture, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.CurrentCulture, false }; + yield return new object[] { "", new Rune('H'), StringComparison.CurrentCulture, false }; + yield return new object[] { "", new Rune('\u0301'), StringComparison.CurrentCulture, false }; // Using non-ASCII character to test ICU path // CurrentCultureIgnoreCase - yield return new object[] { "Hello", 'H', StringComparison.CurrentCultureIgnoreCase, true }; - yield return new object[] { "Hello", 'Z', StringComparison.CurrentCultureIgnoreCase, false }; - yield return new object[] { "Hello", 'e', StringComparison.CurrentCultureIgnoreCase, true }; - yield return new object[] { "Hello", 'E', StringComparison.CurrentCultureIgnoreCase, true }; - yield return new object[] { "", 'H', StringComparison.CurrentCultureIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('H'), StringComparison.CurrentCultureIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.CurrentCultureIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.CurrentCultureIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.CurrentCultureIgnoreCase, true }; + yield return new object[] { "", new Rune('H'), StringComparison.CurrentCultureIgnoreCase, false }; // InvariantCulture - yield return new object[] { "Hello", 'H', StringComparison.InvariantCulture, true }; - yield return new object[] { "Hello", 'Z', StringComparison.InvariantCulture, false }; - yield return new object[] { "Hello", 'e', StringComparison.InvariantCulture, true }; - yield return new object[] { "Hello", 'E', StringComparison.InvariantCulture, false }; - yield return new object[] { "", 'H', StringComparison.InvariantCulture, false }; + yield return new object[] { "Hello", new Rune('H'), StringComparison.InvariantCulture, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.InvariantCulture, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.InvariantCulture, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.InvariantCulture, false }; + yield return new object[] { "", new Rune('H'), StringComparison.InvariantCulture, false }; // InvariantCultureIgnoreCase - yield return new object[] { "Hello", 'H', StringComparison.InvariantCultureIgnoreCase, true }; - yield return new object[] { "Hello", 'Z', StringComparison.InvariantCultureIgnoreCase, false }; - yield return new object[] { "Hello", 'e', StringComparison.InvariantCultureIgnoreCase, true }; - yield return new object[] { "Hello", 'E', StringComparison.InvariantCultureIgnoreCase, true }; - yield return new object[] { "", 'H', StringComparison.InvariantCultureIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('H'), StringComparison.InvariantCultureIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.InvariantCultureIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.InvariantCultureIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.InvariantCultureIgnoreCase, true }; + yield return new object[] { "", new Rune('H'), StringComparison.InvariantCultureIgnoreCase, false }; // Ordinal - yield return new object[] { "Hello", 'H', StringComparison.Ordinal, true }; - yield return new object[] { "Hello", 'Z', StringComparison.Ordinal, false }; - yield return new object[] { "Hello", 'e', StringComparison.Ordinal, true }; - yield return new object[] { "Hello", 'E', StringComparison.Ordinal, false }; - yield return new object[] { "", 'H', StringComparison.Ordinal, false }; + yield return new object[] { "Hello", new Rune('H'), StringComparison.Ordinal, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.Ordinal, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.Ordinal, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.Ordinal, false }; + yield return new object[] { "", new Rune('H'), StringComparison.Ordinal, false }; // OrdinalIgnoreCase - yield return new object[] { "Hello", 'H', StringComparison.OrdinalIgnoreCase, true }; - yield return new object[] { "Hello", 'Z', StringComparison.OrdinalIgnoreCase, false }; - yield return new object[] { "Hello", 'e', StringComparison.OrdinalIgnoreCase, true }; - yield return new object[] { "Hello", 'E', StringComparison.OrdinalIgnoreCase, true }; - yield return new object[] { "", 'H', StringComparison.OrdinalIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('H'), StringComparison.OrdinalIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('Z'), StringComparison.OrdinalIgnoreCase, false }; + yield return new object[] { "Hello", new Rune('e'), StringComparison.OrdinalIgnoreCase, true }; + yield return new object[] { "Hello", new Rune('E'), StringComparison.OrdinalIgnoreCase, true }; + yield return new object[] { "", new Rune('H'), StringComparison.OrdinalIgnoreCase, false }; // Non-BMP rune (GRINNING FACE) with OrdinalIgnoreCase yield return new object[] { "hello world", new Rune(0x1F600), StringComparison.OrdinalIgnoreCase, false };