Merge conflict in Python
import sys
from myfibo import fibo
if len(sys.argv) != 2:
exit(f"Usage: {sys.argv[0]} DIV")
div = int(sys.argv[1])
for n in range(100):
fib = fibo(n)
if fib % div == 0:
print(f"fibo({n}) == {fib} can be divided by {div}")
def fibo(n):
if n == 1:
return 0
if n == 2:
return 1
fibs = [0, 1]
for _ in range(2, n):
fibs.append(fibs[-1] + fibs[-2])
return fibs[-1]
# One developer changes the `
At this point one person decides to change the fibo() function to return the first n items of the series
and another person adds a new program multiplying the first n fibo numbers using the old signature.
import sys
from myfibo import fibo
def multiply_fibo(n):
result = 1
for k in range(2, n):
result *= fibo(k)
return result
if __name__ == "__main__":
if len(sys.argv) != 2:
exit(f"Usage: {sys.argv[0]} N")
n = int(sys.argv[1])
print(f"Working on {n}")
print(multiply_fibo(n))
from myfibo import fibo
def test_fibo():
assert fibo(10) == 34
from fibo_multiply import multiply_fibo
def test_multiply_fibo():
assert multiply_fibo(7) == 30