From 07a8e2f98739a5f53ec31a889f0205dfb85a416d Mon Sep 17 00:00:00 2001 From: Nikita Tsukanov Date: Fri, 26 Aug 2016 05:40:15 +0300 Subject: [PATCH] Allow to skip unit tests from cake build --- build.cake | 7 ++++++- build.ps1 | 10 +++++++++- build.sh | 4 +++- 3 files changed, 18 insertions(+), 3 deletions(-) diff --git a/build.cake b/build.cake index 9b132ea5a9..bda4663ec1 100644 --- a/build.cake +++ b/build.cake @@ -29,7 +29,7 @@ using NuGet; var target = Argument("target", "Default"); var platform = Argument("platform", "Any CPU"); var configuration = Argument("configuration", "Release"); - +var skipTests = HasArgument("skip-tests"); /////////////////////////////////////////////////////////////////////////////// // CONFIGURATION /////////////////////////////////////////////////////////////////////////////// @@ -623,6 +623,11 @@ Task("Run-Unit-Tests") .IsDependentOn("Build") .Does(() => { + if(skipTests) + { + Information("Skipping unit tests because of -skip-tests"); + return; + } var pattern = "./tests/Avalonia.*.UnitTests/bin/" + dirSuffix + "/Avalonia.*.UnitTests.dll"; Func ExcludeWindowsTests = i => { diff --git a/build.ps1 b/build.ps1 index c0f9714b91..0c5ab81334 100644 --- a/build.ps1 +++ b/build.ps1 @@ -32,6 +32,8 @@ No tasks will be executed. Tells Cake to use the Mono scripting engine. .PARAMETER SkipToolPackageRestore Skips restoring of packages. +.PARAMETER SkipTests +Skips unit tests .PARAMETER ScriptArgs Remaining arguments are added here. @@ -117,6 +119,12 @@ if($WhatIf.IsPresent) { $UseDryRun = "-dryrun" } +# Is this a dry run? +$UseSkipTests = ""; +if($SkipTests.IsPresent) { + $UseSkipTests = "-skip-tests" +} + # Make sure tools folder exists if ((Test-Path $PSScriptRoot) -and !(Test-Path $TOOLS_DIR)) { Write-Verbose -Message "Creating tools directory..." @@ -189,5 +197,5 @@ if (!(Test-Path $CAKE_EXE)) { # Start Cake Write-Host "Running build script..." -Invoke-Expression "& `"$CAKE_EXE`" `"$Script`" -target=`"$Target`" -platform=`"$Platform`" -configuration=`"$Configuration`" -verbosity=`"$Verbosity`" $UseMono $UseDryRun $UseExperimental $ScriptArgs" +Invoke-Expression "& `"$CAKE_EXE`" `"$Script`" -target=`"$Target`" -platform=`"$Platform`" -configuration=`"$Configuration`" -verbosity=`"$Verbosity`" $UseSkipTests $UseMono $UseDryRun $UseExperimental $ScriptArgs" exit $LASTEXITCODE \ No newline at end of file diff --git a/build.sh b/build.sh index c9c9637e1f..9447781b55 100755 --- a/build.sh +++ b/build.sh @@ -29,6 +29,7 @@ CONFIGURATION="Release" PLATFORM="Any CPU" VERBOSITY="verbose" DRYRUN= +SKIP_TESTS= SHOW_VERSION=false SCRIPT_ARGUMENTS=() @@ -39,6 +40,7 @@ for i in "$@"; do -t|--target) TARGET="$2"; shift ;; -p|--platform) PLATFORM="$2"; shift ;; -c|--configuration) CONFIGURATION="$2"; shift ;; + --skip-tests) SKIP_TESTS="-skip-tests"; shift ;; -v|--verbosity) VERBOSITY="$2"; shift ;; -d|--dryrun) DRYRUN="-dryrun" ;; --version) SHOW_VERSION=true ;; @@ -99,5 +101,5 @@ fi if $SHOW_VERSION; then exec mono "$CAKE_EXE" -version else - exec mono "$CAKE_EXE" $SCRIPT -verbosity=$VERBOSITY -platform="$PLATFORM" -configuration="$CONFIGURATION" -target=$TARGET $DRYRUN "${SCRIPT_ARGUMENTS[@]}" + exec mono "$CAKE_EXE" $SCRIPT -verbosity=$VERBOSITY -platform="$PLATFORM" -configuration="$CONFIGURATION" -target=$TARGET $DRYRUN SKIP_TESTS "${SCRIPT_ARGUMENTS[@]}" fi