ccdb-api/ccdb/misc/factories.py

61 lines
1.9 KiB
Python

import factory
from .models import MeasurementUnit, MeasurementType, Material, Color, Container
class MeasurementUnitFactory(factory.DjangoModelFactory):
class Meta:
model = MeasurementUnit
name = factory.Sequence(lambda n: 'measurement_unit{}'.format(n))
code = factory.Sequence(lambda n: 'mu{}'.format(n))
unit_class = 'abc'
description = 'lorem ipsum'
sort_order = factory.Sequence(lambda n: n)
class MeasurementTypeFactory(factory.DjangoModelFactory):
class Meta:
model = MeasurementType
name = factory.Sequence(lambda n: 'measurement_type{}'.format(n))
code = factory.Sequence(lambda n: 'mt{}'.format(n))
measurement_type_class = 'abc'
description = 'lorem ipsum'
default_measurement_unit = factory.SubFactory(MeasurementUnitFactory)
sort_order = factory.Sequence(lambda n: n)
class MaterialFactory(factory.DjangoModelFactory):
class Meta:
model = Material
name = factory.Sequence(lambda n: 'material{}'.format(n))
code = factory.Sequence(lambda n: 'm{}'.format(n))
material_class = 'abc'
description = 'lorem ipsum'
sort_order = factory.Sequence(lambda n: n)
class ColorFactory(factory.DjangoModelFactory):
class Meta:
model = Color
name = factory.Sequence(lambda n: 'color{}'.format(n))
code = factory.Sequence(lambda n: 'c{}'.format(n))
color_number = factory.Sequence(lambda n: float(n))
sort_order = factory.Sequence(lambda n: n)
class ContainerFactory(factory.DjangoModelFactory):
class Meta:
model = Container
name = factory.Sequence(lambda n: 'container{}'.format(n))
code = factory.Sequence(lambda n: 'c{}'.format(n))
application = 'asdf'
color = factory.SubFactory(ColorFactory)
material = factory.SubFactory(MaterialFactory)
volume = factory.Sequence(lambda n: float(n))
measurement_unit = factory.SubFactory(MeasurementUnitFactory)
sort_order = factory.Sequence(lambda n: n)