@@ -22,14 +22,29 @@ ensureCleanGeneratedFolder();
22
22
// Generate the new baselines
23
23
for ( const fileName of fs . readdirSync ( 'cases' ) ) {
24
24
describe ( "Generating baseline for " + fileName , ( ) => {
25
+ const text = fs . readFileSync ( path . join ( './cases' , fileName ) , 'utf8' ) ;
26
+ const parsedFileName = path . parse ( fileName ) ;
27
+
28
+ const generateScopes = ( ( ) => {
29
+ let result : { markerScopes : string , wholeBaseline : string } ;
30
+ return ( ) => {
31
+ if ( ! result ) {
32
+ result = build . generateScopes ( text , parsedFileName ) ;
33
+ }
34
+ return result ;
35
+ }
36
+ } ) ( ) ;
37
+
25
38
it ( 'Comparing generated' , ( ) => {
26
- const text = fs . readFileSync ( path . join ( './cases' , fileName ) , 'utf8' ) ;
27
- const parsedFileName = path . parse ( fileName ) ;
28
- const { markerScopes, wholeBaseline } = build . generateScopes ( text , parsedFileName ) ;
39
+ const { markerScopes, wholeBaseline } = generateScopes ( ) ;
40
+ assertBaselinesMatch ( parsedFileName . name + '.baseline.txt' , wholeBaseline ) ;
41
+ } ) ;
42
+
43
+ it ( 'Comparing generated scopes' , ( ) => {
44
+ const { markerScopes } = generateScopes ( ) ;
29
45
if ( markerScopes ) {
30
46
assertBaselinesMatch ( parsedFileName . name + '.txt' , markerScopes ) ;
31
47
}
32
- assertBaselinesMatch ( parsedFileName . name + '.baseline.txt' , wholeBaseline ) ;
33
48
} ) ;
34
49
} ) ;
35
50
}
@@ -41,8 +56,7 @@ function assertBaselinesMatch(file: string, generatedText: string) {
41
56
const baselineFile = path . join ( baselineFolder , file ) ;
42
57
if ( fs . existsSync ( baselineFile ) ) {
43
58
chai . assert . equal ( generatedText , fs . readFileSync ( baselineFile , 'utf8' ) , "Expected baselines to match: " + file ) ;
44
- }
45
- else {
59
+ } else {
46
60
chai . assert ( false , "New generated baseline" ) ;
47
61
}
48
62
}
0 commit comments