ecadlabs / taquito

A library for building dApps on the Tezos Blockchain - JavaScript / TypeScript
https://taquito.io
Apache License 2.0
298 stars 116 forks source link

galphanet integration(All existing features, new protocol features not tracked in this issue) #817

Closed Innkst closed 3 years ago

Innkst commented 3 years ago

Integration with the galphanet with Liquidity Baking feature

NOTE: The code changes will not be merged into the release.

Tasks to make sure existing projects using v9 continue to work with v10 alphatestnet

Resources

Misc notes

To get the list of protocol hash's supported tezos-admin-client list protocols PsrsRVg1Gycjn5LvMtoYSQah1znvYmGp8bHLxwYLBZaYFf2CEkV proto hash for falphanet, short version PsrsRVg1

Code diff for similar work here.

take this opportunity to add more steps and refine our wiki. We want to :

roxaneletourneau commented 3 years ago

Notes for investigation:

roxaneletourneau commented 3 years ago

FAIL ./wallet-set-delegate-auto-estimate.spec.ts ● Test account delegation with estimation using: https://api.tez.ie/rpc/galpha2net › delegates account to known baker with automatic estimate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(permanent) proto.alpha.delegate.no_deletion"

  22 |       } catch (ex) {
  23 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 24 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  25 |       }
  26 |       done();
  27 |     });

  at wallet-set-delegate-auto-estimate.spec.ts:24:28
  at step (wallet-set-delegate-auto-estimate.spec.ts:33:23)
  at Object.throw (wallet-set-delegate-auto-estimate.spec.ts:14:53)
  at rejected (wallet-set-delegate-auto-estimate.spec.ts:6:65)

FAIL ./wallet-register-delegate.spec.ts ● Test register delegate: https://api.tez.ie/rpc/galpha2net › registers the current address as delegate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(temporary) proto.alpha.delegate.already_active"

  29 |             } catch (ex) {
  30 |                 //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 31 |                 expect(ex.message).toMatch('delegate.unchanged');
     |                                    ^
  32 |             }
  33 |             done();
  34 |         });

  at wallet-register-delegate.spec.ts:31:36
  at step (wallet-register-delegate.spec.ts:33:23)
  at Object.throw (wallet-register-delegate.spec.ts:14:53)
  at rejected (wallet-register-delegate.spec.ts:6:65)
      at runMicrotasks (<anonymous>)

FAIL ./contract-set-delegate-auto-estimate.spec.ts ● Test account delegation with estimation using: https://api.tez.ie/rpc/galpha2net › delegates account to known baker with automatic estimate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(permanent) proto.alpha.delegate.no_deletion"

  24 |       } catch (ex) {
  25 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 26 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  27 |       }
  28 |       done();
  29 |     });

  at contract-set-delegate-auto-estimate.spec.ts:26:28
  at step (contract-set-delegate-auto-estimate.spec.ts:33:23)
  at Object.throw (contract-set-delegate-auto-estimate.spec.ts:14:53)
  at rejected (contract-set-delegate-auto-estimate.spec.ts:6:65)
      at runMicrotasks (<anonymous>)

FAIL ./call-get-delegate-when-no-delegate.spec.ts ● Test trying to get the delegate when there is none: https://api.tez.ie/rpc/galpha2net › returns null when the account has no delegate

expect(received).toBeNull()

Received: "tz1dNLAaEYAyQyoi6v5WG9qgC3Ck7Z6bL7QA"

  14 |         const signer = await Tezos.signer.publicKeyHash();
  15 | 
> 16 |         expect (await Tezos.rpc.getDelegate(signer)).toBeNull();
     |                                                      ^
  17 |         expect (await Tezos.tz.getDelegate(signer)).toBeNull();
  18 | 
  19 |       done();

  at call-get-delegate-when-no-delegate.spec.ts:16:54
  at step (call-get-delegate-when-no-delegate.spec.ts:33:23)
  at Object.next (call-get-delegate-when-no-delegate.spec.ts:14:53)
  at fulfilled (call-get-delegate-when-no-delegate.spec.ts:5:58)

FAIL ./contract-originate-invalid-string.spec.ts (7.242 s) ● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › fails because there is non-ascii in the init data

expect(received).toEqual(expected) // deep equality

Expected: ObjectContaining {"message": StringContaining "invalid_constant"}
Received: {"errors": [{"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.ill_typed_data", "ill_typed_expression": {"string": "Copyright  ©"}, "kind": "permanent"}, {"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.invalid_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright  ©"}}, {"expected_form": "a printable ascii string", "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright  ©"}}], "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "message": "(permanent) proto.alpha.michelson_v1.invalid_syntactic_constant", "name": "TezosOperationError"}

  32 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_syntactic_constant') }))
  33 |         } else {
> 34 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_constant') }))
     |                      ^
  35 |         }
  36 |       }
  37 |       done();

  at contract-originate-invalid-string.spec.ts:34:22
  at step (contract-originate-invalid-string.spec.ts:33:23)
  at Object.throw (contract-originate-invalid-string.spec.ts:14:53)
  at rejected (contract-originate-invalid-string.spec.ts:6:65)

● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › fails because there is non-ascii in the init data

expect.assertions(1)

Expected one assertion to be called but received two assertion calls.

  13 |     })
  14 |     test('fails because there is non-ascii in the init data', 2, async (done: () => void) => {
> 15 |       expect.assertions(1);
     |              ^
  16 |       try {
  17 |         await Tezos.contract.originate({
  18 |           balance: "1",

  at contract-originate-invalid-string.spec.ts:15:14
  at step (contract-originate-invalid-string.spec.ts:33:23)
  at Object.next (contract-originate-invalid-string.spec.ts:14:53)
  at contract-originate-invalid-string.spec.ts:8:71
  at Object.<anonymous>.__awaiter (contract-originate-invalid-string.spec.ts:4:12)
  at contract-originate-invalid-string.spec.ts:14:89
  at node_modules/jest-retries/src/retry.js:3:24
  at runTest (node_modules/jest-retries/src/retry.js:2:12)

FAIL ./wallet-originate-invalid-string.spec.ts ● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › wallet contract fails because non-ascii in init data

expect(received).toEqual(expected) // deep equality

Expected: ObjectContaining {"message": StringContaining "invalid_constant"}
Received: {"errors": [{"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.ill_typed_data", "ill_typed_expression": {"string": "Copyright  ©"}, "kind": "permanent"}, {"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.invalid_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright  ©"}}, {"expected_form": "a printable ascii string", "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright  ©"}}], "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "message": "(permanent) proto.alpha.michelson_v1.invalid_syntactic_constant", "name": "TezosOperationError"}

  30 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_syntactic_constant') }))
  31 |         } else {
> 32 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_constant') }))
     |                      ^
  33 |         }
  34 |       }
  35 |       done();

  at wallet-originate-invalid-string.spec.ts:32:22
  at step (wallet-originate-invalid-string.spec.ts:33:23)
  at Object.throw (wallet-originate-invalid-string.spec.ts:14:53)
  at rejected (wallet-originate-invalid-string.spec.ts:6:65)

Confirmation polling timed out

./tzip16-originate-contracts-with-metadata-on-HTTPS-and-sha256-hash-and-fetch-metadata.spec.ts (227.068 s) ● Originating contracts having metadata stored at HTTPS URL using: https://api.tez.ie/rpc/galpha2net › Deploy a contract having a sha256 hash in URI FAIL ./contract-empty-implicit-account-into-new-implicit-account.spec.ts (227.545 s) ● Test emptying a revealed implicit account into a new implicit account using: https://api.tez.ie/rpc/galpha2net › reveals the sender account, creates an unrevealed implicit account, empties the sender account into the created one ./lambda-view.spec.ts (230.254 s) ● Lambda view using: https://api.tez.ie/rpc/galpha2net › Originate FA1.2 contract and fetch data from view entrypoints ./contract-unit-as-param.spec.ts (223.048 s) ● Test contract with unit as params using: https://api.tez.ie/rpc/galpha2net › Originates contract and calls deposit method with unit param ./contract-originate-contract-with-bool.spec.ts (219.202 s) ● Originate contract and set bool prop on init and via call using: https://api.tez.ie/rpc/galpha2net › originates a contract with bool storage init to true then sets to false ./contract-originate-token-contract.spec.ts ● Test origination of a token contract using: https://api.tez.ie/rpc/galpha2net › originates a token contract and mints some tokens

MissedBlockDuringConfirmationError: Taquito missed a block while waiting for operation confirmation and was not able to find the operation

./wallet-originate-token-contract.spec.ts (104.444 s) ● Test origination of a token contract using: https://api.tez.ie/rpc/galpha2net › originates a token contract made from wallet api and mints some tokens

HttpResponse: Http error response: (502) 502 Bad Gateway

./tzip16-originate-contracts-with-metadata-on-HTTPS-and-sha256-hash-and-fetch-metadata.spec.ts (227.068 s) ● Originating contracts having metadata stored at HTTPS URL using: https://api.tez.ie/rpc/galpha2net › Deploy a contract having an invalid sha256 hash in URI FAIL ./encode-long-numeral.spec.ts (14.224 s) ● Test deploying contract having long numeral in storage and calling default entry point with long numeral using the contract API: https://api.tez.ie/rpc/galpha2net › Originates contract and calls default method with long nat param ./contract-call-with-xtz-amount.spec.ts (6.141 s) ● Test contract call with amount using: https://api.tez.ie/rpc/galpha2net › originates a contract and sends base layer tokens when calling contract methods ./contract-empty-unrevealed-implicit-account.spec.ts (19.723 s) ● Test emptying an unrevealed implicit account using: https://api.tez.ie/rpc/galpha2net › create an unrevealed implicit account, fund it, empty it ./tzip16-originate-wallet-having-metadata-on-IPFS-and-fetch-those.spec.ts (6.866 s) ● Originating contracts made with wallet api having metadata stored at HTTPS URL using: https://api.tez.ie/rpc/galpha2net › Deploy a contract made with wallet api having metadata stored at on IPFS ./contract-empty-delegated-implicit-account.spec.ts (10.362 s) ● Test emptying a delegated implicit account using: https://api.tez.ie/rpc/galpha2net › create a new account, delegate it, attempt to empty it despite delegation expect to fail ./contract-big-map.spec.ts ● Test contract with multiple bigmap variations using: https://api.tez.ie/rpc/galpha2net › originates a contract and initializes bigmaps with variants of data

Counter X already used for contract (eg Counter 537 already used for contract tz1dNLAaEYAyQyoi6v5WG9qgC3Ck7Z6bL7QA (expected 538))

● Test deploying contract having long numeral in storage and calling default entry point with long numeral using the wallet API: https://api.tez.ie/rpc/galpha2net › Originates contract and calls default method with long int param ./wallet-pair-as-key.spec.ts (10.828 s) ● Test contract made from wallet api with no annotations calling methods by index using: https://api.tez.ie/rpc/galpha2net › Test contract made from wallet api with no annotations for methods ./wallet-no-annotations-call-by-index.spec.ts (14.63 s) ● Test contract made with wallet API with no annotations calling methods by index using: https://api.tez.ie/rpc/galpha2net › Test contract made with wallet API with no annotations for methods ./wallet-tx-wait-2-confirmations.spec.ts (14.42 s) ● Test tx and waiting for 2 confirmations using: https://api.tez.ie/rpc/galpha2net › transfers 2 tez and waits for 2 confirmations with wallet ./contract-no-annotations-call-by-index.spec.ts (16.339 s) ● Test contract with no annotations calling methods by index using: https://api.tez.ie/rpc/galpha2net › Test contract with no annotations for methods ./contract-pair-as-key.spec.ts (21.184 s) ● Storage contract with pair as key using: https://api.tez.ie/rpc/galpha2net › Storage contract with pair as key ● Storage contract with pair as key using: https://api.tez.ie/rpc/galpha2net › originate contract and init storage with pair as key in map ./multisig-contract-scenario.spec.ts (13.083 s) ● Generic Multisig: https://api.tez.ie/rpc/galpha2net › test manager transfers scenarios ./tzip16-metadata-view.spec.ts (108.215 s) Execute views example from TZComet: https://api.tez.ie/rpc/galpha2net › Deploy a contract with metadata having views that return bytes (example taken from TZComet) and call the views ./contract-fetch-multiple-big-map-keys.spec.ts (8.948 s) ● Test accessing big map abstraction by index using: https://api.tez.ie/rpc/galpha2net › originates a contract with empty bigmap and fetches the storage/bigmap ./tzip16-non-compliant-wallet.spec.ts (5.871 s) ● Tzip16 failing test: https://api.tez.ie/rpc/galpha2net › Deploy a simple contract using wallet api having no metadata and try to fetch metadata ./call-contract-method-manual-steps.spec.ts (5.551 s) ● Test obtain operation hash before sending the operation to the node https://api.tez.ie/rpc/galpha2net › Estimates, forges, signs, obtains the operation hash and injects the operation ./wallet-init-with-empty-bigmap.spec.ts (10.45 s) ● Token contract with empty big map origination scenario using: https://api.tez.ie/rpc/galpha2net › Originate wallet contract and init bigmap to empty map ./wallet-failwith.spec.ts (6.075 s) ● Test contract made with wallet API that throws FAILWITH api using: https://api.tez.ie/rpc/galpha2net › captures a FAILWITH and throws an error ./tzip16-originate-fa2-wallet-with-metadata-on-HTTPS-and-fetch-metadata.spec.ts (20.249 s) ● Tzip16 metadata and view on a fa2 contract made with wallet api: https://api.tez.ie/rpc/galpha2net › Should deploy a Fa2 wallet api contract having metadata on HTTPS

Counter_in_the_past (eg "expected":"537","found":"536")

./wallet-collections.spec.ts (21.152 s) ● Collection wallet tests using: https://api.tez.ie/rpc/galpha2net › Originate a contract using wallet api with set,list,map and exercise all collections ./contract-empty-revealed-implicit-account.spec.ts (5.128 s) ● Test emptying a revealed implicit account using: https://api.tez.ie/rpc/galpha2net › creates a revealed implicit account, funds it, empties it ./lambda-view.spec.ts (230.254 s) ● Lambda view using: https://api.tez.ie/rpc/galpha2net › Originate a contract and fetch data from view entrypoints

roxaneletourneau commented 3 years ago

If we set the polling interval to 5 (instead of the calculated value of 10), the number of failing test is considerably diminished:

FAIL ./contract-register-delegate.spec.ts ● Test register delegate: https://api.tez.ie/rpc/galpha2net › registers the current address as delegate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(temporary) proto.alpha.delegate.already_active"

  21 |       } catch (ex) {
  22 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 23 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  24 |       }
  25 |       done();
  26 |     });

  at contract-register-delegate.spec.ts:23:28
  at step (contract-register-delegate.spec.ts:33:23)
  at Object.throw (contract-register-delegate.spec.ts:14:53)
  at rejected (contract-register-delegate.spec.ts:6:65)

FAIL ./contract-fetch-multiple-big-map-keys.spec.ts (55.696 s) ● Test accessing big map abstraction by index using: https://api.tez.ie/rpc/galpha2net › originates a contract with empty bigmap and fetches the storage/bigmap

HttpResponse: Http error response: (502) 502 Bad Gateway

  13 |             done();
  14 |         });
> 15 |         test('originates a contract with empty bigmap and fetches the storage/bigmap', 2, async (done: () => void) => {
     |         ^
  16 |             const signer = await Tezos.signer.publicKeyHash();
  17 | 
  18 |             const bigMapInit = new MichelsonMap();

  at new Spec (node_modules/@jest/core/node_modules/jest-jasmine2/build/jasmine/Spec.js:116:22)
  at retry (node_modules/jest-retries/src/retry.js:28:5)
  at Suite.<anonymous> (contract-fetch-multiple-big-map-keys.spec.ts:15:9)

FAIL ./contract-simple-delegation.spec.ts ● Test delegation off account using: https://api.tez.ie/rpc/galpha2net › succeeds in delegating its account to a known baker

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(permanent) proto.alpha.delegate.no_deletion"

  27 |       } catch (ex) {
  28 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 29 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  30 |       }
  31 |       done();
  32 |     });

  at contract-simple-delegation.spec.ts:29:28
  at step (contract-simple-delegation.spec.ts:33:23)
  at Object.throw (contract-simple-delegation.spec.ts:14:53)
  at rejected (contract-simple-delegation.spec.ts:6:65)

FAIL ./contract-set-delegate-auto-estimate.spec.ts ● Test account delegation with estimation using: https://api.tez.ie/rpc/galpha2net › delegates account to known baker with automatic estimate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(permanent) proto.alpha.delegate.no_deletion"

  24 |       } catch (ex) {
  25 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 26 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  27 |       }
  28 |       done();
  29 |     });

  at contract-set-delegate-auto-estimate.spec.ts:26:28
  at step (contract-set-delegate-auto-estimate.spec.ts:33:23)
  at Object.throw (contract-set-delegate-auto-estimate.spec.ts:14:53)
  at rejected (contract-set-delegate-auto-estimate.spec.ts:6:65)

FAIL ./wallet-set-delegate-auto-estimate.spec.ts ● Test account delegation with estimation using: https://api.tez.ie/rpc/galpha2net › delegates account to known baker with automatic estimate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(permanent) proto.alpha.delegate.no_deletion"

  22 |       } catch (ex) {
  23 |         //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 24 |         expect(ex.message).toMatch('delegate.unchanged')
     |                            ^
  25 |       }
  26 |       done();
  27 |     });

  at wallet-set-delegate-auto-estimate.spec.ts:24:28
  at step (wallet-set-delegate-auto-estimate.spec.ts:33:23)
  at Object.throw (wallet-set-delegate-auto-estimate.spec.ts:14:53)
  at rejected (wallet-set-delegate-auto-estimate.spec.ts:6:65)

FAIL ./wallet-register-delegate.spec.ts ● Test register delegate: https://api.tez.ie/rpc/galpha2net › registers the current address as delegate

expect(received).toMatch(expected)

Expected substring: "delegate.unchanged"
Received string:    "(temporary) proto.alpha.delegate.already_active"

  29 |             } catch (ex) {
  30 |                 //When running tests more than one time with the same faucet key, the account is already delegated to the given delegate
> 31 |                 expect(ex.message).toMatch('delegate.unchanged');
     |                                    ^
  32 |             }
  33 |             done();
  34 |         });

  at wallet-register-delegate.spec.ts:31:36
  at step (wallet-register-delegate.spec.ts:33:23)
  at Object.throw (wallet-register-delegate.spec.ts:14:53)
  at rejected (wallet-register-delegate.spec.ts:6:65)

FAIL ./call-get-delegate-when-no-delegate.spec.ts ● Test trying to get the delegate when there is none: https://api.tez.ie/rpc/galpha2net › returns null when the account has no delegate

expect(received).toBeNull()

Received: "tz1dNLAaEYAyQyoi6v5WG9qgC3Ck7Z6bL7QA"

  14 |         const signer = await Tezos.signer.publicKeyHash();
  15 | 
> 16 |         expect (await Tezos.rpc.getDelegate(signer)).toBeNull();
     |                                                      ^
  17 |         expect (await Tezos.tz.getDelegate(signer)).toBeNull();
  18 | 
  19 |       done();

  at call-get-delegate-when-no-delegate.spec.ts:16:54
  at step (call-get-delegate-when-no-delegate.spec.ts:33:23)
  at Object.next (call-get-delegate-when-no-delegate.spec.ts:14:53)
  at fulfilled (call-get-delegate-when-no-delegate.spec.ts:5:58)

FAIL ./wallet-originate-invalid-string.spec.ts (5.646 s) ● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › wallet contract fails because non-ascii in init data

expect(received).toEqual(expected) // deep equality

Expected: ObjectContaining {"message": StringContaining "invalid_constant"}
Received: {"errors": [{"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.ill_typed_data", "ill_typed_expression": {"string": "Copyright ©"}, "kind": "permanent"}, {"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.invalid_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright ©"}}, {"expected_form": "a printable ascii string", "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright ©"}}], "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "message": "(permanent) proto.alpha.michelson_v1.invalid_syntactic_constant", "name": "TezosOperationError"}

  30 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_syntactic_constant') }))
  31 |         } else {
> 32 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_constant') }))
     |                      ^
  33 |         }
  34 |       }
  35 |       done();

  at wallet-originate-invalid-string.spec.ts:32:22
  at step (wallet-originate-invalid-string.spec.ts:33:23)
  at Object.throw (wallet-originate-invalid-string.spec.ts:14:53)
  at rejected (wallet-originate-invalid-string.spec.ts:6:65)

FAIL ./contract-originate-invalid-string.spec.ts (8.641 s) ● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › fails because there is non-ascii in the init data

expect(received).toEqual(expected) // deep equality

Expected: ObjectContaining {"message": StringContaining "invalid_constant"}
Received: {"errors": [{"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.ill_typed_data", "ill_typed_expression": {"string": "Copyright ©"}, "kind": "permanent"}, {"expected_type": {"prim": "string"}, "id": "proto.alpha.michelson_v1.invalid_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright ©"}}, {"expected_form": "a printable ascii string", "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "location": 0, "wrong_expression": {"string": "Copyright ©"}}], "id": "proto.alpha.michelson_v1.invalid_syntactic_constant", "kind": "permanent", "message": "(permanent) proto.alpha.michelson_v1.invalid_syntactic_constant", "name": "TezosOperationError"}

  32 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_syntactic_constant') }))
  33 |         } else {
> 34 |           expect(ex).toEqual(expect.objectContaining({ message: expect.stringContaining('invalid_constant') }))
     |                      ^
  35 |         }
  36 |       }
  37 |       done();

  at contract-originate-invalid-string.spec.ts:34:22
  at step (contract-originate-invalid-string.spec.ts:33:23)
  at Object.throw (contract-originate-invalid-string.spec.ts:14:53)
  at rejected (contract-originate-invalid-string.spec.ts:6:65)

● Test invalid data for origination using: https://api.tez.ie/rpc/galpha2net › fails because there is non-ascii in the init data

expect.assertions(1)

Expected one assertion to be called but received two assertion calls.

  13 |     })
  14 |     test('fails because there is non-ascii in the init data', 2, async (done: () => void) => {
> 15 |       expect.assertions(1);
     |              ^
  16 |       try {
  17 |         await Tezos.contract.originate({
  18 |           balance: "1",

  at contract-originate-invalid-string.spec.ts:15:14
  at step (contract-originate-invalid-string.spec.ts:33:23)
  at Object.next (contract-originate-invalid-string.spec.ts:14:53)
  at contract-originate-invalid-string.spec.ts:8:71
  at Object.<anonymous>.__awaiter (contract-originate-invalid-string.spec.ts:4:12)
  at contract-originate-invalid-string.spec.ts:14:89
  at node_modules/jest-retries/src/retry.js:3:24
  at runTest (node_modules/jest-retries/src/retry.js:2:12)
Innkst commented 3 years ago

All the tasks were complete. This will not be merged into the release. Separate issue will be created for the full support of Granada.