difftreelog
tests: fix unit tests
in: master
2 files changed
pallets/nft/src/mock.rsdiffbeforeafterboth134}134}135135136parameter_types! {136parameter_types! {137 pub const CollectionCreationPrice: u64 = 1_000_000_000_000;137 pub const CollectionCreationPrice: u32 = 1_000_000;138 pub TreasuryAccountId: u64 = 1234;138}139}139140140impl pallet_template::Config for Test {141impl pallet_template::Config for Test {141 type Event = ();142 type Event = ();142 type WeightInfo = ();143 type WeightInfo = ();143 type CollectionCreationPrice = CollectionCreationPrice;144 type CollectionCreationPrice = CollectionCreationPrice;145 type Currency = pallet_balances::Module<Test>;146 type TreasuryAccountId = TreasuryAccountId;144}147}145148146// Build genesis storage according to the mock runtime.149// Build genesis storage according to the mock runtime.pallets/nft/src/tests.rsdiffbeforeafterboth121 121 122 let data = default_nft_data();122 let data = default_nft_data();123 create_test_item(collection_id, &data.clone().into());123 create_test_item(collection_id, &data.clone().into());124 let item = TemplateModule::nft_item_id(collection_id, 1).unwrap();124 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).const_data, data.const_data);125 assert_eq!(item.const_data, data.const_data);125 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).variable_data, data.variable_data);126 assert_eq!(item.variable_data, data.variable_data);126 });127 });127}128}128129146 items_data.clone().into_iter().map(|d| { d.into() }).collect()147 items_data.clone().into_iter().map(|d| { d.into() }).collect()147 ));148 ));148 for (index, data) in items_data.iter().enumerate() {149 for (index, data) in items_data.iter().enumerate() {149 assert_eq!(TemplateModule::nft_item_id(1, (index + 1) as TokenId).const_data.to_vec(), data.const_data);150 let item = TemplateModule::nft_item_id(1, (index + 1) as TokenId).unwrap(); 151 assert_eq!(item.const_data.to_vec(), data.const_data);150 assert_eq!(TemplateModule::nft_item_id(1, (index + 1) as TokenId).variable_data.to_vec(), data.variable_data);152 assert_eq!(item.variable_data.to_vec(), data.variable_data);151 }153 }152 });154 });153}155}160162161 let data = default_re_fungible_data();163 let data = default_re_fungible_data();162 create_test_item(collection_id, &data.clone().into());164 create_test_item(collection_id, &data.clone().into());165 let item = TemplateModule::refungible_item_id(collection_id, 1).unwrap();163 assert_eq!(166 assert_eq!(164 TemplateModule::refungible_item_id(collection_id, 1).const_data,167 item.const_data,165 data.const_data168 data.const_data166 );169 );167 assert_eq!(170 assert_eq!(168 TemplateModule::refungible_item_id(collection_id, 1).variable_data,171 item.variable_data,169 data.variable_data172 data.variable_data170 );173 );171 assert_eq!(174 assert_eq!(172 TemplateModule::refungible_item_id(collection_id, 1).owner[0],175 item.owner[0],173 Ownership {176 Ownership {174 owner: 1,177 owner: 1,175 fraction: 1023178 fraction: 1023197 ));200 ));198 for (index, data) in items_data.iter().enumerate() {201 for (index, data) in items_data.iter().enumerate() {199202200 let item = TemplateModule::refungible_item_id(1, (index + 1) as TokenId);203 let item = TemplateModule::refungible_item_id(1, (index + 1) as TokenId).unwrap();201 assert_eq!(item.const_data.to_vec(), data.const_data);204 assert_eq!(item.const_data.to_vec(), data.const_data);202 assert_eq!(item.variable_data.to_vec(), data.variable_data);205 assert_eq!(item.variable_data.to_vec(), data.variable_data);203 assert_eq!(206 assert_eq!(299302300 let origin1 = Origin::signed(1);303 let origin1 = Origin::signed(1);301 let origin2 = Origin::signed(2);304 let origin2 = Origin::signed(2);305 {306 let item = TemplateModule::refungible_item_id(collection_id, 1).unwrap();302 assert_eq!(307 assert_eq!(303 TemplateModule::refungible_item_id(collection_id, 1).const_data,308 item.const_data,304 data.const_data309 data.const_data305 );310 );306 assert_eq!(311 assert_eq!(307 TemplateModule::refungible_item_id(collection_id, 1).variable_data,312 item.variable_data,308 data.variable_data313 data.variable_data309 );314 );310 assert_eq!(315 assert_eq!(311 TemplateModule::refungible_item_id(collection_id, 1).owner[0],316 item.owner[0],312 Ownership {317 Ownership {313 owner: 1,318 owner: 1,314 fraction: 1023319 fraction: 1023315 }320 }316 );321 );322 }317 assert_eq!(TemplateModule::balance_count(1, 1), 1023);323 assert_eq!(TemplateModule::balance_count(1, 1), 1023);318 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);324 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);319325320 // change owner scenario326 // change owner scenario321 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1023));327 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1023));322 assert_eq!(328 assert_eq!(323 TemplateModule::refungible_item_id(1, 1).owner[0],329 TemplateModule::refungible_item_id(1, 1).unwrap().owner[0],324 Ownership {330 Ownership {325 owner: 2,331 owner: 2,326 fraction: 1023332 fraction: 1023333339334 // split item scenario340 // split item scenario335 assert_ok!(TemplateModule::transfer(origin2.clone(), 3, 1, 1, 500));341 assert_ok!(TemplateModule::transfer(origin2.clone(), 3, 1, 1, 500));342 {343 let item = TemplateModule::refungible_item_id(1, 1).unwrap();336 assert_eq!(344 assert_eq!(337 TemplateModule::refungible_item_id(1, 1).owner[0],345 item.owner[0],338 Ownership {346 Ownership {339 owner: 2,347 owner: 2,340 fraction: 523348 fraction: 523341 }349 }342 );350 );343 assert_eq!(351 assert_eq!(344 TemplateModule::refungible_item_id(1, 1).owner[1],352 item.owner[1],345 Ownership {353 Ownership {346 owner: 3,354 owner: 3,347 fraction: 500355 fraction: 500348 }356 }349 );357 );358 }350 assert_eq!(TemplateModule::balance_count(1, 2), 523);359 assert_eq!(TemplateModule::balance_count(1, 2), 523);351 assert_eq!(TemplateModule::balance_count(1, 3), 500);360 assert_eq!(TemplateModule::balance_count(1, 3), 500);352 assert_eq!(TemplateModule::address_tokens(1, 2), [1]);361 assert_eq!(TemplateModule::address_tokens(1, 2), [1]);353 assert_eq!(TemplateModule::address_tokens(1, 3), [1]);362 assert_eq!(TemplateModule::address_tokens(1, 3), [1]);354363355 // split item and new owner has account scenario364 // split item and new owner has account scenario356 assert_ok!(TemplateModule::transfer(origin2.clone(), 3, 1, 1, 200));365 assert_ok!(TemplateModule::transfer(origin2.clone(), 3, 1, 1, 200));366 {367 let item = TemplateModule::refungible_item_id(1, 1).unwrap();357 assert_eq!(368 assert_eq!(358 TemplateModule::refungible_item_id(1, 1).owner[0],369 item.owner[0],359 Ownership {370 Ownership {360 owner: 2,371 owner: 2,361 fraction: 323372 fraction: 323362 }373 }363 );374 );364 assert_eq!(375 assert_eq!(365 TemplateModule::refungible_item_id(1, 1).owner[1],376 item.owner[1],366 Ownership {377 Ownership {367 owner: 3,378 owner: 3,368 fraction: 700379 fraction: 700369 }380 }370 );381 );382 }371 assert_eq!(TemplateModule::balance_count(1, 2), 323);383 assert_eq!(TemplateModule::balance_count(1, 2), 323);372 assert_eq!(TemplateModule::balance_count(1, 3), 700);384 assert_eq!(TemplateModule::balance_count(1, 3), 700);373 assert_eq!(TemplateModule::address_tokens(1, 2), [1]);385 assert_eq!(TemplateModule::address_tokens(1, 2), [1]);390 let origin1 = Origin::signed(1);402 let origin1 = Origin::signed(1);391 // default scenario403 // default scenario392 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1000));404 assert_ok!(TemplateModule::transfer(origin1.clone(), 2, 1, 1, 1000));393 assert_eq!(TemplateModule::nft_item_id(1, 1).owner, 2);405 assert_eq!(TemplateModule::nft_item_id(1, 1).unwrap().owner, 2);394 assert_eq!(TemplateModule::balance_count(1, 1), 0);406 assert_eq!(TemplateModule::balance_count(1, 1), 0);395 assert_eq!(TemplateModule::balance_count(1, 2), 1);407 assert_eq!(TemplateModule::balance_count(1, 2), 1);396 // assert_eq!(TemplateModule::address_tokens(1, 1), []);408 // assert_eq!(TemplateModule::address_tokens(1, 1), []);456 let data = default_nft_data();468 let data = default_nft_data();457 create_test_item(collection_id, &data.clone().into());469 create_test_item(collection_id, &data.clone().into());458470459 assert_eq!(TemplateModule::nft_item_id(1, 1).const_data, data.const_data);471 assert_eq!(TemplateModule::nft_item_id(1, 1).unwrap().const_data, data.const_data);460 assert_eq!(TemplateModule::balance_count(1, 1), 1);472 assert_eq!(TemplateModule::balance_count(1, 1), 1);461 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);473 assert_eq!(TemplateModule::address_tokens(1, 1), [1]);462474807 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 1);819 assert_eq!(TemplateModule::balance_count(nft_collection_id, 1), 1);808 assert_eq!(TemplateModule::balance_count(fungible_collection_id, 1), 5);820 assert_eq!(TemplateModule::balance_count(fungible_collection_id, 1), 5);809 assert_eq!(TemplateModule::balance_count(re_fungible_collection_id, 1), 1023);821 assert_eq!(TemplateModule::balance_count(re_fungible_collection_id, 1), 1023);810 assert_eq!(TemplateModule::nft_item_id(nft_collection_id, 1).owner, 1);822 assert_eq!(TemplateModule::nft_item_id(nft_collection_id, 1).unwrap().owner, 1);811 assert_eq!(TemplateModule::fungible_item_id(fungible_collection_id, 1).value, 5);823 assert_eq!(TemplateModule::fungible_item_id(fungible_collection_id, 1).value, 5);812 assert_eq!(TemplateModule::refungible_item_id(re_fungible_collection_id, 1).owner[0].owner, 1);824 assert_eq!(TemplateModule::refungible_item_id(re_fungible_collection_id, 1).unwrap().owner[0].owner, 1);813 });825 });814}826}8158271876 let variable_data = b"test set_variable_meta_data method.".to_vec();1888 let variable_data = b"test set_variable_meta_data method.".to_vec();1877 assert_ok!(TemplateModule::set_variable_meta_data(origin1, collection_id, 1, variable_data.clone()));1889 assert_ok!(TemplateModule::set_variable_meta_data(origin1, collection_id, 1, variable_data.clone()));187818901879 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).variable_data, variable_data);1891 assert_eq!(TemplateModule::nft_item_id(collection_id, 1).unwrap().variable_data, variable_data);1880 });1892 });1881}1893}188218941895 let variable_data = b"test set_variable_meta_data method.".to_vec();1907 let variable_data = b"test set_variable_meta_data method.".to_vec();1896 assert_ok!(TemplateModule::set_variable_meta_data(origin1, collection_id, 1, variable_data.clone()));1908 assert_ok!(TemplateModule::set_variable_meta_data(origin1, collection_id, 1, variable_data.clone()));189719091898 assert_eq!(TemplateModule::refungible_item_id(collection_id, 1).variable_data, variable_data);1910 assert_eq!(TemplateModule::refungible_item_id(collection_id, 1).unwrap().variable_data, variable_data);1899 });1911 });1900}1912}19011913