Browse Source

substrate v2: fix mocks and tests governance and storage

Mokhtar Naamani 5 years ago
parent
commit
ead8d20955
4 changed files with 76 additions and 57 deletions
  1. 4 5
      src/governance/mock.rs
  2. 26 24
      src/governance/proposals.rs
  3. 27 5
      src/storage/data_object_type_registry.rs
  4. 19 23
      src/storage/mock.rs

+ 4 - 5
src/governance/mock.rs

@@ -122,12 +122,11 @@ impl GovernanceCurrency for Test {
 // This function basically just builds a genesis storage key/value store according to
 // our desired mockup.
 pub fn initial_test_ext() -> runtime_io::TestExternalities<Blake2Hasher> {
-    let t = system::GenesisConfig::<Test>::default()
-        .build_storage()
-        .unwrap()
-        .0;
+    let t = system::GenesisConfig::default()
+        .build_storage::<Test>()
+        .unwrap();
 
-    runtime_io::TestExternalities::new(t)
+    t.into()
 }
 
 pub type Election = election::Module<Test>;

+ 26 - 24
src/governance/proposals.rs

@@ -561,8 +561,7 @@ mod tests {
     // or public keys. `u64` is used as the `AccountId` and no `Signature`s are requried.
     use runtime_primitives::{
         testing::Header,
-        traits::{BlakeTwo256, Convert, IdentityLookup},
-        weights::Weight,
+        traits::{BlakeTwo256, IdentityLookup},
         BuildStorage, Perbill,
     };
     use srml_support::*;
@@ -698,17 +697,14 @@ mod tests {
     // This function basically just builds a genesis storage key/value store according to
     // our desired mockup.
     fn new_test_ext() -> runtime_io::TestExternalities<Blake2Hasher> {
-        let mut t = system::GenesisConfig::<Test>::default()
-            .build_storage()
-            .unwrap()
-            .0;
+        let mut t = system::GenesisConfig::default()
+            .build_storage::<Test>()
+            .unwrap();
+
         // We use default for brevity, but you can configure as desired if needed.
-        t.extend(
-            balances::GenesisConfig::<Test>::default()
-                .build_storage()
-                .unwrap()
-                .0,
-        );
+        balances::GenesisConfig::<Test>::default()
+            .assimilate_storage(&mut t)
+            .unwrap();
 
         let council_mock: council::Seats<u64, u64> = ALL_COUNCILORS
             .iter()
@@ -719,15 +715,12 @@ mod tests {
             })
             .collect();
 
-        t.extend(
-            council::GenesisConfig::<Test> {
-                active_council: council_mock,
-                term_ends_at: 0,
-            }
-            .build_storage()
-            .unwrap()
-            .0,
-        );
+        council::GenesisConfig::<Test> {
+            active_council: council_mock,
+            term_ends_at: 0,
+        }
+        .assimilate_storage(&mut t)
+        .unwrap();
 
         // t.extend(GenesisConfig::<Test>{
         //     // Here we can override defaults.
@@ -808,9 +801,18 @@ mod tests {
     fn check_default_values() {
         with_externalities(&mut new_test_ext(), || {
             assert_eq!(Proposals::approval_quorum(), DEFAULT_APPROVAL_QUORUM);
-            assert_eq!(Proposals::min_stake(), DEFAULT_MIN_STAKE);
-            assert_eq!(Proposals::cancellation_fee(), DEFAULT_CANCELLATION_FEE);
-            assert_eq!(Proposals::rejection_fee(), DEFAULT_REJECTION_FEE);
+            assert_eq!(
+                Proposals::min_stake(),
+                BalanceOf::<Test>::from(DEFAULT_MIN_STAKE)
+            );
+            assert_eq!(
+                Proposals::cancellation_fee(),
+                BalanceOf::<Test>::from(DEFAULT_CANCELLATION_FEE)
+            );
+            assert_eq!(
+                Proposals::rejection_fee(),
+                BalanceOf::<Test>::from(DEFAULT_REJECTION_FEE)
+            );
             assert_eq!(Proposals::name_max_len(), DEFAULT_NAME_MAX_LEN);
             assert_eq!(
                 Proposals::description_max_len(),

+ 27 - 5
src/storage/data_object_type_registry.rs

@@ -179,7 +179,10 @@ mod tests {
                 description: "foo".as_bytes().to_vec(),
                 active: false,
             };
-            let res = TestDataObjectTypeRegistry::register_data_object_type(data);
+            let res = TestDataObjectTypeRegistry::register_data_object_type(
+                system::RawOrigin::Root.into(),
+                data,
+            );
             assert!(res.is_ok());
         });
     }
@@ -192,7 +195,10 @@ mod tests {
                 description: "foo".as_bytes().to_vec(),
                 active: false,
             };
-            let id_res = TestDataObjectTypeRegistry::register_data_object_type(data);
+            let id_res = TestDataObjectTypeRegistry::register_data_object_type(
+                system::RawOrigin::Root.into(),
+                data,
+            );
             assert!(id_res.is_ok());
 
             let dot_id = match System::events().last().unwrap().event {
@@ -209,7 +215,11 @@ mod tests {
                 description: "bar".as_bytes().to_vec(),
                 active: false,
             };
-            let res = TestDataObjectTypeRegistry::update_data_object_type(dot_id + 1, updated1);
+            let res = TestDataObjectTypeRegistry::update_data_object_type(
+                system::RawOrigin::Root.into(),
+                dot_id + 1,
+                updated1,
+            );
             assert!(res.is_err());
 
             // Finally with an existing ID, it should work.
@@ -217,7 +227,11 @@ mod tests {
                 description: "bar".as_bytes().to_vec(),
                 active: false,
             };
-            let res = TestDataObjectTypeRegistry::update_data_object_type(dot_id, updated3);
+            let res = TestDataObjectTypeRegistry::update_data_object_type(
+                system::RawOrigin::Root.into(),
+                dot_id,
+                updated3,
+            );
             assert!(res.is_ok());
             assert_eq!(
                 *System::events().last().unwrap(),
@@ -226,6 +240,7 @@ mod tests {
                     event: MetaEvent::data_object_type_registry(
                         data_object_type_registry::RawEvent::DataObjectTypeUpdated(dot_id)
                     ),
+                    topics: vec![],
                 }
             );
         });
@@ -239,7 +254,10 @@ mod tests {
                 description: "foo".as_bytes().to_vec(),
                 active: false,
             };
-            let id_res = TestDataObjectTypeRegistry::register_data_object_type(data);
+            let id_res = TestDataObjectTypeRegistry::register_data_object_type(
+                system::RawOrigin::Root.into(),
+                data,
+            );
             assert!(id_res.is_ok());
             assert_eq!(
                 *System::events().last().unwrap(),
@@ -250,6 +268,7 @@ mod tests {
                             TEST_FIRST_DATA_OBJECT_TYPE_ID
                         )
                     ),
+                    topics: vec![],
                 }
             );
 
@@ -261,6 +280,7 @@ mod tests {
 
             // Now activate the data object type
             let res = TestDataObjectTypeRegistry::activate_data_object_type(
+                system::RawOrigin::Root.into(),
                 TEST_FIRST_DATA_OBJECT_TYPE_ID,
             );
             assert!(res.is_ok());
@@ -273,6 +293,7 @@ mod tests {
                             TEST_FIRST_DATA_OBJECT_TYPE_ID
                         )
                     ),
+                    topics: vec![],
                 }
             );
 
