def test_history(self): """ History """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', [ '5', ], 'invenio'), ]) history = dictify(['1', '2', '4'], value=1) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades, history)), "[3, 5, 6]") history = dictify(['3', '5'], value=1) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades, history)), "[6]")
def test_missing_dependency(): """Missing dependency 0.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1'], 'invenio'), create_upgrade('3', ['1', '0'], 'invenio'), ]) m = InvenioUpgrader() with pytest.raises(Exception): m.order_upgrades(upgrades)
def test_cycle_graph(): """Cycle 2, 4, 3.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1', '3'], 'invenio'), create_upgrade('3', ['1', '4'], 'invenio'), create_upgrade('4', ['2'], 'invenio'), create_upgrade('5', ['3', '4'], 'invenio'), create_upgrade('6', ['5', ], 'invenio'), ]) m = InvenioUpgrader() with pytest.raises(Exception): m.order_upgrades(upgrades)
def test_two_graphs(self): """ Two independent graphs """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('a', [], 'other'), TestUpgrade('b', ['a'], 'other'), TestUpgrade('c', ['a'], 'other'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', [ '5', ], 'invenio'), TestUpgrade('d', ['b'], 'other'), TestUpgrade('e', ['c', 'd'], 'other'), TestUpgrade('f', [ 'e', ], 'other'), ]) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6, a, b, d, c, e, f]")
def test_two_graphs(self): """ Two independent graphs """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify( [ TestUpgrade("1", [], "invenio"), TestUpgrade("2", ["1"], "invenio"), TestUpgrade("3", ["1"], "invenio"), TestUpgrade("a", [], "other"), TestUpgrade("b", ["a"], "other"), TestUpgrade("c", ["a"], "other"), TestUpgrade("4", ["2"], "invenio"), TestUpgrade("5", ["3", "4"], "invenio"), TestUpgrade("6", ["5"], "invenio"), TestUpgrade("d", ["b"], "other"), TestUpgrade("e", ["c", "d"], "other"), TestUpgrade("f", ["e"], "other"), ] ) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6, a, b, d, c, e, f]")
def test_cross_graph_dependency(): """Missing dependency 0.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1'], 'invenio'), create_upgrade('3', ['1', 'b'], 'invenio'), create_upgrade('a', [], 'other'), create_upgrade('b', ['a'], 'other'), create_upgrade('c', ['2'], 'other'), ]) m = InvenioUpgrader() # self.assertRaises(Exception, m.order_upgrades, upgrades) assert upgrades_str(m.order_upgrades(upgrades)) in [ "[1, 2, c, a, b, 3]", "[1, 2, a, c, b, 3]", "[1, 2, a, b, c, 3]", "[1, 2, a, b, 3, c]", "[1, a, 2, b, c, 3]", "[1, a, 2, b, 3, c]", "[1, a, 2, c, b, 3]", "[1, a, b, 2, c, 3]", "[1, a, b, 2, 3, c]", "[1, a, b, 3, 2, c]", "[a, 1, 2, c, b, 3]", "[a, 1, 2, b, c, 3]", "[a, 1, 2, b, 3, c]", "[a, 1, b, 3, 2, c]", "[a, 1, b, 2, 3, c]", "[a, 1, b, 2, c, 3]", "[a, b, 1, 3, 2, c]", "[a, b, 1, 2, c, 3]", "[a, b, 1, 2, 3, c]" ]
def test_two_graphs(self): """ Two independent graphs """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('a', [], 'other'), TestUpgrade('b', ['a'], 'other'), TestUpgrade('c', ['a'], 'other'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', ['5', ], 'invenio'), TestUpgrade('d', ['b'], 'other'), TestUpgrade('e', ['c', 'd'], 'other'), TestUpgrade('f', ['e', ], 'other'), ]) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6, a, b, d, c, e, f]")
def test_history(): """History.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1'], 'invenio'), create_upgrade('3', ['1'], 'invenio'), create_upgrade('4', ['2'], 'invenio'), create_upgrade('5', ['3', '4'], 'invenio'), create_upgrade('6', ['5', ], 'invenio'), ]) history = dictify(['1', '2', '4'], value=1) m = InvenioUpgrader() assert upgrades_str(m.order_upgrades(upgrades, history)) == "[3, 5, 6]" history = dictify(['3', '5'], value=1) m = InvenioUpgrader() assert upgrades_str(m.order_upgrades(upgrades, history)) == "[6]"
def test_history(self): """ History """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', ['5', ], 'invenio'), ]) history = dictify(['1', '2', '4'], value=1) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades, history)), "[3, 5, 6]") history = dictify(['3', '5'], value=1) m = InvenioUpgrader() self.assertEqual( upgrades_str(m.order_upgrades(upgrades, history)), "[6]")
def test_history(self): """ History """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify( [ TestUpgrade("1", [], "invenio"), TestUpgrade("2", ["1"], "invenio"), TestUpgrade("3", ["1"], "invenio"), TestUpgrade("4", ["2"], "invenio"), TestUpgrade("5", ["3", "4"], "invenio"), TestUpgrade("6", ["5"], "invenio"), ] ) history = dictify(["1", "2", "4"], value=1) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades, history)), "[3, 5, 6]") history = dictify(["3", "5"], value=1) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades, history)), "[6]")
def test_normal_graph(): """Normal dependency graph.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1'], 'invenio'), create_upgrade('3', ['1'], 'invenio'), create_upgrade('4', ['2'], 'invenio'), create_upgrade('5', ['3', '4'], 'invenio'), create_upgrade('6', ['5', ], 'invenio'), ]) m = InvenioUpgrader() assert upgrades_str(m.order_upgrades(upgrades)) in [ "[1, 2, 3, 4, 5, 6]", "[1, 2, 4, 3, 5, 6]", "[1, 3, 2, 4, 5, 6]", ]
def test_normal(self): """ Normal dependency graph """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', ['5', ], 'invenio'), ]) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6]")
def test_cross_graph_dependency(self): """ Missing dependency 0 """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1', 'b'], 'invenio'), TestUpgrade('a', [], 'other'), TestUpgrade('b', ['a'], 'other'), TestUpgrade('c', ['2'], 'other'), ]) m = InvenioUpgrader() #self.assertRaises(StandardError, m.order_upgrades, upgrades) self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, c, a, b, 3]")
def test_cross_graph_dependency(self): """ Missing dependency 0 """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1', 'b'], 'invenio'), TestUpgrade('a', [], 'other'), TestUpgrade('b', ['a'], 'other'), TestUpgrade('c', ['2'], 'other'), ]) m = InvenioUpgrader() #self.assertRaises(StandardError, m.order_upgrades, upgrades) self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, c, a, b, 3]")
def test_normal(self): """ Normal dependency graph """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify( [ TestUpgrade("1", [], "invenio"), TestUpgrade("2", ["1"], "invenio"), TestUpgrade("3", ["1"], "invenio"), TestUpgrade("4", ["2"], "invenio"), TestUpgrade("5", ["3", "4"], "invenio"), TestUpgrade("6", ["5"], "invenio"), ] ) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6]")
def test_normal(self): """ Normal dependency graph """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ TestUpgrade('1', [], 'invenio'), TestUpgrade('2', ['1'], 'invenio'), TestUpgrade('3', ['1'], 'invenio'), TestUpgrade('4', ['2'], 'invenio'), TestUpgrade('5', ['3', '4'], 'invenio'), TestUpgrade('6', [ '5', ], 'invenio'), ]) m = InvenioUpgrader() self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, 4, 3, 5, 6]")
def test_two_graphs_graphs(): """Two independent graphs.""" from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify([ create_upgrade('1', [], 'invenio'), create_upgrade('2', ['1'], 'invenio'), create_upgrade('3', ['1'], 'invenio'), create_upgrade('a', [], 'other'), create_upgrade('b', ['a'], 'other'), create_upgrade('c', ['a'], 'other'), create_upgrade('4', ['2'], 'invenio'), create_upgrade('5', ['3', '4'], 'invenio'), create_upgrade('6', ['5', ], 'invenio'), create_upgrade('d', ['b'], 'other'), create_upgrade('e', ['c', 'd'], 'other'), create_upgrade('f', ['e', ], 'other'), ]) m = InvenioUpgrader() assert upgrades_str(m.order_upgrades(upgrades)) in [ "[1, 2, 4, 3, 5, 6, a, b, d, c, e, f]", "[1, 2, 4, 3, 5, 6, a, b, c, d, e, f]", "[1, 2, 4, 3, 5, 6, a, c, b, d, e, f]", "[1, 2, 3, 4, 5, 6, a, b, d, c, e, f]", "[1, 2, 3, 4, 5, 6, a, b, c, d, e, f]", "[1, 2, 3, 4, 5, 6, a, c, b, d, e, f]", "[1, 3, 2, 4, 5, 6, a, b, d, c, e, f]", "[1, 3, 2, 4, 5, 6, a, b, c, d, e, f]", "[1, 3, 2, 4, 5, 6, a, c, b, d, e, f]", "[a, b, d, c, e, f, 1, 2, 4, 3, 5, 6]", "[a, b, c, d, e, f, 1, 2, 4, 3, 5, 6]", "[a, c, b, d, e, f, 1, 2, 4, 3, 5, 6]", "[a, b, d, c, e, f, 1, 2, 3, 4, 5, 6]", "[a, b, c, d, e, f, 1, 2, 3, 4, 5, 6]", "[a, c, b, d, e, f, 1, 2, 3, 4, 5, 6]", "[a, b, d, c, e, f, 1, 3, 2, 4, 5, 6]", "[a, b, c, d, e, f, 1, 3, 2, 4, 5, 6]", "[a, c, b, d, e, f, 1, 3, 2, 4, 5, 6]", ]
def test_cross_graph_dependency(self): """ Missing dependency 0 """ from invenio_upgrader.engine import InvenioUpgrader upgrades = dictify( [ TestUpgrade("1", [], "invenio"), TestUpgrade("2", ["1"], "invenio"), TestUpgrade("3", ["1", "b"], "invenio"), TestUpgrade("a", [], "other"), TestUpgrade("b", ["a"], "other"), TestUpgrade("c", ["2"], "other"), ] ) m = InvenioUpgrader() # self.assertRaises(StandardError, m.order_upgrades, upgrades) self.assertEqual(upgrades_str(m.order_upgrades(upgrades)), "[1, 2, c, a, b, 3]")