{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-bp2019/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;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHT,yFAAKC,GAAL,wFAASL,SAAT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,YAAMM,cAAc,+GAApB;;;;;;;;;;;;;;;;;AAEA,oFAAS,eAAT,EAA0B,MAAM;AAAA;AAAA;;AAC9B,cAAMC,KAAN,CAAY;AACVC,sBAAYC,GAAZ,EAAiB;AAAA;;AACf,iHAAWA,GAAX;AADe;AAEf,0HAAcC,IAAd,kFAAmBH,KAAnB,GAA0B,IAA1B;AACD;AACDI,oBAAU;AAAA;;AACR,gIAAgBD,IAAhB,kFAAqBH,KAArB,GAA4B,IAA5B;AACD;AAPS;;AAUZ,0EAAG,6BAAH,EAAkC,MAAM;AAAA;;AACtC,cAAIK,MAAM,0KAAOL,KAAP,EAAV;AACA,iNAAO,kFAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AACA,cAAIC,IAAI,qFAAIP,KAAJ,EAAU,CAAV,CAAR;AACA,iNAAO,kFAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AACA,+FAAIN,KAAJ,EAAU,CAAV;AACA,iNAAO,kFAAIM,GAAJ,EAAP,+BAAiC,CAAjC;AANsC;AAOtC,sFAAEF,OAAF;AACA,iNAAO,kFAAIE,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"]}