Home Reference Source Test

test/test.js

import { GisplayOptions } from '../src/Gisplay/GisplayOptions';
var expect = require('chai').expect;

/** @test {GisplayOptions} */
describe('Test GisplayOptions. User options are empty so all defaults should be used.', function () {
    let gisplayOptions = new GisplayOptions({});

    /**@test {GisplayOptions#attr} */
    it('Attr value is undefined', function () {
        expect(gisplayOptions.attr).to.equal(undefined);
    });

    /**@test {GisplayOptions#colorScheme} */
    it('Color Shceme is undefined', function () {
        expect(gisplayOptions.colorScheme).to.equal(undefined);
    });

    /**@test {GisplayOptions#numberOfClasses} */
    it('numberOfClasses is undefined', function () {
        expect(gisplayOptions.numberOfClasses).to.equal(undefined);
    });

    /**@test {GisplayOptions#classBreaksMethod} */
    it('classBreaksMethod is quantile', function () {
        expect(gisplayOptions.classBreaksMethod).to.equal('quantile');
    });

    /**@test {GisplayOptions#classBreaks} */
    it('classBreaks are undefined', function () {
        expect(gisplayOptions.classBreaks).to.equal(undefined);
    });

    /**@test {GisplayOptions#interactive} */
    it('interactive is true ', function () {
        expect(gisplayOptions.interactive).to.equal(true);
    });

    /**@test {GisplayOptions#showPropertiesOnClick} */
    it('showPropertiesOnClick is null ', function () {
        expect(gisplayOptions.showPropertiesOnClick).to.equal(null);
    });

    /**@test {GisplayOptions#showLegend} */
    it('showLegend is true', function () {
        expect(gisplayOptions.showLegend).to.equal(true);
    });

    /**@test {GisplayOptions#minuend} */
    it('minuend is undefined ', function () {
        expect(gisplayOptions.minuend).to.equal(undefined);
    });

    /**@test {GisplayOptions#subtrahend} */
    it('subtrahend is undefined ', function () {
        expect(gisplayOptions.subtrahend).to.equal(undefined);
    });

    /**@test {GisplayOptions#legendTitle} */
    it('legendTitle is undefined - undefined', function () {
        expect(gisplayOptions.legendTitle).to.equal('undefined - undefined');
    });

    /**@test {GisplayOptions#showLoader} */
    it('showLoader is true', function () {
        expect(gisplayOptions.showLoader).to.equal(true);
    });

    /**@test {GisplayOptions#useCustomMapService} */
    it('useCustomMapService is false ', function () {
        expect(gisplayOptions.useCustomMapService).to.equal(false);
    });

    /**@test {GisplayOptions#minPointSize} */
    it('minPointSize is 1.0', function () {
        expect(gisplayOptions.minPointSize).to.equal(1.0);
    });

    /**@test {GisplayOptions#maxPointSize} */
    it('maxPointSize is 10.0', function () {
        expect(gisplayOptions.maxPointSize).to.equal(10.0);
    });

    /**@test {GisplayOptions#sizeByClass} */
    it('sizeByClass is false', function () {
        expect(gisplayOptions.sizeByClass).to.equal(false);
    });

    /**@test {GisplayOptions#memorySaver} */
    it('memorySaver is true', function () {
        expect(gisplayOptions.memorySaver).to.equal(true);
    });

    /**@test {GisplayOptions#colorSchemeId} */
    it('colorSchemeId is 1', function () {
        expect(gisplayOptions.colorSchemeId).to.equal(1);
    });

    /**@test {GisplayOptions#legendOnClickFunction} */
    it('legendOnClickFunction is undefined', function () {
        expect(gisplayOptions.legendOnClickFunction).to.equal(undefined);
    });

    /**@test {GisplayOptions#mapOnClickFunction} */
    it('mapOnClickFunction  is undefined', function () {
        expect(gisplayOptions.mapOnClickFunction).to.equal(undefined);
    });

    //OTHER OPTIONS
    /**@test {GisplayOptions#alpha} */
    it('alpha is 0.8', function () {
        expect(gisplayOptions.alpha).to.equal(0.8);
    });

    /**@test {GisplayOptions#maxFeatures} */
    it('maxFeatures is equal to Number.MAX_VALUE', function () {
        expect(gisplayOptions.maxFeatures).to.equal(Number.MAX_VALUE);
    });

    /**@test {GisplayOptions#numberOfLegendItems} */
    it('numberOfLegendItems is 2', function () {
        expect(gisplayOptions.numberOfLegendItems).to.equal(2);
    });

    //NON-USER OPTIONS
    /**@test {GisplayOptions#isDynamic} */
    it('isDynamic is !memorySaver(true)', function () {
        expect(gisplayOptions.isDynamic).to.equal(!gisplayOptions.memorySaver);
    });

    /**@test {GisplayOptions#legendToggle} */
    it('legendToggle is true', function () {
        expect(gisplayOptions.legendToggle).to.equal(true);
    });

    //DEPRECATED OPTIONS
    /**@test {GisplayOptions#intensity} */
    it('intensity(deprecated) is 1.0', function () {
        expect(gisplayOptions.intensity).to.equal(1.0);
    });

    /**@test {GisplayOptions#} */
    it('legendPosition(deprecated) is equal to br', function () {
        expect(gisplayOptions.legendPosition).to.equal('br');
    });

    /**@test {GisplayOptions#legendNumberFormat} */
    it('legendNumberFormat(deprecated) is 0', function () {
        expect(gisplayOptions.legendNumberFormat).to.equal(0);
    });

    /**@test {GisplayOptions#} */
    it('profiling is true', function () {
        expect(gisplayOptions.profiling).to.equal(true);
    });
});

