Better users generated in test data.

This commit is contained in:
Oly 2017-09-15 14:05:22 +01:00
parent 02befa5ddb
commit a7a3311f8d
5 changed files with 88 additions and 12 deletions

View File

@ -79,18 +79,18 @@ import requests
url = 'http://127.0.0.1:8180/api/v1/rfidAuth/'
data = {
'rfid': '49960',
'rfid': '4996',
'device': '7bff6053-77ef-4250-ac11-8a119fd05a0e'
}
# client = RequestsClient()
response = requests.post(
'http://127.0.0.1:8180/api/v1/rfidAuth/',
data={'rfid': 'fa14', 'device': 'e571eee1-7bf7-4453-980e-7519e2a83de6'})
data={'rfid': '238e', 'device': 'e8f27231-8093-4477-8906-e5ae1b12dbd6'})
#requests.get(url)
return response.status_code
#+END_SRC
#+RESULTS:
: 404
: 200

View File

@ -1,5 +1,6 @@
import uuid
import random
from django.contrib.auth.hashers import make_password
from autofixture import AutoFixture
from autofixture.generators import (
ImageGenerator,
@ -35,8 +36,9 @@ class Command(BaseCommand):
help = 'Build test data for development environment'
def handle(self, *args, **options):
feeds = AutoFixture(Article)
feeds = AutoFixture(Article, generate_fk=True)
feeds.create(10)
feed = AutoFixture(Feed)
feed.create(10)
@ -49,13 +51,24 @@ class Command(BaseCommand):
# load known data
call_command('loaddata', 'mhackspace/users/fixtures/groups.json', verbose=0)
# AutoFixture.autodiscover()
# random data
User.objects.all().delete()
users = AutoFixture(User, field_values={
'title': ChoicesGenerator(values=('Mr', 'Mrs', 'Emperor', 'Captain'))
})
users.create(10)
'title': ChoicesGenerator(values=('Mr', 'Mrs', 'Emperor', 'Captain')),
'password': make_password('autofixtures'),
'active': True,
'username': ChoicesGenerator(values=('Bob', 'Jane', 'Adam', 'Alice', 'Bill', 'Jill', 'Sam', 'Oly'))
}, generate_fk=True)
users.create(8)
users = AutoFixture(User, field_values={
'title': 'Mr',
'username': 'admin',
'password': make_password('autofixtures'),
'is_superuser': True,
'is_staff': True,
'is_active': True
}, generate_fk=True)
users.create(1)
Rfid.objects.all().delete()
Device.objects.all().delete()

View File

@ -0,0 +1,61 @@
from django.test import TestCase
from mhackspace.requests.views import RequestsList, RequestForm
# Create your tests here.
# @pytest.mark.parametrize("version", versions)
# @pytest.mark.parametrize("test_ctx, name", contexts)
# def test_context_renders(name, test_ctx, version):
# users = AutoFixture(User, field_values={
# 'title': 'Mr',
# 'username': 'admin',
# 'password': make_password('autofixtures'),
# 'is_superuser': True,
# 'is_staff': True,
# 'is_active': True
# }, generate_fk=True)
class BaseUserTestCase(TestCase):
def setUp(self):
self.user = self.make_user()
self.factory = RequestFactory()
def testRequestView(self):
view = RequestsList()
request = self.factory.get('/fake-url')
request.user = self.user
view.request = request
# class TestUserUpdateView(BaseUserTestCase):
# def setUp(self):
# # call BaseUserTestCase.setUp()
# super(TestUserUpdateView, self).setUp()
# # Instantiate the view directly. Never do this outside a test!
# self.view = UserUpdateView()
# # Generate a fake request
# request = self.factory.get('/fake-url')
# # Attach the user to the request
# request.user = self.user
# # Attach the request to the view
# self.view.request = request
# def test_get_success_url(self):
# # Expect: '/users/testuser/', as that is the default username for
# # self.make_user()
# self.assertEqual(
# self.view.get_success_url(),
# '/users/testuser/'
# )
# def test_get_object(self):
# # Expect: self.user, as that is the request's user object
# self.assertEqual(
# self.view.get_object(),
# self.user
# )

View File

@ -13,7 +13,7 @@ class DeviceAdmin(ModelAdmin):
@admin.register(DeviceAuth)
class DeviceAuthAdmin(ModelAdmin):
list_display = ('device', 'rfid_code', 'rfid_user')
list_display = ('device', 'rfid_code', 'rfid_user', 'device_id')
def rfid_code(self, x):
return x.rfid.code

View File

@ -57,13 +57,15 @@ MEMBERSHIP_STATUS_CHOICES = (
MEMBERSHIP_STRING = {
0: 'Guest user',
1: 'Active membership',
3: 'Membership Expired'
3: 'Membership Expired',
4: 'Membership Cancelled'
}
MEMBERSHIP_STATUS = {
'signup': 0, # This means the user has not completed signup
'active': 1,
'cancelled': 2
'expired': 3,
'cancelled': 4
}
class Membership(models.Model):