{"version":3,"sources":["https://lively-kernel.org/lively4/lively4-bp2019/test/poid-test.js"],"names":["expect","pt","ElementQuery","describe","before","done","elementa","document","body","appendChild","it","pathToElement","to","equal","querySelector","after","remove","expected","urlString","value","fetch","then","r","text","json","Date","getTime","startsWith","be","true","JSON","parse","stringify","expectedTrue","expectedFalse","urlStringTrue","urlStringFalse","valueTrue","valueFalse","textTrue","textFalse","jsonTrue","jsonFalse"],"mappings":"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","file":"poid-test.js","sourcesContent":["\nimport {expect} from 'src/external/chai.js'\nimport {pt} from 'src/client/graphics.js'\nimport {ElementQuery}  from \"src/client/poid.js\"\n\ndescribe('Poid', () => {\n\n  describe('ElementQuery', () => {\n    \n    before(\"load\", async function(done){\n      this.elementa = <div id=\"elementa\"><div id=\"elementb\"></div></div>  \n      document.body.appendChild(this.elementa)\n      done()\n    });\n    \n    describe('pathToElement', () => {\n      it('should find global elment ', function() {\n        expect(ElementQuery.pathToElement(\"query://#elementa\")).to.equal(this.elementa)\n      })\n      it('should find subl elment ', function() {\n        expect(ElementQuery.pathToElement(\"query://#elementa/#elementb\"))\n          .to.equal(this.elementa.querySelector(\"#elementb\"))\n      })\n    })\n    \n    \n    after(\"cleanup\", function(){\n      this.elementa.remove()\n    });\n    \n  })\n  \n  describe('Primitives', () => {\n\n    describe('String', () => {\n\n      const expected = 'hello world';\n      const urlString = `string:${expected}`;\n\n      it('returns a string as value', async function() {\n        const value = await fetch(urlString).then(r => r.value());\n        expect(value).to.equal(expected);\n      });\n\n      it('returns a string as text', async function() {\n        const text = await fetch(urlString).then(r => r.text());\n        expect(text).to.equal(expected);\n      });\n\n      it('returns a string as json', async function() {\n        const json = await fetch(urlString).then(r => r.json());\n        expect(json).to.equal(expected);\n      });\n    });\n\n    describe('Number', () => {\n\n      const expected = -2.34;\n      const urlString = `number:${expected}`;\n\n      it('returns a number as value', async function() {\n        const value = await fetch(urlString).then(r => r.value());\n        expect(value).to.equal(expected);\n      });\n\n      it('returns a number as text', async function() {\n        const text = await fetch(urlString).then(r => r.text());\n        expect(text).to.equal(''+expected);\n      });\n\n      it('returns a number as json', async function() {\n        const json = await fetch(urlString).then(r => r.json());\n        expect(json).to.equal(expected);\n      });\n    });\n\n    describe('Date', () => {\n\n      const expected = new Date(2018, 0, 1, 20, 15, 45);\n      const urlString = `date:${expected.getTime()}`;\n\n      it('returns a date as value', async function() {\n        const value = await fetch(urlString).then(r => r.value());\n        expect(value.getTime()).to.equal(expected.getTime());\n      });\n\n      it('returns a date as text', async function() {\n        const text = await fetch(urlString).then(r => r.text());\n        expect(text).to.equal(''+expected);\n        expect(text.startsWith('Mon')).to.be.true;\n      });\n\n      it('returns a date as json', async function() {\n        const json = await fetch(urlString).then(r => r.json());\n        expect(json).to.equal(JSON.parse(JSON.stringify(expected)));\n      });\n\n    });\n\n    describe('Bool', () => {\n\n      const expectedTrue = true;\n      const expectedFalse = false;\n      const urlStringTrue = `bool:${expectedTrue}`;\n      const urlStringFalse = `bool:${expectedFalse}`;\n\n      it('returns a bool as value', async function() {\n        const valueTrue = await fetch(urlStringTrue).then(r => r.value());\n        expect(valueTrue).to.equal(expectedTrue);\n        const valueFalse = await fetch(urlStringFalse).then(r => r.value());\n        expect(valueFalse).to.equal(expectedFalse);\n      });\n\n      it('returns a bool as text', async function() {\n        const textTrue = await fetch(urlStringTrue).then(r => r.text());\n        expect(textTrue).to.equal(''+expectedTrue);\n        const textFalse = await fetch(urlStringFalse).then(r => r.text());\n        expect(textFalse).to.equal(''+expectedFalse);\n      });\n\n      it('returns a bool as json', async function() {\n        const jsonTrue = await fetch(urlStringTrue).then(r => r.json());\n        expect(jsonTrue).to.equal(expectedTrue);\n        const jsonFalse = await fetch(urlStringFalse).then(r => r.json());\n        expect(jsonFalse).to.equal(expectedFalse);\n      });\n    });\n\n  });\n\n});\n"]}