@@ -29,9 +29,9 @@ describe('plugin', function() {
2929
3030 h . getCodeDirData = function ( ) {
3131 return [
32- { name : 'cache' , data : cache } ,
33- { name : '. leetcode' , data : leetcode } , // disabled
34- { name : 'retry' , data : retry } ,
32+ { name : 'cache' , data : cache , file : 'cache.js' } ,
33+ { name : 'leetcode' , data : leetcode , file : '.leetcode.js' } , // disabled
34+ { name : 'retry' , data : retry , file : 'retry.js' } ,
3535 { name : 'bad' , data : null }
3636 ] ;
3737 } ;
@@ -122,4 +122,33 @@ describe('plugin', function() {
122122 } ) ;
123123 } ) ;
124124 } ) ;
125+
126+ describe ( '#enable' , function ( ) {
127+ const file = path . resolve ( './tmp/leetcode.js' ) ;
128+
129+ function clean ( ) {
130+ if ( fs . existsSync ( file ) ) fs . unlinkSync ( file ) ;
131+ h . getPluginFile = ( ) => file ;
132+ }
133+
134+ beforeEach ( clean ) ;
135+ after ( clean ) ;
136+
137+ it ( 'should ok' , function ( ) {
138+ const p = new Plugin ( 0 , 'Leetcode' , '2.0' , '' ) ;
139+ assert . equal ( p . enabled , true ) ;
140+
141+ p . setFile ( '.leetcode.js' ) ;
142+ fs . writeFileSync ( file , '' ) ;
143+ assert . equal ( p . enabled , false ) ;
144+ assert . equal ( p . file , '.leetcode.js' ) ;
145+
146+ p . enable ( false ) ;
147+ assert . equal ( p . enabled , false ) ;
148+ assert . equal ( p . file , '.leetcode.js' ) ;
149+ p . enable ( true ) ;
150+ assert . equal ( p . enabled , true ) ;
151+ assert . equal ( p . file , 'leetcode.js' ) ;
152+ } ) ;
153+ } ) ; // #enable
125154} ) ;
0 commit comments