AutorÃa | Ultima modificación | Ver Log |
"use strict";describe("multiple instances: init plugin (with nationalMode=false) to test multiple instances", function() {var input2,iti2,afghanistanCountryCode = "af",albaniaCountryCode = "al",chinaCountryCode = "cn",chinaDialCode = "+86";beforeEach(function() {intlSetup();input = $("<input>").wrap("div");input2 = $("<input>").wrap("div");// japan and chinaiti = window.intlTelInput(input[0], {onlyCountries: [chinaCountryCode, afghanistanCountryCode],nationalMode: false,});// korea, china and russiaiti2 = window.intlTelInput(input2[0], {onlyCountries: ['kr', chinaCountryCode, 'ru', albaniaCountryCode],nationalMode: false,});$("body").append(getParentElement(input)).append(getParentElement(input2));});afterEach(function() {intlTeardown();iti2.destroy();input2.remove();input2 = iti2 = null;});it("instances have different country lists", function() {expect(getListLength()).toEqual(2);expect(getListLength(input2)).toEqual(4);});it("instances have different default countries selected", function() {expect(getSelectedFlagElement()).toHaveClass(`iti__${afghanistanCountryCode}`);expect(getSelectedFlagElement(input2)).toHaveClass(`iti__${albaniaCountryCode}`);});it("selecting an item from the first input dropdown only updates the flag on that input", function() {selectFlag(chinaCountryCode);expect(getInputVal()).toEqual(chinaDialCode);expect(getInputVal(input2)).toEqual("");});it("updating the number on the first input only updates the flag on that input", function() {input.val(chinaDialCode + " 123456");triggerKeyOnInput(" ");expect(getSelectedFlagElement()).toHaveClass(`iti__${chinaCountryCode}`);expect(getSelectedFlagElement(input2)).toHaveClass(`iti__${albaniaCountryCode}`);});describe("clicking open dropdown on the first input", function() {beforeEach(function() {getSelectedFlagContainer()[0].click();});it("only opens the dropdown on that input", function() {expect(getListElement()).toBeVisible();expect(getListElement(input2)).not.toBeVisible();});it("then clicking open dropdown on the second will close the first and open the second", function() {getSelectedFlagContainer(input2)[0].click();expect(getListElement()).not.toBeVisible();expect(getListElement(input2)).toBeVisible();});});});