Update test data generation

This commit is contained in:
Oliver Marks 2017-09-14 07:29:10 +01:00 committed by Oly
parent 528ad8cade
commit 1734dc3f9c
3 changed files with 37 additions and 14 deletions

View File

@ -73,3 +73,20 @@ docker-compose -fdev.yml run --rm django python manage.py list_subscriptions
#+BEGIN_SRC sh #+BEGIN_SRC sh
docker-compose -fdev.yml run --rm django python manage.py rendervariations 'blog.Post.image' --replace docker-compose -fdev.yml run --rm django python manage.py rendervariations 'blog.Post.image' --replace
#+END_SRC #+END_SRC
** Api
#+BEGIN_SRC python
import coreapi
url = 'http://127.0.0.1:8180/api/v1/rfidAuth/'
data = {
'rfid': '49960',
'device': '7bff6053-77ef-4250-ac11-8a119fd05a0e'
}
client = coreapi.Client()
client.get(url)
client.post(url, data)
#requests.get(url)
#+END_SRC

View File

@ -1,13 +1,13 @@
import random import random
from autofixture import AutoFixture from autofixture import AutoFixture
from autofixture.generators import ImageGenerator from autofixture.generators import ImageGenerator, IntegerGenerator, ChoicesGenerator
from django.core.management.base import BaseCommand from django.core.management.base import BaseCommand
from django.core.management import call_command from django.core.management import call_command
from mhackspace.base.models import BannerImage from mhackspace.base.models import BannerImage
from mhackspace.feeds.models import Article, Feed from mhackspace.feeds.models import Article, Feed
from mhackspace.users.models import User from mhackspace.users.models import User, Rfid
from mhackspace.blog.models import Category, Post from mhackspace.blog.models import Category, Post
from mhackspace.rfid.models import Device from mhackspace.rfid.models import Device, DeviceAuth
class ImageFixture(AutoFixture): class ImageFixture(AutoFixture):
@ -33,18 +33,23 @@ class Command(BaseCommand):
# load known data # load known data
call_command('loaddata', 'mhackspace/users/fixtures/groups.json', verbose=0) call_command('loaddata', 'mhackspace/users/fixtures/groups.json', verbose=0)
autofixture.autodiscover() # AutoFixture.autodiscover()
# random data # random data
users = AutoFixture(User, field_values={ users = AutoFixture(User, field_values={
'title': random.choicee(('Mr', 'Mrs', 'Emperor', 'Captain')) 'title': ChoicesGenerator(('Mr', 'Mrs', 'Emperor', 'Captain'))
}) })
users.create(10) users.create(10)
rfid = AutoFixture(Rfid) Rfid.objects.all().delete()
Device.objects.all().delete()
DeviceAuth.objects.all().delete()
rfid = AutoFixture(Rfid, field_values={'code': IntegerGenerator(1, 100000)})
rfid.create(20) rfid.create(20)
device = AutoFixture(Device) device = AutoFixture(Device, field_values={
'name': ChoicesGenerator(('Door', 'Printer', 'Laser Cutter', ''))
})
device.create(5) device.create(5)
deviceauth = AutoFixture(DeviceAuth) deviceauth = AutoFixture(DeviceAuth)
@ -61,3 +66,4 @@ class Command(BaseCommand):
self.stdout.write( self.stdout.write(
self.style.SUCCESS( self.style.SUCCESS(
'Finished creating test data')) 'Finished creating test data'))

View File

@ -20,11 +20,11 @@ class DeviceAuthAdmin(ModelAdmin):
def label_from_instance(self, obj): def label_from_instance(self, obj):
return obj.description + ' - ' + str(obj.user) return obj.description + ' - ' + str(obj.user)
def formfield_for_foreignkey(self, db_field, request, **kwargs): # def formfield_for_foreignkey(self, db_field, request, **kwargs):
if db_field.name == "rfid": # if db_field.name == "rfid":
return self.CustomModelChoiceField( # return self.CustomModelChoiceField(
Rfid.objects.all(), # Rfid.objects.all(),
initial=request.user) # initial=request.user)
return super(DeviceAuthAdmin, self).formfield_for_foreignkey( # return super(DeviceAuthAdmin, self).formfield_for_foreignkey(
db_field, request, **kwargs) # db_field, request, **kwargs)