
Research
Malicious npm Packages Impersonate Flashbots SDKs, Targeting Ethereum Wallet Credentials
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
cy-verify-downloads
Advanced tools
Cypress custom command to wait and verify that file has been downloaded
Custom Cypress command to wait and verify that file is downloaded.
npm i -D cy-verify-downloads
This package extends Cypress' cy
command.
For Cypress v10+:
Add this line to your project's cypress/support/e2e.js
:
require('cy-verify-downloads').addCustomCommand();
Then you need to add the following lines of code to your project's cypress.config.js
:
const { verifyDownloadTasks } = require('cy-verify-downloads');
module.exports = defineConfig({
e2e: {
setupNodeEvents(on, config) {
on('task', verifyDownloadTasks);
},
},
});
For Cucumber:
Additionally, you may need to install and add node polyfill in your support/e2e.js
file:
npm i -D esbuild-plugin-polyfill-node
support/e2e.js
file:const { polyfillNode } = require('esbuild-plugin-polyfill-node');
plugins
property:module.exports = defineConfig({
e2e: {
async setupNodeEvents(on, config) {
const bundler = createBundler({
plugins: [polyfillNode({ polyfills: { crypto: true } }), createEsbuildPlugin(config)],
});
}
}
});
For Cypress v9:
So, you need to add this line to your project's cypress/support/commands.js
:
require('cy-verify-downloads').addCustomCommand();
And add the following lines to your project's cypress/plugins/index.js
:
const { verifyDownloadTasks } = require('cy-verify-downloads');
module.exports = (on, config) => {
on('task', verifyDownloadTasks)
}
Then, in your test, you can use it like this:
cy.verifyDownload('picture.png');
// verify download by file extension or partial filename
cy.verifyDownload('.png', { contains: true });
cy.verifyDownload('pic', { contains: true });
// or increase timeout
cy.verifyDownload('archive.zip', { timeout: 25000 });
// or increase timeout and interval pooling
cy.verifyDownload('archive.zip', { timeout: 25000, interval: 600 });
To enable IntelliSense information and autocomplete you have to include types in the tsconfig.json
file:
{
"compilerOptions": {
"types": ["cypress", "cy-verify-downloads"]
}
}
Yevhen Laichenkov elaichenkov@gmail.com
FAQs
Cypress custom command to wait and verify that file has been downloaded
We found that cy-verify-downloads demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Four npm packages disguised as cryptographic tools steal developer credentials and send them to attacker-controlled Telegram infrastructure.
Security News
Ruby maintainers from Bundler and rbenv teams are building rv to bring Python uv's speed and unified tooling approach to Ruby development.
Security News
Following last week’s supply chain attack, Nx published findings on the GitHub Actions exploit and moved npm publishing to Trusted Publishers.