@@ -67,33 +67,27 @@ namespace ts {
6767 }
6868
6969 export const newLineCharacter = "\n" ;
70- export const getRuleProvider = memoize ( getRuleProviderInternal ) ;
71- function getRuleProviderInternal ( ) {
72- const options = {
73- indentSize : 4 ,
74- tabSize : 4 ,
75- newLineCharacter,
76- convertTabsToSpaces : true ,
77- indentStyle : ts . IndentStyle . Smart ,
78- insertSpaceAfterConstructor : false ,
79- insertSpaceAfterCommaDelimiter : true ,
80- insertSpaceAfterSemicolonInForStatements : true ,
81- insertSpaceBeforeAndAfterBinaryOperators : true ,
82- insertSpaceAfterKeywordsInControlFlowStatements : true ,
83- insertSpaceAfterFunctionKeywordForAnonymousFunctions : false ,
84- insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis : false ,
85- insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets : false ,
86- insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces : true ,
87- insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces : false ,
88- insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces : false ,
89- insertSpaceBeforeFunctionParenthesis : false ,
90- placeOpenBraceOnNewLineForFunctions : false ,
91- placeOpenBraceOnNewLineForControlBlocks : false ,
92- } ;
93- const rulesProvider = new formatting . RulesProvider ( ) ;
94- rulesProvider . ensureUpToDate ( options ) ;
95- return rulesProvider ;
96- }
70+ export const testFormatOptions : ts . FormatCodeSettings = {
71+ indentSize : 4 ,
72+ tabSize : 4 ,
73+ newLineCharacter,
74+ convertTabsToSpaces : true ,
75+ indentStyle : ts . IndentStyle . Smart ,
76+ insertSpaceAfterConstructor : false ,
77+ insertSpaceAfterCommaDelimiter : true ,
78+ insertSpaceAfterSemicolonInForStatements : true ,
79+ insertSpaceBeforeAndAfterBinaryOperators : true ,
80+ insertSpaceAfterKeywordsInControlFlowStatements : true ,
81+ insertSpaceAfterFunctionKeywordForAnonymousFunctions : false ,
82+ insertSpaceAfterOpeningAndBeforeClosingNonemptyParenthesis : false ,
83+ insertSpaceAfterOpeningAndBeforeClosingNonemptyBrackets : false ,
84+ insertSpaceAfterOpeningAndBeforeClosingNonemptyBraces : true ,
85+ insertSpaceAfterOpeningAndBeforeClosingTemplateStringBraces : false ,
86+ insertSpaceAfterOpeningAndBeforeClosingJsxExpressionBraces : false ,
87+ insertSpaceBeforeFunctionParenthesis : false ,
88+ placeOpenBraceOnNewLineForFunctions : false ,
89+ placeOpenBraceOnNewLineForControlBlocks : false ,
90+ } ;
9791
9892 const notImplementedHost : LanguageServiceHost = {
9993 getCompilationSettings : notImplemented ,
@@ -133,7 +127,7 @@ namespace ts {
133127 startPosition : selectionRange . start ,
134128 endPosition : selectionRange . end ,
135129 host : notImplementedHost ,
136- rulesProvider : getRuleProvider ( )
130+ formatContext : formatting . getFormatContext ( testFormatOptions ) ,
137131 } ;
138132 const rangeToExtract = refactor . extractSymbol . getRangeToExtract ( sourceFile , createTextSpanFromBounds ( selectionRange . start , selectionRange . end ) ) ;
139133 assert . equal ( rangeToExtract . errors , undefined , rangeToExtract . errors && "Range error: " + rangeToExtract . errors [ 0 ] . messageText ) ;
@@ -197,7 +191,7 @@ namespace ts {
197191 startPosition : selectionRange . start ,
198192 endPosition : selectionRange . end ,
199193 host : notImplementedHost ,
200- rulesProvider : getRuleProvider ( )
194+ formatContext : formatting . getFormatContext ( testFormatOptions ) ,
201195 } ;
202196 const rangeToExtract = refactor . extractSymbol . getRangeToExtract ( sourceFile , createTextSpanFromBounds ( selectionRange . start , selectionRange . end ) ) ;
203197 assert . isUndefined ( rangeToExtract . errors , rangeToExtract . errors && "Range error: " + rangeToExtract . errors [ 0 ] . messageText ) ;
0 commit comments