From d873fad010cfcdf5224c842eea0b5dec766760d9 Mon Sep 17 00:00:00 2001 From: Rachel Fenichel Date: Mon, 10 Jul 2023 10:06:27 -0700 Subject: [PATCH] chore(tests): respond to review feedback --- tests/browser/test/basic_playground_test.js | 37 ++++++++++----------- tests/browser/test/test_setup.js | 20 ++++++++--- 2 files changed, 34 insertions(+), 23 deletions(-) diff --git a/tests/browser/test/basic_playground_test.js b/tests/browser/test/basic_playground_test.js index 138d4869c5d..a9a24741bf3 100644 --- a/tests/browser/test/basic_playground_test.js +++ b/tests/browser/test/basic_playground_test.js @@ -16,6 +16,18 @@ const { contextMenuSelect, } = require('./test_setup'); +async function getIsCollapsed(browser, blockId) { + return await browser.execute((blockId) => { + return Blockly.getMainWorkspace().getBlockById(blockId).isCollapsed(); + }, blockId); +} + +async function getIsEnabled(browser, blockId) { + return await browser.execute((blockId) => { + return Blockly.getMainWorkspace().getBlockById(blockId).isEnabled(); + }, blockId); +} + let browser; suite('Testing Connecting Blocks', function (done) { // Setting timeout to unlimited as the webdriver takes a longer time to run than most mocha test @@ -66,16 +78,12 @@ suite('Right Clicking on Blocks', function (done) { const block = await dragNthBlockFromFlyout(browser, 'Loops', 0, 20, 20); const blockId = block.id; - let isCollapsed = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isCollapsed(); - }, blockId); + let isCollapsed = await getIsCollapsed(browser, blockId); chai.assert.isFalse(isCollapsed); await contextMenuSelect(browser, block, 'Collapse Block'); - isCollapsed = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isCollapsed(); - }, blockId); + isCollapsed = await getIsCollapsed(browser, blockId); chai.assert.isTrue(isCollapsed); }); @@ -89,9 +97,7 @@ suite('Right Clicking on Blocks', function (done) { // Verify. const blockId = block.id; - const isCollapsed = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isCollapsed(); - }, blockId); + const isCollapsed = await getIsCollapsed(browser, blockId); chai.assert.isFalse(isCollapsed); }); @@ -100,18 +106,14 @@ suite('Right Clicking on Blocks', function (done) { const block = await dragNthBlockFromFlyout(browser, 'Loops', 0, 20, 20); const blockId = block.id; - let isEnabled = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isEnabled(); - }, blockId); + let isEnabled = await getIsEnabled(browser, blockId); chai.assert.isTrue(isEnabled); await contextMenuSelect(browser, block, 'Disable Block'); await new Promise((resolve) => setTimeout(resolve, 2000)); // 2 sec - isEnabled = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isEnabled(); - }, blockId); + isEnabled = await getIsEnabled(browser, blockId); chai.assert.isFalse(isEnabled); }); @@ -123,10 +125,7 @@ suite('Right Clicking on Blocks', function (done) { await contextMenuSelect(browser, block, 'Disable Block'); await contextMenuSelect(browser, block, 'Enable Block'); - const isEnabled = await browser.execute((blockId) => { - return Blockly.getMainWorkspace().getBlockById(blockId).isEnabled(); - }, blockId); - + const isEnabled = await getIsEnabled(browser, blockId); chai.assert.isTrue(isEnabled); }); diff --git a/tests/browser/test/test_setup.js b/tests/browser/test/test_setup.js index 5669ba9d9ee..0201187106b 100644 --- a/tests/browser/test/test_setup.js +++ b/tests/browser/test/test_setup.js @@ -202,18 +202,30 @@ async function connect( async function dragNthBlockFromFlyout(browser, categoryName, n, x, y) { const flyoutBlock = await getNthBlockOfCategory(browser, categoryName, n); - await new Promise((resolve) => setTimeout(resolve, 2000)); // 2 sec + await browser.pause(2000); await flyoutBlock.dragAndDrop({x: x, y: y}); - await new Promise((resolve) => setTimeout(resolve, 2000)); // 2 sec + await browser.pause(2000); + return await getSelectedBlockElement(browser); +} + +async function dragBlockTypeFromFlyout(browser, categoryName, type, x, y) { + const flyoutBlock = await getBlockTypeFromCategory( + browser, + categoryName, + type + ); + await browser.pause(2000); + await flyoutBlock.dragAndDrop({x: x, y: y}); + await browser.pause(2000); return await getSelectedBlockElement(browser); } async function contextMenuSelect(browser, block, itemText) { await block.click({button: 2}); - await new Promise((resolve) => setTimeout(resolve, 2000)); // 2 sec + await browser.pause(2000); const item = await browser.$(`div=${itemText}`); await item.click(); - await new Promise((resolve) => setTimeout(resolve, 2000)); // 2 sec + await browser.pause(2000); } module.exports = {