81 lines
No EOL
3.7 KiB
JavaScript
81 lines
No EOL
3.7 KiB
JavaScript
// const expect = require("chai").expect;
|
|
const {initializeWithTab} = require("../common");
|
|
|
|
describe("#1670", function () {
|
|
beforeEach(async function () {
|
|
this.webExt = await initializeWithTab();
|
|
});
|
|
|
|
afterEach(function () {
|
|
this.webExt.destroy();
|
|
});
|
|
|
|
describe("creating a new container", function () {
|
|
beforeEach(async function () {
|
|
await this.webExt.popup.helper.clickElementById("container-add-link");
|
|
await this.webExt.popup.helper.clickElementById("edit-container-ok-link");
|
|
});
|
|
|
|
it("should create it in the browser as well", function () {
|
|
this.webExt.background.browser.contextualIdentities.create.should.have.been.calledOnce;
|
|
});
|
|
|
|
describe("manually assign a valid URL to a container", function () {
|
|
const exampleUrl = "https://github.com/mozilla/multi-account-containers";
|
|
beforeEach(async function () {
|
|
await this.webExt.popup.helper.clickElementById("edit-containers-link");
|
|
await this.webExt.popup.helper.clickElementByQuerySelectorAll(".edit-container-icon", "last");
|
|
this.webExt.popup.window.document.getElementById("edit-container-panel-site-input").value = exampleUrl;
|
|
await this.webExt.popup.helper.clickElementById("edit-container-site-link");
|
|
});
|
|
|
|
it("should assign the URL to a container", function () {
|
|
this.webExt.background.browser.contextualIdentities.create.should.have.been.calledOnce;
|
|
});
|
|
});
|
|
|
|
describe("manually assign valid URL without protocol to a container", function () {
|
|
const exampleUrl = "github.com/mozilla/multi-account-containers";
|
|
beforeEach(async function () {
|
|
await this.webExt.popup.helper.clickElementById("edit-containers-link");
|
|
await this.webExt.popup.helper.clickElementByQuerySelectorAll(".edit-container-icon", "last");
|
|
this.webExt.popup.window.document.getElementById("edit-container-panel-site-input").value = exampleUrl;
|
|
await this.webExt.popup.helper.clickElementById("edit-container-site-link");
|
|
});
|
|
|
|
it("should assign the URL without protocol to a container", function () {
|
|
this.webExt.background.browser.contextualIdentities.create.should.have.been.calledOnce;
|
|
});
|
|
});
|
|
|
|
describe("manually assign an invalid URL to a container", function () {
|
|
const exampleUrl = "github";
|
|
beforeEach(async function () {
|
|
await this.webExt.popup.helper.clickElementById("edit-containers-link");
|
|
await this.webExt.popup.helper.clickElementByQuerySelectorAll(".edit-container-icon", "last");
|
|
this.webExt.popup.window.document.getElementById("edit-container-panel-site-input").value = exampleUrl;
|
|
await this.webExt.popup.helper.clickElementById("edit-container-site-link");
|
|
});
|
|
|
|
it("should not assign the URL to a container", function () {
|
|
// console.log(this.webExt.background.browser.contextualIdentities);
|
|
// expect( console.log.calledOnce ).to.be.true;
|
|
this.webExt.background.browser.contextualIdentities.update.should.not.have.been.called;
|
|
});
|
|
});
|
|
|
|
describe("manually assign empty URL to a container", function () {
|
|
const exampleUrl = "";
|
|
beforeEach(async function () {
|
|
await this.webExt.popup.helper.clickElementById("edit-containers-link");
|
|
await this.webExt.popup.helper.clickElementByQuerySelectorAll(".edit-container-icon", "last");
|
|
this.webExt.popup.window.document.getElementById("edit-container-panel-site-input").value = exampleUrl;
|
|
await this.webExt.popup.helper.clickElementById("edit-container-site-link");
|
|
});
|
|
|
|
it("should not assign the URL to a container", function () {
|
|
this.webExt.background.browser.contextualIdentities.update.should.not.have.been.called;
|
|
});
|
|
});
|
|
});
|
|
}); |