0

I need to test the following code using doctest. I has to be doctest and not any other method. I keep getting "Expected: nothing". Is there any way to do this?

import pickle

#Loading lists from file using the pickle module
with open('stocklist.txt', 'rb') as f:     #Reading the list of stock from a text file. "rb" or "read binary" is used
        thelist = pickle.load(f)


def showstocklist():     #Defining a function for viewing the all information about the current items in the list
    """ This function displays complete information about every item in stock.
        Each item is diplayed in the form:
        Software Name     Sofware Medium     Copies Available     Supplier     Index Number of Item

        >>> showstocklist()

        This is the current list of software available in stock:

        ----------------------------------------------------------------------------------------------------------
        Ms Office     Medium = CD     Copies Available = 7     Supplier = Microsoft     Index Number = 0
        ----------------------------------------------------------------------------------------------------------
        Norton Antivirus     Medium = DVD     Copies Available = 24     Supplier = Symantec     Index Number = 1
        ----------------------------------------------------------------------------------------------------------
        Paint     Medium = DVD     Copies Available = 12     Supplier = The Eagle Company     Index Number = 2
        ----------------------------------------------------------------------------------------------------------
        """
    print("")
    print("This is the current list of software available in stock:")
    print("")
    print("----------------------------------------------------------------------------------------------------------")
    for (index,[item,medium,quantity,supplier]) in enumerate(thelist):    #Displaying all item information from list along with their index number
        print (str(item), "    Medium = " + str(medium), "    Copies Available = " + str(quantity), "    Supplier = " + str(supplier), "    Index Number = " + str(index))
        print("----------------------------------------------------------------------------------------------------------")

if __name__ == "__main__":
    import doctest
    doctest.testmod(verbose = True)
user2802349
  • 151
  • 1
  • 1
  • 10

1 Answers1

0

To me it looks like the first print("") ist the problem. All examples I saw start immediately after the >>> line but you got nothing there.

Just guessing, try:

  1. remove print("")

  2. add a ... after the >>> line

User
  • 14,131
  • 2
  • 40
  • 59