@@ -14,13 +14,15 @@ import {
1414 ServerState ,
1515 ClientInterface ,
1616 FeaturesStatus ,
17+ FormatterStatus ,
1718} from "../../status" ;
1819
1920suite ( "StatusItems" , ( ) => {
2021 let ruby : Ruby ;
2122 let context : vscode . ExtensionContext ;
2223 let status : StatusItem ;
2324 let client : ClientInterface ;
25+ let formatter : string ;
2426
2527 beforeEach ( ( ) => {
2628 context = { subscriptions : [ ] } as unknown as vscode . ExtensionContext ;
@@ -40,6 +42,7 @@ suite("StatusItems", () => {
4042 context,
4143 ruby,
4244 state : ServerState . Running ,
45+ formatter : "none" ,
4346 } ;
4447 status = new RubyVersionStatus ( client ) ;
4548 } ) ;
@@ -67,7 +70,7 @@ suite("StatusItems", () => {
6770 suite ( "ServerStatus" , ( ) => {
6871 beforeEach ( ( ) => {
6972 ruby = { } as Ruby ;
70- client = { context, ruby, state : ServerState . Running } ;
73+ client = { context, ruby, state : ServerState . Running , formatter : "none" } ;
7174 status = new ServerStatus ( client ) ;
7275 } ) ;
7376
@@ -130,6 +133,7 @@ suite("StatusItems", () => {
130133 client = {
131134 context,
132135 ruby,
136+ formatter,
133137 state : ServerState . Running ,
134138 } ;
135139 status = new ExperimentalFeaturesStatus ( client ) ;
@@ -150,7 +154,7 @@ suite("StatusItems", () => {
150154 suite ( "YjitStatus when Ruby supports it" , ( ) => {
151155 beforeEach ( ( ) => {
152156 ruby = { supportsYjit : true } as Ruby ;
153- client = { context, ruby, state : ServerState . Running } ;
157+ client = { context, ruby, state : ServerState . Running , formatter : "none" } ;
154158 status = new YjitStatus ( client ) ;
155159 } ) ;
156160
@@ -174,7 +178,7 @@ suite("StatusItems", () => {
174178 suite ( "YjitStatus when Ruby does not support it" , ( ) => {
175179 beforeEach ( ( ) => {
176180 ruby = { supportsYjit : false } as Ruby ;
177- client = { context, ruby, state : ServerState . Running } ;
181+ client = { context, ruby, state : ServerState . Running , formatter : "none" } ;
178182 status = new YjitStatus ( client ) ;
179183 } ) ;
180184
@@ -206,6 +210,7 @@ suite("StatusItems", () => {
206210 status = new FeaturesStatus ( {
207211 context,
208212 ruby,
213+ formatter,
209214 state : ServerState . Running ,
210215 } ) ;
211216 } ) ;
@@ -253,4 +258,25 @@ suite("StatusItems", () => {
253258 } ) ;
254259 } ) ;
255260 } ) ;
261+
262+ suite ( "FormatterStatus" , ( ) => {
263+ beforeEach ( ( ) => {
264+ ruby = { } as Ruby ;
265+ client = {
266+ context,
267+ ruby,
268+ state : ServerState . Running ,
269+ formatter : "auto" ,
270+ } ;
271+ status = new FormatterStatus ( client ) ;
272+ } ) ;
273+
274+ test ( "Status is initialized with the right values" , async ( ) => {
275+ assert . strictEqual ( status . item . text , "Using formatter: auto" ) ;
276+ assert . strictEqual ( status . item . name , "Formatter" ) ;
277+ assert . strictEqual ( status . item . command ?. title , "Help" ) ;
278+ assert . strictEqual ( status . item . command ?. command , Command . FormatterHelp ) ;
279+ assert . strictEqual ( context . subscriptions . length , 1 ) ;
280+ } ) ;
281+ } ) ;
256282} ) ;
0 commit comments