import random import string from collections import namedtuple from dataclasses import dataclass from enum import Enum from typing import Optional import configs from scripts.utils.generators import random_name_string, random_password_string @dataclass class UserAccount: name: str = None password: str = None seed_phrase: Optional[list] = None status_address: Optional[str] = None class RandomUser(UserAccount): def __init__(self): self.name = random_name_string() self.password = random_password_string() class ReturningUser(UserAccount): def __init__(self, seed_phrase, status_address): self.name = random_name_string() self.password = random_password_string() self.seed_phrase = seed_phrase self.status_address = status_address user_account_one = UserAccount('squisher', '0000000000', [ 'rail', 'witness', 'era', 'asthma', 'empty', 'cheap', 'shed', 'pond', 'skate', 'amount', 'invite', 'year' ], '0x3286c371ef648fe6232324b27ee0515f4ded24d9') user_account_two = UserAccount('athletic', '0000000000', [ 'measure', 'cube', 'cousin', 'debris', 'slam', 'ignore', 'seven', 'hat', 'satisfy', 'frown', 'casino', 'inflict' ], '0x99C096bB5F12bDe37DE9dbee8257Ebe2a5667C46') community_params = { 'name': ''.join(random.choices(string.ascii_letters + string.digits, k=30)), 'description': ''.join(random.choices(string.ascii_letters + string.digits, k=140)), 'logo': {'fp': configs.testpath.TEST_IMAGES / 'comm_logo.jpeg', 'zoom': None, 'shift': None}, 'banner': {'fp': configs.testpath.TEST_IMAGES / 'comm_banner.jpeg', 'zoom': None, 'shift': None}, 'intro': ''.join(random.choices(string.ascii_letters + string.digits, k=200)), 'outro': ''.join(random.choices(string.ascii_letters + string.digits, k=80)) } UserCommunityInfo = namedtuple('CommunityInfo', ['name', 'description', 'members', 'image']) UserChannel = namedtuple('Channel', ['name', 'selected', 'visible']) account_list_item = namedtuple('AccountListItem', ['name', 'color', 'emoji']) wallet_account_list_item = namedtuple('WalletAccountListItem', ['name', 'icon_color', 'icon_emoji', 'object']) account_list_item_2 = namedtuple('AccountListItem', ['name2', 'color2', 'emoji2']) wallet_account_list_item_2 = namedtuple('WalletAccountListItem', ['name', 'icon', 'object']) wallet_account = namedtuple('PrivateKeyAddressPair', ['private_key', 'wallet_address']) private_key_address_pair_1 = wallet_account('2daa36a3abe381a9c01610bf10fda272fbc1b8a22179a39f782c512346e3e470', '0xd89b48cbcb4244f84a4fb5d3369c120e8f8aa74e') token_list_item = namedtuple('TokenListItem', ['title', 'object']) community_tags = ['Activism', 'Art', 'Blockchain', 'Books & blogs', 'Career', 'Collaboration', 'Commerce', 'Culture', 'DAO', 'DIY', 'DeFi', 'Design', 'Education', 'Entertainment', 'Environment', 'Ethereum', 'Event', 'Fantasy', 'Fashion', 'Food', 'Gaming', 'Global', 'Health', 'Hobby', 'Innovation', 'Language', 'Lifestyle', 'Local', 'Love', 'Markets', 'Movies & TV', 'Music', 'NFT', 'NSFW', 'News', 'Non-profit', 'Org', 'Pets', 'Play', 'Podcast', 'Politics', 'Privacy', 'Product', 'Psyche', 'Security', 'Social', 'Software dev', 'Sports', 'Tech', 'Travel', 'Vehicles', 'Web3']