diff --git a/client/src/templates/Challenges/redux/execute-challenge-saga.js b/client/src/templates/Challenges/redux/execute-challenge-saga.js index 4f1bdde20c..028e84ea90 100644 --- a/client/src/templates/Challenges/redux/execute-challenge-saga.js +++ b/client/src/templates/Challenges/redux/execute-challenge-saga.js @@ -86,7 +86,8 @@ export function* executeChallengeSaga({ payload }) { const protect = isLoopProtected(challengeMeta); const buildData = yield buildChallengeData(challengeData, { preview: false, - protect + protect, + usesTestRunner: true }); const document = yield getContext('document'); const testRunner = yield call( diff --git a/client/src/templates/Challenges/utils/build.js b/client/src/templates/Challenges/utils/build.js index 6d29684f52..304f7c6280 100644 --- a/client/src/templates/Challenges/utils/build.js +++ b/client/src/templates/Challenges/utils/build.js @@ -132,12 +132,13 @@ async function getDOMTestRunner(buildData, { proxyLogger }, document) { runTestInTestFrame(document, testString, testTimeout); } -export function buildDOMChallenge({ - challengeFiles, - required = [], - template = '' -}) { - const finalRequires = [...required, ...frameRunner]; +export function buildDOMChallenge( + { challengeFiles, required = [], template = '' }, + { usesTestRunner } = { usesTestRunner: false } +) { + const finalRequires = [...required]; + if (usesTestRunner) finalRequires.push(...frameRunner); + const loadEnzyme = challengeFiles.some( challengeFile => challengeFile.ext === 'jsx' ); diff --git a/curriculum/challenges/_meta/jquery/meta.json b/curriculum/challenges/_meta/jquery/meta.json index 82675a180a..20865be7e8 100644 --- a/curriculum/challenges/_meta/jquery/meta.json +++ b/curriculum/challenges/_meta/jquery/meta.json @@ -8,6 +8,9 @@ "required": [ { "link": "https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.css" + }, + { + "src": "https://code.jquery.com/jquery-3.6.0.min.js" } ], "superBlock": "front-end-development-libraries", diff --git a/curriculum/test/test-challenges.js b/curriculum/test/test-challenges.js index f4cabd1eef..1a82768c47 100644 --- a/curriculum/test/test-challenges.js +++ b/curriculum/test/test-challenges.js @@ -577,11 +577,14 @@ async function createTestRunner( solutionFiles ); - const { build, sources, loadEnzyme } = await buildChallenge({ - challengeFiles, - required, - template - }); + const { build, sources, loadEnzyme } = await buildChallenge( + { + challengeFiles, + required, + template + }, + { usesTestRunner: true } + ); const code = { contents: sources.index,