-
Notifications
You must be signed in to change notification settings - Fork 21
/
load.py
54 lines (38 loc) · 1.37 KB
/
load.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
from django.core.management import setup_environ
import settings
setup_environ(settings)
from news import models, tests
class B:
pass
import random
run_name = ''.join([random.choice('abcdefghijklmnop') for i in xrange(10)])
b= B()
user = models.User.objects.create_user(username="load%s"%run_name, email="demo@demo.com", password="demo")
user.save()
b.user = user
profile = models.UserProfile(user = user, karma = 10000)
profile.save()
topic = models.Topic.objects.create_new_topic(user = b.user, topic_name = 'cpp%s'%run_name, full_name='CPP primer')
b.topic = topic
num_user = 1000
num_links = 3000
num_votes = 100
#Create 10 users
users = []
for i in xrange(num_user):
user = models.UserProfile.objects.create_user(user_name='%s%s'%(run_name, i), email='demo@demo.com', password='demo')
users.append(user)
profile = b.user.get_profile()
profile.karma = 10000
profile.save()
b.user = models.User.objects.get(id = b.user.id)
links = []
for i in xrange(num_links):
link = models.Link.objects.create_link(user = b.user, topic = b.topic, url='http://%s%s.com'% (run_name, i), text=str(i) )
links.append(link)
for user in users:
votes = random.randint(2, num_votes)
for i in xrange(votes):
link = random.choice(links)
print i, link, user
link.upvote(user)