Go to file
Michael 77af2e5e22
Auction nameservice tests (#28)
* truncated testing until questions of intent answered

* nameservice passes local tests

* first pass running tests from sdk side

* lint cleanup

* move into dir rather than args

* double bond in naming test

* first pass building test container on sdk side... only basic tests this iteration

* missing jest

* docker compose exec got dropped

* start both containers, not just laconicd

* script cleanup in action

* working directory

* diagnostic

* diagnostic

* run against dev branch of laconicd

* run auction and nameservice-expiry tests

* switch to main branch
2023-02-10 14:44:23 -05:00
.github/workflows Auction nameservice tests (#28) 2023-02-10 14:44:23 -05:00
proto versioning record attributes 2023-01-02 17:44:06 +05:30
scripts Message for creating bond 2022-04-21 09:44:24 +05:30
src Auction nameservice tests (#28) 2023-02-10 14:44:23 -05:00
.env.example Changes to use laconic-sdk with console-app (#10) 2022-12-09 14:25:13 +05:30
.gitignore Auction nameservice tests (#28) 2023-02-10 14:44:23 -05:00
.npmignore Add .npmignore file to make publish work 2022-12-01 20:24:58 -07:00
DEVELOPMENT.md Replace wrn with crn 2022-04-21 09:44:24 +05:30
Dockerfile-sdk Auction nameservice tests (#28) 2023-02-10 14:44:23 -05:00
entrypoint.sh Auction nameservice tests (#28) 2023-02-10 14:44:23 -05:00
jest.config.js Changes from review 2022-04-21 09:44:24 +05:30
package.json version 0.1.5 2023-01-11 15:48:24 -06:00
README.md quick README update to reflect reality 2023-02-06 12:47:29 -05:00
tsconfig.json Implement setRecord and add test for setAutorityBond 2022-04-21 09:44:24 +05:30
yarn.lock Remove broken is-url dependency 2022-12-21 13:08:09 -07:00

laconic-sdk

Client library used by TS/JS applications to communicate with laconicd.

Tests

Follow these steps to run the tests:

  • After cloning this repo run:

    yarn
    
  • Copy .env.example file and create a .env file.

  • Clone the laconicd repo and change to repo directory.

  • Run the chain using ./init.sh.

  • Export the private key using:

    laconicd keys export mykey --unarmored-hex --unsafe
    
  • Copy the private key and assign it to variable PRIVATE_KEY in the .env file.

  • Run the tests in laconic-sdk repo:

    yarn test
    
  • Run the tests with auctions enabled

    • In laconicd repo run:

      TEST_AUCTION_ENABLED=true ./init.sh
      
    • Export the private key and change it in .env file again using:

      laconicd keys export mykey --unarmored-hex --unsafe
      
    • Run tests:

      yarn test:auctions
      
  • Run the tests for record and authority expiry

    • In laconicd repo run:

      TEST_REGISTRY_EXPIRY=true ./init.sh
      
    • Export the private key and change it in .env file again using:

      laconicd keys export mykey --unarmored-hex --unsafe
      
    • Run tests:

      yarn test:nameservice-expiry
      

Development

README

Known Issues

  • Passing a float type value in watcher attributes throws error when sending setRecord message.

    failed to execute message; message index: 0: Invalid signature.: unauthorized
    
  • When sending setRecord message, an integer value passed in watcher attributes is parsed as float type in laconicd while unmarshalling json.

  • setRecord message throws error when fileds in Record message are not assigned.

    failed to pack and hash typedData primary type: provided data '<nil>' doesn't match type 'string' [tharsis/ethermint/ethereum/eip712/eip712.go:33]
    

    Passing dummy values to work around issue.