{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-core/src/client/reactive/test/active-groups/select.spec.js"],"names":["chai","expect","sinon","sinonChai","select","trackInstance","untrackInstance","getValueClass","use","AValueClass","Value","constructor","val","call","destroy","sel","now","v"],"mappings":"AAAA;;;;;;;;;;;;;;;;;AAEOA,U;AAAOC,Y,sBAAAA,M;;AACPC,W;;AACAC,e;;AAGAC,Y;AAAUC,mB,gBAAAA,a;AAAeC,qB,gBAAAA,e;;AACvBC,mB,mBAAAA,a;;;;;;;;;;;;;;AANKN,iS;;;;;;;;;;;;;;;;;;;;;;;;;;AAAPD,+R;;;;;;;;;;;;;;;;;;;;;;;;;;AACAE,gS;;;;;;;;;;;;;;;;;;;;;;;;;;AACAC,oS;;;;;;;;;;;;;;;;;;;;AACP,yFAAKK,GAAL,wFAASL,SAAT;;;;;;;;;;AAEgCG,0S;;;;;;;;;;;;;;;;;;;;;;;;;;AAAfD,wS;;;;;;;;;;;;;;;;;;;;;;;;;;AAAVD,iS;;;;;;;;;;;;;;;;;;;;;;;;;;AACEG,wS;;;;;;;;;;;;;;;;;;;AACT,YAAME,cAAc,+GAApB;;;;;;;;;;AAAMA,uS;;;;;;;;;;;;;;;;;;AAEN,oFAAS,eAAT,EAA0B,MAAM;AAAA;AAAA;;AAC9B,cAAMC,KAAN,CAAY;AACVC,sBAAYC,GAAZ,EAAiB;AAAA;;AACf,qCAAWA,GAAX,YAAWA,GAAX,iFAAWA,GAAX,EAAWA,GAAX;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AADe;AAEf,0HAAcC,IAAd,EAAmBH,KAAnB,YAAmBA,KAAnB,qFAAmBA,KAAnB,EAAmBA,KAAnB,GAA0B,IAA1B;;AAFe;AAGhB;AACDI,oBAAU;AAAA;;AACR,gIAAgBD,IAAhB,EAAqBH,KAArB,YAAqBA,KAArB,qFAAqBA,KAArB,EAAqBA,KAArB,GAA4B,IAA5B;AACD;AAPS;;AAUZ,0EAAG,6BAAH,EAAkC,MAAM;AAAA;;AACtC,cAAIK,MAAM,0FAAOL,KAAP,YAAOA,KAAP,qFAAOA,KAAP,EAAOA,KAAP,EAAV;AACA,iNAAO,8GAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AACA,cAAIC,IAAI,KAAIP,KAAJ,YAAIA,KAAJ,qFAAIA,KAAJ,EAAIA,KAAJ,EAAU,CAAV,CAAR;AACA,iNAAO,8GAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AACA,eAAIN,KAAJ,YAAIA,KAAJ,qFAAIA,KAAJ,EAAIA,KAAJ,EAAU,CAAV;AACA,iNAAO,8GAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AANsC;AAOtC,4GAAEF,OAAF;AACA,iNAAO,8GAAIE,GAAJ,EAAP,+BAAiC,CAAjC;AACD,SATD;AAUD,OArBD","file":"select.spec.js","sourcesContent":["\"enable aexpr\";\n\nimport chai, {expect} from 'src/external/chai.js';\nimport sinon from 'src/external/sinon-3.2.1.js';\nimport sinonChai from 'src/external/sinon-chai.js';\nchai.use(sinonChai);\n\nimport select, { trackInstance, untrackInstance } from 'active-group';\nimport { getValueClass } from './class-factory.js';\nconst AValueClass = getValueClass();\n\ndescribe(\"select(Class)\", () => {\n  class Value {\n    constructor(val) {\n      this.val = val;\n      trackInstance.call(Value, this);\n    }\n    destroy() {\n      untrackInstance.call(Value, this);\n    }\n  }\n  \n  it(\"should update the base view\", () => {\n    let sel = select(Value);\n    expect(sel.now()).to.have.length(0);\n    let v = new Value(6);\n    expect(sel.now()).to.have.length(1);\n    new Value(6);\n    expect(sel.now()).to.have.length(2);\n    v.destroy();\n    expect(sel.now()).to.have.length(1);\n  });\n});\n"]}