/** @test {GisplayOptions} */
describe('Test GisplayOptions. Some user options are defined. TODO: More testing', function () {
    let gisplayOptions = new GisplayOptions({
        attr: 'f3',
        numberOfClasses: 50
    });

    /**@test {GisplayOptions#attr} */
    it('Attr value is undefined', function () {
        expect(gisplayOptions.attr).to.equal('f3');
    });

    /**@test {GisplayOptions#colorScheme} */
    it('Color Shceme is undefined', function () {
        expect(gisplayOptions.colorScheme).to.equal(undefined);
    });

    /**@test {GisplayOptions#numberOfClasses} */
    it('numberOfClasses is undefined', function () {
        expect(gisplayOptions.numberOfClasses).to.equal(50);
    });

    /**@test {GisplayOptions#classBreaksMethod} */
    it('classBreaksMethod is quantile', function () {
        expect(gisplayOptions.classBreaksMethod).to.equal('quantile');
    });

    /**@test {GisplayOptions#classBreaks} */
    it('classBreaks are undefined', function () {
        expect(gisplayOptions.classBreaks).to.equal(undefined);
    });

    /**@test {GisplayOptions#interactive} */
    it('interactive is true ', function () {
        expect(gisplayOptions.interactive).to.equal(true);
    });

    /**@test {GisplayOptions#showPropertiesOnClick} */
    it('showPropertiesOnClick is null ', function () {
        expect(gisplayOptions.showPropertiesOnClick).to.equal(null);
    });

    /**@test {GisplayOptions#showLegend} */
    it('showLegend is true', function () {
        expect(gisplayOptions.showLegend).to.equal(true);
    });

    /**@test {GisplayOptions#minuend} */
    it('minuend is undefined ', function () {
        expect(gisplayOptions.minuend).to.equal(undefined);
    });

    /**@test {GisplayOptions#subtrahend} */
    it('subtrahend is undefined ', function () {
        expect(gisplayOptions.subtrahend).to.equal(undefined);
    });

    /**@test {GisplayOptions#legendTitle} */
    it('legendTitle is undefined - undefined', function () {
        expect(gisplayOptions.legendTitle).to.equal('f3');
    });

    /**@test {GisplayOptions#showLoader} */
    it('showLoader is true', function () {
        expect(gisplayOptions.showLoader).to.equal(true);
    });

    /**@test {GisplayOptions#useCustomMapService} */
    it('useCustomMapService is false ', function () {
        expect(gisplayOptions.useCustomMapService).to.equal(false);
    });

    /**@test {GisplayOptions#minPointSize} */
    it('minPointSize is 1.0', function () {
        expect(gisplayOptions.minPointSize).to.equal(1.0);
    });

    /**@test {GisplayOptions#maxPointSize} */
    it('maxPointSize is 10.0', function () {
        expect(gisplayOptions.maxPointSize).to.equal(10.0);
    });

    /**@test {GisplayOptions#sizeByClass} */
    it('sizeByClass is false', function () {
        expect(gisplayOptions.sizeByClass).to.equal(false);
    });

    /**@test {GisplayOptions#memorySaver} */
    it('memorySaver is true', function () {
        expect(gisplayOptions.memorySaver).to.equal(true);
    });

    /**@test {GisplayOptions#colorSchemeId} */
    it('colorSchemeId is 1', function () {
        expect(gisplayOptions.colorSchemeId).to.equal(1);
    });

    /**@test {GisplayOptions#legendOnClickFunction} */
    it('legendOnClickFunction is undefined', function () {
        expect(gisplayOptions.legendOnClickFunction).to.equal(undefined);
    });

    /**@test {GisplayOptions#mapOnClickFunction} */
    it('mapOnClickFunction  is undefined', function () {
        expect(gisplayOptions.mapOnClickFunction).to.equal(undefined);
    });

    //OTHER OPTIONS
    /**@test {GisplayOptions#alpha} */
    it('alpha is 0.8', function () {
        expect(gisplayOptions.alpha).to.equal(0.8);
    });

    /**@test {GisplayOptions#maxFeatures} */
    it('maxFeatures is equal to Number.MAX_VALUE', function () {
        expect(gisplayOptions.maxFeatures).to.equal(Number.MAX_VALUE);
    });

    /**@test {GisplayOptions#numberOfLegendItems} */
    it('numberOfLegendItems is 2', function () {
        expect(gisplayOptions.numberOfLegendItems).to.equal(2);
    });

    //NON-USER OPTIONS
    /**@test {GisplayOptions#isDynamic} */
    it('isDynamic is !memorySaver(true)', function () {
        expect(gisplayOptions.isDynamic).to.equal(!gisplayOptions.memorySaver);
    });

    /**@test {GisplayOptions#legendToggle} */
    it('legendToggle is true', function () {
        expect(gisplayOptions.legendToggle).to.equal(true);
    });
});