def test_number_plate_count_first_n_second_generation():
    first = "kzz999"
    second = "kaa001a"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 1)

    first = "kzz999"
    second = "kaa051b"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 1050)
def test_number_plate_count_first_generation():
    first = "kaa001"
    second = "kaa002"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 1)

    first = "kaa001"
    second = "kzz999"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 675323)
def test_number_plate_count_same_version():
    first = "kbw123j"
    second = "kbw124j"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 1)

    first = "kcb001a"
    second = "kcb101a"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 100)
def test_number_plate_count():
    first = "kbb632a"
    second = "kbb632e"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 3996)
def test_number_plate_count_major_change():
    first = "kaa001a"
    second = "kba001a"

    result = count_vehicle_between_number_plates(first, second)

    assert_equals(result, 675324)
if __name__ == "__main__":
    argv = sys.argv[1:]  # Ignore the first argument
    try:
        opts, args = getopt.getopt(argv, "hf:s:")
    except getopt.GetoptError:
        print(
            'number_plate_count.py -f <first number plate> -s <second number plate>'
        )
        sys.exit(2)
    first = ''
    second = ''

    for opt, arg in opts:
        if opt == '-h':
            print(
                'number_plate_count.py -f <first number plate> -s <second number plate>'
            )
            sys.exit()
        elif opt == "-f":
            first = arg
        elif opt == "-s":
            second = arg
        else:
            assert False, "unhandled option"

    try:
        print(count_vehicle_between_number_plates(first, second))
    except Exception as e:
        print(e)