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

difftreelog

fix unit tests

Daniel Shiposha2022-05-30parent: #6a61262.patch.diff
in: master

2 files changed

modifiedruntime/tests/src/lib.rsdiffbeforeafterboth
58 Fungible: pallet_fungible::{Pallet, Storage},58 Fungible: pallet_fungible::{Pallet, Storage},
59 Refungible: pallet_refungible::{Pallet, Storage},59 Refungible: pallet_refungible::{Pallet, Storage},
60 Nonfungible: pallet_nonfungible::{Pallet, Storage},60 Nonfungible: pallet_nonfungible::{Pallet, Storage},
61 EVM: pallet_evm::{Pallet, Config, Call, Storage, Event<T>},
61 }62 }
62);63);
6364
modifiedruntime/tests/src/tests.rsdiffbeforeafterboth
19use up_data_structs::{19use up_data_structs::{
20 COLLECTION_NUMBER_LIMIT, CollectionId, CreateItemData, CreateFungibleData, CreateNftData,20 COLLECTION_NUMBER_LIMIT, CollectionId, CreateItemData, CreateFungibleData, CreateNftData,
21 CreateReFungibleData, MAX_DECIMAL_POINTS, COLLECTION_ADMINS_LIMIT, TokenId,21 CreateReFungibleData, MAX_DECIMAL_POINTS, COLLECTION_ADMINS_LIMIT, TokenId,
22 MAX_TOKEN_OWNERSHIP, CreateCollectionData, CollectionField, SchemaVersion, CollectionMode,22 MAX_TOKEN_OWNERSHIP, CreateCollectionData, CollectionMode,
23 AccessMode,23 AccessMode, CollectionPermissions, PropertyKeyPermission, PropertyPermission,
24 Property, CollectionPropertiesVec, CollectionPropertiesPermissionsVec,
24};25};
25use frame_support::{assert_noop, assert_ok, assert_err};26use frame_support::{assert_noop, assert_ok, assert_err};
26use sp_std::convert::TryInto;27use sp_std::convert::TryInto;
4647
47fn default_nft_data() -> CreateNftData {48fn default_nft_data() -> CreateNftData {
48 CreateNftData {49 CreateNftData {
49 const_data: vec![1, 2, 3].try_into().unwrap(),50 properties: vec![
50 properties: vec![].try_into().unwrap(),51 Property {
52 key: b"test-prop".to_vec().try_into().unwrap(),
53 value: b"test-nft-prop".to_vec().try_into().unwrap(),
54 },
55 ].try_into().unwrap(),
51 }56 }
52}57}
72 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();77 let col_name1: Vec<u16> = "Test1\0".encode_utf16().collect::<Vec<u16>>();
73 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();78 let col_desc1: Vec<u16> = "TestDescription1\0".encode_utf16().collect::<Vec<u16>>();
74 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();79 let token_prefix1: Vec<u8> = b"token_prefix1\0".to_vec();
80 let token_property_permissions: CollectionPropertiesPermissionsVec = vec![
81 PropertyKeyPermission {
82 key: b"test-prop".to_vec().try_into().unwrap(),
83 permission: PropertyPermission {
84 mutable: true,
85 collection_admin: false,
86 token_owner: true,
87 },
88 },
89 ].try_into().unwrap();
90 let properties: CollectionPropertiesVec = vec![
91 Property {
92 key: b"test-collection-prop".to_vec().try_into().unwrap(),
93 value: b"test-collection-value".to_vec().try_into().unwrap(),
94 }
95 ].try_into().unwrap();
7596
76 let data: CreateCollectionData<u64> = CreateCollectionData {97 let data: CreateCollectionData<u64> = CreateCollectionData {
77 name: col_name1.try_into().unwrap(),98 name: col_name1.try_into().unwrap(),
78 description: col_desc1.try_into().unwrap(),99 description: col_desc1.try_into().unwrap(),
79 token_prefix: token_prefix1.try_into().unwrap(),100 token_prefix: token_prefix1.try_into().unwrap(),
80 mode: mode.clone(),101 mode: mode.clone(),
102 token_property_permissions: token_property_permissions.clone(),
103 properties: properties.clone(),
81 ..Default::default()104 ..Default::default()
82 };105 };
83106
113 .token_prefix,136 .token_prefix,
114 saved_prefix137 saved_prefix
115 );138 );
139 assert_eq!(
140 get_collection_property_permissions(id).as_slice(),
141 token_property_permissions.as_slice()
142 );
143 assert_eq!(
144 get_collection_properties(id).as_slice(),
145 properties.as_slice()
146 );
116 id147 id
117}148}
149
150fn get_collection_property_permissions(collection_id: CollectionId) -> Vec<PropertyKeyPermission> {
151 <pallet_common::Pallet<Test>>::property_permissions(collection_id)
152 .into_iter()
153 .map(|(key, permission)| PropertyKeyPermission {
154 key,
155 permission,
156 })
157 .collect()
158}
159
160fn get_collection_properties(collection_id: CollectionId) -> Vec<Property> {
161 <pallet_common::Pallet<Test>>::collection_properties(collection_id)
162 .into_iter()
163 .map(|(key, value)| Property {
164 key,
165 value,
166 })
167 .collect()
168}
169
170fn get_token_properties(collection_id: CollectionId, token_id: TokenId) -> Vec<Property> {
171 <pallet_nonfungible::Pallet<Test>>::token_properties((collection_id, token_id))
172 .into_iter()
173 .map(|(key, value)| Property {
174 key,
175 value,
176 })
177 .collect()
178}
118179
119fn create_test_collection(mode: &CollectionMode, id: CollectionId) -> CollectionId {180fn create_test_collection(mode: &CollectionMode, id: CollectionId) -> CollectionId {
120 create_test_collection_for_owner(&mode, 1, id)181 create_test_collection_for_owner(&mode, 1, id)
137// Use cases tests region198// Use cases tests region
138// #region199// #region
139
140#[test]
141fn set_version_schema() {
142 new_test_ext().execute_with(|| {
143 let origin1 = Origin::signed(1);
144 let collection_id = create_test_collection(&CollectionMode::NFT, CollectionId(1));
145
146 assert_ok!(Unique::set_schema_version(
147 origin1,
148 collection_id,
149 SchemaVersion::Unique
150 ));
151 assert_eq!(
152 <pallet_common::CollectionById<Test>>::get(collection_id)
153 .unwrap()
154 .schema_version,
155 SchemaVersion::Unique
156 );
157 });
158}
159200
160#[test]201#[test]
161fn check_not_sufficient_founds() {202fn check_not_sufficient_founds() {
212 let data = default_nft_data();253 let data = default_nft_data();
213 create_test_item(collection_id, &data.clone().into());254 create_test_item(collection_id, &data.clone().into());
214255
215 let item = <pallet_nonfungible::TokenData<Test>>::get((collection_id, 1)).unwrap();
216 assert_eq!(item.const_data, data.const_data.into_inner());256 assert_eq!(
257 get_token_properties(collection_id, TokenId(1)).as_slice(),
258 data.properties.as_slice(),
259 );
217 });260 });
218}261}
239 .collect()282 .collect()
240 ));283 ));
241 for (index, data) in items_data.into_iter().enumerate() {284 for (index, data) in items_data.into_iter().enumerate() {
242 let item = <pallet_nonfungible::TokenData<Test>>::get((285 assert_eq!(
243 CollectionId(1),286 get_token_properties(CollectionId(1), TokenId(index as u32 + 1)).as_slice(),
244 TokenId((index + 1) as u32),287 data.properties.as_slice()
245 ))288 );
246 .unwrap();
247 assert_eq!(item.const_data.to_vec(), data.const_data.into_inner());
248 }289 }
249 });290 });
250}291}
700 // Create NFT 1 for account 1741 // Create NFT 1 for account 1
701 let data = default_nft_data();742 let data = default_nft_data();
702 create_test_item(collection_id, &data.clone().into());743 create_test_item(collection_id, &data.clone().into());
703 assert_eq!(
704 &<pallet_nonfungible::TokenData<Test>>::get((collection_id, TokenId(1)))
705 .unwrap()
706 .const_data,
707 &data.const_data.into_inner()
708 );
709 assert_eq!(744 assert_eq!(
710 <pallet_nonfungible::AccountBalance<Test>>::get((collection_id, account(1))),745 <pallet_nonfungible::AccountBalance<Test>>::get((collection_id, account(1))),
711 1746 1
716 );751 );
717752
718 // Allow allow-list users to mint and add accounts 1, 2, and 3 to allow-list753 // Allow allow-list users to mint and add accounts 1, 2, and 3 to allow-list
719 assert_ok!(Unique::set_mint_permission(
720 origin1.clone(),
721 CollectionId(1),
722 true
723 ));
724 assert_ok!(Unique::set_public_access_mode(754 assert_ok!(Unique::set_collection_permissions(
725 origin1.clone(),755 origin1.clone(),
726 CollectionId(1),756 CollectionId(1),
757 CollectionPermissions {
758 mint_mode: Some(true),
727 AccessMode::AllowList759 access: Some(AccessMode::AllowList),
760 nesting: None,
761 }
728 ));762 ));
729 assert_ok!(Unique::add_to_allow_list(763 assert_ok!(Unique::add_to_allow_list(
730 origin1.clone(),764 origin1.clone(),
796 );830 );
797831
798 // Allow public minting, enable allow-list and add accounts 1, 2, 3 to allow-list832 // Allow public minting, enable allow-list and add accounts 1, 2, 3 to allow-list
799 assert_ok!(Unique::set_mint_permission(
800 origin1.clone(),
801 CollectionId(1),
802 true
803 ));
804 assert_ok!(Unique::set_public_access_mode(833 assert_ok!(Unique::set_collection_permissions(
805 origin1.clone(),834 origin1.clone(),
806 CollectionId(1),835 CollectionId(1),
836 CollectionPermissions {
837 mint_mode: Some(true),
807 AccessMode::AllowList838 access: Some(AccessMode::AllowList),
839 nesting: None,
840 }
808 ));841 ));
809 assert_ok!(Unique::add_to_allow_list(842 assert_ok!(Unique::add_to_allow_list(
810 origin1.clone(),843 origin1.clone(),
896 let origin1 = Origin::signed(1);929 let origin1 = Origin::signed(1);
897 let origin2 = Origin::signed(2);930 let origin2 = Origin::signed(2);
898931
899 assert_ok!(Unique::set_mint_permission(
900 origin1.clone(),
901 CollectionId(1),
902 true
903 ));
904 assert_ok!(Unique::set_public_access_mode(932 assert_ok!(Unique::set_collection_permissions(
905 origin1.clone(),933 origin1.clone(),
906 CollectionId(1),934 CollectionId(1),
935 CollectionPermissions {
936 mint_mode: Some(true),
907 AccessMode::AllowList937 access: Some(AccessMode::AllowList),
938 nesting: None,
939 }
908 ));940 ));
909 assert_ok!(Unique::add_to_allow_list(941 assert_ok!(Unique::add_to_allow_list(
910 origin1.clone(),942 origin1.clone(),
1146 let collection_id = create_test_collection(&CollectionMode::ReFungible, CollectionId(1));1178 let collection_id = create_test_collection(&CollectionMode::ReFungible, CollectionId(1));
1147 let origin1 = Origin::signed(1);1179 let origin1 = Origin::signed(1);
11481180
1149 assert_ok!(Unique::set_mint_permission(
1150 origin1.clone(),
1151 collection_id,
1152 true
1153 ));
1154 assert_ok!(Unique::set_public_access_mode(1181 assert_ok!(Unique::set_collection_permissions(
1155 origin1.clone(),1182 origin1.clone(),
1156 collection_id,1183 collection_id,
1184 CollectionPermissions {
1185 mint_mode: Some(true),
1157 AccessMode::AllowList1186 access: Some(AccessMode::AllowList),
1187 nesting: None,
1188 }
1158 ));1189 ));
1159 assert_ok!(Unique::add_to_allow_list(1190 assert_ok!(Unique::add_to_allow_list(
1160 origin1.clone(),1191 origin1.clone(),
1392 account(2)1423 account(2)
1393 );1424 );
13941425
1395 assert_ok!(Unique::set_mint_permission(
1396 origin1.clone(),
1397 CollectionId(1),
1398 true
1399 ));
1400 assert_ok!(Unique::set_public_access_mode(1426 assert_ok!(Unique::set_collection_permissions(
1401 origin1.clone(),1427 origin1.clone(),
1402 CollectionId(1),1428 CollectionId(1),
1429 CollectionPermissions {
1430 mint_mode: Some(true),
1403 AccessMode::AllowList1431 access: Some(AccessMode::AllowList),
1432 nesting: None,
1433 }
1404 ));1434 ));
1405 assert_ok!(Unique::add_to_allow_list(1435 assert_ok!(Unique::add_to_allow_list(
1406 origin1.clone(),1436 origin1.clone(),
1722 let data = default_nft_data();1752 let data = default_nft_data();
1723 create_test_item(collection_id, &data.into());1753 create_test_item(collection_id, &data.into());
17241754
1725 assert_ok!(Unique::set_public_access_mode(1755 assert_ok!(Unique::set_collection_permissions(
1726 origin1.clone(),1756 origin1.clone(),
1727 collection_id,1757 collection_id,
1758 CollectionPermissions {
1759 mint_mode: None,
1728 AccessMode::AllowList1760 access: Some(AccessMode::AllowList),
1761 nesting: None,
1762 }
1729 ));1763 ));
1730 assert_ok!(Unique::add_to_allow_list(1764 assert_ok!(Unique::add_to_allow_list(
1731 origin1.clone(),1765 origin1.clone(),
1750 let data = default_nft_data();1784 let data = default_nft_data();
1751 create_test_item(collection_id, &data.into());1785 create_test_item(collection_id, &data.into());
17521786
1753 assert_ok!(Unique::set_public_access_mode(1787 assert_ok!(Unique::set_collection_permissions(
1754 origin1.clone(),1788 origin1.clone(),
1755 collection_id,1789 collection_id,
1790 CollectionPermissions {
1791 mint_mode: None,
1756 AccessMode::AllowList1792 access: Some(AccessMode::AllowList),
1793 nesting: None,
1794 }
1757 ));1795 ));
1758 assert_ok!(Unique::add_to_allow_list(1796 assert_ok!(Unique::add_to_allow_list(
1759 origin1.clone(),1797 origin1.clone(),
1811 let data = default_nft_data();1849 let data = default_nft_data();
1812 create_test_item(collection_id, &data.into());1850 create_test_item(collection_id, &data.into());
18131851
1814 assert_ok!(Unique::set_public_access_mode(1852 assert_ok!(Unique::set_collection_permissions(
1815 origin1.clone(),1853 origin1.clone(),
1816 collection_id,1854 collection_id,
1855 CollectionPermissions {
1856 mint_mode: None,
1817 AccessMode::AllowList1857 access: Some(AccessMode::AllowList),
1858 nesting: None,
1859 }
1818 ));1860 ));
1819 assert_ok!(Unique::add_to_allow_list(1861 assert_ok!(Unique::add_to_allow_list(
1820 origin1.clone(),1862 origin1.clone(),
1840 let data = default_nft_data();1882 let data = default_nft_data();
1841 create_test_item(collection_id, &data.into());1883 create_test_item(collection_id, &data.into());
18421884
1843 assert_ok!(Unique::set_public_access_mode(1885 assert_ok!(Unique::set_collection_permissions(
1844 origin1.clone(),1886 origin1.clone(),
1845 collection_id,1887 collection_id,
1888 CollectionPermissions {
1889 mint_mode: None,
1846 AccessMode::AllowList1890 access: Some(AccessMode::AllowList),
1891 nesting: None,
1892 }
1847 ));1893 ));
1848 assert_ok!(Unique::add_to_allow_list(1894 assert_ok!(Unique::add_to_allow_list(
1849 origin1.clone(),1895 origin1.clone(),
1901 let data = default_nft_data();1947 let data = default_nft_data();
1902 create_test_item(collection_id, &data.into());1948 create_test_item(collection_id, &data.into());
19031949
1904 assert_ok!(Unique::set_public_access_mode(1950 assert_ok!(Unique::set_collection_permissions(
1905 origin1.clone(),1951 origin1.clone(),
1906 collection_id,1952 collection_id,
1953 CollectionPermissions {
1954 mint_mode: None,
1907 AccessMode::AllowList1955 access: Some(AccessMode::AllowList),
1956 nesting: None,
1957 }
1908 ));1958 ));
1909 assert_noop!(1959 assert_noop!(
1910 Unique::burn_item(origin1.clone(), CollectionId(1), TokenId(1), 1).map_err(|e| e.error),1960 Unique::burn_item(origin1.clone(), CollectionId(1), TokenId(1), 1).map_err(|e| e.error),
1924 let data = default_nft_data();1974 let data = default_nft_data();
1925 create_test_item(collection_id, &data.into());1975 create_test_item(collection_id, &data.into());
19261976
1927 assert_ok!(Unique::set_public_access_mode(1977 assert_ok!(Unique::set_collection_permissions(
1928 origin1.clone(),1978 origin1.clone(),
1929 collection_id,1979 collection_id,
1980 CollectionPermissions {
1981 mint_mode: None,
1930 AccessMode::AllowList1982 access: Some(AccessMode::AllowList),
1983 nesting: None,
1984 }
1931 ));1985 ));
19321986
1933 // do approve1987 // do approve
19512005
1952 let origin1 = Origin::signed(1);2006 let origin1 = Origin::signed(1);
19532007
1954 assert_ok!(Unique::set_public_access_mode(2008 assert_ok!(Unique::set_collection_permissions(
1955 origin1.clone(),2009 origin1.clone(),
1956 collection_id,2010 collection_id,
2011 CollectionPermissions {
2012 mint_mode: None,
1957 AccessMode::AllowList2013 access: Some(AccessMode::AllowList),
2014 nesting: None,
2015 }
1958 ));2016 ));
1959 assert_ok!(Unique::add_to_allow_list(2017 assert_ok!(Unique::add_to_allow_list(
1960 origin1.clone(),2018 origin1.clone(),
1989 let origin1 = Origin::signed(1);2047 let origin1 = Origin::signed(1);
19902048
1991 // Toggle Allow List mode and add accounts 1 and 22049 // Toggle Allow List mode and add accounts 1 and 2
1992 assert_ok!(Unique::set_public_access_mode(2050 assert_ok!(Unique::set_collection_permissions(
1993 origin1.clone(),2051 origin1.clone(),
1994 collection_id,2052 collection_id,
2053 CollectionPermissions {
2054 mint_mode: None,
1995 AccessMode::AllowList2055 access: Some(AccessMode::AllowList),
2056 nesting: None,
2057 }
1996 ));2058 ));
1997 assert_ok!(Unique::add_to_allow_list(2059 assert_ok!(Unique::add_to_allow_list(
1998 origin1.clone(),2060 origin1.clone(),
2037 let collection_id = create_test_collection(&CollectionMode::NFT, CollectionId(1));2099 let collection_id = create_test_collection(&CollectionMode::NFT, CollectionId(1));
2038 let origin1 = Origin::signed(1);2100 let origin1 = Origin::signed(1);
20392101
2040 assert_ok!(Unique::set_public_access_mode(2102 assert_ok!(Unique::set_collection_permissions(
2041 origin1.clone(),2103 origin1.clone(),
2042 collection_id,2104 collection_id,
2105 CollectionPermissions {
2106 mint_mode: Some(false),
2043 AccessMode::AllowList2107 access: Some(AccessMode::AllowList),
2108 nesting: None,
2109 }
2044 ));2110 ));
2045 assert_ok!(Unique::set_mint_permission(origin1, collection_id, false));
20462111
2047 let data = default_nft_data();2112 let data = default_nft_data();
2048 create_test_item(collection_id, &data.into());2113 create_test_item(collection_id, &data.into());
2058 let origin1 = Origin::signed(1);2123 let origin1 = Origin::signed(1);
2059 let origin2 = Origin::signed(2);2124 let origin2 = Origin::signed(2);
20602125
2061 assert_ok!(Unique::set_public_access_mode(2126 assert_ok!(Unique::set_collection_permissions(
2062 origin1.clone(),2127 origin1.clone(),
2063 collection_id,2128 collection_id,
2129 CollectionPermissions {
2130 mint_mode: Some(false),
2064 AccessMode::AllowList2131 access: Some(AccessMode::AllowList),
2132 nesting: None,
2133 }
2065 ));2134 ));
2066 assert_ok!(Unique::set_mint_permission(
2067 origin1.clone(),
2068 collection_id,
2069 false
2070 ));
20712135
2072 assert_ok!(Unique::add_collection_admin(2136 assert_ok!(Unique::add_collection_admin(
2073 origin1,2137 origin1,
2093 let origin1 = Origin::signed(1);2157 let origin1 = Origin::signed(1);
2094 let origin2 = Origin::signed(2);2158 let origin2 = Origin::signed(2);
20952159
2096 assert_ok!(Unique::set_public_access_mode(2160 assert_ok!(Unique::set_collection_permissions(
2097 origin1.clone(),2161 origin1.clone(),
2098 collection_id,2162 collection_id,
2163 CollectionPermissions {
2164 mint_mode: Some(false),
2099 AccessMode::AllowList2165 access: Some(AccessMode::AllowList),
2166 nesting: None,
2167 }
2100 ));2168 ));
2101 assert_ok!(Unique::set_mint_permission(
2102 origin1.clone(),
2103 collection_id,
2104 false
2105 ));
2106 assert_ok!(Unique::add_to_allow_list(2169 assert_ok!(Unique::add_to_allow_list(
2107 origin1,2170 origin1,
2108 collection_id,2171 collection_id,
2131 let origin1 = Origin::signed(1);2194 let origin1 = Origin::signed(1);
2132 let origin2 = Origin::signed(2);2195 let origin2 = Origin::signed(2);
21332196
2134 assert_ok!(Unique::set_public_access_mode(2197 assert_ok!(Unique::set_collection_permissions(
2135 origin1.clone(),2198 origin1.clone(),
2136 collection_id,2199 collection_id,
2200 CollectionPermissions {
2201 mint_mode: Some(false),
2137 AccessMode::AllowList2202 access: Some(AccessMode::AllowList),
2203 nesting: None,
2204 }
2138 ));2205 ));
2139 assert_ok!(Unique::set_mint_permission(origin1, collection_id, false));
21402206
2141 assert_noop!(2207 assert_noop!(
2142 Unique::create_item(2208 Unique::create_item(
21592225
2160 let origin1 = Origin::signed(1);2226 let origin1 = Origin::signed(1);
21612227
2162 assert_ok!(Unique::set_public_access_mode(2228 assert_ok!(Unique::set_collection_permissions(
2163 origin1.clone(),2229 origin1.clone(),
2164 collection_id,2230 collection_id,
2231 CollectionPermissions {
2232 mint_mode: Some(true),
2165 AccessMode::AllowList2233 access: Some(AccessMode::AllowList),
2234 nesting: None,
2235 }
2166 ));2236 ));
2167 assert_ok!(Unique::set_mint_permission(origin1, collection_id, true));
21682237
2169 let data = default_nft_data();2238 let data = default_nft_data();
2170 create_test_item(collection_id, &data.into());2239 create_test_item(collection_id, &data.into());
2180 let origin1 = Origin::signed(1);2249 let origin1 = Origin::signed(1);
2181 let origin2 = Origin::signed(2);2250 let origin2 = Origin::signed(2);
21822251
2183 assert_ok!(Unique::set_public_access_mode(2252 assert_ok!(Unique::set_collection_permissions(
2184 origin1.clone(),2253 origin1.clone(),
2185 collection_id,2254 collection_id,
2255 CollectionPermissions {
2256 mint_mode: Some(true),
2186 AccessMode::AllowList2257 access: Some(AccessMode::AllowList),
2258 nesting: None,
2259 }
2187 ));2260 ));
2188 assert_ok!(Unique::set_mint_permission(
2189 origin1.clone(),
2190 collection_id,
2191 true
2192 ));
21932261
2194 assert_ok!(Unique::add_collection_admin(2262 assert_ok!(Unique::add_collection_admin(
2195 origin1,2263 origin1,
2215 let origin1 = Origin::signed(1);2283 let origin1 = Origin::signed(1);
2216 let origin2 = Origin::signed(2);2284 let origin2 = Origin::signed(2);
22172285
2218 assert_ok!(Unique::set_public_access_mode(2286 assert_ok!(Unique::set_collection_permissions(
2219 origin1.clone(),2287 origin1.clone(),
2220 collection_id,2288 collection_id,
2289 CollectionPermissions {
2290 mint_mode: Some(true),
2221 AccessMode::AllowList2291 access: Some(AccessMode::AllowList),
2292 nesting: None,
2293 }
2222 ));2294 ));
2223 assert_ok!(Unique::set_mint_permission(origin1, collection_id, true));
22242295
2225 assert_noop!(2296 assert_noop!(
2226 Unique::create_item(2297 Unique::create_item(
2244 let origin1 = Origin::signed(1);2315 let origin1 = Origin::signed(1);
2245 let origin2 = Origin::signed(2);2316 let origin2 = Origin::signed(2);
22462317
2247 assert_ok!(Unique::set_public_access_mode(2318 assert_ok!(Unique::set_collection_permissions(
2248 origin1.clone(),2319 origin1.clone(),
2249 collection_id,2320 collection_id,
2321 CollectionPermissions {
2322 mint_mode: Some(true),
2250 AccessMode::AllowList2323 access: Some(AccessMode::AllowList),
2324 nesting: None,
2325 }
2251 ));2326 ));
2252 assert_ok!(Unique::set_mint_permission(
2253 origin1.clone(),
2254 collection_id,
2255 true
2256 ));
2257 assert_ok!(Unique::add_to_allow_list(2327 assert_ok!(Unique::add_to_allow_list(
2258 origin1,2328 origin1,
2259 collection_id,2329 collection_id,
2528 )2598 )
2529 .is_err());2599 .is_err());
25302600
2531 assert_ok!(Unique::set_public_access_mode(2601 assert_ok!(Unique::set_collection_permissions(
2532 origin1.clone(),2602 origin1.clone(),
2533 collection_id,2603 collection_id,
2604 CollectionPermissions {
2605 mint_mode: Some(true),
2534 AccessMode::AllowList2606 access: Some(AccessMode::AllowList),
2607 nesting: None,
2608 }
2535 ));2609 ));
2536 assert_ok!(Unique::add_to_allow_list(2610 assert_ok!(Unique::add_to_allow_list(
2537 origin1.clone(),2611 origin1.clone(),
2538 collection_id,2612 collection_id,
2539 account2.clone()2613 account2.clone()
2540 ));2614 ));
2541 assert_ok!(Unique::set_mint_permission(
2542 origin1.clone(),
2543 collection_id,
2544 true
2545 ));
25462615
2547 assert_ok!(Unique::create_item(2616 assert_ok!(Unique::create_item(
2548 origin2,2617 origin2,