@@ -22,6 +22,7 @@ import { MultiTablePrettyfier } from '../../src/prettyfiers/multiTablePrettyfier
2222import { SingleTablePrettyfier } from '../../src/prettyfiers/singleTablePrettyfier' ;
2323import { FairTableIndentationDetector } from '../../src/modelFactory/tableIndentationDetector' ;
2424import { ValuePaddingProvider } from '../../src/writers/valuePaddingProvider' ;
25+ import { MarkdownTextDocumentStub } from '../stubs/markdownTextDocumentStub' ;
2526import SystemTestsConfig from './systemTestsConfig' ;
2627
2728export class VsPrettyfierFromFile {
@@ -31,22 +32,17 @@ export class VsPrettyfierFromFile {
3132 this . _logger = logger == null ? new ConsoleLogger ( ) : logger ;
3233 }
3334
34- public assertPrettyfiedAsExpected ( fileNamePrefix : string ) : void {
35- vscode . workspace . openTextDocument ( `${ fileNamePrefix } -input.md` )
36- . then ( inputDocument => {
37- const edits = this . formatFile ( inputDocument , fileNamePrefix ) ;
38- const expectedFileContents = readFileContents ( `${ fileNamePrefix } -expected.md` ) ;
39- this . assertEditsPrettyfied ( inputDocument , edits , expectedFileContents ) ;
40- } ) ;
35+ public assertPrettyfiedAsExpected ( fileNameRoot : string ) : void {
36+ const inputFileContents = readFileContents ( `${ fileNameRoot } -input.md` ) ;
37+ const inputDocument = new MarkdownTextDocumentStub ( inputFileContents ) ;
38+ const edits = this . formatFile ( inputDocument , fileNameRoot ) ;
39+ const expectedFileContents = readFileContents ( `${ fileNameRoot } -expected.md` ) ;
40+ this . assertEditsPrettyfied ( edits , expectedFileContents ) ;
4141 }
4242
43- private assertEditsPrettyfied ( inputDocument : vscode . TextDocument , edits : vscode . TextEdit [ ] , expected : string ) : void {
44- let actual = inputDocument . getText ( ) ;
45- for ( let edit of edits ) {
46- const startIndex = inputDocument . offsetAt ( edit . range . start ) ;
47- const endIndex = inputDocument . offsetAt ( inputDocument . validatePosition ( edit . range . end ) ) ;
48- actual = actual . substring ( 0 , startIndex ) + edit . newText + actual . substring ( endIndex ) ;
49- }
43+ private assertEditsPrettyfied ( edits : vscode . TextEdit [ ] , expected : string ) : void {
44+ assert . strictEqual ( edits . length , 1 , "Expected exactly one edit replacing the entire document" ) ;
45+ const actual = edits [ 0 ] . newText ;
5046
5147 const expectedLines = expected . split ( / \r \n | \r | \n / ) ;
5248 const actualLines = actual . split ( / \r \n | \r | \n / ) ;
@@ -78,9 +74,9 @@ export class VsPrettyfierFromFile {
7874 ) ) ,
7975 new TableStringWriter ( new ValuePaddingProvider ( columnPadding ) ) ,
8076 [ this . _logger ] ,
81- new ConfigSizeLimitChecker ( [ this . _logger ] , 50000 )
77+ new ConfigSizeLimitChecker ( [ this . _logger ] , 48000 )
8278 ) ,
83- new ConfigSizeLimitChecker ( [ this . _logger ] , 50000 )
79+ new ConfigSizeLimitChecker ( [ this . _logger ] , 48000 )
8480 )
8581 ) ;
8682 }
0 commit comments