Skip to main content
added 1 character in body
Source Link
mdfst13
  • 22.4k
  • 6
  • 34
  • 70

First the good: your code provides a testable function. So letslet's add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

which gives

Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
**********************************************************************
File "main.py", line 5, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0])
Expected:
    1
Got:
    0
**********************************************************************
File "main.py", line 9, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0, 0])
Expected:
    2
Got:
    0
**********************************************************************
File "main.py", line 13, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([1, 0])
Expected:
    1
Got:
    0
**********************************************************************
1 items had failures:
   3 of   7 in __main__.largest_row_of_zeros
***Test Failed*** 3 failures.

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

First the good: your code provides a testable function. So lets add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

which gives

Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
**********************************************************************
File "main.py", line 5, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0])
Expected:
    1
Got:
    0
**********************************************************************
File "main.py", line 9, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0, 0])
Expected:
    2
Got:
    0
**********************************************************************
File "main.py", line 13, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([1, 0])
Expected:
    1
Got:
    0
**********************************************************************
1 items had failures:
   3 of   7 in __main__.largest_row_of_zeros
***Test Failed*** 3 failures.

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

First the good: your code provides a testable function. So let's add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

which gives

Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
**********************************************************************
File "main.py", line 5, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0])
Expected:
    1
Got:
    0
**********************************************************************
File "main.py", line 9, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0, 0])
Expected:
    2
Got:
    0
**********************************************************************
File "main.py", line 13, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([1, 0])
Expected:
    1
Got:
    0
**********************************************************************
1 items had failures:
   3 of   7 in __main__.largest_row_of_zeros
***Test Failed*** 3 failures.

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

make clear why i show unit testing
Source Link
stefan
  • 3k
  • 9
  • 17

First the good: your code provides a testable function. So lets add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

which gives

Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
**********************************************************************
File "main.py", line 5, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0])
Expected:
    1
Got:
    0
**********************************************************************
File "main.py", line 9, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0, 0])
Expected:
    2
Got:
    0
**********************************************************************
File "main.py", line 13, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([1, 0])
Expected:
    1
Got:
    0
**********************************************************************
1 items had failures:
   3 of   7 in __main__.largest_row_of_zeros
***Test Failed*** 3 failures.

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

First the good: your code provides a testable function. So lets add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

First the good: your code provides a testable function. So lets add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

which gives

Python 3.6.1 (default, Dec 2015, 13:05:11)
[GCC 4.8.2] on linux
**********************************************************************
File "main.py", line 5, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0])
Expected:
    1
Got:
    0
**********************************************************************
File "main.py", line 9, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([0, 0])
Expected:
    2
Got:
    0
**********************************************************************
File "main.py", line 13, in __main__.largest_row_of_zeros
Failed example:
    largest_row_of_zeros([1, 0])
Expected:
    1
Got:
    0
**********************************************************************
1 items had failures:
   3 of   7 in __main__.largest_row_of_zeros
***Test Failed*** 3 failures.

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.

Source Link
stefan
  • 3k
  • 9
  • 17

First the good: your code provides a testable function. So lets add some test code

def largest_row_of_zeros(l):
    '''
    >>> largest_row_of_zeros([])
    0
    >>> largest_row_of_zeros([0])
    1
    >>> largest_row_of_zeros([1])
    0
    >>> largest_row_of_zeros([0, 0])
    2
    >>> largest_row_of_zeros([0, 1])
    1
    >>> largest_row_of_zeros([1, 0])
    1
    >>> largest_row_of_zeros([1, 1])
    0
    '''

    c = 0
    max_count = 0
    for j in l:
        if j==0:
            c+=1
        else:
            if c > max_count:
                max_count = c
            c = 0
    return max_count


if __name__ == "__main__":
    import doctest
    doctest.testmod()

Here I use doctest. Another very common module is unittest. But you could also use simple assertions

if __name__ == "__main__":
    assert largest_row_of_zeros([0]) == 1

Have fun with testing.