@@ -43,9 +43,11 @@ private static IDotNet MakeDotnet(IDotNetCliInvoker dotnetCliInvoker) =>
43
43
private static IList < string > MakeDotnetRestoreOutput ( ) =>
44
44
new List < string > {
45
45
" Determining projects to restore..." ,
46
+ " Writing assets file to disk. Path: /path/to/project.assets.json" ,
46
47
" Restored /path/to/project.csproj (in 1.23 sec)." ,
47
48
" Other output..." ,
48
49
" More output..." ,
50
+ " Assets file has not changed. Skipping assets file writing. Path: /path/to/project2.assets.json" ,
49
51
" Restored /path/to/project2.csproj (in 4.56 sec)." ,
50
52
" Other output..." ,
51
53
} ;
@@ -99,7 +101,7 @@ public void TestDotnetRestoreProjectToDirectory1()
99
101
var dotnet = MakeDotnet ( dotnetCliInvoker ) ;
100
102
101
103
// Execute
102
- dotnet . RestoreProjectToDirectory ( "myproject.csproj" , "mypackages" , false ) ;
104
+ dotnet . RestoreProjectToDirectory ( "myproject.csproj" , "mypackages" , false , out var assets ) ;
103
105
104
106
// Verify
105
107
var lastArgs = dotnetCliInvoker . GetLastArgs ( ) ;
@@ -110,15 +112,18 @@ public void TestDotnetRestoreProjectToDirectory1()
110
112
public void TestDotnetRestoreProjectToDirectory2 ( )
111
113
{
112
114
// Setup
113
- var dotnetCliInvoker = new DotNetCliInvokerStub ( new List < string > ( ) ) ;
115
+ var dotnetCliInvoker = new DotNetCliInvokerStub ( MakeDotnetRestoreOutput ( ) ) ;
114
116
var dotnet = MakeDotnet ( dotnetCliInvoker ) ;
115
117
116
118
// Execute
117
- dotnet . RestoreProjectToDirectory ( "myproject.csproj" , "mypackages" , false , "myconfig.config" ) ;
119
+ dotnet . RestoreProjectToDirectory ( "myproject.csproj" , "mypackages" , false , out var assets , "myconfig.config" ) ;
118
120
119
121
// Verify
120
122
var lastArgs = dotnetCliInvoker . GetLastArgs ( ) ;
121
123
Assert . Equal ( "restore --no-dependencies \" myproject.csproj\" --packages \" mypackages\" /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal --configfile \" myconfig.config\" " , lastArgs ) ;
124
+ Assert . Equal ( 2 , assets . Count ( ) ) ;
125
+ Assert . Contains ( "/path/to/project.assets.json" , assets ) ;
126
+ Assert . Contains ( "/path/to/project2.assets.json" , assets ) ;
122
127
}
123
128
124
129
[ Fact ]
@@ -129,14 +134,17 @@ public void TestDotnetRestoreSolutionToDirectory1()
129
134
var dotnet = MakeDotnet ( dotnetCliInvoker ) ;
130
135
131
136
// Execute
132
- dotnet . RestoreSolutionToDirectory ( "mysolution.sln" , "mypackages" , false , out var projects ) ;
137
+ dotnet . RestoreSolutionToDirectory ( "mysolution.sln" , "mypackages" , false , out var projects , out var assets ) ;
133
138
134
139
// Verify
135
140
var lastArgs = dotnetCliInvoker . GetLastArgs ( ) ;
136
141
Assert . Equal ( "restore --no-dependencies \" mysolution.sln\" --packages \" mypackages\" /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal" , lastArgs ) ;
137
142
Assert . Equal ( 2 , projects . Count ( ) ) ;
138
143
Assert . Contains ( "/path/to/project.csproj" , projects ) ;
139
144
Assert . Contains ( "/path/to/project2.csproj" , projects ) ;
145
+ Assert . Equal ( 2 , assets . Count ( ) ) ;
146
+ Assert . Contains ( "/path/to/project.assets.json" , assets ) ;
147
+ Assert . Contains ( "/path/to/project2.assets.json" , assets ) ;
140
148
}
141
149
142
150
[ Fact ]
@@ -148,12 +156,13 @@ public void TestDotnetRestoreSolutionToDirectory2()
148
156
dotnetCliInvoker . Success = false ;
149
157
150
158
// Execute
151
- dotnet . RestoreSolutionToDirectory ( "mysolution.sln" , "mypackages" , false , out var projects ) ;
159
+ dotnet . RestoreSolutionToDirectory ( "mysolution.sln" , "mypackages" , false , out var projects , out var assets ) ;
152
160
153
161
// Verify
154
162
var lastArgs = dotnetCliInvoker . GetLastArgs ( ) ;
155
163
Assert . Equal ( "restore --no-dependencies \" mysolution.sln\" --packages \" mypackages\" /p:DisableImplicitNuGetFallbackFolder=true --verbosity normal" , lastArgs ) ;
156
164
Assert . Empty ( projects ) ;
165
+ Assert . Empty ( assets ) ;
157
166
}
158
167
159
168
[ Fact ]
0 commit comments