Spamworldpro Mini Shell
Spamworldpro


Server : Apache
System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64
User : corals ( 1002)
PHP Version : 7.4.33
Disable Function : exec,passthru,shell_exec,system
Directory :  /home/corals/vreg/node_modules/@stripe/stripe-js/src/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : /home/corals/vreg/node_modules/@stripe/stripe-js/src/pure.test.ts
/* eslint-disable @typescript-eslint/no-var-requires */

const SCRIPT_SELECTOR = 'script[src^="https://js.stripe.com/v3"]';

describe('pure module', () => {
  beforeEach(() => {
    jest.spyOn(console, 'warn').mockReturnValue();
  });

  afterEach(() => {
    const scripts = Array.from(document.querySelectorAll(SCRIPT_SELECTOR));

    for (const script of scripts) {
      if (script.parentElement) {
        script.parentElement.removeChild(script);
      }
    }

    delete window.Stripe;

    jest.resetModules();
    jest.restoreAllMocks();
  });

  test('does not inject the script if loadStripe is not called', async () => {
    require('./pure');

    expect(document.querySelector(SCRIPT_SELECTOR)).toBe(null);
  });

  test('it injects the script if loadStripe is called', async () => {
    const {loadStripe} = require('./pure');
    loadStripe('pk_test_foo');

    expect(document.querySelector(SCRIPT_SELECTOR)).not.toBe(null);
  });

  test('it can load the script with advanced fraud signals disabled', () => {
    const {loadStripe} = require('./pure');

    loadStripe.setLoadParameters({advancedFraudSignals: false});
    loadStripe('pk_test_foo');

    expect(
      document.querySelector(
        'script[src^="https://js.stripe.com/v3?advancedFraudSignals=false"]'
      )
    ).not.toBe(null);
  });

  test('it should throw when setting invalid load parameters', () => {
    const {loadStripe} = require('./pure');

    expect(() => {
      loadStripe.setLoadParameters({howdy: true});
    }).toThrow('invalid load parameters');
  });

  test('it should warn when calling loadStripe if a script already exists when parameters are set', () => {
    const script = document.createElement('script');
    script.src = 'https://js.stripe.com/v3';
    document.body.appendChild(script);

    const {loadStripe} = require('./pure');
    loadStripe.setLoadParameters({advancedFraudSignals: true});
    loadStripe('pk_test_123');

    expect(console.warn).toHaveBeenCalledTimes(1);
    expect(console.warn).toHaveBeenLastCalledWith(
      'loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used'
    );
  });

  test('it should warn when calling loadStripe if a script is added after parameters are set', () => {
    const {loadStripe} = require('./pure');
    loadStripe.setLoadParameters({advancedFraudSignals: true});

    const script = document.createElement('script');
    script.src = 'https://js.stripe.com/v3';
    document.body.appendChild(script);

    loadStripe('pk_test_123');

    expect(console.warn).toHaveBeenCalledTimes(1);
    expect(console.warn).toHaveBeenLastCalledWith(
      'loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used'
    );
  });

  test('it should warn when window.Stripe already exists if parameters are set', () => {
    window.Stripe = jest.fn((key) => ({key})) as any;

    const {loadStripe} = require('./pure');
    loadStripe.setLoadParameters({advancedFraudSignals: true});
    loadStripe('pk_test_123');

    expect(console.warn).toHaveBeenCalledTimes(1);
    expect(console.warn).toHaveBeenLastCalledWith(
      'loadStripe.setLoadParameters was called but an existing Stripe.js script already exists in the document; existing script parameters will be used'
    );
  });

  test('it should not warn when a script already exists if parameters are not set', () => {
    const script = document.createElement('script');
    script.src = 'https://js.stripe.com/v3';
    document.body.appendChild(script);

    const {loadStripe} = require('./pure');
    loadStripe('pk_test_123');

    expect(console.warn).toHaveBeenCalledTimes(0);
  });

  test('it should not warn when window.Stripe already exists if parameters are not set', () => {
    window.Stripe = jest.fn((key) => ({key})) as any;

    const {loadStripe} = require('./pure');
    loadStripe('pk_test_123');

    expect(console.warn).toHaveBeenCalledTimes(0);
  });

  test('throws an error if calling setLoadParameters after loadStripe', () => {
    const {loadStripe} = require('./pure');

    loadStripe.setLoadParameters({advancedFraudSignals: false});
    loadStripe('pk_foo');

    expect(() => {
      loadStripe.setLoadParameters({advancedFraudSignals: false});
    }).toThrow('cannot change load parameters');
  });
});

Spamworldpro Mini