#!/usr/bin/env bash # Test permissioned data against the reference implementation, both directions: # the reference's verifier over live pds.js output, and pds.js's verifier over # fresh reference output. Requires a worktree of atproto at the spaces alpha # (see README). # # npm run test:reference [-- --refresh-fixtures] # # --refresh-fixtures also rewrites test/fixtures/space-reference-*, which is how # those fixtures track upstream. set -euo pipefail REPO_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")/../.." && pwd)" HERE="$REPO_ROOT/scripts/space-reference" REF="${ATPROTO_REF:-$HOME/code/atproto-space-ref}" UPSTREAM="${ATPROTO_UPSTREAM:-$HOME/code/atproto}" PIN="${ATPROTO_PIN:-704b9e2ac}" OURS="${OURS_DIR:-/tmp/pdsjs-space-artifacts}" THEIRS="${THEIRS_DIR:-/tmp/ref-space-artifacts}" REFRESH=0 [ "${1:-}" = "--refresh-fixtures" ] && REFRESH=1 if [ ! -d "$REF" ]; then cat >&2 <