Marketplace documentation
This commit is contained in:
@@ -23,3 +23,24 @@ test('homepage explains the roadmap without opt-in marketing or implying live XM
|
||||
assert.doesNotMatch(app,/EXPLICIT OPT-IN|opt-in RandomX|No browser mining|Only by choice/);
|
||||
assert.match(app,/--consent/); // Documentation-only change: runnable miner invocation keeps its existing required flag.
|
||||
});
|
||||
test('market transparency explains real controls without promising escrow, refunds or live payments',async()=>{
|
||||
const guide=await readFile(new URL('../docs/market-transparency.md',import.meta.url),'utf8');
|
||||
for(const required of [
|
||||
/does not process real cryptocurrency payments/,
|
||||
/Card delivery is real/,
|
||||
/Listing is not escrow/,
|
||||
/That would be custodial/,
|
||||
/30 minutes after auction close/,
|
||||
/48 hours after mock payment/,
|
||||
/0\.096500000000 XMR/,
|
||||
/cannot revoke a signed NFT transfer/,
|
||||
/no built-in arbitration service/,
|
||||
/the hosting operator and anyone with its database\/backups can read orders/,
|
||||
/ambiguous requests are not blindly retried/,
|
||||
])assert.match(guide,required);
|
||||
for(const name of ['../README.md','../docs/marketplace.md','../docs/shkeeper-settlement.md']){
|
||||
assert.match(await readFile(new URL(name,import.meta.url),'utf8'),/market-transparency\.md/);
|
||||
}
|
||||
// Resolve every workspace-relative Markdown link in the new guide, catching missing documentation.
|
||||
for(const match of guide.matchAll(/\]\(([^)]+\.md)(?:#[^)]*)?\)/g))await readFile(new URL(`../docs/${match[1]}`,import.meta.url),'utf8');
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user