Skip to content

Commit 21ed3c8

Browse files
committed
Added tests to save resource that requires -AcceptLicense
1 parent eebac17 commit 21ed3c8

File tree

2 files changed

+50
-32
lines changed

2 files changed

+50
-32
lines changed

test/SavePSResourceTests/SavePSResourceV2Tests.ps1

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -30,14 +30,14 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
3030

3131
It "Save specific module resource by name" {
3232
Save-PSResource -Name $testModuleName -Repository $PSGalleryName -Path $SaveDir -TrustRepository
33-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
33+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
3434
$pkgDir | Should -Not -BeNullOrEmpty
3535
(Get-ChildItem $pkgDir.FullName) | Should -HaveCount 1
3636
}
3737

3838
It "Save specific script resource by name" {
3939
Save-PSResource -Name $testScriptName -Repository $PSGalleryName -Path $SaveDir -TrustRepository
40-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "test_script.ps1"
40+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "test_script.ps1"
4141
$pkgDir | Should -Not -BeNullOrEmpty
4242
(Get-ChildItem $pkgDir.FullName) | Should -HaveCount 1
4343
}
@@ -53,7 +53,7 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
5353

5454
It "Should not save resource given nonexistant name" {
5555
Save-PSResource -Name NonExistentModule -Repository $PSGalleryName -Path $SaveDir -ErrorVariable err -ErrorAction SilentlyContinue -TrustRepository
56-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "NonExistentModule"
56+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "NonExistentModule"
5757
$pkgDir.Name | Should -BeNullOrEmpty
5858
}
5959

@@ -65,39 +65,39 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
6565

6666
It "Should save resource given name and exact version" {
6767
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $PSGalleryName -Path $SaveDir -TrustRepository
68-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
68+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
6969
$pkgDir | Should -Not -BeNullOrEmpty
7070
$pkgDirVersion = Get-ChildItem $pkgDir.FullName
7171
$pkgDirVersion.Name | Should -Be "1.0.0.0"
7272
}
7373

7474
It "Should save resource given name and version '3.*'" {
7575
Save-PSResource -Name $testModuleName -Version "3.*" -Repository $PSGalleryName -Path $SaveDir -TrustRepository
76-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
76+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
7777
$pkgDir | Should -Not -BeNullOrEmpty
7878
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
7979
$pkgDirVersion.Name | Should -Be "3.0.0.0"
8080
}
8181

8282
It "Should save resource given name and exact version with bracket syntax" {
8383
Save-PSResource -Name $testModuleName -Version "[1.0.0]" -Repository $PSGalleryName -Path $SaveDir -TrustRepository
84-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
84+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
8585
$pkgDir | Should -Not -BeNullOrEmpty
8686
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
8787
$pkgDirVersion.Name | Should -Be "1.0.0.0"
8888
}
8989

9090
It "Should save resource given name and exact range inclusive [1.0.0, 3.0.0]" {
9191
Save-PSResource -Name $testModuleName -Version "[1.0.0, 3.0.0]" -Repository $PSGalleryName -Path $SaveDir -TrustRepository
92-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
92+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
9393
$pkgDir | Should -Not -BeNullOrEmpty
9494
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
9595
$pkgDirVersion.Name | Should -Be "3.0.0.0"
9696
}
9797

9898
It "Should save resource given name and exact range exclusive (1.0.0, 5.0.0)" {
9999
Save-PSResource -Name $testModuleName -Version "(1.0.0, 5.0.0)" -Repository $PSGalleryName -Path $SaveDir -TrustRepository
100-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
100+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
101101
$pkgDir | Should -Not -BeNullOrEmpty
102102
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
103103
$pkgDirVersion.Name | Should -Be "3.0.0.0"
@@ -111,15 +111,15 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
111111
catch
112112
{}
113113

114-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
114+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
115115
$pkgDir | Should -BeNullOrEmpty
116116
$Error.Count | Should -BeGreaterThan 0
117-
$Error[0].FullyQualifiedErrorId | Should -Be "IncorrectVersionFormat,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
117+
$Error[0].FullyQualifiedErrorId | Should -Be "IncorrectVersionFormat,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
118118
}
119119

