Skip to content

Commit

Permalink
e2e test: change tests to use a registry root instead of setting the …
Browse files Browse the repository at this point in the history
…builtin ports/versions dirs
  • Loading branch information
autoantwort committed Jul 2, 2021
1 parent c16ad2e commit db751da
Show file tree
Hide file tree
Showing 4 changed files with 42 additions and 16 deletions.
11 changes: 8 additions & 3 deletions azure-pipelines/end-to-end-tests-dir/create.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -3,8 +3,13 @@
# Test vcpkg create
$Script:CurrentTest = "create zlib"
Write-Host $Script:CurrentTest
Run-Vcpkg --x-builtin-ports-root=$TestingRoot/ports create zlib https://github.com/madler/zlib/archive/v1.2.11.tar.gz zlib-1.2.11.tar.gz
$RegistryRoot = Join-Path $TestingRoot 'registry_for_create'
& $GitExe init $RegistryRoot
Throw-IfFailed
Run-Vcpkg x-init-registry $RegistryRoot
Throw-IfFailed
Run-Vcpkg --x-registry-root=$RegistryRoot create zlib https://github.com/madler/zlib/archive/v1.2.11.tar.gz zlib-1.2.11.tar.gz
Throw-IfFailed

Require-FileExists "$TestingRoot/ports/zlib/portfile.cmake"
Require-FileExists "$TestingRoot/ports/zlib/vcpkg.json"
Require-FileExists "$RegistryRoot/ports/zlib/portfile.cmake"
Require-FileExists "$RegistryRoot/ports/zlib/vcpkg.json"
2 changes: 1 addition & 1 deletion azure-pipelines/end-to-end-tests-dir/registries.ps1
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
. "$PSScriptRoot/../end-to-end-tests-prelude.ps1"

$builtinRegistryArgs = $commonArgs + @("--x-builtin-registry-versions-dir=$PSScriptRoot/../e2e_ports/versions")
$builtinRegistryArgs = $commonArgs

Run-Vcpkg install @builtinRegistryArgs 'vcpkg-internal-e2e-test-port'
Throw-IfNotFailed
Expand Down
37 changes: 25 additions & 12 deletions azure-pipelines/end-to-end-tests-dir/versions.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -2,18 +2,34 @@

$versionFilesPath = "$PSScriptRoot/../e2e_ports/version-files"

# create custom registry for testing
$RegistryRootComplete = Join-Path $TestingRoot 'registry_for_versions_complete'
& $GitExe init $RegistryRootComplete
Throw-IfFailed
$RegistryRootIncomplete = Join-Path $TestingRoot 'registry_for_versions_incomplete'
& $GitExe init $RegistryRootIncomplete
Throw-IfFailed

# Test verify versions
mkdir $VersionFilesRoot | Out-Null
Copy-Item -Recurse "$versionFilesPath/versions_incomplete" $VersionFilesRoot
Copy-Item -Recurse "$versionFilesPath/versions" "$RegistryRootComplete/versions"
Copy-Item -Recurse "$versionFilesPath/ports" "$RegistryRootComplete/ports"
& $GitExe -C "$RegistryRootComplete" add -A
Throw-IfFailed
& $GitExe -C "$RegistryRootComplete" commit -m "add files"
Throw-IfFailed
Copy-Item -Recurse "$versionFilesPath/versions_incomplete" "$RegistryRootIncomplete/versions"
Copy-Item -Recurse "$versionFilesPath/ports_incomplete" "$RegistryRootIncomplete/ports"
& $GitExe -C "$RegistryRootIncomplete" add -A
Throw-IfFailed
& $GitExe -C "$RegistryRootIncomplete" commit -m "add files"
Throw-IfFailed
$portsRedirectArgsOK = @(
"--feature-flags=versions",
"--x-builtin-ports-root=$versionFilesPath/ports",
"--x-builtin-registry-versions-dir=$versionFilesPath/versions"
"--x-registry-root=$RegistryRootComplete"
)
$portsRedirectArgsIncomplete = @(
"--feature-flags=versions",
"--x-builtin-ports-root=$versionFilesPath/ports_incomplete",
"--x-builtin-registry-versions-dir=$VersionFilesRoot/versions_incomplete"
"--x-registry-root=$RegistryRootIncomplete"
)
$CurrentTest = "x-verify-ci-versions (All files OK)"
Write-Host $CurrentTest
Expand Down Expand Up @@ -78,23 +94,20 @@ foreach ($opt_registries in @("",",registries"))
Remove-Item -Recurse $buildtreesRoot/versioning -ErrorAction SilentlyContinue
Run-Vcpkg @commonArgs "--feature-flags=versions$opt_registries" install `
"--dry-run" `
"--x-manifest-root=$versionFilesPath/without-default-baseline-2" `
"--x-builtin-registry-versions-dir=$versionFilesPath/default-baseline-2/versions"
"--x-manifest-root=$versionFilesPath/without-default-baseline-2"
Throw-IfFailed
Require-FileNotExists $buildtreesRoot/versioning

$CurrentTest = "default baseline 2"
Run-Vcpkg @commonArgs "--feature-flags=versions$opt_registries" install `
"--dry-run" `
"--x-manifest-root=$versionFilesPath/default-baseline-2" `
"--x-builtin-registry-versions-dir=$versionFilesPath/default-baseline-2/versions"
"--x-manifest-root=$versionFilesPath/default-baseline-2"
Throw-IfFailed
Require-FileExists $buildtreesRoot/versioning

$CurrentTest = "using version features fails without flag"
Run-Vcpkg @commonArgs "--feature-flags=-versions$opt_registries" install `
"--dry-run" `
"--x-manifest-root=$versionFilesPath/default-baseline-2" `
"--x-builtin-registry-versions-dir=$versionFilesPath/default-baseline-2/versions"
"--x-manifest-root=$versionFilesPath/default-baseline-2"
Throw-IfNotFailed
}
8 changes: 8 additions & 0 deletions azure-pipelines/end-to-end-tests-prelude.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,14 @@ $commonArgs = @(
)
$Script:CurrentTest = 'unassigned'
$env:X_VCPKG_REGISTRIES_CACHE = Join-Path $TestingRoot 'registries'
if ($IsWindows)
{
$GitExe = 'git.exe'
}
else
{
$GitExe = 'git'
}

function Refresh-TestRoot {
Remove-Item -Recurse -Force $TestingRoot -ErrorAction SilentlyContinue
Expand Down

0 comments on commit db751da

Please sign in to comment.