Exemple #1
0
    def test_validation(self):
        with self.assertRaisesRegex(AttributeError, "'input' attribute should be a list"):
            backtrack = Backtrack('1,2,3,4,5')

        with self.assertRaisesRegex(AttributeError, "'input' attribute should be a list"):
            backtrack = Backtrack([])

        with self.assertRaisesRegex(ValueError, "The element on position 0 should be integer or float number"):
            backtrack = Backtrack(['1asdf', 2, 3, 4, 5])
Exemple #2
0
    def test_algorithm_valley(self):
        backtrack = Backtrack([1, 1, 2, 3, 4, 5])

        backtrack._Backtrack__permutation = [3, 1, 1, 2, 4, 5]
        self.assertTrue(backtrack.valley())

        backtrack._Backtrack__permutation = [3, 1, 2, 1, 4, 5]
        self.assertFalse(backtrack.valley())
Exemple #3
0
__author__ = 'Călin Sălăgean'

from lib.backtrack import Backtrack


while True:
    command = input('Type exit or press enter to continue: ')

    if command == 'exit':
        break

    list = []

    while True:
        elem = input('Integer or float: ')
        try:
            int(elem)
            float(elem)

            list.append(elem)
        except:
            print('Continue!')
            break

    if len(list):
        backtrack = Backtrack(list)
        backtrack.determine()
        print(backtrack.result)
    else:
        print('One element required')
Exemple #4
0
 def test_initialization(self):
     backtrack = Backtrack([1, 2, 3, 4, 5])
     self.assertIsInstance(backtrack, Backtrack)
Exemple #5
0
    def test_determine_inline(self):
        backtrack = Backtrack([1, 1, 2, 3, 4, 5])
        backtrack.determine_inline()

        self.assertEqual(len(backtrack.result), 28)
Exemple #6
0
    def test_minimum_array(self):
        backtrack = Backtrack([1, 1, 2, 3, 4, 5])

        self.assertEqual(backtrack.minimum_array(2), [1, 1])
Exemple #7
0
    def test_issorted(self):
        self.assertTrue(Backtrack.issorted([1, 2, 3, 4]))
        self.assertTrue(Backtrack.issorted([3, 2, 1], reverse=True))

        self.assertFalse(Backtrack.issorted([1, 2, 4, 3]))
        self.assertFalse(Backtrack.issorted([3, 1, 2], reverse=True))
Exemple #8
0
    def test_properties(self):
        backtrack = Backtrack([1, 2, 3, 4, 5])

        self.assertEqual(backtrack.array, [1, 2, 3, 4, 5])
        self.assertEqual(backtrack.result, [])
Exemple #9
0
__author__ = 'Călin Sălăgean'

from lib.backtrack import Backtrack

while True:
    command = input('Type exit or press enter to continue: ')

    if command == 'exit':
        break

    list = []

    while True:
        elem = input('Integer or float: ')
        try:
            int(elem)
            float(elem)

            list.append(elem)
        except:
            print('Continue!')
            break

    if len(list):
        backtrack = Backtrack(list)
        backtrack.determine()
        print(backtrack.result)
    else:
        print('One element required')