64 lines
2.0 KiB
JavaScript
64 lines
2.0 KiB
JavaScript
const prerender = require("content-src/activity-stream-prerender");
|
|
const {prerenderStore} = prerender;
|
|
const {PrerenderData} = require("common/PrerenderData.jsm");
|
|
|
|
describe("prerenderStore", () => {
|
|
it("should create a store", () => {
|
|
const store = prerenderStore();
|
|
|
|
assert.isFunction(store.getState);
|
|
});
|
|
it("should start uninitialized", () => {
|
|
const store = prerenderStore();
|
|
|
|
const state = store.getState();
|
|
assert.equal(state.App.initialized, false);
|
|
});
|
|
it("should set the right locale, strings, and text direction", () => {
|
|
const strings = {foo: "foo"};
|
|
|
|
const store = prerenderStore("en-FOO", strings);
|
|
|
|
const state = store.getState();
|
|
assert.equal(state.App.locale, "en-FOO");
|
|
assert.equal(state.App.strings, strings);
|
|
assert.equal(state.App.textDirection, "ltr");
|
|
});
|
|
it("should add the right initial prefs", () => {
|
|
const store = prerenderStore();
|
|
|
|
const state = store.getState();
|
|
assert.equal(state.Prefs.values, PrerenderData.initialPrefs);
|
|
});
|
|
it("should add TopStories as the first section", () => {
|
|
const store = prerenderStore();
|
|
|
|
const state = store.getState();
|
|
// TopStories
|
|
const firstSection = state.Sections[0];
|
|
assert.equal(firstSection.id, "topstories");
|
|
// it should start uninitialized
|
|
assert.equal(firstSection.initialized, false);
|
|
});
|
|
});
|
|
|
|
describe("prerender", () => {
|
|
it("should set the locale and get the right strings of whatever is passed in", () => {
|
|
const {store} = prerender("en-US");
|
|
|
|
const state = store.getState();
|
|
assert.equal(state.App.locale, "en-US");
|
|
assert.equal(state.App.strings.newtab_page_title, "New Tab");
|
|
});
|
|
it("should throw if an unknown locale is passed in", () => {
|
|
assert.throws(() => prerender("en-FOO"));
|
|
});
|
|
it("should set the locale to en-PRERENDER and have empty strings if no locale is passed in", () => {
|
|
const {store} = prerender();
|
|
|
|
const state = store.getState();
|
|
assert.equal(state.App.locale, "en-PRERENDER");
|
|
assert.equal(state.App.strings.newtab_page_title, " ");
|
|
});
|
|
});
|