Testen
Test Omgeving
ord env <DIRECTORY>
maakt een testomgeving aan in <DIRECTORY>
, start bitcoind
- en ord server
-instellingen op, drukt voorbeeldcommando's af voor interactie met de test-bitcoind
- en ord server
-instellingen, wacht op CTRL-C
, en schakelt vervolgens bitcoind
en ord server
uit.
ord env
probeert poort 9000 te gebruiken voor de RPC-interface van bitcoind
, en poort 9001 voor de RPC-interface van ord
, maar valt terug op willekeurige ongebruikte poorten als deze bezet zijn.
Binnen de env-directory schrijft ord env
de configuratie van bitcoind
naar bitcoin.conf
, de configuratie van ord
naar ord.yaml
, en de env-configuratie naar env.json
.
env.json
bevat de commando's die nodig zijn om bitcoin-cli
en ord wallet
aan te roepen, evenals de poorten waarop bitcoind
en ord server
luisteren.
Deze kunnen worden omgezet in shell-commando's met behulp van jq
:
bitcoin=`jq -r '.bitcoin_cli_command | join(" ")' env/env.json`
$bitcoin listunspent
ord=`jq -r '.ord_wallet_command | join(" ")' env/env.json`
$ord outputs
Als ord
in de $PATH
staat en de env-directory env
is, zal het bitcoin-cli
-commando zijn:
bitcoin-cli -datadir=env
En het ord
-commando zal zijn:
ord --datadir env
Test Netwerken
Ord kan worden getest met de volgende vlaggen om het testnetwerk op te geven. Voor meer informatie over het draaien van Bitcoin Core voor tests, zie de ontwikkelaarsdocumentatie van Bitcoin.
De meeste ord
-commando's in wallet en explorer kunnen worden uitgevoerd met de volgende netwerkvlaggen:
Netwerk | Vlag (Flag) |
---|---|
Testnet | --testnet or -t |
Signet | --signet or -s |
Regtest | --regtest or -r |
Regtest vereist niet het downloaden van de blockchain, omdat je je eigen privé-blockchain creëert, waardoor het indexeren van ord
bijna onmiddellijk is.
Voorbeeld
Voer bitcoind
uit in regtest met:
bitcoind -regtest -txindex
Voer ord server
uit in regtest met:
ord --regtest server
Maak een wallet aan in regtest met:
ord --regtest wallet create
Haal een regtest ontvangstadres op met:
ord --regtest wallet receive
Mijn 101 blokken (om de coinbase te ontgrendelen) met:
bitcoin-cli -regtest generatetoaddress 101 <receive address>
Inscribe in regtest met:
ord --regtest wallet inscribe --fee-rate 1 --file <file>
Mijn de inscriptie met:
bitcoin-cli -regtest generatetoaddress 1 <receive address>
Standaard ondersteunen browsers geen compressie via HTTP. Om gecomprimeerde inhoud via HTTP te testen, gebruik je de --decompress
vlag:
ord --regtest server --decompress
Het Testen van Recursie
Bij het testen van recursie, inscribeer eerst de afhankelijkheden (voorbeeld met p5.js):
ord --regtest wallet inscribe --fee-rate 1 --file p5.js
Dit zal de inscriptie-ID van de afhankelijkheid teruggeven, die je vervolgens kunt gebruiken in je inscriptie.
Inscriptie-ID's verschillen echter tussen mainnet en testnetwerken, dus je moet de inscriptie-ID's in je inscriptie vervangen door de mainnet-inscriptie-ID's van je afhankelijkheden voordat je de definitieve inscriptie op mainnet maakt.
Vervolgens kun je je recursieve inscriptie inschrijven met:
ord --regtest wallet inscribe --fee-rate 1 --file recursive-inscription.html
Tot slot moet je enkele blokken mijnen en de server starten:
bitcoin-cli generatetoaddress 6 <receive address>
Mainnet Afhankelijkheden
Om te voorkomen dat je afhankelijkheidsinscriptie-ID's naar mainnet-inscriptie-ID's moet wijzigen, kun je een contentproxy gebruiken tijdens het testen. ord server
accepteert een --proxy
optie, die de URL van een andere ord server
-instantie vereist. Wanneer je een verzoek indient bij /content/<INSCRIPTION_ID>
met een ingestelde contentproxy en de inscriptie niet wordt gevonden, zal ord server
het verzoek doorsturen naar de contentproxy. Dit stelt je in staat om een test-ord server
-instantie te draaien met een mainnet contentproxy. Je kunt dan mainnet-inscriptie-ID's gebruiken in je testinscriptie, wat de inhoud van de mainnet-inscripties zal retourneren.
ord --regtest server --proxy https://ordinals.com