enhance testing
This commit is contained in:
parent
42b0b0ebbc
commit
bc433d80e9
|
@ -9,6 +9,7 @@ type: Snapshot
|
|||
uuid: cb8ce6b5-6a1b-4084-b5b9-d8fadad2a015
|
||||
version: '11.0'
|
||||
software: Workbench
|
||||
expectedEvents: [TestDataStorage, StressTest, EraseSectors, Install]
|
||||
elapsed: 500
|
||||
device:
|
||||
type: Desktop
|
||||
|
@ -25,9 +26,6 @@ device:
|
|||
functionalityRange: B
|
||||
- type: BenchmarkRamSysbench
|
||||
rate: 2444
|
||||
- type: StressTest
|
||||
elapsed: 300
|
||||
error: False
|
||||
components:
|
||||
- type: GraphicCard
|
||||
serialNumber: gc1-1s
|
||||
|
@ -67,22 +65,11 @@ components:
|
|||
assessment: True
|
||||
powerCycleCount: 11
|
||||
reallocatedSectorCount: 2
|
||||
powerCycleCount: 4
|
||||
reportedUncorrectableErrors: 1
|
||||
commandTimeout: 11
|
||||
currentPendingSectorCount: 1
|
||||
offlineUncorrectable: 33
|
||||
remainingLifetimePercentage: 1
|
||||
- type: EraseSectors
|
||||
error: False
|
||||
zeros: False
|
||||
startTime: 2018-01-01T10:10:10
|
||||
endTime: 2018-01-01T12:10:10
|
||||
steps:
|
||||
- type: StepRandom
|
||||
startTime: 2018-01-01T10:10:10
|
||||
endTime: 2018-01-01T12:10:10
|
||||
error: False
|
||||
- type: HardDrive
|
||||
serialNumber: hdd1-1s
|
||||
model: hdd1-1ml
|
||||
|
@ -91,20 +78,6 @@ components:
|
|||
- type: BenchmarkDataStorage
|
||||
readSpeed: 10
|
||||
writeSpeed: 5
|
||||
- type: EraseSectors
|
||||
error: False
|
||||
zeros: False
|
||||
startTime: 2018-01-01T10:10:10
|
||||
endTime: 2018-01-01T12:10:10
|
||||
steps:
|
||||
- type: StepRandom
|
||||
startTime: 2018-01-01T10:10:10
|
||||
endTime: 2018-01-01T12:10:10
|
||||
error: False
|
||||
- type: Install
|
||||
elapsed: 420
|
||||
error: False
|
||||
name: LinuxMint 18.01 32b
|
||||
- type: Motherboard
|
||||
serialNumber: mb1-1s
|
||||
model: mb1-1ml
|
||||
|
|
|
@ -1,17 +0,0 @@
|
|||
type: Snapshot
|
||||
software: AndroidApp
|
||||
version: '1.0'
|
||||
device:
|
||||
type: ComputerMonitor
|
||||
technology: LCD
|
||||
manufacturer: Dell
|
||||
model: 1707FPF
|
||||
serialNumber: CN0FP446728728541C8S
|
||||
resolutionWidth: 1920
|
||||
resolutionHeight: 1080
|
||||
size: 21.5
|
||||
events:
|
||||
- type: AppRate
|
||||
appearanceRange: A
|
||||
functionalityRange: C
|
||||
labelling: False
|
1
tests/files/computer-monitor.snapshot.yaml
Symbolic link
1
tests/files/computer-monitor.snapshot.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/computer-monitor.snapshot.yaml
|
|
@ -1,158 +0,0 @@
|
|||
{
|
||||
"components": [
|
||||
{
|
||||
"type": "NetworkAdapter",
|
||||
"model": "AR9285 Wireless Network Adapter",
|
||||
"serialNumber": "74:2f:68:8b:fd:c8",
|
||||
"manufacturer": "Qualcomm Atheros",
|
||||
"wireless": true,
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "NetworkAdapter",
|
||||
"model": "AR8152 v2.0 Fast Ethernet",
|
||||
"serialNumber": "14:da:e9:42:f6:7c",
|
||||
"manufacturer": "Qualcomm Atheros",
|
||||
"speed": 100,
|
||||
"wireless": false,
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "Processor",
|
||||
"cores": 1,
|
||||
"threads": 1,
|
||||
"address": 64,
|
||||
"model": "Intel Atom CPU N455 @ 1.66GHz",
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corp.",
|
||||
"speed": 1.667,
|
||||
"events": [
|
||||
{
|
||||
"type": "BenchmarkProcessorSysbench",
|
||||
"rate": 164.0803,
|
||||
"elapsed": 164
|
||||
},
|
||||
{
|
||||
"type": "BenchmarkProcessor",
|
||||
"rate": 6666.24,
|
||||
"elapsed": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "GraphicCard",
|
||||
"model": "Atom Processor D4xx/D5xx/N4xx/N5xx Integrated Graphics Controller",
|
||||
"serialNumber": null,
|
||||
"memory": 256.0,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "SoundCard",
|
||||
"model": "NM10/ICH7 Family High Definition Audio Controller",
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "SoundCard",
|
||||
"model": "USB 2.0 UVC VGA WebCam",
|
||||
"serialNumber": "0x0001",
|
||||
"manufacturer": "Azurewave",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "RamModule",
|
||||
"format": "DIMM",
|
||||
"model": null,
|
||||
"size": 1024,
|
||||
"interface": "DDR2",
|
||||
"serialNumber": null,
|
||||
"manufacturer": null,
|
||||
"speed": 667.0,
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "HardDrive",
|
||||
"model": "HTS54322",
|
||||
"size": 238475,
|
||||
"interface": "ATA",
|
||||
"serialNumber": "E2024242CV86HJ",
|
||||
"manufacturer": "Hitachi",
|
||||
"events": [
|
||||
{
|
||||
"type": "BenchmarkDataStorage",
|
||||
"elapsed": 16,
|
||||
"writeSpeed": 21.8,
|
||||
"readSpeed": 66.2
|
||||
},
|
||||
{
|
||||
"type": "TestDataStorage",
|
||||
"length": "Short",
|
||||
"elapsed": 2,
|
||||
"error": true,
|
||||
"status": "Unspecified Error. Self-test not started."
|
||||
},
|
||||
{
|
||||
"type": "EraseBasic",
|
||||
"steps": [
|
||||
{
|
||||
"type": "StepRandom",
|
||||
"startTime": "2018-07-03T09:15:22.257059",
|
||||
"error": false,
|
||||
"endTime": "2018-07-03T10:32:11.843190"
|
||||
}
|
||||
],
|
||||
"startTime": "2018-07-03T09:15:22.256074",
|
||||
"error": false,
|
||||
"zeros": false,
|
||||
"endTime": "2018-07-03T10:32:11.848455"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "Motherboard",
|
||||
"serial": 1,
|
||||
"firewire": 0,
|
||||
"model": "1001PXD",
|
||||
"slots": 2,
|
||||
"pcmcia": 0,
|
||||
"serialNumber": "Eee0123456789",
|
||||
"usb": 5,
|
||||
"manufacturer": "ASUSTeK Computer INC.",
|
||||
"events": []
|
||||
}
|
||||
],
|
||||
"elapsed": 4875,
|
||||
"uuid": "c058e8d2-fb92-47cb-a4b7-522b75561135",
|
||||
"version": "11.0a2",
|
||||
"type": "Snapshot",
|
||||
"software": "Workbench",
|
||||
"endTime": "2018-07-03T09:10:57.034598",
|
||||
"device": {
|
||||
"type": "Laptop",
|
||||
"model": "1001PXD",
|
||||
"serialNumber": "B8OAAS048286",
|
||||
"manufacturer": "ASUSTeK Computer INC.",
|
||||
"chassis": "Netbook",
|
||||
"events": [
|
||||
{
|
||||
"type": "BenchmarkRamSysbench",
|
||||
"rate": 15.7188,
|
||||
"elapsed": 16
|
||||
},
|
||||
{
|
||||
"type": "StressTest",
|
||||
"error": false,
|
||||
"elapsed": 60
|
||||
}
|
||||
]
|
||||
},
|
||||
"expectedEvents": [
|
||||
"Benchmark",
|
||||
"SmartTest",
|
||||
"StressTest",
|
||||
"EraseBasic"
|
||||
],
|
||||
"closed": false
|
||||
}
|
1
tests/files/real-eee-1001pxd.snapshot.11.yaml
Symbolic link
1
tests/files/real-eee-1001pxd.snapshot.11.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/real-eee-1001pxd.snapshot.11.yaml
|
|
@ -1,116 +0,0 @@
|
|||
{
|
||||
"elapsed": 4,
|
||||
"type": "Snapshot",
|
||||
"uuid": "0c822fb7-6e51-4781-86cf-994bd306212e",
|
||||
"software": "Workbench",
|
||||
"closed": false,
|
||||
"endTime": "2018-07-05T11:57:17.284891",
|
||||
"components": [
|
||||
{
|
||||
"type": "NetworkAdapter",
|
||||
"model": "82567LM-3 Gigabit Network Connection",
|
||||
"speed": 1000,
|
||||
"serialNumber": "00:23:24:0d:86:28",
|
||||
"manufacturer": "Intel Corporation",
|
||||
"wireless": false,
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"type": "NetworkAdapter",
|
||||
"model": "82541PI Gigabit Ethernet Controller",
|
||||
"speed": 1000,
|
||||
"serialNumber": "00:0e:0c:b6:f2:91",
|
||||
"manufacturer": "Intel Corporation",
|
||||
"wireless": false,
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"cores": 4,
|
||||
"type": "Processor",
|
||||
"model": "Intel Core2 Quad CPU Q8400 @ 2.66GHz",
|
||||
"speed": 1.9980000000000002,
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corp.",
|
||||
"events": [],
|
||||
"address": 64
|
||||
},
|
||||
{
|
||||
"type": "GraphicCard",
|
||||
"model": "4 Series Chipset Integrated Graphics Controller",
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": [],
|
||||
"memory": 256.0
|
||||
},
|
||||
{
|
||||
"type": "SoundCard",
|
||||
"model": "82801JD/DO HD Audio Controller",
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"size": 2048,
|
||||
"interface": "DDR3",
|
||||
"type": "RamModule",
|
||||
"model": "16JTF25664AZ-1G4F",
|
||||
"speed": 1333.0,
|
||||
"serialNumber": "F8482E29",
|
||||
"format": "DIMM",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"size": 2048,
|
||||
"interface": "DDR3",
|
||||
"type": "RamModule",
|
||||
"model": "16JTF25664AZ-1G4F",
|
||||
"speed": 1333.0,
|
||||
"serialNumber": "62072F30",
|
||||
"format": "DIMM",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"events": []
|
||||
},
|
||||
{
|
||||
"size": 238475,
|
||||
"interface": "ATA",
|
||||
"type": "HardDrive",
|
||||
"model": "ST3250318AS",
|
||||
"serialNumber": "9VY6HBKE",
|
||||
"manufacturer": "Seagate",
|
||||
"events": [
|
||||
{
|
||||
"elapsed": 0,
|
||||
"type": "TestDataStorage",
|
||||
"status": "Unspecified Error. Self-test not started.",
|
||||
"error": true,
|
||||
"length": "Short"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"slots": 0,
|
||||
"pcmcia": 0,
|
||||
"type": "Motherboard",
|
||||
"model": "3646h",
|
||||
"serialNumber": "CZC03217S7",
|
||||
"firewire": 0,
|
||||
"manufacturer": "Hewlett-Packard",
|
||||
"events": [],
|
||||
"serial": 0,
|
||||
"usb": 8
|
||||
}
|
||||
],
|
||||
"version": "11.0a3",
|
||||
"device": {
|
||||
"type": "Desktop",
|
||||
"model": "HP Compaq 8000 Elite SFF",
|
||||
"chassis": "Tower",
|
||||
"serialNumber": "CZC03217S7",
|
||||
"manufacturer": "Hewlett-Packard",
|
||||
"events": []
|
||||
},
|
||||
"expectedEvents": [
|
||||
"SmartTest"
|
||||
]
|
||||
}
|
1
tests/files/real-hp-quad-core.snapshot.11.yaml
Symbolic link
1
tests/files/real-hp-quad-core.snapshot.11.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/real-hp-quad-core.snapshot.11.yaml
|
|
@ -1,161 +0,0 @@
|
|||
{
|
||||
"closed": false,
|
||||
"uuid": "f9e5e587-baee-44e1-9a94-255d216bbda9",
|
||||
"components": [
|
||||
{
|
||||
"events": [],
|
||||
"serialNumber": "6c:62:6d:81:22:9f",
|
||||
"type": "NetworkAdapter",
|
||||
"manufacturer": "Intel Corporation",
|
||||
"speed": 1000,
|
||||
"wireless": false,
|
||||
"model": "82578DM Gigabit Network Connection"
|
||||
},
|
||||
{
|
||||
"format": "DIMM",
|
||||
"events": [
|
||||
],
|
||||
"interface": "DDR3",
|
||||
"serialNumber": "B4012F30",
|
||||
"size": 2048,
|
||||
"type": "RamModule",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"speed": 1333.0,
|
||||
"model": "16JTF25664AZ-1G4F"
|
||||
},
|
||||
{
|
||||
"format": "DIMM",
|
||||
"events": [],
|
||||
"interface": "DDR3",
|
||||
"serialNumber": "8E9F2E29",
|
||||
"size": 2048,
|
||||
"type": "RamModule",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"speed": 1333.0,
|
||||
"model": "16JTF25664AZ-1G4F"
|
||||
},
|
||||
{
|
||||
"format": "DIMM",
|
||||
"events": [],
|
||||
"interface": "DDR3",
|
||||
"serialNumber": "9A012F30",
|
||||
"size": 2048,
|
||||
"type": "RamModule",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"speed": 1333.0,
|
||||
"model": "16JTF25664AZ-1G4F"
|
||||
},
|
||||
{
|
||||
"format": "DIMM",
|
||||
"events": [
|
||||
],
|
||||
"interface": "DDR3",
|
||||
"serialNumber": "8F9F2E29",
|
||||
"size": 2048,
|
||||
"type": "RamModule",
|
||||
"manufacturer": "JEDEC ID:80 2C",
|
||||
"speed": 1333.0,
|
||||
"model": "16JTF25664AZ-1G4F"
|
||||
},
|
||||
{
|
||||
"cores": 2,
|
||||
"events": [
|
||||
{
|
||||
"rate": 23410.76,
|
||||
"type": "BenchmarkProcessor",
|
||||
"elapsed": 1
|
||||
},
|
||||
{
|
||||
"rate": 17.0186,
|
||||
"type": "BenchmarkProcessorSysbench",
|
||||
"elapsed": 18
|
||||
}
|
||||
],
|
||||
"serialNumber": null,
|
||||
"type": "Processor",
|
||||
"manufacturer": "Intel Corp.",
|
||||
"address": 64,
|
||||
"speed": 1.199,
|
||||
"model": "Intel Core i3 CPU 530 @ 2.93GHz"
|
||||
},
|
||||
{
|
||||
"events": [
|
||||
{
|
||||
"writeSpeed": 24.5,
|
||||
"readSpeed": 111.0,
|
||||
"type": "BenchmarkDataStorage",
|
||||
"elapsed": 14
|
||||
},
|
||||
{
|
||||
"status": "Unspecified Error. Self-test not started.",
|
||||
"error": true,
|
||||
"type": "TestDataStorage",
|
||||
"elapsed": 1,
|
||||
"length": Short
|
||||
}
|
||||
],
|
||||
"interface": "ATA",
|
||||
"serialNumber": "WD-WCAV2U909540",
|
||||
"size": 305245,
|
||||
"type": "HardDrive",
|
||||
"manufacturer": "Western Digital",
|
||||
"model": "WDC WD3200AAJS-6"
|
||||
},
|
||||
{
|
||||
"events": [],
|
||||
"serialNumber": null,
|
||||
"type": "SoundCard",
|
||||
"manufacturer": "Intel Corporation",
|
||||
"model": "5 Series/3400 Series Chipset High Definition Audio"
|
||||
},
|
||||
{
|
||||
"memory": 256.0,
|
||||
"events": [],
|
||||
"serialNumber": null,
|
||||
"type": "GraphicCard",
|
||||
"manufacturer": "Intel Corporation",
|
||||
"model": "Core Processor Integrated Graphics Controller"
|
||||
},
|
||||
{
|
||||
"events": [],
|
||||
"firewire": 0,
|
||||
"pcmcia": 0,
|
||||
"serialNumber": "CZC0408YJG",
|
||||
"slots": 0,
|
||||
"type": "Motherboard",
|
||||
"manufacturer": "Hewlett-Packard",
|
||||
"usb": 2,
|
||||
"serial": 0,
|
||||
"model": "304Ah"
|
||||
}
|
||||
],
|
||||
"software": "Workbench",
|
||||
"elapsed": 96,
|
||||
"version": "11.0a1",
|
||||
"expectedEvents": [
|
||||
"StressTest",
|
||||
"Benchmark",
|
||||
"SmartTest"
|
||||
],
|
||||
"device": {
|
||||
"events": [
|
||||
{
|
||||
"type": "StressTest",
|
||||
"elapsed": 60,
|
||||
"error": false
|
||||
},
|
||||
{
|
||||
"rate": 0.9759,
|
||||
"type": "BenchmarkRamSysbench",
|
||||
"elapsed": 1
|
||||
}
|
||||
],
|
||||
"serialNumber": "CZC0408YJG",
|
||||
"type": "Desktop",
|
||||
"manufacturer": "Hewlett-Packard",
|
||||
"chassis": "Tower",
|
||||
"model": "HP Compaq 8100 Elite SFF"
|
||||
},
|
||||
"type": "Snapshot",
|
||||
"endTime": "2018-06-29T12:28:54.508266"
|
||||
}
|
1
tests/files/real-hp.snapshot.11.yaml
Symbolic link
1
tests/files/real-hp.snapshot.11.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/real-hp.snapshot.11.yaml
|
|
@ -1,141 +0,0 @@
|
|||
{
|
||||
"expectedEvents": [
|
||||
"SmartTest",
|
||||
"Benchmark",
|
||||
"StressTest"
|
||||
],
|
||||
"endTime": "2018-06-29T15:29:29.322424",
|
||||
"elapsed": 391,
|
||||
"software": "Workbench",
|
||||
"components": [
|
||||
{
|
||||
"serialNumber": null,
|
||||
"interface": "DDR",
|
||||
"size": 1024,
|
||||
"manufacturer": null,
|
||||
"format": "SODIMM",
|
||||
"events": [
|
||||
],
|
||||
"speed": 533.0,
|
||||
"type": "RamModule",
|
||||
"model": null
|
||||
},
|
||||
{
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": [],
|
||||
"type": "SoundCard",
|
||||
"model": "NM10/ICH7 Family High Definition Audio Controller"
|
||||
},
|
||||
{
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Chicony Electronics Co., Ltd.",
|
||||
"events": [],
|
||||
"type": "SoundCard",
|
||||
"model": "USB2.0 UVC WebCam"
|
||||
},
|
||||
{
|
||||
"serialNumber": "00:23:08:a5:07:6d",
|
||||
"manufacturer": "Qualcomm Atheros",
|
||||
"events": [],
|
||||
"type": "NetworkAdapter",
|
||||
"wireless": true,
|
||||
"model": "AR9285 Wireless Network Adapter"
|
||||
},
|
||||
{
|
||||
"serialNumber": "00:23:5a:fe:d7:14",
|
||||
"manufacturer": "Realtek Semiconductor Co., Ltd.",
|
||||
"events": [],
|
||||
"speed": 100,
|
||||
"type": "NetworkAdapter",
|
||||
"wireless": false,
|
||||
"model": "RTL810xE PCI Express Fast Ethernet controller"
|
||||
},
|
||||
{
|
||||
"serialNumber": null,
|
||||
"address": 32,
|
||||
"manufacturer": "Intel Corp.",
|
||||
"events": [
|
||||
{
|
||||
"rate": 171.3049,
|
||||
"type": "BenchmarkProcessorSysbench",
|
||||
"elapsed": 171
|
||||
},
|
||||
{
|
||||
"rate": 6383.9,
|
||||
"type": "BenchmarkProcessor",
|
||||
"elapsed": 1
|
||||
}
|
||||
],
|
||||
"speed": 1.3330000000000002,
|
||||
"type": "Processor",
|
||||
"model": "Intel Atom CPU N270 @ 1.60GHz"
|
||||
},
|
||||
{
|
||||
"memory": 256.0,
|
||||
"serialNumber": null,
|
||||
"manufacturer": "Intel Corporation",
|
||||
"events": [],
|
||||
"type": "GraphicCard",
|
||||
"model": "Mobile 945GSE Express Integrated Graphics Controller"
|
||||
},
|
||||
{
|
||||
"serialNumber": "090623PB5B00QCGREMAH",
|
||||
"interface": "ATA",
|
||||
"size": 152627,
|
||||
"manufacturer": "Hitachi",
|
||||
"events": [
|
||||
{
|
||||
"elapsed": 71,
|
||||
"readSpeed": 19.1,
|
||||
"type": "BenchmarkDataStorage",
|
||||
"writeSpeed": 4.7
|
||||
},
|
||||
{
|
||||
"elapsed": 2,
|
||||
"status": "Unspecified Error. Self-test not started.",
|
||||
"type": "TestDataStorage",
|
||||
"length": Short,
|
||||
"error": true
|
||||
}
|
||||
],
|
||||
"type": "HardDrive",
|
||||
"model": "HTS54501"
|
||||
},
|
||||
{
|
||||
"slots": 0,
|
||||
"serialNumber": "0123456789AB",
|
||||
"manufacturer": "TOSHIBA",
|
||||
"firewire": 0,
|
||||
"events": [],
|
||||
"pcmcia": 0,
|
||||
"usb": 5,
|
||||
"serial": 1,
|
||||
"type": "Motherboard",
|
||||
"model": "KAVAA"
|
||||
}
|
||||
],
|
||||
"version": "11.0a1",
|
||||
"device": {
|
||||
"serialNumber": "79545417K",
|
||||
"manufacturer": "TOSHIBA",
|
||||
"events": [
|
||||
{
|
||||
"type": "StressTest",
|
||||
"error": false,
|
||||
"elapsed": 120
|
||||
},
|
||||
{
|
||||
"rate": 19.0443,
|
||||
"type": "BenchmarkRamSysbench",
|
||||
"elapsed": 19
|
||||
}
|
||||
],
|
||||
"type": "Laptop",
|
||||
"chassis": "Netbook",
|
||||
"model": "NB200"
|
||||
},
|
||||
"uuid": "918726ae-c6bc-40aa-97cf-ad80d69268f9",
|
||||
"closed": false,
|
||||
"type": "Snapshot"
|
||||
}
|
1
tests/files/real-toshiba.snapshot.11.yaml
Symbolic link
1
tests/files/real-toshiba.snapshot.11.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/real-toshiba.snapshot.11.yaml
|
|
@ -1,85 +0,0 @@
|
|||
# A Snapshot Phase 1 with a device
|
||||
# and 1 GraphicCard, 2 RamModule, 1 Processor, 1 SSD, 1 HDD, 1 Motherboard
|
||||
# Prerequisites:
|
||||
# - 2 tags: tag1 and tag2 from the default org
|
||||
# All numbers are invented
|
||||
|
||||
|
||||
type: Snapshot
|
||||
uuid: cb8ce6b5-6a1b-4084-b5b9-d8fadad2a015
|
||||
version: '11.0'
|
||||
software: Workbench
|
||||
expectedEvents: [TestDataStorage, StressTest, EraseSectors, Install]
|
||||
elapsed: 500
|
||||
device:
|
||||
type: Desktop
|
||||
chassis: Tower
|
||||
serialNumber: d1s
|
||||
model: d1ml
|
||||
manufacturer: d1mr
|
||||
tags:
|
||||
- type: Tag
|
||||
id: tag1
|
||||
events:
|
||||
- type: WorkbenchRate
|
||||
appearanceRange: A
|
||||
functionalityRange: B
|
||||
- type: BenchmarkRamSysbench
|
||||
rate: 2444
|
||||
components:
|
||||
- type: GraphicCard
|
||||
serialNumber: gc1-1s
|
||||
model: gc1-1ml
|
||||
manufacturer: gc1-1mr
|
||||
- type: RamModule
|
||||
serialNumber: rm1-1s
|
||||
model: rm1-1ml
|
||||
manufacturer: rm1-1mr
|
||||
- type: RamModule
|
||||
serialNumber: rm2-1s
|
||||
model: rm2-1ml
|
||||
manufacturer: rm2-1mr
|
||||
- type: Processor
|
||||
model: p1-1s
|
||||
manufacturer: p1-1mr
|
||||
events:
|
||||
- type: BenchmarkProcessor
|
||||
rate: 2410
|
||||
- type: BenchmarkProcessorSysbench
|
||||
rate: 4400
|
||||
- type: SolidStateDrive
|
||||
serialNumber: ssd1-1s
|
||||
model: ssd1-1ml
|
||||
manufacturer: ssd1-1mr
|
||||
events:
|
||||
- type: BenchmarkDataStorage
|
||||
readSpeed: 20
|
||||
writeSpeed: 15
|
||||
elapsed: 21
|
||||
- type: TestDataStorage
|
||||
elapsed: 233
|
||||
error: False
|
||||
status: Completed without error
|
||||
length: Short
|
||||
lifetime: 99
|
||||
assessment: True
|
||||
powerCycleCount: 11
|
||||
reallocatedSectorCount: 2
|
||||
powerCycleCount: 4
|
||||
reportedUncorrectableErrors: 1
|
||||
commandTimeout: 11
|
||||
currentPendingSectorCount: 1
|
||||
offlineUncorrectable: 33
|
||||
remainingLifetimePercentage: 1
|
||||
- type: HardDrive
|
||||
serialNumber: hdd1-1s
|
||||
model: hdd1-1ml
|
||||
manufacturer: hdd1-1mr
|
||||
events:
|
||||
- type: BenchmarkDataStorage
|
||||
readSpeed: 10
|
||||
writeSpeed: 5
|
||||
- type: Motherboard
|
||||
serialNumber: mb1-1s
|
||||
model: mb1-1ml
|
||||
manufacturer: mb1-1mr
|
1
tests/files/workbench-server-1.snapshot.yaml
Symbolic link
1
tests/files/workbench-server-1.snapshot.yaml
Symbolic link
|
@ -0,0 +1 @@
|
|||
../../ereuse_devicehub/dummy/files/workbench-server-1.snapshot.yaml
|
|
@ -22,10 +22,10 @@ from ereuse_devicehub.resources.tag.model import Tag
|
|||
from ereuse_devicehub.resources.user import User
|
||||
from ereuse_utils.naming import Naming
|
||||
from teal.db import ResourceNotFound
|
||||
from tests.conftest import file
|
||||
from tests import conftest
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_device_model():
|
||||
"""
|
||||
Tests that the correctness of the device model and its relationships.
|
||||
|
@ -69,7 +69,7 @@ def test_device_model():
|
|||
assert GraphicCard.query.first() is None, 'We should have deleted it –it was inside the pc'
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_device_schema():
|
||||
"""Ensures the user does not upload non-writable or extra fields."""
|
||||
device_s = DeviceS()
|
||||
|
@ -77,7 +77,7 @@ def test_device_schema():
|
|||
device_s.dump(Device(id=1))
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_physical_properties():
|
||||
c = Motherboard(slots=2,
|
||||
usb=3,
|
||||
|
@ -107,9 +107,9 @@ def test_physical_properties():
|
|||
}
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_component_similar_one():
|
||||
snapshot = file('pc-components.db')
|
||||
snapshot = conftest.file('pc-components.db')
|
||||
d = snapshot['device']
|
||||
snapshot['components'][0]['serial_number'] = snapshot['components'][1]['serial_number'] = None
|
||||
pc = Desktop(**d, components=OrderedSet(Component(**c) for c in snapshot['components']))
|
||||
|
@ -135,7 +135,7 @@ def test_add_remove():
|
|||
# pc has c1 and c2
|
||||
# pc2 has c3
|
||||
# c4 is not with any pc
|
||||
values = file('pc-components.db')
|
||||
values = conftest.file('pc-components.db')
|
||||
pc = values['device']
|
||||
c1, c2 = (Component(**c) for c in values['components'])
|
||||
pc = Desktop(**pc, components=OrderedSet([c1, c2]))
|
||||
|
@ -160,13 +160,13 @@ def test_add_remove():
|
|||
assert events[0].components == OrderedSet([c3])
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_run_components_empty():
|
||||
"""
|
||||
Syncs a device that has an empty components list. The system should
|
||||
remove all the components from the device.
|
||||
"""
|
||||
s = file('pc-components.db')
|
||||
s = conftest.file('pc-components.db')
|
||||
pc = Desktop(**s['device'], components=OrderedSet(Component(**c) for c in s['components']))
|
||||
db.session.add(pc)
|
||||
db.session.commit()
|
||||
|
@ -178,13 +178,13 @@ def test_sync_run_components_empty():
|
|||
assert not pc.components
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_run_components_none():
|
||||
"""
|
||||
Syncs a device that has a None components. The system should
|
||||
keep all the components from the device.
|
||||
"""
|
||||
s = file('pc-components.db')
|
||||
s = conftest.file('pc-components.db')
|
||||
pc = Desktop(**s['device'], components=OrderedSet(Component(**c) for c in s['components']))
|
||||
db.session.add(pc)
|
||||
db.session.commit()
|
||||
|
@ -196,48 +196,48 @@ def test_sync_run_components_none():
|
|||
assert db_pc.components == pc.components
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_Desktop_new_Desktop_no_tag():
|
||||
"""
|
||||
Syncs a new Desktop with HID and without a tag, creating it.
|
||||
:return:
|
||||
"""
|
||||
# Case 1: device does not exist on DB
|
||||
pc = Desktop(**file('pc-components.db')['device'])
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
db_pc = Sync().execute_register(pc)
|
||||
assert pc.physical_properties == db_pc.physical_properties
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_Desktop_existing_no_tag():
|
||||
"""
|
||||
Syncs an existing Desktop with HID and without a tag.
|
||||
"""
|
||||
pc = Desktop(**file('pc-components.db')['device'])
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
db.session.add(pc)
|
||||
db.session.commit()
|
||||
|
||||
pc = Desktop(**file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
# 1: device exists on DB
|
||||
db_pc = Sync().execute_register(pc)
|
||||
assert pc.physical_properties == db_pc.physical_properties
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_Desktop_no_hid_no_tag():
|
||||
"""
|
||||
Syncs a Desktop without HID and no tag.
|
||||
|
||||
This should fail as we don't have a way to identify it.
|
||||
"""
|
||||
pc = Desktop(**file('pc-components.db')['device'])
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
# 1: device has no HID
|
||||
pc.hid = pc.model = None
|
||||
with pytest.raises(NeedsId):
|
||||
Sync().execute_register(pc)
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_Desktop_tag_not_linked():
|
||||
"""
|
||||
Syncs a new Desktop with HID and a non-linked tag.
|
||||
|
@ -249,14 +249,14 @@ def test_sync_execute_register_Desktop_tag_not_linked():
|
|||
db.session.commit()
|
||||
|
||||
# Create a new transient non-db object
|
||||
pc = Desktop(**file('pc-components.db')['device'], tags=OrderedSet([Tag(id='FOO')]))
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'], tags=OrderedSet([Tag(id='FOO')]))
|
||||
returned_pc = Sync().execute_register(pc)
|
||||
assert returned_pc == pc
|
||||
assert tag.device == pc, 'Tag has to be linked'
|
||||
assert Desktop.query.one() == pc, 'Desktop had to be set to db'
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_no_hid_tag_not_linked(tag_id: str):
|
||||
"""
|
||||
Validates registering a Desktop without HID and a non-linked tag.
|
||||
|
@ -266,7 +266,7 @@ def test_sync_execute_register_no_hid_tag_not_linked(tag_id: str):
|
|||
be linked), and thus it creates a new Desktop.
|
||||
"""
|
||||
tag = Tag(id=tag_id)
|
||||
pc = Desktop(**file('pc-components.db')['device'], tags=OrderedSet([tag]))
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'], tags=OrderedSet([tag]))
|
||||
returned_pc = Sync().execute_register(pc)
|
||||
db.session.commit()
|
||||
assert returned_pc == pc
|
||||
|
@ -279,7 +279,7 @@ def test_sync_execute_register_no_hid_tag_not_linked(tag_id: str):
|
|||
assert Desktop.query.one() == pc, 'Desktop had to be set to db'
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_tag_does_not_exist():
|
||||
"""
|
||||
Ensures not being able to register if the tag does not exist,
|
||||
|
@ -287,12 +287,12 @@ def test_sync_execute_register_tag_does_not_exist():
|
|||
|
||||
Tags have to be created before trying to link them through a Snapshot.
|
||||
"""
|
||||
pc = Desktop(**file('pc-components.db')['device'], tags=OrderedSet([Tag()]))
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device'], tags=OrderedSet([Tag()]))
|
||||
with raises(ResourceNotFound):
|
||||
Sync().execute_register(pc)
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_tag_linked_same_device():
|
||||
"""
|
||||
If the tag is linked to the device, regardless if it has HID,
|
||||
|
@ -300,11 +300,11 @@ def test_sync_execute_register_tag_linked_same_device():
|
|||
(If it has HID it validates both HID and tag point at the same
|
||||
device, this his checked in ).
|
||||
"""
|
||||
orig_pc = Desktop(**file('pc-components.db')['device'])
|
||||
orig_pc = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
db.session.add(Tag(id='foo', device=orig_pc))
|
||||
db.session.commit()
|
||||
|
||||
pc = Desktop(**file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc = Desktop(**conftest.file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc.tags.add(Tag(id='foo'))
|
||||
db_pc = Sync().execute_register(pc)
|
||||
assert db_pc.id == orig_pc.id
|
||||
|
@ -312,28 +312,28 @@ def test_sync_execute_register_tag_linked_same_device():
|
|||
assert next(iter(db_pc.tags)).id == 'foo'
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_tag_linked_other_device_mismatch_between_tags():
|
||||
"""
|
||||
Checks that sync raises an error if finds that at least two passed-in
|
||||
tags are not linked to the same device.
|
||||
"""
|
||||
pc1 = Desktop(**file('pc-components.db')['device'])
|
||||
pc1 = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
db.session.add(Tag(id='foo-1', device=pc1))
|
||||
pc2 = Desktop(**file('pc-components.db')['device'])
|
||||
pc2 = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
pc2.serial_number = 'pc2-serial'
|
||||
pc2.hid = Naming.hid(pc2.manufacturer, pc2.serial_number, pc2.model)
|
||||
db.session.add(Tag(id='foo-2', device=pc2))
|
||||
db.session.commit()
|
||||
|
||||
pc1 = Desktop(**file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc1 = Desktop(**conftest.file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc1.tags.add(Tag(id='foo-1'))
|
||||
pc1.tags.add(Tag(id='foo-2'))
|
||||
with raises(MismatchBetweenTags):
|
||||
Sync().execute_register(pc1)
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_sync_execute_register_mismatch_between_tags_and_hid():
|
||||
"""
|
||||
Checks that sync raises an error if it finds that the HID does
|
||||
|
@ -341,15 +341,15 @@ def test_sync_execute_register_mismatch_between_tags_and_hid():
|
|||
|
||||
In this case we set HID -> pc1 but tag -> pc2
|
||||
"""
|
||||
pc1 = Desktop(**file('pc-components.db')['device'])
|
||||
pc1 = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
db.session.add(Tag(id='foo-1', device=pc1))
|
||||
pc2 = Desktop(**file('pc-components.db')['device'])
|
||||
pc2 = Desktop(**conftest.file('pc-components.db')['device'])
|
||||
pc2.serial_number = 'pc2-serial'
|
||||
pc2.hid = Naming.hid(pc2.manufacturer, pc2.serial_number, pc2.model)
|
||||
db.session.add(Tag(id='foo-2', device=pc2))
|
||||
db.session.commit()
|
||||
|
||||
pc1 = Desktop(**file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc1 = Desktop(**conftest.file('pc-components.db')['device']) # Create a new transient non-db object
|
||||
pc1.tags.add(Tag(id='foo-2'))
|
||||
with raises(MismatchBetweenTagsAndHid):
|
||||
Sync().execute_register(pc1)
|
||||
|
@ -418,7 +418,7 @@ def test_get_devices(app: Devicehub, user: UserClient):
|
|||
'NetworkAdapter', 'GraphicCard')
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_computer_monitor():
|
||||
m = ComputerMonitor(technology=DisplayTech.LCD,
|
||||
manufacturer='foo',
|
||||
|
|
|
@ -8,10 +8,10 @@ from ereuse_devicehub.resources.enums import ComputerChassis
|
|||
from ereuse_devicehub.resources.event.models import Snapshot
|
||||
from ereuse_devicehub.resources.inventory import Filters, Inventory, Sorting
|
||||
from teal.utils import compiled
|
||||
from tests.conftest import file
|
||||
from tests import conftest
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_inventory_filters():
|
||||
schema = Filters()
|
||||
q = schema.load({
|
||||
|
@ -43,7 +43,7 @@ def test_inventory_filters():
|
|||
'Server', 'Dell%', 'Computer', 'bcn-%'}
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_inventory_sort():
|
||||
schema = Sorting()
|
||||
r = next(schema.load({'created': True}))
|
||||
|
@ -96,7 +96,7 @@ def test_inventory_query_filter_sort(user: UserClient):
|
|||
|
||||
def test_inventory_query(user: UserClient):
|
||||
"""Checks result of inventory."""
|
||||
user.post(file('basic.snapshot'), res=Snapshot)
|
||||
user.post(conftest.file('basic.snapshot'), res=Snapshot)
|
||||
i, _ = user.get(res=Inventory)
|
||||
pc = next(d for d in i['devices'] if d['type'] == 'Desktop')
|
||||
assert len(pc['events']) == 4
|
||||
|
|
|
@ -12,9 +12,10 @@ from ereuse_devicehub.resources.tag import Tag
|
|||
from ereuse_devicehub.resources.tag.view import CannotCreateETag, TagNotLinked
|
||||
from teal.db import MultipleResourcesFound, ResourceNotFound
|
||||
from teal.marshmallow import ValidationError
|
||||
from tests import conftest
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_create_tag():
|
||||
"""Creates a tag specifying a custom organization."""
|
||||
org = Organization(name='Bar', tax_id='BarTax')
|
||||
|
@ -23,7 +24,7 @@ def test_create_tag():
|
|||
db.session.commit()
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_create_tag_default_org():
|
||||
"""Creates a tag using the default organization."""
|
||||
tag = Tag(id='foo-1')
|
||||
|
@ -36,14 +37,14 @@ def test_create_tag_default_org():
|
|||
assert tag.org.name == 'FooOrg' # as defined in the settings
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_create_tag_no_slash():
|
||||
"""Checks that no tags can be created that contain a slash."""
|
||||
with raises(ValidationError):
|
||||
Tag(id='/')
|
||||
|
||||
|
||||
@pytest.mark.usefixtures('app_context')
|
||||
@pytest.mark.usefixtures(conftest.app_context.__name__)
|
||||
def test_create_two_same_tags():
|
||||
"""Ensures there cannot be two tags with the same ID and organization."""
|
||||
db.session.add(Tag(id='foo-bar'))
|
||||
|
|
Reference in a new issue