Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
22 commits
Select commit Hold shift + click to select a range
a7daebe
Rename MembersCreated to the NextMemberId
shamil-gadelshin May 25, 2020
8e01197
Remove members mod from the membership
shamil-gadelshin May 25, 2020
0055aaf
Rename Handles to the MemberIdByHandle in the membership
shamil-gadelshin May 27, 2020
04d5bd7
Rename Profile to Membership inte membership module
shamil-gadelshin May 27, 2020
69a81d4
Remove UserInfo - use its values as parameters in the memberhip module
shamil-gadelshin May 27, 2020
28469b7
Make membership storage fields private
shamil-gadelshin May 27, 2020
1331a84
Rename Memberships to the MembershipById
shamil-gadelshin May 27, 2020
cd252e0
Remove Option from MembershipById storage field
shamil-gadelshin May 27, 2020
ded12c0
Remove Option from the PaidMembershipTerms map
shamil-gadelshin May 27, 2020
459a325
Remove Option from ScreeningAuthority in the membership module
shamil-gadelshin May 27, 2020
41b552e
Fix comments
shamil-gadelshin May 28, 2020
05de019
Remove roles from the membership module
shamil-gadelshin May 28, 2020
3de78ff
Move Role from membership to roles module
shamil-gadelshin May 28, 2020
5518094
Refactor content working group
shamil-gadelshin Jun 1, 2020
295cf98
Apply rust fmt
shamil-gadelshin Jun 2, 2020
41b246f
Merge branch 'nicaea' into membership_refactoring
shamil-gadelshin Jul 14, 2020
ff57ab6
runtime: Refactor the code the code to support membership module chan…
shamil-gadelshin Jul 15, 2020
d83b401
runtime: Restore tests.
shamil-gadelshin Jul 15, 2020
f6d60b3
runtime: Remove ActorId type from the content working group.
shamil-gadelshin Jul 15, 2020
4c30a04
runtime: Remove role_types.
shamil-gadelshin Jul 20, 2020
6befceb
runtime: Remove the InitialMembersBalance.
shamil-gadelshin Jul 20, 2020
a392bed
runtime: Rename Membership and MemberhipOf to Renamed to MembershipOb…
shamil-gadelshin Jul 20, 2020
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions Cargo.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion node/src/chain_spec.rs
Original file line number Diff line number Diff line change
Expand Up @@ -255,7 +255,7 @@ pub fn testnet_genesis(
min_voting_stake: 1 * DOLLARS,
},
}),
members: Some(MembersConfig {
membership: Some(MembersConfig {
default_paid_membership_fee: 100u128,
members: vec![],
}),
Expand Down
2 changes: 1 addition & 1 deletion runtime-modules/content-working-group/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = 'substrate-content-working-group-module'
version = '1.0.1'
version = '1.1.0'
authors = ['Joystream contributors']
edition = '2018'

Expand Down
280 changes: 42 additions & 238 deletions runtime-modules/content-working-group/src/lib.rs

Large diffs are not rendered by default.

36 changes: 6 additions & 30 deletions runtime-modules/content-working-group/src/mock.rs
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#![cfg(test)]

pub use crate::*; // {self, Module, Trait, GenesisConfig};
pub use crate::*;
pub use srml_support::traits::Currency;
pub use system;

Expand All @@ -16,7 +16,7 @@ use srml_support::{impl_outer_event, impl_outer_origin, parameter_types};

pub use common::currency::GovernanceCurrency;
pub use hiring;
pub use membership::members;
pub use membership;
pub use minting;
pub use recurringrewards;
pub use stake;
Expand All @@ -36,7 +36,6 @@ parameter_types! {
pub const CreationFee: u32 = 0;
pub const TransactionBaseFee: u32 = 1;
pub const TransactionByteFee: u32 = 0;
pub const InitialMembersBalance: u64 = 2000;
pub const StakePoolId: [u8; 8] = *b"joystake";
}

Expand All @@ -55,7 +54,7 @@ mod lib {
impl_outer_event! {
pub enum TestEvent for Test {
versioned_store<T>,
members<T>,
membership<T>,
balances<T>,
lib<T>,
}
Expand Down Expand Up @@ -124,16 +123,6 @@ impl balances::Trait for Test {
type CreationFee = CreationFee;
}

/*
pub trait PrincipalIdChecker<T: Trait> {
fn account_can_act_as_principal(account: &T::AccountId, group: T::PrincipalId) -> bool;
}

pub trait CreateClassPermissionsChecker<T: Trait> {
fn account_can_create_class_permissions(account: &T::AccountId) -> bool;
}
*/

impl GovernanceCurrency for Test {
type Currency = Balances;
}
Expand Down Expand Up @@ -183,13 +172,12 @@ impl versioned_store_permissions::Trait for Test {
}

type TestMemberId = u64;
impl members::Trait for Test {
impl membership::Trait for Test {
type Event = TestEvent;
type MemberId = TestMemberId;
type PaidTermId = u64;
type SubscriptionId = u64;
type ActorId = u64;
type InitialMembersBalance = InitialMembersBalance;
}

impl Trait for Test {
Expand All @@ -198,7 +186,7 @@ impl Trait for Test {

pub struct TestExternalitiesBuilder<T: Trait> {
system_config: Option<system::GenesisConfig>,
membership_config: Option<members::GenesisConfig<T>>,
membership_config: Option<membership::GenesisConfig<T>>,
content_wg_config: Option<GenesisConfig<T>>,
}

Expand All @@ -213,17 +201,6 @@ impl<T: Trait> Default for TestExternalitiesBuilder<T> {
}

impl<T: Trait> TestExternalitiesBuilder<T> {
/*
pub fn set_system_config(mut self, system_config: system::GenesisConfig) -> Self {
self.system_config = Some(system_config);
self
}
pub fn set_membership_config(mut self, membership_config: members::GenesisConfig<T>) -> Self {
self.membership_config = Some(membership_config);
self
}
*/

pub fn with_content_wg_config(mut self, conteng_wg_config: GenesisConfig<T>) -> Self {
self.content_wg_config = Some(conteng_wg_config);
self
Expand All @@ -239,12 +216,11 @@ impl<T: Trait> TestExternalitiesBuilder<T> {

// Add membership
self.membership_config
.unwrap_or(members::GenesisConfig::default())
.unwrap_or(membership::GenesisConfig::default())
.assimilate_storage(&mut t)
.unwrap();

// Add content wg

if self.content_wg_config.is_none() {
genesis::GenesisConfigBuilder::<Test>::default()
.build()
Expand Down
44 changes: 21 additions & 23 deletions runtime-modules/content-working-group/src/tests.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

use super::genesis;
use super::mock::{self, *};
//use crate::membership;
use hiring;
use rstd::collections::btree_map::BTreeMap;
use rstd::collections::btree_set::BTreeSet;
Expand Down Expand Up @@ -47,9 +46,9 @@ fn create_channel_is_not_a_member() {

// Change to invalid member id, i.e. != channel_creator_member_id
fixture.channel_creator_member_id = fixture.channel_creator_member_id
+ <<Test as members::Trait>::MemberId as One>::one();
+ <<Test as membership::Trait>::MemberId as One>::one();

fixture.call_and_assert_error(MSG_CREATE_CHANNEL_IS_NOT_MEMBER);
fixture.call_and_assert_error(MSG_MEMBER_ID_INVALID);
});
}

Expand Down Expand Up @@ -85,7 +84,7 @@ fn create_channel_with_bad_member_role_account() {
Some(0),
);

fixture.call_and_assert_error(MSG_CREATE_CHANNEL_NOT_CONTROLLER_ACCOUNT);
fixture.call_and_assert_error(MSG_SIGNER_NOT_CONTROLLER_ACCOUNT);
});
}

Expand Down Expand Up @@ -862,7 +861,7 @@ fn multiple_applications_by_same_member_to_opening_fails() {

struct UpdateCuratorRoleAccountFixture {
pub origin: Origin,
pub member_id: <Test as members::Trait>::MemberId,
pub member_id: <Test as membership::Trait>::MemberId,
pub curator_id: CuratorId<Test>,
pub new_role_account: <Test as system::Trait>::AccountId,
}
Expand Down Expand Up @@ -1152,7 +1151,7 @@ fn terminate_curator_role_success() {

struct SetLeadFixture {
pub origin: Origin,
pub member_id: <Test as members::Trait>::MemberId,
pub member_id: <Test as membership::Trait>::MemberId,
pub new_role_account: <Test as system::Trait>::AccountId,
}

Expand Down Expand Up @@ -1184,6 +1183,7 @@ impl SetLeadFixture {
let new_lead = LeadById::<Test>::get(new_lead_id);

let expected_new_lead = Lead {
member_id: self.member_id,
role_account: self.new_role_account,
reward_relationship: None,
inducted: 1, // make dynamic later
Expand Down Expand Up @@ -1500,7 +1500,7 @@ fn add_members_and_apply_on_opening(

#[derive(Clone)]
struct NewMemberAppliedResult {
pub member_id: <Test as members::Trait>::MemberId,
pub member_id: <Test as membership::Trait>::MemberId,
pub curator_application_id: crate::CuratorApplicationId<Test>,
}

Expand Down Expand Up @@ -1899,7 +1899,7 @@ impl SetupLeadAndHireCuratorResult {
}
}

pub fn curator_member_id(&self) -> <Test as members::Trait>::MemberId {
pub fn curator_member_id(&self) -> <Test as membership::Trait>::MemberId {
self.setup_and_fill_opening_result
.setup_opening_in_review
.added_members_application_result[0]
Expand All @@ -1924,7 +1924,7 @@ fn setup_lead_and_hire_curator() -> SetupLeadAndHireCuratorResult {
}

struct CreateChannelFixture {
pub channel_creator_member_id: <Test as members::Trait>::MemberId,
pub channel_creator_member_id: <Test as membership::Trait>::MemberId,
pub controller_account: <Test as system::Trait>::AccountId,
pub channel_creator_role_account: <Test as system::Trait>::AccountId,
pub channel_handle: Vec<u8>,
Expand All @@ -1938,13 +1938,13 @@ struct CreateChannelFixture {

impl CreateChannelFixture {
pub fn make_valid_unpulished_video_channel_for(
channel_creator_member_id: <Test as members::Trait>::MemberId,
channel_creator_member_id: <Test as membership::Trait>::MemberId,
override_controller_account: Option<<Test as system::Trait>::AccountId>,
) -> Self {
let controller_account = if let Some(account) = override_controller_account {
account
} else {
members::Module::<Test>::ensure_profile(channel_creator_member_id)
membership::Module::<Test>::ensure_membership(channel_creator_member_id)
.unwrap()
.controller_account
};
Expand Down Expand Up @@ -2062,7 +2062,7 @@ impl CreateChannelFixture {
}

struct NewMemberAsLead {
pub member_id: <Test as members::Trait>::MemberId,
pub member_id: <Test as membership::Trait>::MemberId,
pub lead_id: LeadId<Test>,
}

Expand All @@ -2079,7 +2079,7 @@ pub fn set_channel_creation_enabled(enabled: bool) {
.unwrap()
}

pub fn add_channel_creator_member() -> <Test as members::Trait>::MemberId {
pub fn add_channel_creator_member() -> <Test as membership::Trait>::MemberId {
let channel_creator_member_id = add_member(
CHANNEL_CREATOR_ROOT_AND_CONTROLLER_ACCOUNT,
to_vec(CHANNEL_CREATOR_HANDLE),
Expand All @@ -2091,18 +2091,16 @@ pub fn add_channel_creator_member() -> <Test as members::Trait>::MemberId {
pub fn add_member(
root_and_controller_account: <Test as system::Trait>::AccountId,
handle: Vec<u8>,
) -> <Test as members::Trait>::MemberId {
let next_member_id = members::MembersCreated::<Test>::get();
) -> <Test as membership::Trait>::MemberId {
let next_member_id = membership::NextMemberId::<Test>::get();

assert_eq!(
members::Module::<Test>::buy_membership(
membership::Module::<Test>::buy_membership(
Origin::signed(root_and_controller_account),
0,
members::UserInfo {
handle: Some(handle),
avatar_uri: None,
about: None,
}
Some(handle),
None,
None
)
.unwrap(),
()
Expand All @@ -2112,11 +2110,11 @@ pub fn add_member(
}

pub fn set_lead(
member_id: <Test as members::Trait>::MemberId,
member_id: <Test as membership::Trait>::MemberId,
new_role_account: <Test as system::Trait>::AccountId,
) -> LeadId<Test> {
// Get controller account
//let lead_member_controller_account = members::Module::<Test>::ensure_profile(member_id).unwrap().controller_account;
//let lead_member_controller_account = membership::Module::<Test>::ensure_membership(member_id).unwrap().controller_account;

let expected_lead_id = NextLeadId::<Test>::get();

Expand Down
6 changes: 2 additions & 4 deletions runtime-modules/governance/src/election.rs
Original file line number Diff line number Diff line change
Expand Up @@ -48,9 +48,7 @@ use super::council;
use crate::election_params::ElectionParameters;
pub use common::currency::{BalanceOf, GovernanceCurrency};

pub trait Trait:
system::Trait + council::Trait + GovernanceCurrency + membership::members::Trait
{
pub trait Trait: system::Trait + council::Trait + GovernanceCurrency + membership::Trait {
type Event: From<Event<Self>> + Into<<Self as system::Trait>::Event>;

type CouncilElected: CouncilElected<Seats<Self::AccountId, BalanceOf<Self>>, Self::BlockNumber>;
Expand Down Expand Up @@ -213,7 +211,7 @@ impl<T: Trait> Module<T> {

fn can_participate(sender: &T::AccountId) -> bool {
!<T as GovernanceCurrency>::Currency::free_balance(sender).is_zero()
&& <membership::members::Module<T>>::is_member_account(sender)
&& <membership::Module<T>>::is_member_account(sender)
}

// PUBLIC IMMUTABLES
Expand Down
6 changes: 2 additions & 4 deletions runtime-modules/governance/src/mock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -62,13 +62,12 @@ impl election::Trait for Test {

type CouncilElected = (Council,);
}
impl membership::members::Trait for Test {
impl membership::Trait for Test {
type Event = ();
type MemberId = u32;
type SubscriptionId = u32;
type PaidTermId = u32;
type ActorId = u32;
type InitialMembersBalance = InitialMembersBalance;
}
impl minting::Trait for Test {
type Currency = Balances;
Expand All @@ -85,7 +84,6 @@ parameter_types! {
pub const CreationFee: u32 = 0;
pub const TransactionBaseFee: u32 = 1;
pub const TransactionByteFee: u32 = 0;
pub const InitialMembersBalance: u32 = 0;
}

impl balances::Trait for Test {
Expand Down Expand Up @@ -118,7 +116,7 @@ pub fn initial_test_ext() -> runtime_io::TestExternalities {
.build_storage::<Test>()
.unwrap();

membership::members::GenesisConfig::<Test> {
membership::GenesisConfig::<Test> {
default_paid_membership_fee: 0,
members: vec![
(1, "member1".into(), "".into(), "".into()),
Expand Down
1 change: 0 additions & 1 deletion runtime-modules/hiring/src/mock.rs
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,6 @@ parameter_types! {
pub const CreationFee: u32 = 0;
pub const TransactionBaseFee: u32 = 1;
pub const TransactionByteFee: u32 = 0;
pub const InitialMembersBalance: u64 = 2000;
pub const StakePoolId: [u8; 8] = *b"joystake";
}

Expand Down
2 changes: 1 addition & 1 deletion runtime-modules/membership/Cargo.toml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
[package]
name = 'substrate-membership-module'
version = '1.0.1'
version = '1.1.0'
authors = ['Joystream contributors']
edition = '2018'

Expand Down
7 changes: 3 additions & 4 deletions runtime-modules/membership/src/genesis.rs
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,8 @@

use common::currency::BalanceOf;
use rstd::prelude::*;
//pub use super::members::{GenesisConfig, Trait};

use super::members::{self, Trait};
use crate::{GenesisConfig, Trait};

/// Builder fo membership module genesis configuration.
pub struct GenesisConfigBuilder<T: Trait> {
Expand Down Expand Up @@ -34,8 +33,8 @@ impl<T: Trait> GenesisConfigBuilder<T> {
self
}

pub fn build(&self) -> members::GenesisConfig<T> {
members::GenesisConfig::<T> {
pub fn build(&self) -> GenesisConfig<T> {
GenesisConfig::<T> {
default_paid_membership_fee: self.default_paid_membership_fee,
members: self
.members
Expand Down
Loading