release acceptance matrix: tools/acceptance.ts runs every user-facing command from the packed npm tarball (npx --package=<tgz> on Node 20 / 22, bun x --bun after bun add <tgz>) in fresh temp folders with a fresh HOME, real piped stdin (n, EOF) and per-cell fake stores over HTTP (STOREBOUND_STORE_MOCK, loopback only); a cell passes only with the expected exit code and no crash text; report -> markdown matrix. Prompts go through stdinIsTTY (STOREBOUND_ASSUME_TTY drives them with piped stdin), STOREBOUND_DESKTOP_APP=none for the install prompt on a machine with the app. release.yml: required acceptance job matrix (Linux + Windows x node20/node22/bun) and report, the matrix attached to the release; ci.yml: the quick subset on Linux and Windows. Scan fixtures for React Native and Expo
This commit is contained in:
parent
ae681e3ecd
commit
f58e192001
26 changed files with 926 additions and 15 deletions
2
tests/fixtures/scan/expo/README.md
vendored
Normal file
2
tests/fixtures/scan/expo/README.md
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Scan fixture: a managed Expo app (app.json, no native folders), used by the release acceptance matrix
|
||||
(tools/acceptance.ts) and tests/scan.test.ts. Placeholder ids only.
|
||||
9
tests/fixtures/scan/expo/app.json
vendored
Normal file
9
tests/fixtures/scan/expo/app.json
vendored
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
{
|
||||
"expo": {
|
||||
"name": "Example Expo",
|
||||
"slug": "example-expo",
|
||||
"version": "1.0.0",
|
||||
"ios": { "bundleIdentifier": "com.example.expo" },
|
||||
"android": { "package": "com.example.expo" }
|
||||
}
|
||||
}
|
||||
12
tests/fixtures/scan/expo/package.json
vendored
Normal file
12
tests/fixtures/scan/expo/package.json
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
{
|
||||
"name": "example-expo",
|
||||
"version": "1.0.0",
|
||||
"private": true,
|
||||
"main": "expo-router/entry",
|
||||
"dependencies": {
|
||||
"expo": "54.0.0",
|
||||
"expo-location": "19.0.0",
|
||||
"react": "19.1.0",
|
||||
"react-native": "0.81.0"
|
||||
}
|
||||
}
|
||||
2
tests/fixtures/scan/react-native/README.md
vendored
Normal file
2
tests/fixtures/scan/react-native/README.md
vendored
Normal file
|
|
@ -0,0 +1,2 @@
|
|||
Scan fixture: a bare React Native app (ios/ and android/ folders, Info.plist and manifest), used by the release
|
||||
acceptance matrix (tools/acceptance.ts) and tests/scan.test.ts. Placeholder ids only.
|
||||
5
tests/fixtures/scan/react-native/android/app/src/main/AndroidManifest.xml
vendored
Normal file
5
tests/fixtures/scan/react-native/android/app/src/main/AndroidManifest.xml
vendored
Normal file
|
|
@ -0,0 +1,5 @@
|
|||
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<uses-permission android:name="android.permission.INTERNET" />
|
||||
<uses-permission android:name="android.permission.CAMERA" />
|
||||
<application android:label="Example RN" />
|
||||
</manifest>
|
||||
12
tests/fixtures/scan/react-native/ios/Notes/Info.plist
vendored
Normal file
12
tests/fixtures/scan/react-native/ios/Notes/Info.plist
vendored
Normal file
|
|
@ -0,0 +1,12 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>com.example.rn</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0.0</string>
|
||||
<key>NSCameraUsageDescription</key>
|
||||
<string>Scan documents into your notes.</string>
|
||||
</dict>
|
||||
</plist>
|
||||
10
tests/fixtures/scan/react-native/package.json
vendored
Normal file
10
tests/fixtures/scan/react-native/package.json
vendored
Normal file
|
|
@ -0,0 +1,10 @@
|
|||
{
|
||||
"name": "example-rn",
|
||||
"version": "1.0.0",
|
||||
"private": true,
|
||||
"dependencies": {
|
||||
"react": "19.1.0",
|
||||
"react-native": "0.81.0",
|
||||
"react-native-vision-camera": "4.7.0"
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue