{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-active-expression-proxies/src/client/reactive/test/active-groups/delay.spec.js"],"names":["chai","expect","sinon","sinonChai","select","getValueClass","use","OtherClass","done","timeout","otherInstance1","baseView","data","otherInstance2","delayedView","delay","otherInstance3","otherInstance4","now"],"mappings":"AAAA;;;;;;;;;;;;;;;;;AACOA,gB;AAAOC,kB,sBAAAA,M;;AACPC,iB;;AACAC,qB;;AAGAC,kB;;AACEC,yB,mBAAAA,a;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAHT,+FAAKC,GAAL,wFAASH,SAAT;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,gBAAII,aAAa,+GAAjB;;;;;;;;;;;;;;;;;AAEA,0FAAS,iBAAT,EAA4B,YAAW;AACnC,kFAAG,oBAAH,EAAyB,UAASC,IAAT,EAAe;AAAA;AAAA;;AACpC,yBAAKC,OAAL,CAAa,KAAb;;AAEA,wBAAIC,iBAAiB,6FAAIH,UAAJ,EAAe,EAAf,CAArB;AACA,wBAAII,6BAAW,kLAAOJ,UAAP,EAAX,aAAqC,UAASK,IAAT,EAAe;AAAA;;AACpD,+BAAO,6GAAe,EAAtB;AACH,qBAFG,EAAJ;AAGA,wBAAIC,iBAAiB,6FAAIN,UAAJ,EAAe,EAAf,CAArB;AACA,wBAAIO,2FAAc,iGAASC,KAAT,CAAe,GAAf,CAAd,CAAJ;AACA,wBAAIC,iBAAiB,6FAAIT,UAAJ,EAAe,EAAf,CAArB;AACA,wBAAIU,cAAJ;;AAEA,mOAAO,0GAAYC,GAAZ,EAAP,iCAA2C,CAA3C;;AAEA,sGAAW,YAAW;AAClBD,yCAAiB,6FAAIV,UAAJ,EAAe,EAAf,CAAjB;AACA,gKAAuB,EAAvB;AACH,qBAHD,EAGG,GAHH;;AAKA,sGAAW,YAAW;AAClB,gKAAuB,EAAvB;AACH,qBAFD,EAEG,GAFH;;AAIA,sGAAW,YAAW;AAClB,uOAAO,0GAAYW,GAAZ,EAAP,iCAA2C,CAA3C;AACA,4NAAO,0GAAYA,GAAZ,EAAP,0HAAqCR,cAArC;AACA,4NAAO,0GAAYQ,GAAZ,EAAP,0HAAqCL,cAArC;;AAEA,gKAAuB,EAAvB;;AAEA,uOAAO,0GAAYK,GAAZ,EAAP,iCAA2C,CAA3C;AACA,4NAAO,0GAAYA,GAAZ,EAAP,0HAAqCL,cAArC;AACH,qBATD,EASG,GATH;;AAWA,sGAAW,YAAW;AAClB,uOAAO,0GAAYK,GAAZ,EAAP,iCAA2C,CAA3C;AACA,4NAAO,0GAAYA,GAAZ,EAAP,0HAAqCL,cAArC;AACA,4NAAO,0GAAYK,GAAZ,EAAP,0HAAqCD,cAArC;AACH,qBAJD,EAIG,GAJH;;AAMA,sGAAW,YAAW;AAClB,uOAAO,0GAAYC,GAAZ,EAAP,iCAA2C,CAA3C;AACA,4NAAO,0GAAYA,GAAZ,EAAP,0HAAqCL,cAArC;AACA,4NAAO,0GAAYK,GAAZ,EAAP,0HAAqCF,cAArC;AACA,4NAAO,0GAAYE,GAAZ,EAAP,0HAAqCD,cAArC;AACA;AACH,qBAND,EAMG,IANH;AAOH,iBA/CD;AAgDH,aAjDD","file":"delay.spec.js","sourcesContent":["\"enable aexpr\";\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 from 'active-group';\nimport { getValueClass } from './class-factory.js';\nvar OtherClass = getValueClass();\n\ndescribe('.delay operator', function() {\n    it('OtherClass example', function(done) {\n        this.timeout(10000);\n\n        var otherInstance1 = new OtherClass(42);\n        var baseView = select(OtherClass).filter(function(data) {\n            return data.value === 42;\n        });\n        var otherInstance2 = new OtherClass(42);\n        var delayedView = baseView.delay(500);\n        var otherInstance3 = new OtherClass(42);\n        var otherInstance4;\n\n        expect(delayedView.now()).to.have.lengthOf(0);\n\n        setTimeout(function() {\n            otherInstance4 = new OtherClass(42);\n            otherInstance3.value = 17;\n        }, 150);\n\n        setTimeout(function() {\n            otherInstance3.value = 42;\n        }, 350);\n\n        setTimeout(function() {\n            expect(delayedView.now()).to.have.lengthOf(2);\n            expect(delayedView.now()).to.include(otherInstance1);\n            expect(delayedView.now()).to.include(otherInstance2);\n\n            otherInstance1.value = 17;\n\n            expect(delayedView.now()).to.have.lengthOf(1);\n            expect(delayedView.now()).to.include(otherInstance2);\n        }, 550);\n\n        setTimeout(function() {\n            expect(delayedView.now()).to.have.lengthOf(2);\n            expect(delayedView.now()).to.include(otherInstance2);\n            expect(delayedView.now()).to.include(otherInstance4);\n        }, 750);\n\n        setTimeout(function() {\n            expect(delayedView.now()).to.have.lengthOf(3);\n            expect(delayedView.now()).to.include(otherInstance2);\n            expect(delayedView.now()).to.include(otherInstance3);\n            expect(delayedView.now()).to.include(otherInstance4);\n            done();\n        }, 1000);\n    });\n});\n"]}