HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode.com/node_modules/intl-tel-input/src/spec/tests/core/initialValues.js
"use strict";

describe("initial values:", function() {

  beforeEach(function() {
    intlSetup();
  });

  afterEach(function() {
    intlTeardown();
  });



  describe("init vanilla plugin on empty input", function() {

    beforeEach(function() {
      input = $("<input>").wrap("div");
      iti = window.intlTelInput(input[0]);
    });

    it("creates a container with the right class", function() {
      expect(getParentElement()).toHaveClass("iti");
    });

    it("has the right number of list items", function() {
      expect(getListLength()).toEqual(totalCountries);
    });

    it("sets the state correctly: selected flag", function() {
      expect(getSelectedFlagElement()).toHaveClass("iti__af");
    });

  });



  describe("init vanilla plugin on input containing valid UK dial code", function() {

    beforeEach(function() {
      input = $("<input value='+44 12345'>");
      iti = window.intlTelInput(input[0]);
    });

    it("sets the state correctly: selected flag", function() {
      expect(getSelectedFlagElement()).toHaveClass("iti__gb");
    });

  });



  describe("input containing valid regionless NANP number with intl dial code", function() {

    beforeEach(function() {
      input = $("<input value='+1 800 123 1234'>");
    });

    describe("init plugin with nationalMode enabled", function() {

      beforeEach(function() {
        iti = window.intlTelInput(input[0]);
      });

      it("defaults to US flag", function() {
        expect(getSelectedFlagElement()).toHaveClass("iti__us");
      });

    });

    describe("init plugin with nationalMode enabled and an initialCountry", function() {

      var initialCountry = "ca";

      beforeEach(function() {
        iti = window.intlTelInput(input[0], {
          initialCountry: initialCountry
        });
      });

      it("defaults to the initialCountry flag", function() {
        expect(getSelectedFlagElement()).toHaveClass(`iti__${initialCountry}`);
      });

    });

  });



  describe("init vanilla plugin on input containing valid Cook Island number with intl dial code", function() {

    beforeEach(function() {
      input = $("<input value='+682 21 234'>");
      iti = window.intlTelInput(input[0]);
    });

    // issue 520
    it("sets the selected flag correctly", function() {
      expect(getSelectedFlagElement()).toHaveClass("iti__ck");
    });

  });



  describe("init vanilla plugin on input containing number with invalid dial code", function() {

    beforeEach(function() {
      input = $("<input value='+969999'>");
      iti = window.intlTelInput(input[0]);
    });

    it("does not set the selected flag", function() {
      expect(getSelectedFlagElement().attr("class")).toBe("iti__flag iti__globe");
    });

  });



  describe("init vanilla plugin on input containing number with no dial code", function() {

    beforeEach(function() {
      input = $("<input value='8'>");
      iti = window.intlTelInput(input[0]);
    });

    it("does not set the selected flag", function() {
      expect(getSelectedFlagElement().attr("class")).toBe("iti__flag iti__globe");
    });

  });

});