120120
It "Save resource with latest (including prerelease) version given Prerelease parameter" {
121121
Save-PSResource -Name $testModuleName -Prerelease -Repository $PSGalleryName -Path $SaveDir -TrustRepository
122-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
122+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
123123
$pkgDir | Should -Not -BeNullOrEmpty
124124
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
125125
$pkgDirVersion.Name | Should -Be "5.2.5"
@@ -146,24 +146,24 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
146146
### the input object is of type string (ie "true").
147147
It "Save PSResourceInfo object piped in for prerelease version object" -Pending {
148148
Find-PSResource -Name $testModuleName -Version "5.2.5-alpha001" -Repository $PSGalleryName | Save-PSResource -Path $SaveDir -TrustRepository -Verbose
149-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
149+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
150150
$pkgDir | Should -Not -BeNullOrEmpty
151151
(Get-ChildItem -Path $pkgDir.FullName) | Should -HaveCount 1
152152
}
153153

154154
It "Save module as a nupkg" {
155155
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $PSGalleryName -Path $SaveDir -AsNupkg -TrustRepository
156-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "test_module.1.0.0.nupkg"
156+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "test_module.1.0.0.nupkg"
157157
$pkgDir | Should -Not -BeNullOrEmpty
158158
}
159159

160160
It "Save module and include XML metadata file" {
161161
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $PSGalleryName -Path $SaveDir -IncludeXml -TrustRepository
162-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
162+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
163163
$pkgDir | Should -Not -BeNullOrEmpty
164164
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
165165
$pkgDirVersion.Name | Should -Be "1.0.0.0"
166-
$xmlFile = Get-ChildItem -Path $pkgDirVersion.FullName | Where-Object Name -eq "PSGetModuleInfo.xml"
166+
$xmlFile = Get-ChildItem -Path $pkgDirVersion.FullName | Where-Object Name -EQ "PSGetModuleInfo.xml"
167167
$xmlFile | Should -Not -BeNullOrEmpty
168168
}
169169

@@ -184,8 +184,8 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
184184
Save-PSResource -Name $testScriptName -Repository $PSGalleryName -Path $SaveDir -TrustRepository -IncludeXml
185185

186186
$scriptXML = $testScriptName + "_InstalledScriptInfo.xml"
187-
$savedScriptFile = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "test_script.ps1"
188-
$savedScriptXML = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $scriptXML
187+
$savedScriptFile = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "test_script.ps1"
188+
$savedScriptXML = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $scriptXML
189189
$savedScriptFile | Should -Not -BeNullOrEmpty
190190
(Get-ChildItem $savedScriptFile.FullName) | Should -HaveCount 1
191191
$savedScriptXML | Should -Not -BeNullOrEmpty
@@ -199,4 +199,13 @@ Describe 'Test HTTP Save-PSResource for V2 Server Protocol' -tags 'CI' {
199199
$err.Count | Should -BeGreaterThan 0
200200
$err[0].FullyQualifiedErrorId | Should -BeExactly "InstallPackageFailure,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
201201
}
202+
203+
# Save resource that requires license
204+
It "Save resource that requires accept license with -AcceptLicense flag" {
205+
Save-PSResource -Repository $TestGalleryName -TrustRepository -Path $SaveDir `
206+
-Name $testModuleName2 -AcceptLicense
207+
$pkg = Get-InstalledPSResource -Path $SaveDir -Name $testModuleName2
208+
$pkg.Name | Should -Be $testModuleName2
209+
$pkg.Version | Should -Be "0.0.1.0"
210+
}
202211
}

test/SavePSResourceTests/SavePSResourceV3Tests.ps1

Lines changed: 24 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
2828

2929
It "Save specific module resource by name" {
3030
Save-PSResource -Name $testModuleName -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
31-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
31+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
3232
$pkgDir | Should -Not -BeNullOrEmpty
3333
(Get-ChildItem $pkgDir.FullName) | Should -HaveCount 1
3434
}
@@ -44,7 +44,7 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
4444

4545
It "Should not save resource given nonexistant name" {
4646
Save-PSResource -Name NonExistentModule -Repository $NuGetGalleryName -Path $SaveDir -ErrorVariable err -ErrorAction SilentlyContinue -TrustRepository
47-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "NonExistentModule"
47+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "NonExistentModule"
4848
$pkgDir.Name | Should -BeNullOrEmpty
4949
}
5050

@@ -56,31 +56,31 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
5656

5757
It "Should save resource given name and exact version" {
5858
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
59-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
59+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
6060
$pkgDir | Should -Not -BeNullOrEmpty
6161
$pkgDirVersion = Get-ChildItem $pkgDir.FullName
6262
$pkgDirVersion.Name | Should -Be "1.0.0"
6363
}
6464

6565
It "Should save resource given name and exact version with bracket syntax" {
6666
Save-PSResource -Name $testModuleName -Version "[1.0.0]" -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
67-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
67+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
6868
$pkgDir | Should -Not -BeNullOrEmpty
6969
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
7070
$pkgDirVersion.Name | Should -Be "1.0.0"
7171
}
7272

7373
It "Should save resource given name and exact range inclusive [1.0.0, 3.0.0]" {
7474
Save-PSResource -Name $testModuleName -Version "[1.0.0, 3.0.0]" -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
75-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
75+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
7676
$pkgDir | Should -Not -BeNullOrEmpty
7777
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
7878
$pkgDirVersion.Name | Should -Be "3.0.0"
7979
}
8080

8181
It "Should save resource given name and exact range exclusive (1.0.0, 5.0.0)" {
8282
Save-PSResource -Name $testModuleName -Version "(1.0.0, 5.0.0)" -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
83-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
83+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
8484
$pkgDir | Should -Not -BeNullOrEmpty
8585
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
8686
$pkgDirVersion.Name | Should -Be "3.0.0"
@@ -94,15 +94,15 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
9494
catch
9595
{}
9696

97-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
97+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
9898
$pkgDir | Should -BeNullOrEmpty
9999
$Error.Count | Should -BeGreaterThan 0
100-
$Error[0].FullyQualifiedErrorId | Should -Be "IncorrectVersionFormat,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
100+
$Error[0].FullyQualifiedErrorId | Should -Be "IncorrectVersionFormat,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
101101
}
102102

103103
It "Save resource with latest (including prerelease) version given Prerelease parameter" {
104104
Save-PSResource -Name $testModuleName -Prerelease -Repository $NuGetGalleryName -Path $SaveDir -TrustRepository
105-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
105+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
106106
$pkgDir | Should -Not -BeNullOrEmpty
107107
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
108108
$pkgDirVersion.Name | Should -Be "5.2.5"
@@ -112,24 +112,24 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
112112
### the input object is of type string (ie "true").
113113
It "Save PSResourceInfo object piped in for prerelease version object" -Pending{
114114
Find-PSResource -Name $testModuleName -Version "5.2.5-alpha001" -Repository $NuGetGalleryName | Save-PSResource -Path $SaveDir -TrustRepository
115-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
115+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
116116
$pkgDir | Should -Not -BeNullOrEmpty
117-
(Get-ChildItem -Path $pkgDir.FullName) | Should -HaveCount 1
117+
(Get-ChildItem -Path $pkgDir.FullName) | Should -HaveCount 1
118118
}
119119

120120
It "Save module as a nupkg" {
121121
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $NuGetGalleryName -Path $SaveDir -AsNupkg -TrustRepository
122-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq "test_module.1.0.0.nupkg"
122+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ "test_module.1.0.0.nupkg"
123123
$pkgDir | Should -Not -BeNullOrEmpty
124124
}
125125

126126
It "Save module and include XML metadata file" {
127127
Save-PSResource -Name $testModuleName -Version "1.0.0" -Repository $NuGetGalleryName -Path $SaveDir -IncludeXml -TrustRepository
128-
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -eq $testModuleName
128+
$pkgDir = Get-ChildItem -Path $SaveDir | Where-Object Name -EQ $testModuleName
129129
$pkgDir | Should -Not -BeNullOrEmpty
130130
$pkgDirVersion = Get-ChildItem -Path $pkgDir.FullName
131131
$pkgDirVersion.Name | Should -Be "1.0.0"
132-
$xmlFile = Get-ChildItem -Path $pkgDirVersion.FullName | Where-Object Name -eq "PSGetModuleInfo.xml"
132+
$xmlFile = Get-ChildItem -Path $pkgDirVersion.FullName | Where-Object Name -EQ "PSGetModuleInfo.xml"
133133
$xmlFile | Should -Not -BeNullOrEmpty
134134
}
135135

@@ -146,4 +146,13 @@ Describe 'Test HTTP Save-PSResource for V3 Server Protocol' -tags 'CI' {
146146
$err.Count | Should -BeGreaterThan 0
147147
$err[0].FullyQualifiedErrorId | Should -BeExactly "InstallPackageFailure,Microsoft.PowerShell.PSResourceGet.Cmdlets.SavePSResource"
148148
}
149-
}
149+
150+
# Save resource that requires license
151+
It "Install resource that requires accept license with -AcceptLicense flag" {
152+
Save-PSResource -Repository $NuGetGalleryName -TrustRepository -Path $SaveDir `
153+
-Name "test_module_with_license" -AcceptLicense
154+
$pkg = Get-InstalledPSResource -Path $SaveDir "test_module_with_license"
155+
$pkg.Name | Should -Be "test_module_with_license"
156+
$pkg.Version | Should -Be "2.0.0"
157+
}
158+
}

0 commit comments

Comments
 (0)