Beispiel #1
0
def create_device(device, cpu=None, memory=None, storage=None):
    dev = Device.create(
        model=device.get('model'),
        model_name=device.get('model_name'),
        model_type=device.get('model_type'),
        sn=device.get('sn'),
        venture=device.get('venture'),
        parent=device.get('parent'),
        price=device.get('price'),
        deprecation_kind=device.get('deprecation_kind'),
        purchase_date=device.get('purchase_date'),
    )
    dev.name = device.get('name')
    dev.save()
    if cpu:
        model = create_model(device, cpu, ComponentType.processor)
        for cpu in duplicate_item(cpu):
            Processor(
                device=dev,
                model=model,
                label=cpu.get('label'),
            ).save()
    if memory:
        model = create_model(device, memory, ComponentType.memory)
        for memory in duplicate_item(memory):
            Memory(
                device=dev,
                model=model,
                speed=memory.get('speed'),
                size=memory.get('size'),
                label=memory.get('label'),
            ).save()
    if storage:
        model = create_model(device, storage, ComponentType.disk)
        for storage in duplicate_item(storage):
            Storage(
                device=dev,
                model=model,
                label=storage.get('label'),
            ).save()
    return dev
Beispiel #2
0
 def test_processors(self):
     model = ComponentModel(
         type=ComponentType.processor,
         name="CPU Xeon 2533MHz, 4-core",
     )
     model.save()
     for i in xrange(4):
         p = Processor(
             label="ziew",
             model=model,
             device=self.device,
             index=i,
         )
         p.save()
     data = get_device_data(Device.objects.get(sn='123456789'))
     processors = data['processors']
     self.assertEqual(len(processors), 4)
     self.assertEqual(processors[0]['label'], "ziew")
     self.assertEqual(processors[0]['model_name'],
                      "CPU Xeon 2533MHz, 4-core")
     self.assertEqual(processors[0]['cores'], 4)
     self.assertEqual(processors[3]['index'], 3)