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
To avoid having to change dependency inscription IDs to mainnet inscription IDs, you may utilize a content proxy when testing. ord server
accepts a --proxy
option, which takes the URL of another ord server
instance. When making a request to /content/<INSCRIPTION_ID>
when a content proxy is set and the inscription is not found, ord server
will forward the request to the content proxy. This allows you to run a test ord server
instance with a mainnet content proxy. You can then use mainnet inscription IDs in your test inscription, which will then return the content of the mainnet inscriptions.
ord --regtest server --proxy https://ordinals.com