@@ -12,6 +12,7 @@ import * as jsonc from 'jsonc-parser';
1212import { AssetGenerator , ProgramLaunchType , replaceCommentPropertiesWithComments , updateJsonWithComments } from '../../src/assets' ;
1313import { parse } from 'jsonc-parser' ;
1414import { use as chaiUse , should } from 'chai' ;
15+ import { isNotNull } from '../testUtil' ;
1516
1617chaiUse ( require ( 'chai-string' ) ) ;
1718
@@ -24,7 +25,9 @@ suite("Asset generation: csproj", () => {
2425 let generator = new AssetGenerator ( info , createMockWorkspaceFolder ( rootPath ) ) ;
2526 generator . setStartupProject ( 0 ) ;
2627 let tasksJson = generator . createTasksConfiguration ( ) ;
27- let buildPath = tasksJson . tasks ! [ 0 ] . args ! [ 1 ] ;
28+ isNotNull ( tasksJson . tasks ) ;
29+ isNotNull ( tasksJson . tasks [ 0 ] . args ) ;
30+ let buildPath = tasksJson . tasks [ 0 ] . args [ 1 ] ;
2831
2932 // ${workspaceFolder}/project.json
3033 let segments = buildPath . split ( path . posix . sep ) ;
@@ -37,9 +40,10 @@ suite("Asset generation: csproj", () => {
3740 let generator = new AssetGenerator ( info , createMockWorkspaceFolder ( rootPath ) ) ;
3841 generator . setStartupProject ( 0 ) ;
3942 let tasksJson = generator . createTasksConfiguration ( ) ;
43+ isNotNull ( tasksJson . tasks ) ;
4044
4145 // We do not check the watch task since this parameter can break hot reload scenarios.
42- tasksJson . tasks !
46+ tasksJson . tasks
4347 . filter ( task => task . label !== "watch" )
4448 . forEach ( task => task . args ! . should . contain ( "/property:GenerateFullPaths=true" ) ) ;
4549 } ) ;
@@ -50,9 +54,10 @@ suite("Asset generation: csproj", () => {
5054 let generator = new AssetGenerator ( info , createMockWorkspaceFolder ( rootPath ) ) ;
5155 generator . setStartupProject ( 0 ) ;
5256 let tasksJson = generator . createTasksConfiguration ( ) ;
57+ isNotNull ( tasksJson . tasks ) ;
5358
5459 // We do not check the watch task since this parameter can break hot reload scenarios.
55- tasksJson . tasks !
60+ tasksJson . tasks
5661 . filter ( task => task . label !== "watch" )
5762 . forEach ( task => task . args ! . should . contain ( "/consoleloggerparameters:NoSummary" ) ) ;
5863 } ) ;
@@ -63,9 +68,11 @@ suite("Asset generation: csproj", () => {
6368 let generator = new AssetGenerator ( info , createMockWorkspaceFolder ( rootPath ) ) ;
6469 generator . setStartupProject ( 0 ) ;
6570 let tasksJson = generator . createTasksConfiguration ( ) ;
71+ isNotNull ( tasksJson . tasks ) ;
6672
67- const watchTask = tasksJson . tasks ! . find ( task => task . label === "watch" ) ;
68- watchTask ! . args ! . should . not . contain ( "/property:GenerateFullPaths=true" ) ;
73+ const watchTask = tasksJson . tasks . find ( task => task . label === "watch" ) ;
74+ isNotNull ( watchTask ?. args ) ;
75+ watchTask . args . should . not . contain ( "/property:GenerateFullPaths=true" ) ;
6976 } ) ;
7077
7178 test ( "Generated 'watch' task does not have the consoleloggerparameters argument set to NoSummary" , ( ) => {
@@ -76,7 +83,8 @@ suite("Asset generation: csproj", () => {
7683 let tasksJson = generator . createTasksConfiguration ( ) ;
7784
7885 const watchTask = tasksJson . tasks ! . find ( task => task . label === "watch" ) ;
79- watchTask ! . args ! . should . not . contain ( "/consoleloggerparameters:NoSummary" ) ;
86+ isNotNull ( watchTask ?. args ) ;
87+ watchTask . args . should . not . contain ( "/consoleloggerparameters:NoSummary" ) ;
8088 } ) ;
8189
8290 test ( "Create tasks.json for nested project opened in workspace" , ( ) => {
@@ -85,7 +93,9 @@ suite("Asset generation: csproj", () => {
8593 let generator = new AssetGenerator ( info , createMockWorkspaceFolder ( rootPath ) ) ;
8694 generator . setStartupProject ( 0 ) ;
8795 let tasksJson = generator . createTasksConfiguration ( ) ;
88- let buildPath = tasksJson . tasks ! [ 0 ] . args ! [ 1 ] ;
96+ isNotNull ( tasksJson . tasks ) ;
97+ isNotNull ( tasksJson . tasks [ 0 ] . args ) ;
98+ let buildPath = tasksJson . tasks [ 0 ] . args [ 1 ] ;
8999
90100 // ${workspaceFolder}/nested/project.json
91101 let segments = buildPath . split ( path . posix . sep ) ;
0 commit comments