2023-10-23 15:43:17 +00:00
|
|
|
import random
|
|
|
|
import string
|
2023-08-04 18:27:03 +00:00
|
|
|
from collections import namedtuple
|
2024-08-19 17:41:54 +00:00
|
|
|
from dataclasses import dataclass
|
|
|
|
from enum import Enum
|
|
|
|
from typing import Optional
|
2023-08-04 18:27:03 +00:00
|
|
|
|
2023-09-04 18:36:48 +00:00
|
|
|
import configs
|
2024-08-19 17:41:54 +00:00
|
|
|
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
|
|
|
|
|
|
|
|
|
2023-09-14 08:51:22 +00:00
|
|
|
user_account_one = UserAccount('squisher', '0000000000', [
|
2023-08-10 11:43:17 +00:00
|
|
|
'rail', 'witness', 'era', 'asthma', 'empty', 'cheap', 'shed', 'pond', 'skate', 'amount', 'invite', 'year'
|
2023-10-23 15:43:17 +00:00
|
|
|
], '0x3286c371ef648fe6232324b27ee0515f4ded24d9')
|
2023-09-14 08:51:22 +00:00
|
|
|
user_account_two = UserAccount('athletic', '0000000000', [
|
2023-09-11 18:24:13 +00:00
|
|
|
'measure', 'cube', 'cousin', 'debris', 'slam', 'ignore', 'seven', 'hat', 'satisfy', 'frown', 'casino', 'inflict'
|
2023-10-23 15:43:17 +00:00
|
|
|
], '0x99C096bB5F12bDe37DE9dbee8257Ebe2a5667C46')
|
2023-08-29 14:43:00 +00:00
|
|
|
|
2023-09-11 18:24:13 +00:00
|
|
|
community_params = {
|
2023-12-28 16:22:50 +00:00
|
|
|
'name': ''.join(random.choices(string.ascii_letters +
|
|
|
|
string.digits, k=30)),
|
|
|
|
'description': ''.join(random.choices(string.ascii_letters +
|
2024-08-09 12:34:19 +00:00
|
|
|
string.digits, k=140)),
|
2024-02-13 12:47:11 +00:00
|
|
|
'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},
|
2023-10-23 15:43:17 +00:00
|
|
|
'intro': ''.join(random.choices(string.ascii_letters +
|
|
|
|
string.digits, k=200)),
|
|
|
|
'outro': ''.join(random.choices(string.ascii_letters +
|
|
|
|
string.digits, k=80))
|
2023-09-04 18:36:48 +00:00
|
|
|
}
|
2023-08-29 14:43:00 +00:00
|
|
|
|
2023-09-04 18:36:48 +00:00
|
|
|
UserCommunityInfo = namedtuple('CommunityInfo', ['name', 'description', 'members', 'image'])
|
2024-01-11 09:18:19 +00:00
|
|
|
UserChannel = namedtuple('Channel', ['name', 'selected', 'visible'])
|
2023-09-05 06:22:44 +00:00
|
|
|
|
2023-09-11 18:24:13 +00:00
|
|
|
account_list_item = namedtuple('AccountListItem', ['name', 'color', 'emoji'])
|
2023-11-03 16:33:13 +00:00
|
|
|
wallet_account_list_item = namedtuple('WalletAccountListItem', ['name', 'icon_color', 'icon_emoji', 'object'])
|
2023-10-24 12:32:19 +00:00
|
|
|
|
2023-11-01 13:58:38 +00:00
|
|
|
account_list_item_2 = namedtuple('AccountListItem', ['name2', 'color2', 'emoji2'])
|
|
|
|
wallet_account_list_item_2 = namedtuple('WalletAccountListItem', ['name', 'icon', 'object'])
|
|
|
|
|
2023-10-24 12:32:19 +00:00
|
|
|
wallet_account = namedtuple('PrivateKeyAddressPair', ['private_key', 'wallet_address'])
|
2023-11-03 16:33:13 +00:00
|
|
|
private_key_address_pair_1 = wallet_account('2daa36a3abe381a9c01610bf10fda272fbc1b8a22179a39f782c512346e3e470',
|
|
|
|
'0xd89b48cbcb4244f84a4fb5d3369c120e8f8aa74e')
|
2023-12-11 07:20:57 +00:00
|
|
|
|
2024-05-13 07:09:56 +00:00
|
|
|
token_list_item = namedtuple('TokenListItem', ['title', 'object'])
|
|
|
|
|
2024-08-09 12:34:19 +00:00
|
|
|
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']
|