UNPKG

firebase-bolt

Version:

Firebase Bolt Security and Modeling Language Compiler

60 lines (58 loc) 6.95 kB
"use strict"; exports.__esModule = true; /* * Copyright 2015 Google Inc. All Rights Reserved. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ var chai_1 = require("chai"); var helper = require("./test-helper"); var util = require("../util"); suite("Util", function () { suite("pruneEmptyChildren", function () { var T = /** @class */ (function () { function T() { this.x = 'dummy'; } return T; }()); var tests = [ [{}, {}], [{ a: 1 }, { a: 1 }], [{ a: {} }, {}], [{ a: 1, b: {} }, { a: 1 }], [{ a: [] }, { a: [] }], [{ a: new T() }, { a: new T() }], [{ a: { a: { a: {} } } }, {}], [{ a: { a: { a: {}, b: 1 } } }, { a: { a: { b: 1 } } }], [{ a: 1, b: undefined }, { a: 1 }], ]; helper.dataDrivenTest(tests, function (data, expect) { util.pruneEmptyChildren(data); chai_1.assert.deepEqual(data, expect); }); }); suite("pruneEmptyChildren", function () { var tests = [ [{}, {}], [{ a: 1 }, { a: 1 }], [{ a: 1, dm: 2 }, { a: 1 }], [{ a: 1, b: { dm: 2, c: 3 } }, { a: 1, b: { c: 3 } }], ]; helper.dataDrivenTest(tests, function (data, expect) { util.deletePropName(data, 'dm'); chai_1.assert.deepEqual(data, expect); }); }); }); //# sourceMappingURL=data:application/json;charset=utf8;base64,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RSxNQUFNLENBQUMsQ0FBQztRQUNqQyxDQUFDLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0FBQ0wsQ0FBQyxDQUFDLENBQUMiLCJmaWxlIjoidGVzdC91dGlsLXRlc3QuanMiLCJzb3VyY2VzQ29udGVudCI6WyIvKlxuICogQ29weXJpZ2h0IDIwMTUgR29vZ2xlIEluYy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKi9cbmltcG9ydCB7YXNzZXJ0fSBmcm9tICdjaGFpJztcbmltcG9ydCAqIGFzIGhlbHBlciBmcm9tICcuL3Rlc3QtaGVscGVyJztcbmltcG9ydCAqIGFzIHV0aWwgZnJvbSAnLi4vdXRpbCc7XG5cbnN1aXRlKFwiVXRpbFwiLCBmdW5jdGlvbigpIHtcbiAgc3VpdGUoXCJwcnVuZUVtcHR5Q2hpbGRyZW5cIiwgZnVuY3Rpb24oKSB7XG4gICAgY2xhc3MgVCB7XG4gICAgICBwdWJsaWMgeCA9ICdkdW1teSc7XG4gICAgfVxuXG4gICAgdmFyIHRlc3RzID0gW1xuICAgICAgWyB7fSwge30gXSxcbiAgICAgIFsge2E6IDF9LCB7YTogMX0gXSxcbiAgICAgIFsge2E6IHt9fSwge30gXSxcbiAgICAgIFsge2E6IDEsIGI6IHt9fSwge2E6IDF9IF0sXG4gICAgICBbIHthOiBbXX0sIHthOiBbXX0gXSxcbiAgICAgIFsge2E6IG5ldyBUKCl9LCB7YTogbmV3IFQoKX0gXSxcbiAgICAgIFsge2E6IHthOiB7YToge319fX0sIHt9IF0sXG4gICAgICBbIHthOiB7YToge2E6IHt9LCBiOiAxfX19LCB7YToge2E6IHtiOiAxfX19IF0sXG4gICAgICBbIHthOiAxLCBiOiB1bmRlZmluZWR9LCB7YTogMX0gXSxcbiAgICBdO1xuXG4gICAgaGVscGVyLmRhdGFEcml2ZW5UZXN0KHRlc3RzLCBmdW5jdGlvbihkYXRhOiBhbnksIGV4cGVjdDogYW55KSB7XG4gICAgICB1dGlsLnBydW5lRW1wdHlDaGlsZHJlbihkYXRhKTtcbiAgICAgIGFzc2VydC5kZWVwRXF1YWwoZGF0YSwgZXhwZWN0KTtcbiAgICB9KTtcbiAgfSk7XG5cbiAgc3VpdGUoXCJwcnVuZUVtcHR5Q2hpbGRyZW5cIiwgZnVuY3Rpb24oKSB7XG4gICAgdmFyIHRlc3RzID0gW1xuICAgICAgWyB7fSwge30gXSxcbiAgICAgIFsge2E6IDF9LCB7YTogMX0gXSxcbiAgICAgIFsge2E6IDEsIGRtOiAyfSwge2E6IDF9IF0sXG4gICAgICBbIHthOiAxLCBiOiB7ZG06IDIsIGM6IDN9fSwge2E6IDEsIGI6IHtjOiAzfX0gXSxcbiAgICBdO1xuXG4gICAgaGVscGVyLmRhdGFEcml2ZW5UZXN0KHRlc3RzLCBmdW5jdGlvbihkYXRhOiBhbnksIGV4cGVjdDogYW55KSB7XG4gICAgICB1dGlsLmRlbGV0ZVByb3BOYW1lKGRhdGEsICdkbScpO1xuICAgICAgYXNzZXJ0LmRlZXBFcXVhbChkYXRhLCBleHBlY3QpO1xuICAgIH0pO1xuICB9KTtcbn0pO1xuIl19