Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 164e7967 authored by Makoto Onuki's avatar Makoto Onuki
Browse files

Bit: support running all tests in a java package.

If a target name ends with a period, treat it as a package name
and run with "-e package" instead of "-e class".

Test: bit CtsProviderTestCases:android.provider.cts.contacts.

Change-Id: I3a9a0cbef76f57c46c41bf168b7e94eebecaf671
parent bfce224c
Loading
Loading
Loading
Loading
+13 −4
Original line number Original line Diff line number Diff line
@@ -283,11 +283,20 @@ run_instrumentation_test(const string& packageName, const string& runner, const
    cmd.AddArg("instrument");
    cmd.AddArg("instrument");
    cmd.AddArg("-w");
    cmd.AddArg("-w");
    cmd.AddArg("-m");
    cmd.AddArg("-m");
    if (className.length() > 0) {
    const int classLen = className.length();
    if (classLen > 0) {
        if (classLen > 1 && className[classLen - 1] == '.') {
            cmd.AddArg("-e");
            cmd.AddArg("package");

            // "am" actually accepts without removing the last ".", but for cleanlines...
            cmd.AddArg(className.substr(0, classLen - 1));
        } else {
            cmd.AddArg("-e");
            cmd.AddArg("-e");
            cmd.AddArg("class");
            cmd.AddArg("class");
            cmd.AddArg(className);
            cmd.AddArg(className);
        }
        }
    }
    cmd.AddArg(packageName + "/" + runner);
    cmd.AddArg(packageName + "/" + runner);


    print_command(cmd);
    print_command(cmd);
+4 −0
Original line number Original line Diff line number Diff line
@@ -342,6 +342,10 @@ print_usage(FILE* out) {
    fprintf(out, "      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n");
    fprintf(out, "      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n");
    fprintf(out, "      and testRepeated test methods on that class.\n");
    fprintf(out, "      and testRepeated test methods on that class.\n");
    fprintf(out, "\n");
    fprintf(out, "\n");
    fprintf(out, "    bit CtsProtoTestCases:android.util.proto.cts.\n");
    fprintf(out, "      Builds and installs CtsProtoTestCases.apk, and runs the tests in the java package\n");
    fprintf(out, "      \"android.util.proto.cts\".\n");
    fprintf(out, "\n");
    fprintf(out, "  Launching an Activity\n");
    fprintf(out, "  Launching an Activity\n");
    fprintf(out, "  ---------------------\n");
    fprintf(out, "  ---------------------\n");
    fprintf(out, "  To launch an activity, specify the activity class name after\n");
    fprintf(out, "  To launch an activity, specify the activity class name after\n");