Barley Test Cases

From BiblePay Wiki
Revision as of 13:11, 7 September 2021 by Admin (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Welcome to BiblePay Q4 2021 - Barley - Test Cases!

Please refer to the testnet thread and its OP Post for other startup information:

Test Case #1 - Download the Wallet, Install the Wallet, Verify TestNet & Verify Chain is Synced

  • Depending on your OS, download the biblepaycore Wallet:
Windows 64-bit:
Linux 64 bits II (QT/biblepayd/biblepay-cli) zip:
Install it in a specific place (not on top of production), for example on windows:  c:\Program files\BiblePayDev 

You can do this by changing the last few characters of the 'Default Installation Location' when you start the wallet. This will let you run biblepay side-by-side your other biblepay production node and not interfere with it.

Launch the wallet the following way to enter testnet:

Option A - Linux:

./biblepaycore -testnet=1 

Option B - Windows:

Go to windows Command Prompt | cd c:\program files\biblepaydev | biblepay-qt -testnet=1 

Option C - Windows:

Look for the BiblePay Develop Shortcut to TestNet in Start | Program Files | All Programs | BiblePayDevelop | TESTNET | Launch the program

Option D - Config File:

Create a configuration file located at "~/.biblepay/biblepaytest.conf" and add the following line in it:
Launch the wallet with "./biblepay -conf=biblepaytest.conf" 

Now that the wallet has launched, lets verify you are in testnet first:

Click Tools | Info | Read "Network":Name | Verify this is TESTNET

Q1. Is your network Name TestNET?

Next, let the wallet sync to the height of 117037+, then check your blockhash.

Go to the RPC Console: Click Tools | Console | Type: getblockhash 117037 The response should be: da2e08e39dcc9e9df42182abb194b393e617cee03974e71cffa9596011b3c817

Q2. Is your hash matching 117037's hash?

Next, lets check the version. From the rpc console, type getnetworkinfo. Read the Build Version.

Q3. The Build version should be or higher. What is your build version?

Verify that you have connections: Click Tools | Info Read "Number of Connections":

Q3. How many connections do you have?

This concludes Test case #1.

Test Case #2 - Send BIBLEPAY back and forth from your wallet to Unchained and back to yourself

  • If you don't have an account at unchained set up, follow this: Navigate to

When you arrive at the site, it is in MAINNET by default, but we need to be in testnet.

From the left menu, expand Account, and click on My User Record. Click TESTNET.

Now you need a wallet:

Click on the Wallet icon in the upper left corner.

Click Generate New Address.

Copy the 10 seed words to your personal notepad (you can use NOTEPAD in windows for example to paste these in), and keep them for future use in testnet. We may need them.

Click OK.

Now you have an unchained TestNet address, but you still need a nickname in Unchained (this is reqd for Saving Data).

From unchained, click the Left Menu | Expand Account | Click My User Record

Now Populate your Nickname | then Click "SAVE".

Now you can participate in unchained testnet voting, social media, etc IN TESTNET.

  • Now we want to Send biblepay currency from biblepaycore to Unchained.

If you do not have any tBBP in your core wallet (this is TestNet Biblepay), please post something on the forum testnet thread (link is at the top) asking for free tBBP to be sent to you, and paste your receiving address which you can find in "File | Receiving Addresses | Copy one to the clipboard".

Next, lets fund our Unchained wallet.

From BiblePayCore, click Send Money.  Now switch over to Unchained: From Unchained, click the wallet icon, then copy your Unchained receive address to your clipboard.
Paste this address into biblepay core as the SENDING ADDRESS.  Choose an amount, for example 1000 bbp.  Click SEND.

Now we need to wait 1 block for the funds to appear in Unchained.

After 1 block, click around on unchained (IE click a video or anything) and the balance should update.

Q1. Did your transaction successfully flow from BiblePay into Unchained, and were you credited in Unchained the proper amount?

Next, lets send a smaller amount of biblepay back to the core wallet.

From unchained, click the wallet icon. From biblepaycore, copy one of your receiving addresses to the clipboard (you can find these in File | Receiving Addresses).

Paste the address in unchained in the WALLET Send To Address field.

Send a smaller amount back to your core wallet (so that you still have funds in testnet to play around later in future test cases).

Wait 1 block, and verify your BiblePay Core balance has increased (take note of the balance and write it down first etc).

Q2. Did your biblepaycore balance successfully increase, and your unchained balance decrease by the correct amount?

Test Case #3 - Tip a Video

  • From Unchained Testnet, add a video (be sure its an mp4). Be sure to name it with a very unique name so we can find it.
  • Post your video name on the forum along with your nickname so we can tip it and also post your TestNet biblepay balance along with the post so when you receive the tip you can tell us if you got it.
  • Note: The tip takes one full block to pass before you will see it.

Test Case #4 - Add a Portfolio Builder Position

This test case will prove that unchained can handle new PB positions, prove that BiblePay Core will calculate the daily superblock correctly, and dispurse the rewards correctly (to match the leaderboard) and that the end user will receive the daily superblock reward. We also need to review the UTXO leaderboard summary and details. (In future steps we will deal with non-biblepay currency, but lets start with BBP only for this test case).

  • First we need to establish a biblepay-core 'retirement account' (the core wallet does not do this automatically anymore). This will be the BBP address that you can fund multiple times, that will hold the locked UTXO stakes (positions) for the long term, and on these you will earn daily rewards. Step 1: Go to biblepaycore wallet.
Go to File | Receiving Addresses | Create New Address | EDIT | Name the address 'Retirement-Account'.  (You can name it Portfolio builder in prod if you want, etc).
This will allow you to find your retirement-account address in the future when you want to fund it more.
Copy the address to the clipboard.

  • Head to Enter testnet. From the left menu click Demos | Portfolio Builder. From here, this is where you can add a BiblePay (or non-biblepay) portfolio builder position.
Choose BIBLEPAY as the ticker.  Paste your biblepay retirement-account address here.  Note that the PIN will change.  This is your 5 digit receiving pin for BIBLEPAY, for this SPECIFIC ADDRESS.  
Note if you have multiple address book entries, each will have different pins (because the pin is derived by the receive address).
Now remember the pin.  
  • Head back to the biblepaycore wallet. Go to SEND money.
Copy the retirement-account address to your clipboard.  Send TO the retirement-account.  For the amount, choose any amount you want 
(but remember we need to test for 70 days, so don't spend it all, 
spend about 1/20th or so, and you can always ask for more later).  
However, we need to add a SUFFIX on the amount equal to your pin.  
So for example, if you want to send 100K, and your pin is 12345, then you want to send "100000.12345" as the amount.  
Now go ahead and send it (this actually sends the funds to yourself).  

(We now automatically lock the stakes, as long as your biblepay.conf contains the unchainedaddress key).

  • Head back to UNCHAINED.

Now theoretically, you have a UTXO position on earning a certain amount per day, lets audit it. Click Demos | Portfolio Builder Leaderboard. View the leaderboard, and confirm you have your nickname and the correct quantity of biblepay and earnings.

  • Add to your Portfolio builder position by repeating the above steps and sending more, and verify the Leaderboard | Details contains MORE THAN one entry and the SUMMARY contains the correct SUM of biblepay.

Q1. Verify the portfolio builder position was recognized in the leaderboard?

Q2. Verify more than one PB position correctly adds in Summary and Details show each detail?

Q3. Wait 24 hours, and look for the next superblock (you can get the height by typing getgovernanceinfo). Verify that you received the correct daily reward?

Test Case #5

Lets start testing NFTs!

First, go to unchained, testnet.

Click Demos | Add NFT.

Note, it is easiest to add an Image (IE a PNG, JPG) or an e-book (pdf). The easiest way to upload your image for hosting (as the image must be from a hosted URL) is to upload your image using unchained.

Head to Community | Add Social Media | Select your image file and upload it. Now you can view your image from your channel by clicking My Channel. Copy the URL from the image. You can use this image to make a new NFT.

Next, click on Demos | NFT Add.

Use the image url as the low-quality and the high-quality URL. Fill out the rest of the fields, and save it. Verify the NFT is for sale by clicking Demos | NFT Browse.

Notify us on the forum the name of the NFT, and then one of us can buy it.

Q1. What is the name of your NFT so we can buy it?

Next, buy someone elses nft. Do this by clicking on Demos | Browse NFTs. Buy the NFT. Verify the NFT is listed in "My NFTs" - this is a list of your NFTs (see Demos | My NFTs).

Q2. Did you buy the NFT successfully, and you can see the NFT in your nft list?

Next, lets edit an NFT that you OWN.

Go to My NFTs and click on one. This puts you in EDIT mode.

Change the buy-it-now price to something of your choice.

Click the "Show in Marketplace" checkbox. Save the Record.

Q3. Were you able to Edit your NFT and can you see that your NFT is now visible in the NFT marketplace?

Test Case #6

Verify that we can mine from xmrig into the pool, and into Barley via RandomX.

Please skip this test case until the pool is set up to mine against in testnet.

Test Case # 7

Verify LLMQ quorums are forming:

Send a transaction by clicking Send, check the donate to foundation, populate an amount, click SEND.

Once quorums form, your transaction should change to a lightning bolt within 7 seconds.

Please try this after September 4th, 2021 as the sancs are forming LLMQs now.

Q1. Did your transaction turn into a lightning bolt?

Next, get the latest block number. Type 'getblock blocknumber'. Verify that the Chainlock=true?

Q2. Was the chainlock = true?

Test Case #8

From Unchained, click on Scripture Memorizer.

Please do this from PROD since Testnet has no scriptures.

Verify the memorizer tool works (like it used to in the wallet).

Test Case # 9

From Unchained, click on BBP Univ.

Test the Final Exam simulator.

Q1. Does it work like it used to in the core wallet?

Test Case #10

From the core wallet, verify that "-erasechain=1" works.

This should erase the blockchain. Second prong: Verify the wallet syncs to the top from zero in PROD.

Q1. Does the wallet sync to the TOP to agree with Chainz:

in prod?

Q2. Does erasechain=1 still work?

Test Case #11

This is primarily applicable to Rob, please skip.

Q1. Does our 'spork show' command work?

Q2. Can we still change a spork?

Q3. Can we still create a sanctuary with 4,500,001?

Q4. Verify that sanctuaries can run on non standard ports?

Test Case # 12

From Unchained, navigate to Demos | Greeting card builder.

Uncheck Deliver for Real.

Create a greeting card.

Click show PDF.

Q1. Does the card appear to be correct?

Test Case #13

This one deals with Proposals; since we migrated to .17, we now have to shift gears and make our Proposal Add on the Web, and our proposal List and our Proposal Vote. (And we still need to test proposal voting and watchman on the wall).

The proposal add system has been moved to (this is because the Add function works in the pool but is hard to do in the sidechain).

Let's add a new proposal in TESTNET. First head to then click your ACCOUNT, then click the TESTNET button - be sure you are in TESTNET (the field will update).

Now go to Proposal Add.

Populate a proposal, click Save.

Q1. What is the name of the proposal so we can vote on it?

Q2. Can you see the proposal in the "Proposals List" in Foundation?

Now for the sanctuary owners, lets vote on one of the proposals.

From the Foundation, click on Proposals List.

Choose one.

Click on Vote Yes (or Vote No). Copy the command to the clipboard. From the biblepaycore RPC, paste the command.

Q3. Did the command actually find the gobject id and place the vote properly without error?

Test Case #14

Let's test POOS (proof-of-orphan-sponsorship). Note, we need to be upgraded to v. for this.

Q1. From the Sanctuary List page, can we right click on a sanc and view the child biography?

Q2. Can we right click and sponsor a child?

Q3. Find a poos banned sanc (one that has a POOS ban score of 700 or higher). Verify that the payment for this sanc is 100 bbp (not 3000+bbp). Note: you can skip this if you don't have a sanc.

Q4. Find a non-poos banned sanc, and verify your sanc is receiving the full amount (Non poos banned is one with POOS ban score of 0). Note: You can skip this if you don't have a sanc.

Test Case #15

Let's test watchman on the wall. This is primarily for Rob since it requires technical knowledge of Watchman, so please skip this.

Step 1: Ensure the community voted for a proposal that someone entered in the active period.

Step 2: Verify the Votes exceed the Win threshhold (thats a net 10%+ for Funding Yes).

Step 3: When the monthly superblock is about to arrive at T-600~ or so, verify the watchman trigger was created.

Q1. Was the watchman trigger created?

Q2. Did the proposal result in Payment for the recipient?

Test Case #16

Let's test Orphan NFTs.

From Unchained, Click Demo, and Browse the Orphan NFTs.

Q1. If you Sponsor an orphan from NFT browse, did you successfully Sponsor, and does s/he appear in your NFT List?

Q2. Can you successfully create a new Orphan NFT, and see the NFT in the marketplace?

Q3. Verify that if you try to edit an orphan NFT, it fails and only allows you to delete it?