Atest: Support --all-abi option in ATest

Bug: 110506311
Test: atest --all-abi hello_world_test
      atest -a hello_world_test
      atest -a CalendarProviderTests

Change-Id: Iaed7274af688b6a1119ac7f2b489167bf0d16696
diff --git a/atest/atest.py b/atest/atest.py
index dff0791..e3e91f5 100755
--- a/atest/atest.py
+++ b/atest/atest.py
@@ -348,6 +348,8 @@
                              'debugger prior to execution.')
     parser.add_argument('-v', '--verbose', action='store_true',
                         help='Display DEBUG level logging.')
+    parser.add_argument('-a', '--all-abi', action='store_true',
+                        help='Set to run tests for all abi.')
     parser.add_argument('--generate-baseline', nargs='?', type=int, const=5, default=0,
                         help='Generate baseline metrics, run 5 iterations by default. '
                              'Provide an int argument to specify # iterations.')
@@ -453,6 +455,8 @@
         extra_args[constants.PRE_PATCH_ITERATIONS] = args.generate_baseline
     if args.serial:
         extra_args[constants.SERIAL] = args.serial
+    if args.all_abi:
+        extra_args[constants.ALLABI] = args.all_abi
     if args.generate_new_metrics:
         extra_args[constants.POST_PATCH_ITERATIONS] = args.generate_new_metrics
     if args.custom_args:
diff --git a/atest/constants_default.py b/atest/constants_default.py
index 38b19c5..e4ec5b4 100644
--- a/atest/constants_default.py
+++ b/atest/constants_default.py
@@ -32,6 +32,7 @@
 PRE_PATCH_FOLDER = 'PRE_PATCH_FOLDER'
 POST_PATCH_FOLDER = 'POST_PATCH_FOLDER'
 SERIAL = 'SERIAL'
+ALLABI = 'ALL_ABI'
 CUSTOM_ARGS = 'CUSTOM_ARGS'
 
 # Application exit codes.
diff --git a/atest/test_runners/atest_tf_test_runner.py b/atest/test_runners/atest_tf_test_runner.py
index 07f448a..820d93a 100644
--- a/atest/test_runners/atest_tf_test_runner.py
+++ b/atest/test_runners/atest_tf_test_runner.py
@@ -140,6 +140,9 @@
                 # let's just treat it like a simple arg to pass on through.
                 args_to_append.extend(extra_args[arg])
                 continue
+            if constants.ALLABI == arg:
+                args_to_append.append('--all-abi')
+                continue
             args_not_supported.append(arg)
         return args_to_append, args_not_supported