Security News
pnpm 10.0.0 Blocks Lifecycle Scripts by Default
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
derby-casperjs
Advanced tools
Helpers and tweaks for Casper.js to test Derby.js apps
# app/index.coffee
# app = require('derby').createApp 'foobar', __filename
window.app = app if window? # app must be accessible from the client
require('derby-casperjs/renderReady')(app)
# test/index.coffee
constants =
baseUrl: 'http://localhost:3003'
{model, history, sel} = require('derby-casperjs')(casper, constants)
casper.waitForUrl(url[, cb, onTimeout, timeout])
Properly wait for derby to render page on client/server side.
casper.start constants.baseUrl, ->
@waitForUrl '/', =>
# On this stage derby fully loaded its client scripts and initialized everything
@shot()
model.set
, model.get
Evaluates set
, get
on the client. set
's callback waits until operation is executed on the server.
casper.then ->
userId = model.get '_session.userId'
model.set "users.#{ userId }.casper", true, =>
@shot()
model.wait()
Waits for all model operations to execute on the server
model.waitFor(path)
Waits for path
to become truthy.
casper.then ->
model.waitFor '_page.flags.finish', =>
@shot()
history.push(path[, cb])
Does app.history.push
on the client. If cb
is provided also waits until
the new page is loaded.
casper.then ->
history.push '/games', =>
# Games page is loaded and fully initialized
@shot()
history.refresh()
Refresh the page using app.history.refresh
on the client.
sel.text([Css3Selector, ]text)
Returns an XPath selector to find a node which holds text
.
Optionally you can specify a CSS3 selector to narrow the lookup.
casper.then ->
# Click on a `<button>` within `<form class='main'>` that has `Submit` text.
@click sel.text('form.main button', 'Submit')
Adds client debugging if you run tests with env var DEBUG=true:
DEBUG=true casperjs test ./test/index.js
casper.shot([name])
Make a screenshot and name it automatically with an incrementing number.
Saves screenshots to test/screenshots/
- don't forget to add it to your .gitignore
.
casper.then ->
@shot() # test/screenshots/1.png
@shot() # test/screenshots/2.png
@shot() # test/screenshots/3.png
@shot 'foobar' # test/screenshots/foobar.png
FAQs
Helpers and tweaks for Casper.js to test Derby.js apps
The npm package derby-casperjs receives a total of 17 weekly downloads. As such, derby-casperjs popularity was classified as not popular.
We found that derby-casperjs demonstrated a not healthy version release cadence and project activity because the last version was released 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.
Security News
pnpm 10 blocks lifecycle scripts by default to improve security, addressing supply chain attack risks but sparking debate over compatibility and workflow changes.
Product
Socket now supports uv.lock files to ensure consistent, secure dependency resolution for Python projects and enhance supply chain security.
Research
Security News
Socket researchers have discovered multiple malicious npm packages targeting Solana private keys, abusing Gmail to exfiltrate the data and drain Solana wallets.