fixed test

This commit is contained in:
Cayo Puigdefabregas 2021-01-25 16:10:23 +01:00
parent c3b860b69c
commit 1e50386b93
2 changed files with 23 additions and 8 deletions

View File

@ -72,6 +72,7 @@ class Sync:
# We only want to perform Add/Remove to not new components # We only want to perform Add/Remove to not new components
actions = self.add_remove(db_device, not_new_components) actions = self.add_remove(db_device, not_new_components)
db_device.components = db_components db_device.components = db_components
self.change_parent_actions_components(db_device)
return db_device, actions return db_device, actions
def execute_register_component(self, def execute_register_component(self,
@ -245,6 +246,13 @@ class Sync:
actions.add(Remove(device=parent, components=set_components)) actions.add(Remove(device=parent, components=set_components))
return actions return actions
@staticmethod
def change_parent_actions_components(device: Computer):
# import pdb; pdb.set_trace()
for c in set(device.components):
for act in c.actions:
act.parent = device
class MismatchBetweenTags(ValidationError): class MismatchBetweenTags(ValidationError):
def __init__(self, def __init__(self,

View File

@ -201,11 +201,13 @@ def test_snapshot_component_add_remove(user: UserClient):
# PC1 # PC1
assert tuple(c['serialNumber'] for c in pc1['components']) == ('p1c1s', 'p1c3s') assert tuple(c['serialNumber'] for c in pc1['components']) == ('p1c1s', 'p1c3s')
assert all(c['parent'] == pc1_id for c in pc1['components']) assert all(c['parent'] == pc1_id for c in pc1['components'])
assert tuple(e['type'] for e in pc1['actions']) == ('BenchmarkProcessor', 'Snapshot', 'RateComputer', 'Remove') assert tuple(e['type'] for e in pc1['actions']) == ('Snapshot', 'RateComputer', 'Remove')
# PC2 # PC2
assert tuple(c['serialNumber'] for c in pc2['components']) == ('p1c2s', 'p2c1s') assert tuple(c['serialNumber'] for c in pc2['components']) == ('p1c2s', 'p2c1s')
assert all(c['parent'] == pc2_id for c in pc2['components']) assert all(c['parent'] == pc2_id for c in pc2['components'])
assert tuple(e['type'] for e in pc2['actions']) == ('Snapshot', 'RateComputer') assert tuple(e['type'] for e in pc2['actions']) == (
'BenchmarkProcessor', 'Snapshot', 'RateComputer', 'Snapshot', 'Remove', 'RateComputer'
)
# p1c2s has two Snapshots, a Remove and an Add # p1c2s has two Snapshots, a Remove and an Add
p1c2s, _ = user.get(res=m.Device, item=pc2['components'][0]['id']) p1c2s, _ = user.get(res=m.Device, item=pc2['components'][0]['id'])
assert tuple(e['type'] for e in p1c2s['actions']) == ( assert tuple(e['type'] for e in p1c2s['actions']) == (
@ -230,12 +232,16 @@ def test_snapshot_component_add_remove(user: UserClient):
assert {c['serialNumber'] for c in pc1['components']} == {'p1c2s', 'p1c3s'} assert {c['serialNumber'] for c in pc1['components']} == {'p1c2s', 'p1c3s'}
assert all(c['parent'] == pc1_id for c in pc1['components']) assert all(c['parent'] == pc1_id for c in pc1['components'])
assert tuple(get_actions_info(pc1['actions'])) == ( assert tuple(get_actions_info(pc1['actions'])) == (
# id, type, components, snapshot ('BenchmarkProcessor', []),
('BenchmarkProcessor', []), # first BenchmarkProcessor ('Snapshot', ['p1c1s', 'p1c2s', 'p1c3s']),
('Snapshot', ['p1c1s', 'p1c2s', 'p1c3s']), # first Snapshot1 ('Snapshot', ['p1c1s', 'p1c2s', 'p1c3s']),
('RateComputer', ['p1c1s', 'p1c2s', 'p1c3s']),
('RateComputer', ['p1c1s', 'p1c2s', 'p1c3s']), ('RateComputer', ['p1c1s', 'p1c2s', 'p1c3s']),
('Remove', ['p1c2s']), # Remove Processor in Snapshot2 ('Snapshot', ['p1c2s', 'p2c1s']),
('Snapshot', ['p1c2s', 'p1c3s']), # This Snapshot3 ('Remove', ['p1c2s']), ('Remove', ['p1c2s']),
('RateComputer', ['p1c2s', 'p2c1s']),
('Snapshot', ['p1c2s', 'p1c3s']),
('Remove', ['p1c2s']),
('RateComputer', ['p1c2s', 'p1c3s']) ('RateComputer', ['p1c2s', 'p1c3s'])
) )
# PC2 # PC2
@ -480,8 +486,9 @@ def test_test_data_storage(user: UserClient):
assert incidence_test['severity'] == 'Error' assert incidence_test['severity'] == 'Error'
@pytest.mark.mvp
@pytest.mark.usefixtures(conftest.app_context.__name__) @pytest.mark.usefixtures(conftest.app_context.__name__)
def test_erase(user: UserClient): def test_erase_changing_hdd_between_pcs(user: UserClient):
"""Tests when we erase one device and next change the disk in other device we """Tests when we erase one device and next change the disk in other device we
want see in the second device the disks erase.""" want see in the second device the disks erase."""
s1 = file('erase-sectors-2-hdd.snapshot') s1 = file('erase-sectors-2-hdd.snapshot')