def test_ArraySubLow():
    A = [0, -1, 2, 1, 3, 1, 1, 0]
    maxLeft, maxRight, total = maxSubarrayDivide.findMaxCrossingSubarray(A, 0, 1, 3)
    assert maxLeft == 1
    assert maxRight == 3
    assert total == 2
def test_ArrayWhole():
    A = [0, -1, 2, 1, 3, 1, 1, 0]
    maxLeft, maxRight, total = maxSubarrayDivide.findMaxCrossingSubarray(A, 0, 3, 7)
    assert maxLeft == 2
    assert maxRight == 6
    assert total == 8
def test_ArraySubHigh():
    A = [0, -1, 2, 1, 3, 1, 1, 0]
    maxLeft, maxRight, total = maxSubarrayDivide.findMaxCrossingSubarray(A, 4, 5, 7)
    assert maxLeft == 4
    assert maxRight == 6
    assert total == 5
def test_OneElementNonZero():
    A = [6]
    maxLeft, maxRight, total = maxSubarrayDivide.findMaxCrossingSubarray(A, 0, 0, 0)
    assert maxLeft == 0
    assert maxRight == 0
    assert total == 6