@@ -6,120 +6,120 @@ Describe "ResolveOutputFolder" {
6
6
$TestCases = [Hashtable []]@ (
7
7
@ { Source = " Source"
8
8
Output = " Output"
9
- Result = " Output\ ModuleName"
10
- Forced = " Output\ ModuleName\ 1.2.3"
9
+ Result = " Output/ ModuleName"
10
+ Forced = " Output/ ModuleName/ 1.2.3"
11
11
}
12
- @ { Output = " ModuleName\ Output"
13
- Source = " ModuleName\ Source"
14
- Result = " ModuleName\ Output\ ModuleName"
15
- Forced = " ModuleName\ Output\ ModuleName\ 1.2.3"
12
+ @ { Output = " ModuleName/ Output"
13
+ Source = " ModuleName/ Source"
14
+ Result = " ModuleName/ Output/ ModuleName"
15
+ Forced = " ModuleName/ Output/ ModuleName/ 1.2.3"
16
16
}
17
17
@ { # Be like Jaykul
18
- Source = " ModuleName\ Source"
18
+ Source = " ModuleName/ Source"
19
19
Output = " ModuleName"
20
- Result = " ModuleName\ 1.2.3"
21
- Forced = " ModuleName\ 1.2.3"
20
+ Result = " ModuleName/ 1.2.3"
21
+ Forced = " ModuleName/ 1.2.3"
22
22
}
23
23
@ { # Be like azure
24
- Source = " 1\ s"
25
- Output = " 1\ b"
26
- Result = " 1\b\ ModuleName"
27
- Forced = " 1\b\ ModuleName\ 1.2.3"
24
+ Source = " 1/ s"
25
+ Output = " 1/ b"
26
+ Result = " 1/b/ ModuleName"
27
+ Forced = " 1/b/ ModuleName/ 1.2.3"
28
28
}
29
29
@ { # An edge case, build straight to a modules folder
30
- Source = " ModuleName\ Source"
30
+ Source = " ModuleName/ Source"
31
31
Output = " Modules"
32
- Result = " Modules\ ModuleName"
33
- Forced = " Modules\ ModuleName\ 1.2.3"
32
+ Result = " Modules/ ModuleName"
33
+ Forced = " Modules/ ModuleName/ 1.2.3"
34
34
}
35
35
@ { # What if they pass in the correct path ahead of time?
36
- Source = " 1\ s"
37
- Output = " 1\b\ ModuleName"
38
- Result = " 1\b\ ModuleName"
39
- Forced = " 1\b\ ModuleName\ 1.2.3"
36
+ Source = " 1/ s"
37
+ Output = " 1/b/ ModuleName"
38
+ Result = " 1/b/ ModuleName"
39
+ Forced = " 1/b/ ModuleName/ 1.2.3"
40
40
}
41
41
@ { # What if they pass in the correct path ahead of time?
42
- Source = " 1\ s"
43
- Output = " 1\b\ ModuleName\ 1.2.3"
44
- Result = " 1\b\ ModuleName\ 1.2.3"
45
- Forced = " 1\b\ ModuleName\ 1.2.3"
42
+ Source = " 1/ s"
43
+ Output = " 1/b/ ModuleName/ 1.2.3"
44
+ Result = " 1/b/ ModuleName/ 1.2.3"
45
+ Forced = " 1/b/ ModuleName/ 1.2.3"
46
46
}
47
47
@ { # Super edge case: what if they pass in an incorrectly versioned output path?
48
- Source = " 1\ s"
49
- Output = " 1\b\ ModuleName\ 4.5.6"
50
- Result = " 1\b\ ModuleName\ 4.5.6\ ModuleName"
51
- Forced = " 1\b\ ModuleName\ 4.5.6\ ModuleName\ 1.2.3"
48
+ Source = " 1/ s"
49
+ Output = " 1/b/ ModuleName/ 4.5.6"
50
+ Result = " 1/b/ ModuleName/ 4.5.6/ ModuleName"
51
+ Forced = " 1/b/ ModuleName/ 4.5.6/ ModuleName/ 1.2.3"
52
52
}
53
53
)
54
54
Context " Build ModuleName" {
55
55
It " From '<Source>' to '<Output>' creates '<Result>'" - TestCases $TestCases {
56
56
param ($Source , $Output , $Result )
57
57
58
58
$Parameters = @ {
59
- Source = " TestDrive:\ $Source "
60
- Output = " TestDrive:\ $Output "
59
+ Source = " TestDrive:/ $Source "
60
+ Output = " TestDrive:/ $Output "
61
61
}
62
62
63
63
$Actual = & $CommandInTest @Parameters - Name ModuleName - Target Build - Version 1.2 .3 | ToTestDrive
64
64
$Actual | Should - Exist
65
- $Actual | Should - Be " TestDrive:\ $Result "
65
+ $Actual | Should - Be " TestDrive:/ $Result "
66
66
}
67
67
68
68
It " From '<Source>' to '<Output>' -ForceVersion creates '<Forced>'" - TestCases $TestCases {
69
69
param ($Source , $Output , $Forced )
70
70
71
71
$Parameters = @ {
72
- Source = " TestDrive:\ $Source "
73
- Output = " TestDrive:\ $Output "
72
+ Source = " TestDrive:/ $Source "
73
+ Output = " TestDrive:/ $Output "
74
74
}
75
75
76
76
$Actual = & $CommandInTest @Parameters - Name ModuleName - Target Build - Version 1.2 .3 - Force | ToTestDrive
77
77
$Actual | Should - Exist
78
- $Actual | Should - Be " TestDrive:\ $Forced "
78
+ $Actual | Should - Be " TestDrive:/ $Forced "
79
79
}
80
80
}
81
81
Context " Cleaned ModuleName" {
82
82
It " From '<Source>' to '<Output>' deletes '<Result>'" - TestCases $TestCases {
83
83
param ($Source , $Output , $Result )
84
84
85
85
$Parameters = @ {
86
- Source = " TestDrive:\ $Source "
87
- Output = " TestDrive:\ $Output "
86
+ Source = " TestDrive:/ $Source "
87
+ Output = " TestDrive:/ $Output "
88
88
}
89
89
90
- $null = mkdir " TestDrive:\ $Result " - Force
90
+ $null = New-Item - ItemType Directory " TestDrive:/ $Result " - Force
91
91
92
92
# There's no output when we're cleaning
93
93
& $CommandInTest @Parameters - Name ModuleName - Version 1.2 .3 - Target Clean | Should - BeNullOrEmpty
94
- " TestDrive:\ $Result " | Should -Not - Exist
94
+ " TestDrive:/ $Result " | Should -Not - Exist
95
95
# NOTE: This is only true because we made it above
96
- " TestDrive:\ $Result " | Split-Path | Should - Exist
96
+ " TestDrive:/ $Result " | Split-Path | Should - Exist
97
97
}
98
98
99
99
It " From '<Source>' to '<Output>' -ForceVersion deletes '<Forced>'" - TestCases $TestCases {
100
100
param ($Source , $Output , $Forced )
101
101
102
102
$Parameters = @ {
103
- Source = " TestDrive:\ $Source "
104
- Output = " TestDrive:\ $Output "
103
+ Source = " TestDrive:/ $Source "
104
+ Output = " TestDrive:/ $Output "
105
105
}
106
- $null = mkdir " TestDrive:\ $Forced " - Force
106
+ $null = New-Item - ItemType Directory " TestDrive:/ $Forced " - Force
107
107
108
108
# There's no output when we're cleaning
109
109
& $CommandInTest @Parameters - Name ModuleName - Version 1.2 .3 - Force - Target Clean | Should - BeNullOrEmpty
110
- " TestDrive:\ $Forced " | Should -Not - Exist
110
+ " TestDrive:/ $Forced " | Should -Not - Exist
111
111
# NOTE: This is only true because we made it above
112
- " TestDrive:\ $Forced " | Split-Path | Should - Exist
112
+ " TestDrive:/ $Forced " | Split-Path | Should - Exist
113
113
}
114
114
}
115
115
Context " Error Cases" {
116
116
It " Won't remove a file that blocks the folder path" {
117
- $null = mkdir TestDrive:\ ModuleName\ Source - force
118
- New-Item TestDrive:\ ModuleName\ 1.2 .3 - ItemType File - Value " Hello World"
117
+ $null = New-Item - ItemType Directory TestDrive:/ ModuleName/ Source - force
118
+ New-Item TestDrive:/ ModuleName/ 1.2 .3 - ItemType File - Value " Hello World"
119
119
120
120
$Parameters = @ {
121
- Source = " TestDrive:\ ModuleName\ Source"
122
- Output = " TestDrive:\ ModuleName\ "
121
+ Source = " TestDrive:/ ModuleName/ Source"
122
+ Output = " TestDrive:/ ModuleName/ "
123
123
}
124
124
125
125
{ & $CommandInTest @Parameters - Name ModuleName - Target Build - Version 1.2 .3 - Force } | Should - throw " There is a file in the way"
0 commit comments