target_uri.v1.json (2324B)
1 { 2 "suite": "transport", 3 "contract_version": "1.0.0", 4 "vectors": [ 5 { 6 "id": "transport_target_uri_generic_canonical_001", 7 "kind": "transport.target_uri.valid", 8 "input": { 9 "uri": "MESH://Node.Example/path?q=1#frag" 10 }, 11 "expected": { 12 "canonical_uri": "mesh://node.example/path?q=1#frag" 13 } 14 }, 15 { 16 "id": "transport_target_uri_empty_002", 17 "kind": "transport.target_uri.invalid", 18 "input": { 19 "uri": " " 20 }, 21 "expected": { 22 "error": "empty_target_uri" 23 } 24 }, 25 { 26 "id": "transport_target_uri_whitespace_003", 27 "kind": "transport.target_uri.invalid", 28 "input": { 29 "uri": "bad target" 30 }, 31 "expected": { 32 "error": "invalid_target_uri" 33 } 34 }, 35 { 36 "id": "transport_target_uri_bad_scheme_004", 37 "kind": "transport.target_uri.invalid", 38 "input": { 39 "uri": "1bad:target" 40 }, 41 "expected": { 42 "error": "invalid_target_uri" 43 } 44 }, 45 { 46 "id": "transport_nostr_relay_canonical_005", 47 "kind": "transport.nostr_relay_target.valid", 48 "input": { 49 "uri": "WSS://Relay.Example/" 50 }, 51 "expected": { 52 "canonical_uri": "wss://relay.example" 53 } 54 }, 55 { 56 "id": "transport_nostr_relay_query_006", 57 "kind": "transport.nostr_relay_target.invalid", 58 "input": { 59 "uri": "wss://relay.example?subscription=1" 60 }, 61 "expected": { 62 "error": "invalid_target_uri" 63 } 64 }, 65 { 66 "id": "transport_nostr_relay_nonlocal_ws_007", 67 "kind": "transport.nostr_relay_target.invalid", 68 "input": { 69 "uri": "ws://relay.example" 70 }, 71 "expected": { 72 "error": "invalid_target_uri" 73 } 74 }, 75 { 76 "id": "transport_nostr_relay_private_device_008", 77 "kind": "transport.nostr_relay_private_device.valid", 78 "input": { 79 "uri": "WS://192.168.1.2:7447/" 80 }, 81 "expected": { 82 "canonical_uri": "ws://192.168.1.2:7447" 83 } 84 }, 85 { 86 "id": "transport_nostr_relay_named_device_009", 87 "kind": "transport.nostr_relay_private_device.invalid", 88 "input": { 89 "uri": "ws://relay.internal" 90 }, 91 "expected": { 92 "error": "invalid_target_uri" 93 } 94 } 95 ] 96 }