This commit is contained in:
Wiesław Šoltés 2023-11-07 23:21:06 +01:00
Родитель bf870675ea
Коммит deb349b208
13 изменённых файлов: 0 добавлений и 602 удалений

Просмотреть файл

@ -1,131 +0,0 @@
{
"$schema": "http://json-schema.org/draft-04/schema#",
"title": "Build Schema",
"$ref": "#/definitions/build",
"definitions": {
"build": {
"type": "object",
"properties": {
"Configuration": {
"type": "string",
"description": "configuration"
},
"Continue": {
"type": "boolean",
"description": "Indicates to continue a previously failed build attempt"
},
"Help": {
"type": "boolean",
"description": "Shows the help text for this build assembly"
},
"Host": {
"type": "string",
"description": "Host for execution. Default is 'automatic'",
"enum": [
"AppVeyor",
"AzurePipelines",
"Bamboo",
"Bitrise",
"GitHubActions",
"GitLab",
"Jenkins",
"Rider",
"SpaceAutomation",
"TeamCity",
"Terminal",
"TravisCI",
"VisualStudio",
"VSCode"
]
},
"NoLogo": {
"type": "boolean",
"description": "Disables displaying the NUKE logo"
},
"Partition": {
"type": "string",
"description": "Partition to use on CI"
},
"Plan": {
"type": "boolean",
"description": "Shows the execution plan (HTML)"
},
"Profile": {
"type": "array",
"description": "Defines the profiles to load",
"items": {
"type": "string"
}
},
"PublishFramework": {
"type": "string",
"description": "publish-framework"
},
"PublishProject": {
"type": "string",
"description": "publish-project"
},
"PublishRuntime": {
"type": "string",
"description": "publish-runtime"
},
"PublishSelfContained": {
"type": "boolean",
"description": "publish-self-contained"
},
"Root": {
"type": "string",
"description": "Root directory during build execution"
},
"Skip": {
"type": "array",
"description": "List of targets to be skipped. Empty list skips all dependencies",
"items": {
"type": "string",
"enum": [
"Clean",
"Compile",
"Pack",
"Publish",
"Restore",
"Test"
]
}
},
"Solution": {
"type": "string",
"description": "Path to a solution file that is automatically loaded"
},
"Target": {
"type": "array",
"description": "List of targets to be invoked. Default is '{default_target}'",
"items": {
"type": "string",
"enum": [
"Clean",
"Compile",
"Pack",
"Publish",
"Restore",
"Test"
]
}
},
"Verbosity": {
"type": "string",
"description": "Logging verbosity during build execution. Default is 'Normal'",
"enum": [
"Minimal",
"Normal",
"Quiet",
"Verbose"
]
},
"VersionSuffix": {
"type": "string",
"description": "version-suffix"
}
}
}
}
}

Просмотреть файл

@ -1,4 +0,0 @@
{
"$schema": "./build.schema.json",
"Solution": "Core2D.sln"
}

Просмотреть файл

