From 6c1a12f5bfe3f6de88d3e27c5623cc4f6dbe0920 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Hu=C3=A1ng=20J=C3=B9nli=C3=A0ng?= Date: Thu, 6 Jul 2023 17:58:31 -0400 Subject: [PATCH] add describeGte --- .../test/transform-script-tags.test.js | 86 +++++++++---------- scripts/repo-utils/index.cjs | 3 + scripts/repo-utils/index.d.ts | 1 + 3 files changed, 44 insertions(+), 46 deletions(-) diff --git a/packages/babel-standalone/test/transform-script-tags.test.js b/packages/babel-standalone/test/transform-script-tags.test.js index 2031e90bb929..58544dfa4409 100644 --- a/packages/babel-standalone/test/transform-script-tags.test.js +++ b/packages/babel-standalone/test/transform-script-tags.test.js @@ -1,9 +1,9 @@ import fs from "fs"; import { createRequire } from "module"; -import { itGte } from "$repo-utils"; +import { describeGte } from "$repo-utils"; const require = createRequire(import.meta.url); -describe("transformScriptTags", () => { +describeGte("16.0.0")("transformScriptTags", () => { let standaloneSource; let JSDOM; beforeAll(async () => { @@ -13,51 +13,45 @@ describe("transformScriptTags", () => { ); JSDOM = require("jsdom").JSDOM; }); - itGte("16.0.0")( - "should transform script element with type 'text/babel'", - () => { - const dom = new JSDOM( - ``, - { runScripts: "dangerously" }, - ); - return new Promise((resolve, reject) => { - dom.window.addEventListener("DOMContentLoaded", () => { - try { - const transformedScriptElement = - dom.window.document.head.children.item(2); - expect(transformedScriptElement.getAttribute("type")).toBeNull(); - expect(transformedScriptElement.innerHTML).toContain( - "globalThis !== null && globalThis !== void 0 ? globalThis : window", - ); - resolve(); - } catch (err) { - reject(err); - } - }); + it("should transform script element with type 'text/babel'", () => { + const dom = new JSDOM( + ``, + { runScripts: "dangerously" }, + ); + return new Promise((resolve, reject) => { + dom.window.addEventListener("DOMContentLoaded", () => { + try { + const transformedScriptElement = + dom.window.document.head.children.item(2); + expect(transformedScriptElement.getAttribute("type")).toBeNull(); + expect(transformedScriptElement.innerHTML).toContain( + "globalThis !== null && globalThis !== void 0 ? globalThis : window", + ); + resolve(); + } catch (err) { + reject(err); + } }); - }, - ); - itGte("16.0.0")( - "should pass through the nonce attribute to the transformed script element", - () => { - const nonceAttribute = "nonce_example"; + }); + }); + it("should pass through the nonce attribute to the transformed script element", () => { + const nonceAttribute = "nonce_example"; - const dom = new JSDOM( - ``, - { runScripts: "dangerously" }, - ); - return new Promise((resolve, reject) => { - dom.window.addEventListener("DOMContentLoaded", () => { - try { - const transformedScriptElement = - dom.window.document.head.children.item(2); - expect(transformedScriptElement.nonce).toBe(nonceAttribute); - resolve(); - } catch (err) { - reject(err); - } - }); + const dom = new JSDOM( + ``, + { runScripts: "dangerously" }, + ); + return new Promise((resolve, reject) => { + dom.window.addEventListener("DOMContentLoaded", () => { + try { + const transformedScriptElement = + dom.window.document.head.children.item(2); + expect(transformedScriptElement.nonce).toBe(nonceAttribute); + resolve(); + } catch (err) { + reject(err); + } }); - }, - ); + }); + }); }); diff --git a/scripts/repo-utils/index.cjs b/scripts/repo-utils/index.cjs index 9f628a9f21e2..9db451e1b6a6 100644 --- a/scripts/repo-utils/index.cjs +++ b/scripts/repo-utils/index.cjs @@ -29,6 +29,9 @@ if (typeof jest !== "undefined") { exports.itGte = function (version) { return semver.gte(process.version, version) ? it : it.skip; }; + exports.describeGte = function (version) { + return semver.gte(process.version, version) ? describe : describe.skip; + }; } exports.commonJS = function (metaUrl) { diff --git a/scripts/repo-utils/index.d.ts b/scripts/repo-utils/index.d.ts index 77920b8d2796..4bd245dbd895 100644 --- a/scripts/repo-utils/index.d.ts +++ b/scripts/repo-utils/index.d.ts @@ -9,3 +9,4 @@ export const itESM: jest.It; export function itGteNoESM(version: string): jest.It; export function itGteESM(version: string): jest.It; export function itGte(version: string): jest.It; +export function describeGte(version: string): jest.Describe;