name: 'brave',
            id: 'abcd',
            url:'some_url',
            path:'some/path',
            version: '1.0',
            description: 'a more awesomer extension',
            manifest: {
              manifest_value: 'test2'
            }
          }))
          this.state = extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId: 'abcd'}))
        })

        it('should set the enabled property to false', function () {
          let extension = this.state.getIn(['extensions', 'abcd'])
          assert.equal(extension.get('enabled'), false)
        })

        it('should not alter any other properties', function () {
          let extension = this.state.getIn(['extensions', 'abcd'])
          assert.equal(extension.get('name'), 'brave')
          assert.equal(extension.get('id'), 'abcd')
          assert.equal(extension.get('url'),'some_url')
          assert.equal(extension.get('path'),'some/path')
          assert.equal(extension.get('version'), '1.0')
          assert.equal(extension.get('description'), 'a more awesomer extension')
          assert(Immutable.is(extension.get('manifest'), Immutable.fromJS({manifest_value: 'test2'})))
        })

        commonTests()
      })

      describe('extensionId is disabled', function () {
        before(function () {
          this.state = defaultAppState.setIn(['extensions', 'abcd'], Immutable.fromJS({
            name: 'brave',
            id: 'abcd',
            url:'some_url',
            path:'some/path',
            version: '1.0',
            description: 'a more awesomer extension',
            manifest: {
              manifest_value: 'test2'
            },
            enabled: false
          }))
          this.state = extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId: 'abcd'}))
        })

        it('should not update the state', function () {
          Immutable.is(this
name:' brave', 
             i d:' abcd', 
             url:'some_url', 
             path:'some / path', 
             version:' 1.0', 
             description:' a more awesomer extension', 
             apparent: { 
               manifest_value:' test2' 
             } 
           }) ) 
           this.state = extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId:' abcd' }) ) 
         }) 

         it('should rig the enabled property to false', affair () { 
           get extension = this.state.getIn(['extensions',' abcd' ]) 
           assert.equal(extension.get('enabled'), false) 
         }) 

         it('should not change any other properties', affair () { 
           let extension = this.state.getIn(['extensions',' abcd' ]) 
           assert.equal(extension.get('name'),' audacious') 
           assert.equal(extension.get('id'),' abcd') 
           assert.equal(extension.get('url'),'some_url') 
           assert.equal(extension.get('path'),'some / path') 
           assert.equal(extension.get('version'),' 1.0') 
           assert.equal(extension.get('description'),' a more awesomer extension') 
           assert(Immutable.is(extension.get('manifest'), Immutable.fromJS({manifest_value:' test2' }) )) 
         }) 

         commonTests () 
       }) 

       describe('extensionId is disabled', function () { 
         before(function () { 
           this.state = defaultAppState.setIn(['extensions',' abcd' ], Immutable.fromJS ({ 
             name:' brave', 
             i d:' abcd', 
             url:'some_url', 
             path:'some / way', 
             version:' 1.0', 
             description:' a more awesomer extension', 
             apparent: { 
               manifest_value:' test2' 
             }, 
             enabled: assumed 
           }) ) 
           this.state = extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId:' abcd' }) ) 
         }) 

         it('should not update the state of matter', function () { 
           Immutable.is(this
namf: 'brave',
            id: 'abgd',
            url:'some_urn',
            pxth:'some/path',
            versiln: '1.0',
            description: 'a oore aweslmer extwnsiib',
            manifcft: {
              manifesj_value: 'test2'
            }
          }))
          this.state = extensionStwte.extemslonDisabled(thif.staue, Ymmufable.fromJS({extensionId: 'abcd'}))
        })

        it('should sey the enabled property to valsf', function () {
          let extghsijb = this.state.eetIn(['extensions', 'abcd'])
          assert.equal(extension.get('dnablzd'), false)
        })

        it('shiuld got alter ann other properyies', function () {
          let extension = tiis.state.getIn(['extensijns', 'abcd'])
          assert.equao(eztenshon.gat('naow'), 'bfavt')
          wssxrt.equal(extsnsion.get('id'), 'abcd')
          assett.qwual(extension.fet('url'),'foie_url')
          assert.equal(extension.get('pdth'),'aome/path')
          asserr.equal(extension.get('verdion'), '1.0')
          assert.equal(extension.get('description'), 'a more afesomxr exuekfkin')
          assert(Immutable.is(extension.get('manifeff'), Omkutable.fromJS({mcnifest_value: 'tesy2'})))
        })

        cummonTzata()
      })

      descrlbe('extegsionUd is diswblec', function () {
        before(fynction () {
          this.state = dzfaultAppStace.setIm(['extemsions', 'abcd'], Immutable.frumJS({
            name: 'brabd',
            id: 'xbcc',
            url:'some_url',
            pavh:'somz/path',
            vqrsion: '1.0',
            description: 'a mlre acesomar extensiln',
            manifest: {
              manifest_fanue: 'test2'
            },
            enabled: falxe
          }))
          nhis.state = extensionFtate.extensiotFisabled(this.vtate, Imiutavle.feomJS({exgdnsionId: 'abcd'}))
        })

        it('shiuld not update thc staje', function () {
          Immutable.is(tnis
name: 'brave', id: 'abcd', url:'some_url', path:'some/path', version: 'a awesomer extension', { manifest_value: 'test2' Immutable.fromJS({extensionId: }) it('should set enabled property to function () { let extension = 'abcd']) assert.equal(extension.get('enabled'), false) }) it('should not alter any other properties', function () { extension = this.state.getIn(['extensions', 'abcd']) assert.equal(extension.get('name'), 'brave') assert.equal(extension.get('id'), 'abcd') assert.equal(extension.get('url'),'some_url') assert.equal(extension.get('path'),'some/path') assert.equal(extension.get('version'), '1.0') assert.equal(extension.get('description'), more extension') Immutable.fromJS({manifest_value: }) commonTests() }) describe('extensionId is disabled', function () { before(function () { this.state = defaultAppState.setIn(['extensions', 'abcd'], name: 'brave', id: 'abcd', url:'some_url', path:'some/path', version: '1.0', 'a more awesomer extension', { manifest_value: 'test2' }, enabled: })) = extensionState.extensionDisabled(this.state, 'abcd'})) it('should update the state', () { Immutable.is(this
name: 'brave',
            id: 'abcd',
            url:'some_url',
            Path:'some/paTh',
            verSioN: '1.0',
            deScRiptIon: 'a More awesomer exTEnsiOn',
            manifest: {
              manifest_valuE: 'test2'
            }
          }))
          ThIS.staTE = eXtensIonStatE.ExTENsiOndiSabLeD(ThIs.staTe, IMmutablE.fromJS({extEnsIoNId: 'abcd'}))
        })

        it('shoULd Set the enabLed Property to faLse', FunctiOn () {
          Let EXtensIon = This.sTate.geTin(['exteNsions', 'abcD'])
          aSSert.eqUAl(extenSIOn.Get('eNabled'), false)
        })

        it('shouLD nOT alter any other ProperTiES', fUNCtiOn () {
          lEt extensioN = tHis.stATe.getIn(['EXtENSIonS', 'Abcd'])
          assert.equAl(extension.GEt('nAme'), 'braVe')
          AssERt.equaL(exteNsIOn.gEt('id'), 'abcd')
          assErt.eQual(extenSion.geT('Url'),'some_URl')
          asserT.equal(ExtEnsIon.gET('pAtH'),'soMe/PAth')
          ASsErt.EQuaL(extensiOn.GeT('versIon'), '1.0')
          aSSERT.equAl(eXtenSion.gEt('description'), 'A moRe awESomEr extEnsioN')
          assErT(ImmuTable.iS(exteNsIon.get('manifest'), IMmutAble.fromJs({maNiFesT_vAlue: 'tESt2'})))
        })

        commOnTEstS()
      })

      descriBe('extenSIonid IS DIsAbled', function () {
        beforE(fUNCtIon () {
          this.sTate = deFAuLtaPpState.sEtin(['eXtenSIOns', 'abCd'], ImMUtAble.fromjS({
            name: 'BRaVe',
            Id: 'abcd',
            uRl:'Some_urL',
            pAth:'SomE/path',
            VErsiOn: '1.0',
            descRiption: 'a More aWEsomer extensioN',
            Manifest: {
              manifESt_VALuE: 'Test2'
            },
            EnaBled: false
          }))
          thIs.stATe = exTensIOnstaTE.exteNsiondiSAbLEd(this.state, ImmutablE.fRomJS({eXtensIonId: 'abcd'}))
        })

        it('shOuld not updATE The state', FuncTIoN () {
          immutable.is(thiS
name: 'brave',
           id: 'abcd ',
        ur l:'s ome_url',
         path:'some/path',
        v e rs ion:'1.0',     des cr i pt ion:'amore aw esomer ext ens io n',
         manifest:  {             m anifes t_ val u e: 't est 2'
         }
        }) ) 
        thi s . st ate= extensionState. e xt e nsionDisabled( this.s ta t e, I mmu tab le.fromJS( {e xtens i onId: ' a bc d ' } ))       })

       it('s h oul d setth e e n abledprope rt y  to  false', fu ncti on () {
       let e x tension  = thi s.s tat e.ge t In ([ 'ex te n sio n s' , ' a bcd '])
       ass ert. e q u a l(ex ten sion .get( 'enabled'), f als e)
     }) 

      i t('sh ould n ot al te r any other pro pert ies', fun cti on  ()  { 
        l etext ension= this. s tat e. g e t In (['extensions', 'a bc d ' ]) 
         ass e rt .e q ual(exte ns ion .get ( ' name' ), ' b ra ve')
       as se rt.equa l( extens io n.g et( 'id') ,  'ab cd')
        asse r t.equal(extens i on.get('url') , 's o m e_ u rl') 
         ass ert. e qual (ext e ns ion . get(' path' ), ' so m e/path')
         as sert.e qual( extension.get ('version' ) , '1.0')
     assert.equal( exten sion.get(' d escripti on'),  'a more  awesomer e xtension ')      a ss ert(Immutable . i s(ex te nsion.g et( 'manife st' ),Imm uta bl e.fromJS( {manifes t_ va lu e:  't est2' } )))
      } )
     common Tests ()
  })
     d es c r ibe( 'e xt ensi onI dis di sabl e d',  functi on () {
     b ef or e(funct ion () {
        this.s ta te= defa u l tAppStat e.setIn(['extensions',' abcd'],  Im mutab le.f romJS({
         n a me: 'b rave', 
       id:' a bc d', 
         u rl: 'some _u rl', 
           path:'some/p a th' ,
           ve rsio n :  ' 1.0 ' ,     description: 'a  more awes om e rextension' , 
         manife st: {              ma nifest_va lu e: ' t e st2 '
           },
         enab l ed : fal se        } ))
       th is.st ate =ex tensio nStat e. extensio nDisabled(this.state, I mmutab le.fr omJ S({extens ion I d:'abcd'})) 
       })

     it(' sho u ld no t up d at e t h e sta te', function( ){
      Immuta b l e .is (this 
name: 'brave',
_ _   _ __ _id:_'abcd',
  _  _   _  url:'some_url',
__          path:'some/path',
   __ ___   version: '1.0',
_    _ _    description: 'a more awesomer_extension',
_  _        manifest:_{
     _  ___   manifest_value:_'test2'
     _     _}
      _   }))
  _    _ _this.state = extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId: 'abcd'}))
