forked from vlw/misskey-microblogger
This PR adds scripts for generating random users, and generating random relationships between these users. This PR also refactors config file loading and writing into a class. Reviewed-on: https://codeberg.org/vlw/misskey-microblogger/pulls/1 Co-authored-by: Victor Westerlund <victor.vesterlund@gmail.com> Co-committed-by: Victor Westerlund <victor.vesterlund@gmail.com>
46 lines
No EOL
1.2 KiB
Python
46 lines
No EOL
1.2 KiB
Python
import sys
|
|
import json
|
|
import typing
|
|
from os import system
|
|
|
|
from src.Config import Config
|
|
from src.User.User import User
|
|
from src.Generate.GenerateUser import GenerateUser
|
|
from src.Generate.GenerateRelationships import GenerateRelationships
|
|
|
|
DEFAULT_GENERATE_USER_COUNT = 10
|
|
|
|
# Generate a user
|
|
def generate_user() -> User:
|
|
while True:
|
|
user = GenerateUser()
|
|
print(f"1. Create username: {user.username}")
|
|
# We need the human's help here since I haven't found a way to get API keys from Misskey automatically
|
|
user.set_api_key(input("2. Paste API key:"))
|
|
|
|
yield user.autorun()
|
|
|
|
def main():
|
|
config = Config()
|
|
users = []
|
|
|
|
# Generate n amount of users
|
|
for i in (range(int(sys.argv[1]) if len(sys.argv) > 1 else DEFAULT_GENERATE_USER_COUNT)):
|
|
system("clear")
|
|
print(f"Generating user: {i + 1}")
|
|
users.append(next(generate_user()))
|
|
i += 1
|
|
|
|
# Create random relationships for generated users
|
|
print("Generating random user relationships")
|
|
GenerateRelationships(users).autorun()
|
|
|
|
print("Activating users")
|
|
# Add generated users to active users in config
|
|
for user in users:
|
|
config.add_active_user(user.username)
|
|
|
|
config.save_config()
|
|
|
|
if __name__ == "__main__":
|
|
main() |