UNPKG

jsoniq

Version:

JSONiq implementation for JavaScript

20 lines (18 loc) 3.22 kB
"use strict"; /// <reference path="../../../typings/tsd.d.ts" /> var u = require("./Utils"); describe("Test Arithmetic Operation: ", () => { it("add(1, 1)", () => { return u.expectQuery("1 + 1").toEqual([2]); }); it("add(1, 1.5)", () => { return u.expectQuery("2 + 1.5").toEqual([3.5]); }); it("multiple operations", () => { return u.expectQuery("1 + 1 + 1 - 1 - 1 + 10 - 1, (1 to 5), (1, (), 2, 3), 20.1 idiv 1.678, 10 div 2, 2 * 5, true, false, \"Hello\", \"World\"", true).toEqual([10, 1, 2, 3, 4, 5, 1, 2, 3, 11, 5, 10, true, false, "Hello", "World"]); }); it("to(1, add(5, 1))", () => { return u.expectQuery("(1 to 5 + 1)").toEqual([1, 2, 3, 4, 5, 6]); }); }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRlc3RzL25vZGUvcnVudGltZS9Bcml0aG1ldGljLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7QUFBQSxrREFBa0Q7QUFDbEQsSUFBWSxDQUFDLFdBQU0sU0FBUyxDQUFDLENBQUE7QUFFN0IsUUFBUSxDQUFDLDZCQUE2QixFQUFFO0lBRXBDLEVBQUUsQ0FBQyxXQUFXLEVBQUU7UUFDWixNQUFNLENBQUMsQ0FBQyxDQUFDLFdBQVcsQ0FBQyxPQUFPLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQy9DLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGFBQWEsRUFBRTtRQUNkLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLFNBQVMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUM7SUFDbkQsQ0FBQyxDQUFDLENBQUM7SUFFSCxFQUFFLENBQUMscUJBQXFCLEVBQUU7UUFDdEIsTUFBTSxDQUFDLENBQUMsQ0FBQyxXQUFXLENBQ2hCLDBIQUEwSCxFQUMxSCxJQUFJLENBQ1AsQ0FBQyxPQUFPLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQyxDQUFDO0lBQ3RGLENBQUMsQ0FBQyxDQUFDO0lBRUgsRUFBRSxDQUFDLGtCQUFrQixFQUFFO1FBQ25CLE1BQU0sQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDLGNBQWMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUNyRSxDQUFDLENBQUMsQ0FBQztBQUNQLENBQUMsQ0FBQyxDQUFDIiwiZmlsZSI6InRlc3RzL25vZGUvcnVudGltZS9Bcml0aG1ldGljLmpzIiwic291cmNlc0NvbnRlbnQiOlsiLy8vIDxyZWZlcmVuY2UgcGF0aD1cIi4uLy4uLy4uL3R5cGluZ3MvdHNkLmQudHNcIiAvPlxuaW1wb3J0ICogYXMgdSBmcm9tIFwiLi9VdGlsc1wiO1xuXG5kZXNjcmliZShcIlRlc3QgQXJpdGhtZXRpYyBPcGVyYXRpb246IFwiLCAoKSA9PiB7XG5cbiAgICBpdChcImFkZCgxLCAxKVwiLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1LmV4cGVjdFF1ZXJ5KFwiMSArIDFcIikudG9FcXVhbChbMl0pO1xuICAgIH0pO1xuXG4gICAgaXQoXCJhZGQoMSwgMS41KVwiLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1LmV4cGVjdFF1ZXJ5KFwiMiArIDEuNVwiKS50b0VxdWFsKFszLjVdKTtcbiAgICB9KTtcblxuICAgIGl0KFwibXVsdGlwbGUgb3BlcmF0aW9uc1wiLCAoKSA9PiB7XG4gICAgICAgIHJldHVybiB1LmV4cGVjdFF1ZXJ5KFxuICAgICAgICAgICAgXCIxICsgMSArIDEgLSAxIC0gMSArIDEwIC0gMSwgKDEgdG8gNSksICgxLCAoKSwgMiwgMyksIDIwLjEgaWRpdiAxLjY3OCwgMTAgZGl2IDIsIDIgKiA1LCB0cnVlLCBmYWxzZSwgXFxcIkhlbGxvXFxcIiwgXFxcIldvcmxkXFxcIlwiLFxuICAgICAgICAgICAgdHJ1ZVxuICAgICAgICApLnRvRXF1YWwoWzEwLCAxLCAyLCAzLCA0LCA1LCAxLCAyLCAzLCAxMSwgNSwgMTAsIHRydWUsIGZhbHNlLCBcIkhlbGxvXCIsIFwiV29ybGRcIl0pO1xuICAgIH0pO1xuXG4gICAgaXQoXCJ0bygxLCBhZGQoNSwgMSkpXCIsICgpID0+IHtcbiAgICAgICAgcmV0dXJuIHUuZXhwZWN0UXVlcnkoXCIoMSB0byA1ICsgMSlcIikudG9FcXVhbChbMSwgMiwgMywgNCwgNSwgNl0pO1xuICAgIH0pO1xufSk7XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0=