Exemplo n.º 1
0
        it("can be done via a URL query string parameter", function () {
            var searchParams = '?theme=foo'; // theme must exist

            themes.push('foo');

            spyOn(platform, "current").andReturn({ui: {plugins: []}});
            spyOn(utils, 'location').andReturn({search: searchParams});
            spyOn(db, 'save');
            spyOn(db, 'retrieve');
            spyOn(db, 'retrieveObject');
            spyOn(db, 'saveObject');
            spyOn(db, 'remove');
            spyOn(document.getElementsByTagName('head')[0], 'appendChild');
            ui.getSystemPlugins().forEach(function (name) {
                var module = require(_plugin(name));
                if (module.initialize) {
                    spyOn(module, "initialize");
                }
            });

            ui.initialize();

            themes.splice(-1, 1);

            expect(db.save).toHaveBeenCalledWith('ui-theme', 'foo');
        });
Exemplo n.º 2
0
    it("initializes core ui plugin modules", function () {
        var plugins = ui.getSystemPlugins(),
            platformPlugins = [ // picked random
                "accelerometer",
                "geoView"
            ],
            jWorkflow_order = jWorkflow.order;

        spyOn(jWorkflow, "order").andCallFake(function () {
            return jWorkflow_order();
        });

        spyOn(platform, "current").andReturn({ui: {plugins: platformPlugins}});

        plugins.concat(platformPlugins).forEach(function (name) {
            var module = require(_plugin(name));
            if (module.initialize) {
                spyOn(module, "initialize");
            }
        });

        ui.initialize();

        plugins.concat(platformPlugins).forEach(function (name) {
            var module = require(_plugin(name));
            if (module.initialize) {
                expect(module.initialize).toHaveBeenCalled();
            }
        });
    });