@@ -284,6 +305,7 @@ mod tests {
 
             // Deactivate again.
             let res = TestDataObjectTypeRegistry::deactivate_data_object_type(
+                system::RawOrigin::Root.into(),
                 TEST_FIRST_DATA_OBJECT_TYPE_ID,
             );
             assert!(res.is_ok());

+ 19 - 23
src/storage/mock.rs

@@ -250,28 +250,21 @@ impl ExtBuilder {
         self
     }
     pub fn build(self) -> runtime_io::TestExternalities<Blake2Hasher> {
-        let mut t = system::GenesisConfig::<Test>::default()
-            .build_storage()
-            .unwrap()
-            .0;
-
-        t.extend(
-            data_object_type_registry::GenesisConfig::<Test> {
-                first_data_object_type_id: self.first_data_object_type_id,
-            }
-            .build_storage()
-            .unwrap()
-            .0,
-        );
-
-        t.extend(
-            data_object_storage_registry::GenesisConfig::<Test> {
-                first_relationship_id: self.first_relationship_id,
-            }
-            .build_storage()
-            .unwrap()
-            .0,
-        );
+        let mut t = system::GenesisConfig::default()
+            .build_storage::<Test>()
+            .unwrap();
+
+        data_object_type_registry::GenesisConfig::<Test> {
+            first_data_object_type_id: self.first_data_object_type_id,
+        }
+        .assimilate_storage(&mut t)
+        .unwrap();
+
+        data_object_storage_registry::GenesisConfig::<Test> {
+            first_relationship_id: self.first_relationship_id,
+        }
+        .assimilate_storage(&mut t)
+        .unwrap();
 
         t.into()
     }
@@ -295,7 +288,10 @@ pub fn with_default_mock_builder<R, F: FnOnce() -> R>(f: F) -> R {
             .build(),
         || {
             let roles: Vec<actors::Role> = vec![actors::Role::Storage];
-            assert!(TestActors::set_available_roles(roles).is_ok(), "");
+            assert!(
+                TestActors::set_available_roles(system::RawOrigin::Root.into(), roles).is_ok(),
+                ""
+            );
 
             f()
         },