cert_audit: Add data-files and suite-data-files options

The commit adds '--data-files' and '--suite-data-files'
options so that we could pass names for the two types
of files separately. Additionally, the commit improves
the documentation in the script.

Signed-off-by: Pengyu Lv <pengyu.lv@arm.com>
diff --git a/tests/scripts/audit-validity-dates.py b/tests/scripts/audit-validity-dates.py
index 4000668..d74c6f8 100755
--- a/tests/scripts/audit-validity-dates.py
+++ b/tests/scripts/audit-validity-dates.py
@@ -171,9 +171,9 @@
     """A base class for audit."""
     def __init__(self, logger):
         self.logger = logger
-        self.default_files = []
+        self.default_files = [] # type: typing.List[str]
         # A list to store the parsed audit_data.
-        self.audit_data = []
+        self.audit_data = [] # type: typing.List[AuditData]
         self.parser = X509Parser({
             DataType.CRT: {
                 DataFormat.PEM: x509.load_pem_x509_certificate,
@@ -354,7 +354,11 @@
                         help=('not valid after this date (UTC, YYYY-MM-DD). '
                               'Default: not-before'),
                         metavar='DATE')
-    parser.add_argument('files', nargs='*', help='files to audit',
+    parser.add_argument('--data-files', action='append', nargs='*',
+                        help='data files to audit',
+                        metavar='FILE')
+    parser.add_argument('--suite-data-files', action='append', nargs='*',
+                        help='suite data files to audit',
                         metavar='FILE')
 
     args = parser.parse_args()
@@ -368,22 +372,29 @@
     td_auditor = TestDataAuditor(logger)
     sd_auditor = SuiteDataAuditor(logger)
 
-    if args.files:
-        data_files = args.files
-        suite_data_files = args.files
-    else:
+    data_files = []
+    suite_data_files = []
+    if args.data_files is None and args.suite_data_files is None:
         data_files = td_auditor.default_files
         suite_data_files = sd_auditor.default_files
+    else:
+        if args.data_files is not None:
+            data_files = [x for l in args.data_files for x in l]
+        if args.suite_data_files is not None:
+            suite_data_files = [x for l in args.suite_data_files for x in l]
 
+    # validity period start date
     if args.not_before:
         not_before_date = datetime.datetime.fromisoformat(args.not_before)
     else:
         not_before_date = datetime.datetime.today()
+    # validity period end date
     if args.not_after:
         not_after_date = datetime.datetime.fromisoformat(args.not_after)
     else:
         not_after_date = not_before_date
 
+    # go through all the files
     td_auditor.walk_all(data_files)
     sd_auditor.walk_all(suite_data_files)
     audit_results = td_auditor.audit_data + sd_auditor.audit_data
@@ -396,6 +407,7 @@
     if args.all:
         filter_func = None
 
+    # filter and output the results
     for d in filter(filter_func, audit_results):
         list_all(d)