sounding 0.0.0 → 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2,9 +2,36 @@
2
2
 
3
3
  Sounding is a testing framework for Sails applications and The Boring JavaScript Stack.
4
4
 
5
- This repository currently starts with research and product design work for an elegant testing story built on:
6
- - the native Node.js test runner
7
- - Playwright for browser testing
8
- - Captain Vane for factories and scenarios
5
+ It is designed to be:
6
+ - a Sails hook first
7
+ - a CLI second
8
+ - powered by the native Node.js test runner
9
+ - integrated with Playwright for browser testing
10
+ - elegant for helper, endpoint, JSON API, Inertia, mail, and browser trials
11
+
12
+ The canonical Sails-native surface is:
13
+ - optional `config/sounding.js` when you need overrides
14
+ - `sails.sounding`
15
+ - `sails.helpers.user.signupWithTeam(...)` inside trials
16
+ - `get('/api/issues')` or `sails.sounding.request.get('/api/issues')` inside endpoint-style trials
17
+ - request helpers default to Sails virtual requests powered by `sails.request()`
18
+ - Inertia-style visits can use `visit('/pricing')` and partial reload options like `{ component, only }`
19
+ - a trial can opt into stricter parity with `test('...', { transport: 'http' }, ...)`
20
+ - any trial can also scope a request client with `sails.sounding.request.using('http')`
21
+
22
+ Sounding also owns its own built-in world engine, so the same package can:
23
+ - define factories under `tests/factories`
24
+ - define scenarios under `tests/scenarios`
25
+ - load named worlds for endpoint and browser trials
26
+ - capture outgoing mail by wrapping `sails.helpers.mail.send` and storing normalized messages in `sails.sounding.mailbox`
27
+
28
+ The default configuration story is intentionally calm:
29
+ - Sounding manages a temporary `sails-sqlite` datastore by default
30
+ - managed SQLite artifacts live under `.tmp/db`
31
+ - the default datastore identity is `default`
32
+ - browser projects start with `desktop`
33
+ - `inherit` remains available when an app already has a serious test datastore story
34
+
35
+ This repository starts with docs-driven product research and the first hook/runtime scaffolding for that vision.
9
36
 
10
37
  See `RESEARCH.md`.