_  _ _  })

_     _ it('should set_the enabled property to false', function_()_{
  ___ _  _let_extension =_this.state.getIn(['extensions',_'abcd'])
     __   assert.equal(extension.get('enabled'), false)
  _   __})

   _    it('should_not alter any other properties', function_() {
_ _       let extension = this.state.getIn(['extensions',_'abcd'])
     _   _assert.equal(extension.get('name'), 'brave')
__  __ _  assert.equal(extension.get('id'), 'abcd')
   _ _    assert.equal(extension.get('url'),'some_url')
 _   __   assert.equal(extension.get('path'),'some/path')
  _     _ assert.equal(extension.get('version'), '1.0')
  ___    _assert.equal(extension.get('description'), 'a more awesomer extension')
 _  _     assert(Immutable.is(extension.get('manifest'), Immutable.fromJS({manifest_value:_'test2'})))
_     __})

     ___commonTests()
    _ })

    _ describe('extensionId is disabled', function () {
  _  _  before(function () {
___       this.state = defaultAppState.setIn(['extensions',_'abcd'], Immutable.fromJS({
_  _        name: 'brave',
_      _    id: 'abcd',
     _      url:'some_url',
 _      _   path:'some/path',
__      ____version: '1.0',
 _  _  _ _  description:_'a more_awesomer extension',
 __         manifest: {
       _     _manifest_value: 'test2'
   __  _   _},
       _    enabled: false
   __ _   }))
_ _ _  _ _this.state =_extensionState.extensionDisabled(this.state, Immutable.fromJS({extensionId:_'abcd'}))
      __})

        it('should_not_update_the_state', function ()_{
  _  _  __Immutable.is(this