Validation of list args for valid_values()

Added code to ensure that valid_values and invalid_values are lists.
If they are not, the user can get unexpected results.

Example:

var1 = 'enabled'
valid_value(var1, valid_values='enableddd')

In this case, valid_values is a string so when the function does this:

if var1 in valid_values:

The answer will be "yes" so will will get an incorrect validation.

The correct invocation should be this:

valid_value(var1, valid_values=['enableddd'])

Which correctly yields a failure:

var1:                                             enabled <str>

It must be one of the following values:

valid_values: <list>
  [0]:                                            enableddd <str>

Change-Id: I2d10a00a4cc372af4c2eacc0dc33afbaa0ccf3a7
Signed-off-by: Michael Walsh <micwalsh@us.ibm.com>
diff --git a/lib/gen_valid.py b/lib/gen_valid.py
index 36a63db..e23bde1 100755
--- a/lib/gen_valid.py
+++ b/lib/gen_valid.py
@@ -230,6 +230,14 @@
         error_message += gp.sprint_var(valid_values)
         return process_error_message(error_message)
 
+    error_message = valid_type(valid_values, list, var_name='valid_values')
+    if error_message:
+        return process_error_message(error_message)
+
+    error_message = valid_type(invalid_values, list, var_name='invalid_values')
+    if error_message:
+        return process_error_message(error_message)
+
     if len_valid_values > 0:
         # Processing the valid_values list.
         if var_value in valid_values: