git.delta.rocks / unique-network / refs/commits / 1ad8b2e58c9d

difftreelog

Merge pull request #487 from UniqueNetwork/fix/serde-rpc

Yaroslav Bolyukin2022-08-15parents: #ea9cd14 #79a270a.patch.diff
in: master

7 files changed

modifiedCargo.lockdiffbeforeafterboth
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -12379,7 +12379,7 @@
 
 [[package]]
 name = "uc-rpc"
-version = "0.1.1"
+version = "0.1.2"
 dependencies = [
  "anyhow",
  "jsonrpsee",
modifiedclient/rpc/CHANGELOG.mddiffbeforeafterboth
--- a/client/rpc/CHANGELOG.md
+++ b/client/rpc/CHANGELOG.md
@@ -2,10 +2,15 @@
 
 All notable changes to this project will be documented in this file.
 
+## [0.1.2] - 2022-08-12
+
+### Fixed
+
+-   Method signature `total_pieces`. Before that the number of pieces greater than 2^53 -1 caused an error when calling this method.
+
 ## [0.1.1] - 2022-07-14
 
 ### Added
 
- - Implementation of RPC method `token_owners` returning 10 owners in no particular order.
-    This was an internal request to improve the web interface and support fractionalization event. 
- 
\ No newline at end of file
+-   Implementation of RPC method `token_owners` returning 10 owners in no particular order.
+    This was an internal request to improve the web interface and support fractionalization event.
modifiedclient/rpc/Cargo.tomldiffbeforeafterboth
--- a/client/rpc/Cargo.toml
+++ b/client/rpc/Cargo.toml
@@ -1,6 +1,6 @@
 [package]
 name = "uc-rpc"
-version = "0.1.1"
+version = "0.1.2"
 license = "GPLv3"
 edition = "2021"
 
modifiedclient/rpc/src/lib.rsdiffbeforeafterboth
--- a/client/rpc/src/lib.rs
+++ b/client/rpc/src/lib.rs
@@ -242,7 +242,7 @@
 		collection_id: CollectionId,
 		token_id: TokenId,
 		at: Option<BlockHash>,
-	) -> Result<Option<u128>>;
+	) -> Result<Option<String>>;
 }
 
 mod rmrk_unique_rpc {
@@ -518,7 +518,7 @@
 	pass_method!(collection_stats() -> CollectionStats, unique_api);
 	pass_method!(next_sponsored(collection: CollectionId, account: CrossAccountId, token: TokenId) -> Option<u64>, unique_api);
 	pass_method!(effective_collection_limits(collection_id: CollectionId) -> Option<CollectionLimits>, unique_api);
-	pass_method!(total_pieces(collection_id: CollectionId, token_id: TokenId) -> Option<u128>, unique_api);
+	pass_method!(total_pieces(collection_id: CollectionId, token_id: TokenId) -> Option<String> => |o| o.map(|number| number.to_string()) , unique_api);
 	pass_method!(token_owners(collection: CollectionId, token: TokenId) -> Vec<CrossAccountId>, unique_api);
 }
 
modifiedpallets/common/src/lib.rsdiffbeforeafterboth
--- a/pallets/common/src/lib.rs
+++ b/pallets/common/src/lib.rs
@@ -536,7 +536,7 @@
 		/// Can't transfer tokens to ethereum zero address
 		AddressIsZero,
 
-		/// The oprtation is not supported
+		/// The operation is not supported
 		UnsupportedOperation,
 
 		/// Insufficient funds to perform an action
modifiedtests/CHANGELOG.mddiffbeforeafterboth
--- a/tests/CHANGELOG.md
+++ b/tests/CHANGELOG.md
@@ -2,10 +2,15 @@
 
 All notable changes to this project will be documented in this file.
 
+## 2022-08-12
+
+### Added
+
+-   In integration tests for `RFT` added check of work with the maximum allowable number of pieces (MAX_REFUNGIBLE_PIECES).
+
 ## 2022-07-14
 
 ### Added
- - Integrintegration tests of RPC method `token_owners`.
- - Integrintegration tests of Fungible Pallet.
-  
- 
\ No newline at end of file
+
+-   Integrintegration tests of RPC method `token_owners`.
+-   Integrintegration tests of Fungible Pallet.
modifiedtests/src/refungible.test.tsdiffbeforeafterboth
3030
31let alice: IKeyringPair;31let alice: IKeyringPair;
32let bob: IKeyringPair;32let bob: IKeyringPair;
33const MAX_REFUNGIBLE_PIECES = 1_000_000_000_000_000_000_000n;
3334
34describe('integration test: Refungible functionality:', async () => {35describe('integration test: Refungible functionality:', async () => {
35 before(async function() {36 before(async function() {
58 });59 });
59 });60 });
60 61
62 it('Checking RPC methods when interacting with maximum allowed values (MAX_REFUNGIBLE_PIECES)', async () => {
63 await usingPlaygrounds(async helper => {
64 const collection = await helper.rft.mintCollection(alice, {name: 'test', description: 'test', tokenPrefix: 'test'});
65
66 const token = await collection.mintToken(alice, {Substrate: alice.address}, MAX_REFUNGIBLE_PIECES);
67
68 expect(await collection.getTokenBalance(token.tokenId, {Substrate: alice.address})).to.be.equal(MAX_REFUNGIBLE_PIECES);
69
70 await collection.transferToken(alice, token.tokenId, {Substrate: bob.address}, MAX_REFUNGIBLE_PIECES);
71 expect(await collection.getTokenBalance(token.tokenId, {Substrate: bob.address})).to.be.equal(MAX_REFUNGIBLE_PIECES);
72 expect(await token.getTotalPieces()).to.be.equal(MAX_REFUNGIBLE_PIECES);
73
74 await expect(collection.mintToken(alice, {Substrate: alice.address}, MAX_REFUNGIBLE_PIECES + 1n)).to.eventually.be.rejected;
75 });
76 });
77
61 it('RPC method tokenOnewrs for refungible collection and token', async () => {78 it('RPC method tokenOnewrs for refungible collection and token', async () => {
62 await usingPlaygrounds(async (helper, privateKey) => {79 await usingPlaygrounds(async (helper, privateKey) => {