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/frontend/node_modules/intl-tel-input/src/spec/tests/methods/setCountry.js
"use strict";

describe("setCountry: init plugin and calling public method setCountry()", function() {

  var countryCode = "gb";

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

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

  it("updates the selected flag", function() {
    expect(getSelectedFlagElement()).toHaveClass(`iti__${countryCode}`);
  });

  it("does not insert the dial code", function() {
    expect(getInputVal()).toEqual("");
  });

  describe("setting title attribute on flag container", function() {
    describe("when separateDialCode is false", function() {
      beforeEach(function() {
        iti = window.intlTelInput(input[0], {
          showFlags: true,
          separateDialCode: false,
        });
        iti.setCountry(countryCode);
      });

      it("has the country name and dial code in the flag's title", function() {
        expect(getSelectedFlagContainer().attr("title")).toEqual("United Kingdom: +44");
      });
    });

    describe("when separateDialCode is true", function() {
      beforeEach(function() {
        iti = window.intlTelInput(input[0], {
          showFlags: true,
          separateDialCode: true,
        });
        iti.setCountry(countryCode);
      });

      it("has the country name but not the dial code in the flag's title", function() {
        expect(getSelectedFlagContainer().attr("title")).toEqual("United Kingdom");
      });
    });


    // setCountry errors out when country code is undefined, so we can likely remove this scenario and make country code a required param
    describe("when countryCode is falsey", function() {
      // beforeEach(function() {
      //   iti = window.intlTelInput(input[0], {
      //     showFlags: true,
      //   });
      //   iti.setCountry();
      // });

      it("sets the flag's title as Unknown", function() {
        // expect(getSelectedFlagContainer().attr("title")).toEqual("Unknown");
      });
    })
  });
});