Esempio n. 1
0
def test_bug_split_slots():

    v = [(20, 69, [(31, 32)]),
         (70, 79, [(1, 15), (31, 32)]),
         (80, 2147483599, [(1, 32)]),
         (2147483600, 2147483647, [])
         ]

    # res = [(1, 32)]
    s1 = Slot(1, 0, 4, [(16, 32)], 20, 69)
    s2 = Slot(2, 1, 0, [], 2147483600, 2147483647)
    s4 = Slot(4, 1, 2, [(1, 32)], 70, 2147483599)

    slts = dict(((s.id, s) for s in [s1, s2, s4]))
    ss = SlotSet(slts)

    j2 = JobPseudo(id=2,
                   start_time=20,
                   walltime=60,
                   res_set=[(16, 30)],
                   ts=False,
                   ph=0)

    ss.split_slots(1, 4, j2)
    assert compare_slots_val_ref(ss.slots, v)
Esempio n. 2
0
def test_split_slots_bc():
    v = [(1, 10, [(1, 9), (21, 32)]), (11, 20, [(1, 32)])]

    j1 = JobPseudo(id=1,
                   start_time=1,
                   walltime=10,
                   res_set=[(10, 20)],
                   moldable_id=1,
                   ts=False,
                   ph=0)

    ss = SlotSet(Slot(1, 0, 0, [(1, 32)], 1, 20))
    ss.split_slots(1, 1, j1)
    assert compare_slots_val_ref(ss.slots, v)