@ -15,21 +15,8 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "config", "config", "{205489
Directory.Build.props = Directory.Build.props
global.json = global.json
NuGet.Config = NuGet.Config
omnisharp.json = omnisharp.json
azure-pipelines.yml = azure-pipelines.yml
build.cmd = build.cmd
build.ps1 = build.ps1
build.sh = build.sh
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{33116698-64BF-46E3-A655-86981600BFAD}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "build", "build", "{1AE10EDE-F6CB-4EE3-9096-FFBBA86B0627}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Core2D.UnitTests", "tests\Core2D.UnitTests\Core2D.UnitTests.csproj", "{41864624-DF9B-4E24-821C-134C79C7E2B3}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "_build", "build\build\_build.csproj", "{C43260E6-62B6-415F-9301-ED34DA1816D7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "docs", "docs", "{93539864-8DAD-47A6-BB47-948EE086C030}"
ProjectSection(SolutionItems) = preProject
LICENSE.TXT = LICENSE.TXT
@ -70,30 +57,6 @@ Global
{C2E3F840-F1D4-4995-BF41-E3EE8BB3D0CA}.Release|x64.Build.0 = Release|Any CPU
{C2E3F840-F1D4-4995-BF41-E3EE8BB3D0CA}.Release|x86.ActiveCfg = Release|Any CPU
{C2E3F840-F1D4-4995-BF41-E3EE8BB3D0CA}.Release|x86.Build.0 = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|Any CPU.Build.0 = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|x64.ActiveCfg = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|x64.Build.0 = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|x86.ActiveCfg = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Debug|x86.Build.0 = Debug|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|Any CPU.ActiveCfg = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|Any CPU.Build.0 = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|x64.ActiveCfg = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|x64.Build.0 = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|x86.ActiveCfg = Release|Any CPU
{41864624-DF9B-4E24-821C-134C79C7E2B3}.Release|x86.Build.0 = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|x64.ActiveCfg = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|x64.Build.0 = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|x86.ActiveCfg = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Debug|x86.Build.0 = Debug|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|Any CPU.Build.0 = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|x64.ActiveCfg = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|x64.Build.0 = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|x86.ActiveCfg = Release|Any CPU
{C43260E6-62B6-415F-9301-ED34DA1816D7}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
@ -101,8 +64,6 @@ Global
GlobalSection(NestedProjects) = preSolution
{3F804F82-57E8-47EE-BE48-FF19462C3B97} = {A5C9C74C-A503-4375-B56A-1411181B6E5A}
{C2E3F840-F1D4-4995-BF41-E3EE8BB3D0CA} = {A5C9C74C-A503-4375-B56A-1411181B6E5A}
{41864624-DF9B-4E24-821C-134C79C7E2B3} = {33116698-64BF-46E3-A655-86981600BFAD}
{C43260E6-62B6-415F-9301-ED34DA1816D7} = {1AE10EDE-F6CB-4EE3-9096-FFBBA86B0627}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {0720A3F0-7CD3-4F9C-8DFF-858B38D44C31}

Просмотреть файл

@ -1,93 +0,0 @@
name: $(date:yyyyMMdd)$(rev:-rr)
resources:
repositories:
- repository: templates
endpoint: wieslawsoltes
type: github
name: wieslawsoltes/BuildTemplates
ref: refs/tags/v2.0.0
variables:
BuildConfiguration: 'Release'
BuildPlatform: 'Any CPU'
PublishFramework: 'net7.0'
PublishProject: 'Core2D'
PublishRuntime: ''
Workloads: ''
jobs:
- template: Test-PowerShell.yml@templates
parameters:
name: 'Test_Windows'
vmImage: 'windows-2022'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
- template: Test-Bash.yml@templates
parameters:
name: 'Test_Linux'
vmImage: 'ubuntu-20.04'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
- template: Test-Bash.yml@templates
parameters:
name: 'Test_macOS'
vmImage: 'macOS-11'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
- template: Pack-MyGet.yml@templates
parameters:
name: 'Pack_MyGet'
vmImage: 'windows-2022'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
- template: Pack-NuGet.yml@templates
parameters:
name: 'Pack_NuGet'
vmImage: 'windows-2022'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
- template: Publish-PowerShell.yml@templates
parameters:
name: 'Publish_Windows'
vmImage: 'windows-2022'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
PublishFramework: ${{ variables.PublishFramework }}
PublishProject: ${{ variables.PublishProject }}
PublishRuntime: 'win7-x64'
- template: Publish-Bash.yml@templates
parameters:
name: 'Publish_Ubuntu'
vmImage: 'ubuntu-20.04'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
PublishFramework: ${{ variables.PublishFramework }}
PublishProject: ${{ variables.PublishProject }}
PublishRuntime: 'ubuntu.14.04-x64'
- template: Publish-Bash.yml@templates
parameters:
name: 'Publish_Debian'
vmImage: 'ubuntu-20.04'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
PublishFramework: ${{ variables.PublishFramework }}
PublishProject: ${{ variables.PublishProject }}
PublishRuntime: 'debian.8-x64'
- template: Publish-Bash.yml@templates
parameters:
name: 'Publish_macOS'
vmImage: 'macOS-11'
BuildConfiguration: ${{ variables.BuildConfiguration }}
Workloads: ${{ variables.Workloads }}
PublishFramework: ${{ variables.PublishFramework }}
PublishProject: ${{ variables.PublishProject }}
PublishRuntime: 'osx.10.12-x64'

Просмотреть файл

@ -1,7 +0,0 @@
:; set -eo pipefail
:; SCRIPT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
:; ${SCRIPT_DIR}/build.sh "$@"
:; exit $?
@ECHO OFF
powershell -ExecutionPolicy ByPass -NoProfile -File "%~dp0build.ps1" %*

Просмотреть файл

@ -1,69 +0,0 @@
[CmdletBinding()]
Param(
[Parameter(Position=0,Mandatory=$false,ValueFromRemainingArguments=$true)]
[string[]]$BuildArguments
)
Write-Output "PowerShell $($PSVersionTable.PSEdition) version $($PSVersionTable.PSVersion)"
Set-StrictMode -Version 2.0; $ErrorActionPreference = "Stop"; $ConfirmPreference = "None"; trap { Write-Error $_ -ErrorAction Continue; exit 1 }
$PSScriptRoot = Split-Path $MyInvocation.MyCommand.Path -Parent
###########################################################################
# CONFIGURATION
###########################################################################
$BuildProjectFile = "$PSScriptRoot\build\build\_build.csproj"
$TempDirectory = "$PSScriptRoot\\.nuke\temp"
$DotNetGlobalFile = "$PSScriptRoot\\global.json"
$DotNetInstallUrl = "https://dot.net/v1/dotnet-install.ps1"
$DotNetChannel = "Current"
$env:DOTNET_SKIP_FIRST_TIME_EXPERIENCE = 1
$env:DOTNET_CLI_TELEMETRY_OPTOUT = 1
$env:DOTNET_MULTILEVEL_LOOKUP = 0
###########################################################################
# EXECUTION
###########################################################################
function ExecSafe([scriptblock] $cmd) {
& $cmd
if ($LASTEXITCODE) { exit $LASTEXITCODE }
}
# If dotnet CLI is installed globally and it matches requested version, use for execution
if ($null -ne (Get-Command "dotnet" -ErrorAction SilentlyContinue) -and `
$(dotnet --version) -and $LASTEXITCODE -eq 0) {
$env:DOTNET_EXE = (Get-Command "dotnet").Path
}
else {
# Download install script
$DotNetInstallFile = "$TempDirectory\dotnet-install.ps1"
New-Item -ItemType Directory -Path $TempDirectory -Force | Out-Null
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
(New-Object System.Net.WebClient).DownloadFile($DotNetInstallUrl, $DotNetInstallFile)
# If global.json exists, load expected version
if (Test-Path $DotNetGlobalFile) {
$DotNetGlobal = $(Get-Content $DotNetGlobalFile | Out-String | ConvertFrom-Json)
if ($DotNetGlobal.PSObject.Properties["sdk"] -and $DotNetGlobal.sdk.PSObject.Properties["version"]) {
$DotNetVersion = $DotNetGlobal.sdk.version
}
}
# Install by channel or version
$DotNetDirectory = "$TempDirectory\dotnet-win"
if (!(Test-Path variable:DotNetVersion)) {
ExecSafe { & powershell $DotNetInstallFile -InstallDir $DotNetDirectory -Channel $DotNetChannel -NoPath }
} else {
ExecSafe { & powershell $DotNetInstallFile -InstallDir $DotNetDirectory -Version $DotNetVersion -NoPath }
}
$env:DOTNET_EXE = "$DotNetDirectory\dotnet.exe"
}
Write-Output "Microsoft (R) .NET Core SDK version $(& $env:DOTNET_EXE --version)"
ExecSafe { & $env:DOTNET_EXE build $BuildProjectFile /nodeReuse:false /p:UseSharedCompilation=false -nologo -clp:NoSummary --verbosity quiet }
ExecSafe { & $env:DOTNET_EXE run --project $BuildProjectFile --no-build -- $BuildArguments }

Просмотреть файл

@ -1,62 +0,0 @@
#!/usr/bin/env bash
bash --version 2>&1 | head -n 1
set -eo pipefail
SCRIPT_DIR=$(cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd)
###########################################################################
# CONFIGURATION
###########################################################################
BUILD_PROJECT_FILE="$SCRIPT_DIR/build/build/_build.csproj"
TEMP_DIRECTORY="$SCRIPT_DIR//.nuke/temp"
DOTNET_GLOBAL_FILE="$SCRIPT_DIR//global.json"
DOTNET_INSTALL_URL="https://dot.net/v1/dotnet-install.sh"
DOTNET_CHANNEL="Current"
export DOTNET_CLI_TELEMETRY_OPTOUT=1
export DOTNET_SKIP_FIRST_TIME_EXPERIENCE=1
export DOTNET_MULTILEVEL_LOOKUP=0
###########################################################################
# EXECUTION
###########################################################################
function FirstJsonValue {
perl -nle 'print $1 if m{"'"$1"'": "([^"]+)",?}' <<< "${@:2}"
}
# If dotnet CLI is installed globally and it matches requested version, use for execution
if [ -x "$(command -v dotnet)" ] && dotnet --version &>/dev/null; then
export DOTNET_EXE="$(command -v dotnet)"
else
# Download install script
DOTNET_INSTALL_FILE="$TEMP_DIRECTORY/dotnet-install.sh"
mkdir -p "$TEMP_DIRECTORY"
curl -Lsfo "$DOTNET_INSTALL_FILE" "$DOTNET_INSTALL_URL"
chmod +x "$DOTNET_INSTALL_FILE"
# If global.json exists, load expected version
if [[ -f "$DOTNET_GLOBAL_FILE" ]]; then
DOTNET_VERSION=$(FirstJsonValue "version" "$(cat "$DOTNET_GLOBAL_FILE")")
if [[ "$DOTNET_VERSION" == "" ]]; then
unset DOTNET_VERSION
fi
fi
# Install by channel or version
DOTNET_DIRECTORY="$TEMP_DIRECTORY/dotnet-unix"
if [[ -z ${DOTNET_VERSION+x} ]]; then
"$DOTNET_INSTALL_FILE" --install-dir "$DOTNET_DIRECTORY" --channel "$DOTNET_CHANNEL" --no-path
else
"$DOTNET_INSTALL_FILE" --install-dir "$DOTNET_DIRECTORY" --version "$DOTNET_VERSION" --no-path
fi
export DOTNET_EXE="$DOTNET_DIRECTORY/dotnet"
fi
echo "Microsoft (R) .NET Core SDK version $("$DOTNET_EXE" --version)"
"$DOTNET_EXE" build "$BUILD_PROJECT_FILE" /nodeReuse:false /p:UseSharedCompilation=false -nologo -clp:NoSummary --verbosity quiet
"$DOTNET_EXE" run --project "$BUILD_PROJECT_FILE" --no-build -- "$@"

Просмотреть файл

@ -1,128 +0,0 @@
using System.Collections.Generic;
using Nuke.Common;
using Nuke.Common.Git;
using Nuke.Common.ProjectModel;
using Nuke.Common.Tools.DotNet;
using Nuke.Common.IO;
using static Nuke.Common.IO.FileSystemTasks;
using static Nuke.Common.IO.PathConstruction;
using static Nuke.Common.Tools.DotNet.DotNetTasks;
class Build : NukeBuild
{
public static int Main() => Execute<Build>(x => x.Compile);
[Solution]
readonly Solution Solution;
[GitRepository]
readonly GitRepository GitRepository;
[Parameter("configuration")]
public string Configuration { get; set; }
[Parameter("version-suffix")]
public string VersionSuffix { get; set; }
[Parameter("publish-framework")]
public string PublishFramework { get; set; }
[Parameter("publish-runtime")]
public string PublishRuntime { get; set; }
[Parameter("publish-project")]
public string PublishProject { get; set; }
[Parameter("publish-self-contained")]
public bool PublishSelfContained { get; set; } = true;
AbsolutePath SourceDirectory => RootDirectory / "src";
AbsolutePath TestsDirectory => RootDirectory / "tests";
AbsolutePath ArtifactsDirectory => RootDirectory / "artifacts";
protected override void OnBuildInitialized()
{
Configuration = Configuration ?? "Release";
VersionSuffix = VersionSuffix ?? "";
}
private void DeleteDirectories(IReadOnlyCollection<string> directories)
{
foreach (var directory in directories)
{
DeleteDirectory(directory);
}
}
Target Clean => _ => _
.Executes(() =>
{
DeleteDirectories(GlobDirectories(SourceDirectory, "**/bin", "**/obj"));
DeleteDirectories(GlobDirectories(TestsDirectory, "**/bin", "**/obj"));
EnsureCleanDirectory(ArtifactsDirectory);
});
Target Restore => _ => _
.DependsOn(Clean)
.Executes(() =>
{
DotNetRestore(s => s
.SetProjectFile(Solution));
});
Target Compile => _ => _
.DependsOn(Restore)
.Executes(() =>
{
DotNetBuild(s => s
.SetProjectFile(Solution)
.SetConfiguration(Configuration)
.SetVersionSuffix(VersionSuffix)
.EnableNoRestore());
});
Target Test => _ => _
.DependsOn(Compile)
.Executes(() =>
{
DotNetTest(s => s
.SetProjectFile(Solution)
.SetConfiguration(Configuration)
.SetLoggers("trx")
.SetResultsDirectory(ArtifactsDirectory / "TestResults")
.EnableNoBuild()
.EnableNoRestore());
});
Target Pack => _ => _
.DependsOn(Test)
.Executes(() =>
{
DotNetPack(s => s
.SetProject(Solution)
.SetConfiguration(Configuration)
.SetVersionSuffix(VersionSuffix)
.SetOutputDirectory(ArtifactsDirectory / "NuGet")
.EnableNoBuild()
.EnableNoRestore());
});
Target Publish => _ => _
.DependsOn(Test)
.Requires(() => PublishRuntime)
.Requires(() => PublishFramework)
.Requires(() => PublishProject)
.Executes(() =>
{
DotNetPublish(s => s
.SetProject(Solution.GetProject(PublishProject))
.SetConfiguration(Configuration)
.SetVersionSuffix(VersionSuffix)
.SetFramework(PublishFramework)
.SetRuntime(PublishRuntime)
.SetSelfContained(PublishSelfContained)
.SetOutput(ArtifactsDirectory / "Publish" / PublishProject + "-" + PublishFramework + "-" + PublishRuntime));
});
}

Просмотреть файл

@ -1,22 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>net7.0</TargetFramework>
<AppendTargetFrameworkToOutputPath>false</AppendTargetFrameworkToOutputPath>
<IsPackable>False</IsPackable>
<NoWarn>CS0649;CS0169</NoWarn>
<NukeTelemetryVersion>1</NukeTelemetryVersion>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Nuke.Common" Version="5.3.0" />
</ItemGroup>
<ItemGroup>
<NukeMetadata Include="**\*.json" Exclude="bin\**;obj\**" />
<NukeExternalFiles Include="**\*.*.ext" Exclude="bin\**;obj\**" />
<None Remove="*.ref;*.txt" />
</ItemGroup>
</Project>

Двоичные данные
icons.project

Двоичный файл не отображается.

Просмотреть файл

@ -1,12 +0,0 @@
{
"fileOptions": {
"systemExcludeSearchPatterns": [
"icon/**/*",
"images/**/*",
"scripts/**/*",
"**/bin/**/*",
"**/obj/**/*"
],
"excludeSearchPatterns": []
}
}

Просмотреть файл

@ -1,29 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk" ToolsVersion="15.0">
<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<OutputType>Library</OutputType>
<GenerateAssemblyInfo>False</GenerateAssemblyInfo>
<GenerateRuntimeConfigurationFiles>True</GenerateRuntimeConfigurationFiles>
<IsPackable>False</IsPackable>
<Nullable>enable</Nullable>
<RootNamespace>NodeEditor.UnitTests</RootNamespace>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="xunit" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.abstractions" Version="$(XUnitAbstractionsVersion)" />
<PackageReference Include="xunit.assert" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.core" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.extensibility.core" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.extensibility.execution" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.runner.console" Version="$(XUnitVersion)" />
<PackageReference Include="xunit.runner.visualstudio" Version="$(XUnitVersion)" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="$(MicrosoftNETTestSdkVersion)" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\..\src\Core2D\Core2D.csproj" />
</ItemGroup>
</Project>

Просмотреть файл

@ -1,6 +0,0 @@
using System.Reflection;
using Xunit;
[assembly: AssemblyTitle("Core2D.UnitTests.UnitTests")]
[assembly: CollectionBehavior(DisableTestParallelization = true)]