git.delta.rocks / unique-network / refs/commits / de2d5e1b77a6

difftreelog

NFTPAR-142 Off-chain and on-chain data schema. Fixed tests.

sotmorskiy2020-11-11parent: #3950758.patch.diff
in: master

2 files changed

modifiedpallets/nft/src/lib.rsdiffbeforeafterboth
250 }250 }
251}251}
252
253impl From<CreateNftData> for CreateItemData {
254 fn from(item: CreateNftData) -> Self {
255 CreateItemData::NFT(item)
256 }
257}
258
259impl From<CreateReFungibleData> for CreateItemData {
260 fn from(item: CreateReFungibleData) -> Self {
261 CreateItemData::ReFungible(item)
262 }
263}
264
265impl From<CreateFungibleData> for CreateItemData {
266 fn from(item: CreateFungibleData) -> Self {
267 CreateItemData::Fungible(item)
268 }
269}
252270
253pub trait Trait: system::Trait + Sized + transaction_payment::Trait + pallet_contracts::Trait {271pub trait Trait: system::Trait + Sized + transaction_payment::Trait + pallet_contracts::Trait {
254 type Event: From<Event<Self>> + Into<<Self as system::Trait>::Event>;272 type Event: From<Event<Self>> + Into<<Self as system::Trait>::Event>;
modifiedpallets/nft/src/tests.rsdiffbeforeafterboth
1// Tests to be written here1// Tests to be written here
2use crate::mock::*;2use crate::mock::*;
3use crate::{AccessMode, ApprovePermissions, CollectionMode, Ownership, ChainLimits, CreateItemData, NftItemType, CreateNftData, CreateFungibleData, CreateReFungibleData};3use crate::{AccessMode, ApprovePermissions, CollectionMode, Ownership, ChainLimits, CreateItemData, CreateNftData, CreateFungibleData, CreateReFungibleData};
4use frame_support::{assert_noop, assert_ok};4use frame_support::{assert_noop, assert_ok};
5use frame_system::{ RawOrigin };5use frame_system::{ RawOrigin };
66
20 }));20 }));
21}21}
2222
23fn default_nft_data() -> CreateItemData {23fn default_nft_data() -> CreateNftData {
24 CreateItemData::NFT(CreateNftData { const_data: vec![1, 2, 3], variable_data: vec![3, 2, 1] })24 CreateNftData { const_data: vec![1, 2, 3], variable_data: vec![3, 2, 1] }
25}25}
2626
27fn default_fungible_data () -> CreateItemData {27fn default_fungible_data () -> CreateFungibleData {
28 CreateItemData::Fungible(CreateFungibleData { })28 CreateFungibleData { }
29}29}
3030
31fn default_re_fungible_data () -> CreateItemData {31fn default_re_fungible_data () -> CreateReFungibleData {
32 CreateItemData::ReFungible(CreateReFungibleData { const_data: vec![1, 2, 3], variable_data: vec![3, 2, 1] })32 CreateReFungibleData { const_data: vec![1, 2, 3], variable_data: vec![3, 2, 1] }
33}33}
3434
35fn create_test_collection_for_owner(mode: &CollectionMode, owner: u64) -> u64 {35fn create_test_collection_for_owner(mode: &CollectionMode, owner: u64, id: u64) -> u64 {
36 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();36 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
37 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();37 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
38 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();38 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
3939
40 let collection_id = TemplateModule::nextCollectionID();
41 let origin1 = Origin::signed(owner);40 let origin1 = Origin::signed(owner);
42 assert_ok!(TemplateModule::create_collection(41 assert_ok!(TemplateModule::create_collection(
43 origin1.clone(),42 origin1.clone(),
44 col_name1.clone(),43 col_name1.clone(),
45 col_desc1.clone(),44 col_desc1.clone(),
46 token_prefix1.clone(),45 token_prefix1.clone(),
47 mode46 mode.clone()
48 ));47 ));
48
49 assert_eq!(TemplateModule::collection(collection_id).owner, owner);49 let saved_col_name: Vec<u16> = "Test1\0\0".encode_utf16().collect::<Vec<u16>>();
50 let saved_description: Vec<u16> = "TestDescription1\0\0".encode_utf16().collect::<Vec<u16>>();
51 let saved_prefix: Vec<u8> = b"token_prefix1\0\0".to_vec();
52 assert_eq!(TemplateModule::collection(id).owner, owner);
50 return collection_id;53 assert_eq!(TemplateModule::collection(id).name, saved_col_name);
54 assert_eq!(TemplateModule::collection(id).mode, *mode);
55 assert_eq!(TemplateModule::collection(id).description, saved_description);
56 assert_eq!(TemplateModule::collection(id).token_prefix, saved_prefix);
57 id
51}58}
5259
53fn create_test_collection(mode: &CollectionMode) -> u64 {60fn create_test_collection(mode: &CollectionMode, id: u64) -> u64 {
54 return create_test_collection_for_owner(&mode, 1);61 create_test_collection_for_owner(&mode, 1, id)
55}62}
5663
57fn create_test_item(collection_id: u64, data: &CreateItemData) {64fn create_test_item(collection_id: u64, data: &CreateItemData) {
71fn create_nft_item() {78fn create_nft_item() {
72 new_test_ext().execute_with(|| {79 new_test_ext().execute_with(|| {
73 default_limits();80 default_limits();
74 let collection_id = create_test_collection(&CollectionMode::NFT);81 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
7582
76 let data = default_nft_data();83 let data = default_nft_data();
77 create_test_item(collection_id, &data);84 create_test_item(collection_id, &data.clone().into());
78 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).const_data, data.const_data);85 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).const_data, data.const_data);
79 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).variable_data, data.variable_data);86 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).variable_data, data.variable_data);
80 });87 });
84fn create_refungible_item() {91fn create_refungible_item() {
85 new_test_ext().execute_with(|| {92 new_test_ext().execute_with(|| {
86 default_limits();93 default_limits();
87 let collection_id = create_test_collection(&CollectionMode::ReFungible(3));94 let collection_id = create_test_collection(&CollectionMode::ReFungible(3), 1);
8895
89 let data = default_re_fungible_data();96 let data = default_re_fungible_data();
90 create_test_item(collection_id, &data);97 create_test_item(collection_id, &data.clone().into());
91 assert_eq!(98 assert_eq!(
92 TemplateModule::refungible_item_id(collection_id, 1).const_data,99 TemplateModule::refungible_item_id(collection_id, 1).const_data,
93 data.const_data100 data.const_data
109#[test]116#[test]
110fn create_fungible_item() {117fn create_fungible_item() {
111 new_test_ext().execute_with(|| {118 new_test_ext().execute_with(|| {
112 let collection_id = create_test_collection(&CollectionMode::Fungible(3));119 default_limits();
120
121 let collection_id = create_test_collection(&CollectionMode::Fungible(3), 1);
113122
114 let data = default_fungible_data();123 let data = default_fungible_data();
115 create_test_item(collection_id, &data);124 create_test_item(collection_id, &data.into());
116125
117 assert_eq!(TemplateModule::fungible_item_id(collection_id, 1).owner, 1);126 assert_eq!(TemplateModule::fungible_item_id(collection_id, 1).owner, 1);
118 assert_eq!(TemplateModule::balance_count(1, 1), 1000);127 assert_eq!(TemplateModule::balance_count(1, 1), 1000);
125 new_test_ext().execute_with(|| {134 new_test_ext().execute_with(|| {
126 default_limits();135 default_limits();
127 136
128 let collection_id = create_test_collection(&CollectionMode::Fungible(3));137 let collection_id = create_test_collection(&CollectionMode::Fungible(3), 1);
129138
130 let origin1 = Origin::signed(1);139 let origin1 = Origin::signed(1);
131 let origin2 = Origin::signed(2);140 let origin2 = Origin::signed(2);
132141
133 let data = default_fungible_data();142 let data = default_fungible_data();
134 create_test_item(collection_id, &data);143 create_test_item(collection_id, &data.into());
135144
136 assert_eq!(TemplateModule::fungible_item_id(1, 1).owner, 1);145 assert_eq!(TemplateModule::fungible_item_id(1, 1).owner, 1);
137 assert_eq!(TemplateModule::balance_count(1, 1), 1000);146 assert_eq!(TemplateModule::balance_count(1, 1), 1000);
171 new_test_ext().execute_with(|| {180 new_test_ext().execute_with(|| {
172 default_limits();181 default_limits();
173 182
174 let collection_id = create_test_collection(&CollectionMode::ReFungible(3));183 let collection_id = create_test_collection(&CollectionMode::ReFungible(3), 1);
175184
176 let data = default_re_fungible_data();185 let data = default_re_fungible_data();
177 create_test_item(collection_id, &data);186 create_test_item(collection_id, &data.clone().into());
178187
179 let origin1 = Origin::signed(1);188 let origin1 = Origin::signed(1);
180 let origin2 = Origin::signed(2);189 let origin2 = Origin::signed(2);
259 new_test_ext().execute_with(|| {268 new_test_ext().execute_with(|| {
260 default_limits();269 default_limits();
261 270
262 let collection_id = create_test_collection(&CollectionMode::NFT);271 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
263272
264 let data = default_nft_data();273 let data = default_nft_data();
265 create_test_item(collection_id, &data);274 create_test_item(collection_id, &data.into());
266 assert_eq!(TemplateModule::balance_count(1, 1), 1);275 assert_eq!(TemplateModule::balance_count(1, 1), 1);
267 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);276 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);
268277
278 let origin1 = Origin::signed(1);
269 // default scenario279 // default scenario
270 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1000));280 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1000));
271 assert_eq!(TemplateModule::nft_item_id(1, 1).owner, 2);281 assert_eq!(TemplateModule::nft_item_id(1, 1).owner, 2);
281 new_test_ext().execute_with(|| {291 new_test_ext().execute_with(|| {
282 default_limits();292 default_limits();
283 293
284 let collection_id = create_test_collection(&CollectionMode::NFT);294 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
285295
286 let data = default_nft_data();296 let data = default_nft_data();
287 create_test_item(collection_id, &data);297 create_test_item(collection_id, &data.into());
288298
289 let origin1 = Origin::signed(1);299 let origin1 = Origin::signed(1);
290 let origin2 = Origin::signed(2);300 let origin2 = Origin::signed(2);
327#[test]337#[test]
328fn nft_approve_and_transfer_from_white_list() {338fn nft_approve_and_transfer_from_white_list() {
329 new_test_ext().execute_with(|| {339 new_test_ext().execute_with(|| {
330 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();340 default_limits();
331 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();341
332 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();342 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
333 let mode: CollectionMode = CollectionMode::NFT(2000);
334343
335 assert_ok!(TemplateModule::set_chain_limits(RawOrigin::Root.into(), ChainLimits {
336 collection_numbers_limit: 10,
337 account_token_ownership_limit: 10,
338 collections_admins_limit: 5,
339 custom_data_limit: 2048,
340 nft_sponsor_transfer_timeout: 15,
341 fungible_sponsor_transfer_timeout: 15,
342 refungible_sponsor_transfer_timeout: 15,
343 }));
344
345 let origin1 = Origin::signed(1);344 let origin1 = Origin::signed(1);
346 let origin2 = Origin::signed(2);345 let origin2 = Origin::signed(2);
347 assert_ok!(TemplateModule::create_collection(
348 origin1.clone(),
349 col_name1.clone(),
350 col_desc1.clone(),
351 token_prefix1.clone(),
352 mode
353 ));
354 assert_eq!(TemplateModule::collection(1).owner, 1);
355346
356 assert_ok!(TemplateModule::create_item(347 let data = default_nft_data();
357 origin1.clone(),
358 1,348 create_test_item(collection_id, &data.clone().into());
359 [1, 2, 3].to_vec(),349
360 1
361 ));
362 assert_eq!(TemplateModule::nft_item_id(1, 1).data, [1, 2, 3].to_vec());350 assert_eq!(TemplateModule::nft_item_id(1, 1).const_data, data.const_data);
363 assert_eq!(TemplateModule::balance_count(1, 1), 1);351 assert_eq!(TemplateModule::balance_count(1, 1), 1);
364 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);352 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);
365353
407 new_test_ext().execute_with(|| {395 new_test_ext().execute_with(|| {
408 default_limits();396 default_limits();
409 397
410 let collection_id = create_test_collection(&CollectionMode::ReFungible(3));398 let collection_id = create_test_collection(&CollectionMode::ReFungible(3), 1);
411 399
412 let origin1 = Origin::signed(1);400 let origin1 = Origin::signed(1);
413 let origin2 = Origin::signed(2);401 let origin2 = Origin::signed(2);
414402
415 let data = default_re_fungible_data();403 let data = default_re_fungible_data();
416 create_test_item(collection_id, &data);404 create_test_item(collection_id, &data.into());
417405
418 assert_eq!(TemplateModule::balance_count(1, 1), 1000);406 assert_eq!(TemplateModule::balance_count(1, 1), 1000);
419 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);407 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);
474 new_test_ext().execute_with(|| {462 new_test_ext().execute_with(|| {
475 default_limits();463 default_limits();
476 464
477 let collection_id = create_test_collection(&CollectionMode::Fungible(3));465 let collection_id = create_test_collection(&CollectionMode::Fungible(3), 1);
478 466
479 let data = default_fungible_data();467 let data = default_fungible_data();
480 create_test_item(collection_id, &data);468 create_test_item(collection_id, &data.into());
481469
482 let origin1 = Origin::signed(1);470 let origin1 = Origin::signed(1);
483 let origin2 = Origin::signed(2);471 let origin2 = Origin::signed(2);
557 new_test_ext().execute_with(|| {545 new_test_ext().execute_with(|| {
558 default_limits();546 default_limits();
559 547
560 let collection_id = create_test_collection(&CollectionMode::NFT);548 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
561 549
562 let origin1 = Origin::signed(1);550 let origin1 = Origin::signed(1);
563 assert_ok!(TemplateModule::change_collection_owner(551 assert_ok!(TemplateModule::change_collection_owner(
574 new_test_ext().execute_with(|| {562 new_test_ext().execute_with(|| {
575 default_limits();563 default_limits();
576 564
577 let collection_id = create_test_collection(&CollectionMode::NFT);565 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
578 566
579 let origin1 = Origin::signed(1);567 let origin1 = Origin::signed(1);
580 assert_ok!(TemplateModule::destroy_collection(origin1.clone(), collection_id));568 assert_ok!(TemplateModule::destroy_collection(origin1.clone(), collection_id));
586 new_test_ext().execute_with(|| {574 new_test_ext().execute_with(|| {
587 default_limits();575 default_limits();
588 576
589 let collection_id = create_test_collection(&CollectionMode::NFT);577 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
590578
591 let origin1 = Origin::signed(1);579 let origin1 = Origin::signed(1);
592 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), collection_id, 2));580 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), collection_id, 2));
593 581
594 let data = default_nft_data();582 let data = default_nft_data();
595 create_test_item(collection_id, &data);583 create_test_item(collection_id, &data.into());
596584
597 // check balance (collection with id = 1, user id = 1)585 // check balance (collection with id = 1, user id = 1)
598 assert_eq!(TemplateModule::balance_count(1, 1), 1);586 assert_eq!(TemplateModule::balance_count(1, 1), 1);
613 new_test_ext().execute_with(|| {601 new_test_ext().execute_with(|| {
614 default_limits();602 default_limits();
615 603
616 let collection_id = create_test_collection(&CollectionMode::Fungible(3));604 let collection_id = create_test_collection(&CollectionMode::Fungible(3), 1);
617 605
618 let origin1 = Origin::signed(1);606 let origin1 = Origin::signed(1);
619 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), collection_id, 2));607 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), collection_id, 2));
620 608
621 let data = default_fungible_data();609 let data = default_fungible_data();
622 create_test_item(collection_id, &data);610 create_test_item(collection_id, &data.into());
623611
624 // check balance (collection with id = 1, user id = 1)612 // check balance (collection with id = 1, user id = 1)
625 assert_eq!(TemplateModule::balance_count(1, 1), 1000);613 assert_eq!(TemplateModule::balance_count(1, 1), 1000);
640 new_test_ext().execute_with(|| {628 new_test_ext().execute_with(|| {
641 default_limits();629 default_limits();
642 630
643 let collection_id = create_test_collection(&CollectionMode::ReFungible(3));631 let collection_id = create_test_collection(&CollectionMode::ReFungible(3), 1);
644 let origin1 = Origin::signed(1);632 let origin1 = Origin::signed(1);
645 let origin2 = Origin::signed(2);
646633
647 assert_ok!(TemplateModule::set_mint_permission(634 assert_ok!(TemplateModule::set_mint_permission(
648 origin1.clone(),635 origin1.clone(),
659 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), 1, 2));646 assert_ok!(TemplateModule::add_collection_admin(origin1.clone(), 1, 2));
660 647
661 let data = default_re_fungible_data();648 let data = default_re_fungible_data();
662 create_test_item(collection_id, &data);649 create_test_item(collection_id, &data.into());
663650
664 // check balance (collection with id = 1, user id = 2)651 // check balance (collection with id = 1, user id = 2)
665 assert_eq!(TemplateModule::balance_count(1, 1), 1000);652 assert_eq!(TemplateModule::balance_count(1, 1), 1000);
680 new_test_ext().execute_with(|| {667 new_test_ext().execute_with(|| {
681 default_limits();668 default_limits();
682 669
683 let collection1_id = create_test_collection_for_owner(&CollectionMode::NFT, 1);670 let collection1_id = create_test_collection_for_owner(&CollectionMode::NFT, 1, 1);
684 create_test_collection_for_owner(&CollectionMode::NFT, 2);671 create_test_collection_for_owner(&CollectionMode::NFT, 2, 2);
685 create_test_collection_for_owner(&CollectionMode::NFT, 3);672 create_test_collection_for_owner(&CollectionMode::NFT, 3, 3);
686 673
687 let origin1 = Origin::signed(1);674 let origin1 = Origin::signed(1);
688675
700 new_test_ext().execute_with(|| {687 new_test_ext().execute_with(|| {
701 default_limits();688 default_limits();
702 689
703 let collection1_id = create_test_collection_for_owner(&CollectionMode::NFT, 1);690 let collection1_id = create_test_collection_for_owner(&CollectionMode::NFT, 1, 1);
704 create_test_collection_for_owner(&CollectionMode::NFT, 2);691 create_test_collection_for_owner(&CollectionMode::NFT, 2, 2);
705 create_test_collection_for_owner(&CollectionMode::NFT, 3);692 create_test_collection_for_owner(&CollectionMode::NFT, 3, 3);
706693
707 let origin1 = Origin::signed(1);694 let origin1 = Origin::signed(1);
708 let origin2 = Origin::signed(2);695 let origin2 = Origin::signed(2);
729 new_test_ext().execute_with(|| {716 new_test_ext().execute_with(|| {
730 default_limits();717 default_limits();
731 718
732 let nft_collection_id = create_test_collection(&CollectionMode::NFT);719 let nft_collection_id = create_test_collection(&CollectionMode::NFT, 1);
733 let fungible_collection_id = create_test_collection(&CollectionMode::Fungible(3));720 let fungible_collection_id = create_test_collection(&CollectionMode::Fungible(3), 2);
734 let re_fungible_collection_id = create_test_collection(&CollectionMode::ReFungible(3));721 let re_fungible_collection_id = create_test_collection(&CollectionMode::ReFungible(3), 3);
735 722
736 let origin1 = Origin::signed(1);
737
738 // check balance before723 // check balance before
739 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 0);724 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 0);
740 assert_eq!(TemplateModule::balance_count(fungible_collection_id, 1), 0);725 assert_eq!(TemplateModule::balance_count(fungible_collection_id, 1), 0);
741 assert_eq!(TemplateModule::balance_count(re_fungible_collection_id, 1), 0);726 assert_eq!(TemplateModule::balance_count(re_fungible_collection_id, 1), 0);
742727
743 let nft_data = default_nft_data();728 let nft_data = default_nft_data();
744 create_test_item(nft_collection_id, &nft_data);729 create_test_item(nft_collection_id, &nft_data.into());
745 730
746 let fungible_data = default_fungible_data();731 let fungible_data = default_fungible_data();
747 create_test_item(fungible_collection_id, &fungible_data);732 create_test_item(fungible_collection_id, &fungible_data.into());
748 733
749 let re_fungible_data = default_re_fungible_data();734 let re_fungible_data = default_re_fungible_data();
750 create_test_item(re_fungible_collection_id, &re_fungible_data);735 create_test_item(re_fungible_collection_id, &re_fungible_data.into());
751736
752 // check balance (collection with id = 1, user id = 1)737 // check balance (collection with id = 1, user id = 1)
753 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 1);738 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 1);
764 new_test_ext().execute_with(|| {749 new_test_ext().execute_with(|| {
765 default_limits();750 default_limits();
766 751
767 let collection_id = create_test_collection(&CollectionMode::NFT);752 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
768 753
769 let data = default_nft_data();754 let data = default_nft_data();
770 create_test_item(collection_id, &data);755 create_test_item(collection_id, &data.into());
771756
772 let origin1 = Origin::signed(1);757 let origin1 = Origin::signed(1);
773 758
782 new_test_ext().execute_with(|| {767 new_test_ext().execute_with(|| {
783 default_limits();768 default_limits();
784 769
785 let collection_id = create_test_collection(&CollectionMode::NFT);770 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
786 let origin1 = Origin::signed(1);771 let origin1 = Origin::signed(1);
787 let origin2 = Origin::signed(2);772 let origin2 = Origin::signed(2);
788773
789 let data = default_nft_data();774 let data = default_nft_data();
790 create_test_item(collection_id, &data);775 create_test_item(collection_id, &data.into());
791776
792 // approve777 // approve
793 assert_ok!(TemplateModule::approve(origin1.clone(), 2, 1, 1));778 assert_ok!(TemplateModule::approve(origin1.clone(), 2, 1, 1));
832 new_test_ext().execute_with(|| {817 new_test_ext().execute_with(|| {
833 default_limits();818 default_limits();
834 819
835 let collection_id = create_test_collection(&CollectionMode::NFT);820 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
836821
837 let origin1 = Origin::signed(1);822 let origin1 = Origin::signed(1);
838 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));823 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));
845 new_test_ext().execute_with(|| {830 new_test_ext().execute_with(|| {
846 default_limits();831 default_limits();
847 832
848 let collection_id = create_test_collection(&CollectionMode::NFT);833 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
849 let origin1 = Origin::signed(1);834 let origin1 = Origin::signed(1);
850 let origin2 = Origin::signed(2);835 let origin2 = Origin::signed(2);
851836
860 new_test_ext().execute_with(|| {845 new_test_ext().execute_with(|| {
861 default_limits();846 default_limits();
862 847
863 let collection_id = create_test_collection(&CollectionMode::NFT);848 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
864849
865 let origin2 = Origin::signed(2);850 let origin2 = Origin::signed(2);
866 assert_noop!(851 assert_noop!(
889 new_test_ext().execute_with(|| {874 new_test_ext().execute_with(|| {
890 default_limits();875 default_limits();
891 876
892 let collection_id = create_test_collection(&CollectionMode::NFT);877 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
893878
879 let origin1 = Origin::signed(1);
894 assert_ok!(TemplateModule::destroy_collection(origin1.clone(), collection_id));880 assert_ok!(TemplateModule::destroy_collection(origin1.clone(), collection_id));
895 assert_noop!(881 assert_noop!(
896 TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2),882 TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2),
905 new_test_ext().execute_with(|| {891 new_test_ext().execute_with(|| {
906 default_limits();892 default_limits();
907 893
908 let collection_id = create_test_collection(&CollectionMode::NFT);894 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
909 let origin1 = Origin::signed(1);895 let origin1 = Origin::signed(1);
910 896
911 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));897 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));
920 new_test_ext().execute_with(|| {906 new_test_ext().execute_with(|| {
921 default_limits();907 default_limits();
922 908
923 let collection_id = create_test_collection(&CollectionMode::NFT);909 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
924910
925 let origin1 = Origin::signed(1);911 let origin1 = Origin::signed(1);
926 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));912 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));
938 new_test_ext().execute_with(|| {924 new_test_ext().execute_with(|| {
939 default_limits();925 default_limits();
940 926
941 let collection_id = create_test_collection(&CollectionMode::NFT);927 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
942 let origin1 = Origin::signed(1);928 let origin1 = Origin::signed(1);
943 let origin2 = Origin::signed(2);929 let origin2 = Origin::signed(2);
944930
959 new_test_ext().execute_with(|| {945 new_test_ext().execute_with(|| {
960 default_limits();946 default_limits();
961 947
962 let collection_id = create_test_collection(&CollectionMode::NFT);948 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
963 let origin1 = Origin::signed(1);949 let origin1 = Origin::signed(1);
964 let origin2 = Origin::signed(2);950 let origin2 = Origin::signed(2);
965951
990 new_test_ext().execute_with(|| {976 new_test_ext().execute_with(|| {
991 default_limits();977 default_limits();
992 978
993 let collection_id = create_test_collection(&CollectionMode::NFT);979 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
994 let origin1 = Origin::signed(1);980 let origin1 = Origin::signed(1);
995 let origin2 = Origin::signed(2);981 let origin2 = Origin::signed(2);
996982
1010 new_test_ext().execute_with(|| {996 new_test_ext().execute_with(|| {
1011 default_limits();997 default_limits();
1012 998
1013 let collection_id = create_test_collection(&CollectionMode::NFT);999 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
1014 let origin1 = Origin::signed(1);1000 let origin1 = Origin::signed(1);
10151001
1016 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));1002 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));
1034 new_test_ext().execute_with(|| {1020 new_test_ext().execute_with(|| {
1035 default_limits();1021 default_limits();
1036 1022
1037 let collection_id = create_test_collection(&CollectionMode::NFT);1023 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
10381024
1039 let origin1 = Origin::signed(1);1025 let origin1 = Origin::signed(1);
1040 1026
1041 let data = default_nft_data();1027 let data = default_nft_data();
1042 create_test_item(collection_id, &data);1028 create_test_item(collection_id, &data.into());
10431029
1044 assert_ok!(TemplateModule::set_public_access_mode(1030 assert_ok!(TemplateModule::set_public_access_mode(
1045 origin1.clone(),1031 origin1.clone(),
1060 new_test_ext().execute_with(|| {1046 new_test_ext().execute_with(|| {
1061 default_limits();1047 default_limits();
1062 1048
1063 let collection_id = create_test_collection(&CollectionMode::NFT);1049 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
1064 let origin1 = Origin::signed(1);1050 let origin1 = Origin::signed(1);
1065 1051
1066 let data = default_nft_data();1052 let data = default_nft_data();
1067 create_test_item(collection_id, &data);1053 create_test_item(collection_id, &data.into());
10681054
1069 assert_ok!(TemplateModule::set_public_access_mode(1055 assert_ok!(TemplateModule::set_public_access_mode(
1070 origin1.clone(),1056 origin1.clone(),
1097 new_test_ext().execute_with(|| {1083 new_test_ext().execute_with(|| {
1098 default_limits();1084 default_limits();
1099 1085
1100 let collection_id = create_test_collection(&CollectionMode::NFT);1086 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
11011087
1102 let origin1 = Origin::signed(1);1088 let origin1 = Origin::signed(1);
1103 1089
1104 let data = default_nft_data();1090 let data = default_nft_data();
1105 create_test_item(collection_id, &data);1091 create_test_item(collection_id, &data.into());
11061092
1107 assert_ok!(TemplateModule::set_public_access_mode(1093 assert_ok!(TemplateModule::set_public_access_mode(
1108 origin1.clone(),1094 origin1.clone(),
1123 new_test_ext().execute_with(|| {1109 new_test_ext().execute_with(|| {
1124 default_limits();1110 default_limits();
1125 1111
1126 let collection_id = create_test_collection(&CollectionMode::NFT);1112 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
11271113
1128 let origin1 = Origin::signed(1);1114 let origin1 = Origin::signed(1);
11291115
1130 let data = default_nft_data();1116 let data = default_nft_data();
1131 create_test_item(collection_id, &data);1117 create_test_item(collection_id, &data.into());
11321118
1133 assert_ok!(TemplateModule::set_public_access_mode(1119 assert_ok!(TemplateModule::set_public_access_mode(
1134 origin1.clone(),1120 origin1.clone(),
1161 new_test_ext().execute_with(|| {1147 new_test_ext().execute_with(|| {
1162 default_limits();1148 default_limits();
1163 1149
1164 let collection_id = create_test_collection(&CollectionMode::NFT);1150 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
11651151
1166 let origin1 = Origin::signed(1);1152 let origin1 = Origin::signed(1);
11671153
1168 let data = default_nft_data();1154 let data = default_nft_data();
1169 create_test_item(collection_id, &data);1155 create_test_item(collection_id, &data.into());
11701156
1171 assert_ok!(TemplateModule::set_public_access_mode(1157 assert_ok!(TemplateModule::set_public_access_mode(
1172 origin1.clone(),1158 origin1.clone(),
1186 new_test_ext().execute_with(|| {1172 new_test_ext().execute_with(|| {
1187 default_limits();1173 default_limits();
1188 1174
1189 let collection_id = create_test_collection(&CollectionMode::NFT);1175 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
11901176
1191 let origin1 = Origin::signed(1);1177 let origin1 = Origin::signed(1);
1192 assert_ok!(TemplateModule::set_public_access_mode(1178 assert_ok!(TemplateModule::set_public_access_mode(
1210 new_test_ext().execute_with(|| {1196 new_test_ext().execute_with(|| {
1211 default_limits();1197 default_limits();
1212 1198
1213 let collection_id = create_test_collection(&CollectionMode::NFT);1199 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
12141200
1215 let data = default_nft_data();1201 let data = default_nft_data();
1216 create_test_item(collection_id, &data);1202 create_test_item(collection_id, &data.into());
1217 1203
1218 let origin1 = Origin::signed(1);1204 let origin1 = Origin::signed(1);
12191205
1234 new_test_ext().execute_with(|| {1220 new_test_ext().execute_with(|| {
1235 default_limits();1221 default_limits();
1236 1222
1237 let collection_id = create_test_collection(&CollectionMode::NFT);1223 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
12381224
1239 let data = default_nft_data();1225 let data = default_nft_data();
1240 create_test_item(collection_id, &data);1226 create_test_item(collection_id, &data.into());
1241 1227
1242 let origin1 = Origin::signed(1);1228 let origin1 = Origin::signed(1);
12431229
1270 new_test_ext().execute_with(|| {1256 new_test_ext().execute_with(|| {
1271 default_limits();1257 default_limits();
1272 1258
1273 let collection_id = create_test_collection(&CollectionMode::NFT);1259 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
1274 let origin1 = Origin::signed(1);1260 let origin1 = Origin::signed(1);
12751261
1276 assert_ok!(TemplateModule::set_public_access_mode(1262 assert_ok!(TemplateModule::set_public_access_mode(
1285 ));1271 ));
12861272
1287 let data = default_nft_data();1273 let data = default_nft_data();
1288 create_test_item(collection_id, &data);1274 create_test_item(collection_id, &data.into());
1289 });1275 });
1290}1276}
12911277
1295 new_test_ext().execute_with(|| {1281 new_test_ext().execute_with(|| {
1296 default_limits();1282 default_limits();
1297 1283
1298 let collection_id = create_test_collection(&CollectionMode::NFT);1284 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
12991285
1300 let origin1 = Origin::signed(1);1286 let origin1 = Origin::signed(1);
1301 let origin2 = Origin::signed(2);1287 let origin2 = Origin::signed(2);
1317 origin2.clone(),1303 origin2.clone(),
1318 collection_id,1304 collection_id,
1319 2,1305 2,
1320 default_nft_data()1306 default_nft_data().into()
1321 ));1307 ));
1322 });1308 });
1323}1309}
1328 new_test_ext().execute_with(|| {1314 new_test_ext().execute_with(|| {
1329 default_limits();1315 default_limits();
1330 1316
1331 let collection_id = create_test_collection(&CollectionMode::NFT);1317 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
13321318
1333 let origin1 = Origin::signed(1);1319 let origin1 = Origin::signed(1);
1334 let origin2 = Origin::signed(2);1320 let origin2 = Origin::signed(2);
1346 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));1332 assert_ok!(TemplateModule::add_to_white_list(origin1.clone(), collection_id, 2));
13471333
1348 assert_noop!(1334 assert_noop!(
1349 TemplateModule::create_item(origin2.clone(), 1, vec![1, 2, 3], 2),1335 TemplateModule::create_item(origin2.clone(), 1, 2, default_nft_data().into()),
1350 "Public minting is not allowed for this collection"1336 "Public minting is not allowed for this collection."
1351 );1337 );
1352 });1338 });
1353}1339}
1358 new_test_ext().execute_with(|| {1344 new_test_ext().execute_with(|| {
1359 default_limits();1345 default_limits();
1360 1346
1361 let collection_id = create_test_collection(&CollectionMode::NFT);1347 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
13621348
1363 let origin1 = Origin::signed(1);1349 let origin1 = Origin::signed(1);
1364 let origin2 = Origin::signed(2);1350 let origin2 = Origin::signed(2);
1375 ));1361 ));
13761362
1377 assert_noop!(1363 assert_noop!(
1378 TemplateModule::create_item(origin2.clone(), 1, vec![1, 2, 3], 2),1364 TemplateModule::create_item(origin2.clone(), 1, 2, default_nft_data().into()),
1379 "Public minting is not allowed for this collection"1365 "Public minting is not allowed for this collection."
1380 );1366 );
1381 });1367 });
1382}1368}
1387 new_test_ext().execute_with(|| {1373 new_test_ext().execute_with(|| {
1388 default_limits();1374 default_limits();
1389 1375
1390 let collection_id = create_test_collection(&CollectionMode::NFT);1376 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
13911377
1392 let origin1 = Origin::signed(1);1378 let origin1 = Origin::signed(1);
13931379
1403 ));1389 ));
14041390
1405 let data = default_nft_data();1391 let data = default_nft_data();
1406 create_test_item(collection_id, &data);1392 create_test_item(collection_id, &data.into());
1407 });1393 });
1408}1394}
14091395
1413 new_test_ext().execute_with(|| {1399 new_test_ext().execute_with(|| {
1414 default_limits();1400 default_limits();
1415 1401
1416 let collection_id = create_test_collection(&CollectionMode::NFT);1402 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
14171403
1418 let origin1 = Origin::signed(1);1404 let origin1 = Origin::signed(1);
1419 let origin2 = Origin::signed(2);1405 let origin2 = Origin::signed(2);
1435 origin2.clone(),1421 origin2.clone(),
1436 1,1422 1,
1437 2,1423 2,
1438 default_nft_data()1424 default_nft_data().into()
1439 ));1425 ));
1440 });1426 });
1441}1427}
1446 new_test_ext().execute_with(|| {1432 new_test_ext().execute_with(|| {
1447 default_limits();1433 default_limits();
1448 1434
1449 let collection_id = create_test_collection(&CollectionMode::NFT);1435 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
14501436
1451 let origin1 = Origin::signed(1);1437 let origin1 = Origin::signed(1);
1452 let origin2 = Origin::signed(2);1438 let origin2 = Origin::signed(2);
1463 ));1449 ));
14641450
1465 assert_noop!(1451 assert_noop!(
1466 TemplateModule::create_item(origin2.clone(), 1, 2, default_nft_data()),1452 TemplateModule::create_item(origin2.clone(), 1, 2, default_nft_data().into()),
1467 "Address is not in white list"1453 "Address is not in white list"
1468 );1454 );
1469 });1455 });
1475 new_test_ext().execute_with(|| {1461 new_test_ext().execute_with(|| {
1476 default_limits();1462 default_limits();
1477 1463
1478 let collection_id = create_test_collection(&CollectionMode::NFT);1464 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
14791465
1480 let origin1 = Origin::signed(1);1466 let origin1 = Origin::signed(1);
1481 let origin2 = Origin::signed(2);1467 let origin2 = Origin::signed(2);
1496 origin2.clone(),1482 origin2.clone(),
1497 1,1483 1,
1498 2,1484 2,
1499 default_nft_data()1485 default_nft_data().into()
1500 ));1486 ));
1501 });1487 });
1502}1488}
1507 new_test_ext().execute_with(|| {1493 new_test_ext().execute_with(|| {
1508 default_limits();1494 default_limits();
1509 1495
1510 create_test_collection(&CollectionMode::NFT);1496 create_test_collection(&CollectionMode::NFT, 1);
1511 });1497 });
1512}1498}
15131499
15191505
1520 let origin1 = Origin::signed(1);1506 let origin1 = Origin::signed(1);
15211507
1522 for _ in 0..default_collection_numbers_limit() {1508 for i in 0..default_collection_numbers_limit() {
1523 create_test_collection(&CollectionMode::NFT)1509 create_test_collection(&CollectionMode::NFT, i + 1);
1524 }1510 }
15251511
1512 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
1513 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
1514 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
1515
1526 // 11-th collection in chain. Expects error1516 // 11-th collection in chain. Expects error
1527 assert_noop!(TemplateModule::create_collection(1517 assert_noop!(TemplateModule::create_collection(
1528 origin1.clone(),1518 origin1.clone(),
1529 col_name1.clone(),1519 col_name1.clone(),
1530 col_desc1.clone(),1520 col_desc1.clone(),
1531 token_prefix1.clone(),1521 token_prefix1.clone(),
1532 mode.clone()1522 CollectionMode::NFT
1533 ), "Total collections bound exceeded");1523 ), "Total collections bound exceeded");
1534 });1524 });
1535}1525}
1540 new_test_ext().execute_with(|| {1530 new_test_ext().execute_with(|| {
1541 default_limits();1531 default_limits();
1542 1532
1543 let collection_id = create_test_collection(&CollectionMode::NFT);1533 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
15441534
1545 let data = default_nft_data();1535 let data = default_nft_data();
1546 create_test_item(collection_id, &data);1536 create_test_item(collection_id, &data.clone().into());
1547 create_test_item(collection_id, &data);1537 create_test_item(collection_id, &data.into());
1548 });1538 });
1549}1539}
15501540
1562 refungible_sponsor_transfer_timeout: 15, 1552 refungible_sponsor_transfer_timeout: 15,
1563 }));1553 }));
1564 1554
1565 let collection_id = create_test_collection(&CollectionMode::NFT);1555 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
15661556
1567 let origin1 = Origin::signed(1);1557 let origin1 = Origin::signed(1);
1568 let data = default_nft_data();1558 let data = default_nft_data();
1569 create_test_item(collection_id, &data);1559 create_test_item(collection_id, &data.clone().into());
15701560
1571 assert_noop!(TemplateModule::create_item(1561 assert_noop!(TemplateModule::create_item(
1572 origin1.clone(),1562 origin1.clone(),
1573 1,1563 1,
1574 1,1564 1,
1575 data1565 data.into()
1576 ), "Owned tokens by a single address bound exceeded");1566 ), "Owned tokens by a single address bound exceeded");
1577 });1567 });
1578}1568}
1591 refungible_sponsor_transfer_timeout: 15, 1581 refungible_sponsor_transfer_timeout: 15,
1592 }));1582 }));
1593 1583
1594 let collection_id = create_test_collection(&CollectionMode::NFT);1584 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
15951585
1596 let origin1 = Origin::signed(1);1586 let origin1 = Origin::signed(1);
1597 1587
1614 refungible_sponsor_transfer_timeout: 15, 1604 refungible_sponsor_transfer_timeout: 15,
1615 }));1605 }));
1616 1606
1617 let collection_id = create_test_collection(&CollectionMode::NFT);1607 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
16181608
1619 let origin1 = Origin::signed(1);1609 let origin1 = Origin::signed(1);
16201610
1637 refungible_sponsor_transfer_timeout: 15, 1627 refungible_sponsor_transfer_timeout: 15,
1638 }));1628 }));
1639 1629
1640 let collection_id = create_test_collection(&CollectionMode::NFT);1630 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
16411631
1642 let origin1 = Origin::signed(1);1632 let origin1 = Origin::signed(1);
1643 let too_big_const_data = CreateItemData::NFT(CreateNftData{1633 let too_big_const_data = CreateItemData::NFT(CreateNftData{
1650 collection_id,1640 collection_id,
1651 1,1641 1,
1652 too_big_const_data1642 too_big_const_data
1653 ), "const_data exceeded data limit: 2.");1643 ), "const_data exceeded data limit.");
1654 });1644 });
1655}1645}
16561646
1668 refungible_sponsor_transfer_timeout: 15, 1658 refungible_sponsor_transfer_timeout: 15,
1669 }));1659 }));
16701660
1671 let collection_id = create_test_collection(&CollectionMode::NFT);1661 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
16721662
1673 let origin1 = Origin::signed(1);1663 let origin1 = Origin::signed(1);
1674 let too_big_const_data = CreateItemData::NFT(CreateNftData{1664 let too_big_const_data = CreateItemData::NFT(CreateNftData{
1681 collection_id,1671 collection_id,
1682 1,1672 1,
1683 too_big_const_data1673 too_big_const_data
1684 ), "variable_data exceeded data limit: 2.");1674 ), "variable_data exceeded data limit.");
1685 });1675 });
1686}1676}
16871677
1699 refungible_sponsor_transfer_timeout: 15, 1689 refungible_sponsor_transfer_timeout: 15,
1700 }));1690 }));
17011691
1702 let collection_id = create_test_collection(&CollectionMode::NFT);1692 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
17031693
1704 let origin1 = Origin::signed(1);1694 let origin1 = Origin::signed(1);
1705 let too_big_const_data = CreateItemData::NFT(CreateNftData{1695 let too_big_const_data = CreateItemData::NFT(CreateNftData{
1712 collection_id,1702 collection_id,
1713 1,1703 1,
1714 too_big_const_data1704 too_big_const_data
1715 ), "const_data exceeded data limit: 2.");1705 ), "const_data exceeded data limit.");
1716 });1706 });
1717}1707}
17181708
1730 refungible_sponsor_transfer_timeout: 15, 1720 refungible_sponsor_transfer_timeout: 15,
1731 }));1721 }));
17321722
1733 let collection_id = create_test_collection(&CollectionMode::NFT);1723 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
17341724
1735 let origin1 = Origin::signed(1);1725 let origin1 = Origin::signed(1);
1736 let too_big_const_data = CreateItemData::NFT(CreateNftData{1726 let too_big_const_data = CreateItemData::NFT(CreateNftData{
1743 collection_id,1733 collection_id,
1744 1,1734 1,
1745 too_big_const_data1735 too_big_const_data
1746 ), "variable_data exceeded data limit: 2.");1736 ), "variable_data exceeded data limit.");
1747 });1737 });
1748}1738}
1749// #endregion1739// #endregion
1753 new_test_ext().execute_with(|| {1743 new_test_ext().execute_with(|| {
1754 default_limits();1744 default_limits();
17551745
1756 let collection_id = create_test_collection(&CollectionMode::NFT);1746 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
17571747
1758 let origin1 = Origin::signed(1);1748 let origin1 = Origin::signed(1);
1759 assert_ok!(TemplateModule::set_const_on_chain_schema(origin1, collection_id, "test const on chain schema".to_vec()));1749 assert_ok!(TemplateModule::set_const_on_chain_schema(origin1, collection_id, b"test const on chain schema".to_vec()));
17601750
1761 assert_eq!(TemplateModule::collection(collection_id).const_on_chain_schema, "test const on chain schema".to_vec());1751 assert_eq!(TemplateModule::collection(collection_id).const_on_chain_schema, b"test const on chain schema".to_vec());
1762 assert_eq!(TemplateModule::collection(collection_id).variable_on_chain_schema, "".to_vec());1752 assert_eq!(TemplateModule::collection(collection_id).variable_on_chain_schema, b"".to_vec());
1763 });1753 });
1764}1754}
17651755
1768 new_test_ext().execute_with(|| {1758 new_test_ext().execute_with(|| {
1769 default_limits();1759 default_limits();
1770 1760
1771 let collection_id = create_test_collection(&CollectionMode::NFT);1761 let collection_id = create_test_collection(&CollectionMode::NFT, 1);
17721762
1773 let origin1 = Origin::signed(1);1763 let origin1 = Origin::signed(1);
1774 assert_ok!(TemplateModule::set_variable_on_chain_schema(origin1, collection_id, "test variable on chain schema".to_vec()));1764 assert_ok!(TemplateModule::set_variable_on_chain_schema(origin1, collection_id, b"test variable on chain schema".to_vec()));
17751765
1776 assert_eq!(TemplateModule::collection(collection_id).const_on_chain_schema, "".to_vec());1766 assert_eq!(TemplateModule::collection(collection_id).const_on_chain_schema, b"".to_vec());
1777 assert_eq!(TemplateModule::collection(collection_id).variable_on_chain_schema, "test variable on chain schema".to_vec());1767 assert_eq!(TemplateModule::collection(collection_id).variable_on_chain_schema, b"test variable on chain schema".to_vec());
1778 });1768 });
1779}1769}