Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
## 2026-09-23

### Changes
- [Tester] Can now check what a copy button put into the clipboard: whether it contains a text or equals it exactly. The tester clears the clipboard before copying, so an old value cannot pass the check. Needs CodeceptJS 4.2.
- [Tester] A test now starts from a page loaded after planning, so data prepared for it through the API is on screen from the first step. Previously the tester read the page as it looked before the data was prepared, concluded the item was missing, and went off to create its own through the UI.
- [Pilot] When Pilot prepares data for a test, it now tells the tester what was created — type, name and id — and to use it rather than create the same thing through the UI. This arrives even when Pilot spends its whole turn on tool calls and writes no plan.
- [Pilot] Data prepared while a test is already running now comes with a request to reload the page, since the open page cannot show it yet.
Expand Down
4 changes: 2 additions & 2 deletions bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@
"bash-tool": "^1.3.15",
"chalk": "^5.6.2",
"cli-highlight": "^2.1.11",
"codeceptjs": "^4.2.0-beta.3",
"codeceptjs": "^4.2.0",
"commander": "^14.0.1",
"debug": "^4.4.3",
"dedent": "^1.6.0",
Expand Down
13 changes: 13 additions & 0 deletions src/ai/rules.ts
Original file line number Diff line number Diff line change
Expand Up @@ -497,6 +497,19 @@ export const actionRule = dedent`

After hovering, use see() or context() to check what appeared.

### I.seeInClipboard / I.seeClipboardEquals / I.clearClipboard

Check what a copy control put into the system clipboard. Run via form(), not click().
I.seeInClipboard asserts the clipboard contains the text, I.seeClipboardEquals asserts an exact match,
I.clearClipboard empties it — call it before copying so a stale value can't pass the check.

<example>
I.clearClipboard();
I.click({ role: 'button', text: 'Copy link' });
I.seeInClipboard('/invite/');
I.seeClipboardEquals('ABC-123');
</example>

[DO NEVER USE OTHER CODECEPTJS COMMANDS THAN PROPOSED HERE]
[INTERACT ONLY WITH ELEMENTS THAT ARE ON THE PAGE HTML]
[DO NOT USE WAIT FUNCTIONS]
Expand Down
Loading