)]}'
{
  "log": [
    {
      "commit": "0578cbc6c527bc09a38a0fcd8b9642c25c8ea023",
      "tree": "fc29b7b8f9b92269bd25e5b17046685d3a3b008c",
      "parents": [
        "f0c719821dfdd32e37c4de6b4d640cefcda7b32a"
      ],
      "author": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Wed Oct 19 17:03:06 2016 -0700"
      },
      "committer": {
        "name": "Joe Onorato",
        "email": "joeo@google.com",
        "time": "Thu Oct 20 18:20:40 2016 -0700"
      },
      "message": "Add a new build, install, test development (bit) tool\n\nThis is a cleaned up version of a utility that I\u0027ve had sitting around\nfor a while.\n\nThe bit tool can run an android platform build, then sync or install\nthe outputs of that, and then run instrumentation tests.  It\u0027s better\nthan what we usually do:\n\n  make \u0026\u0026 adb shell stop \u0026\u0026 adb sync system \u0026\u0026 adb shell start\n\nHere\u0027s the help text:\n\nusage: bit OPTIONS PATTERN\n\n  Build, sync and test android code.\n\n  The -b -i and -t options allow you to specify which phases\n  you want to run. If none of those options are given, then\n  all phases are run. If any of these options are provided\n  then only the listed phases are run.\n\n  OPTIONS\n  -b     Run a build\n  -i     Install the targets\n  -t     Run the tests\n\n  PATTERN\n  One or more targets to build, install and test. The target\n  names are the names that appear in the LOCAL_MODULE or\n  LOCAL_PACKAGE_NAME variables in Android.mk or Android.bp files.\n\n  Building and installing\n  -----------------------\n  The modules specified will be built and then installed. If the\n  files are on the system partition, they will be synced and the\n  attached device rebooted. If they are APKs that aren\u0027t on the\n  system partition they are installed with adb install.\n\n  For example:\n    bit framework\n      Builds framework.jar, syncs the system partition and reboots.\n\n    bit SystemUI\n      Builds SystemUI.apk, syncs the system partition and reboots.\n\n    bit CtsProtoTestCases\n      Builds this CTS apk, adb installs it, but does not run any\n      tests.\n\n  Running Unit Tests\n  ------------------\n  To run a unit test, list the test class names and optionally the\n  test method after the module.\n\n  For example:\n    bit CtsProtoTestCases:*\n      Builds this CTS apk, adb installs it, and runs all the tests\n      contained in that apk.\n\n    bit framework CtsProtoTestCases:*\n      Builds the framework and the apk, syncs and reboots, then\n      adb installs CtsProtoTestCases.apk, and runs all tests\n      contained in that apk.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\n    bit CtsProtoTestCases:android.util.proto.cts.ProtoOutputStreamBoolTest\n      Builds and installs CtsProtoTestCases.apk, and runs all the\n      tests in the ProtoOutputStreamBoolTest class.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\\#testWrite\n      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n      test method on that class.\n\n    bit CtsProtoTestCases:.ProtoOutputStreamBoolTest\\#testWrite,.ProtoOutputStreamBoolTest\\#testRepeated\n      Builds and installs CtsProtoTestCases.apk, and runs the testWrite\n      and testRepeated test methods on that class.\n\n  Launching an Activity\n  ---------------------\n  To launch an activity, specify the activity class name after\n  the module name.\n\n  For example:\n    bit StatusBarTest:NotificationBuilderTest\n    bit StatusBarTest:.NotificationBuilderTest\n    bit StatusBarTest:com.android.statusbartest.NotificationBuilderTest\n      Builds and installs StatusBarTest.apk, launches the\n      com.android.statusbartest/.NotificationBuilderTest activity.\n\nChange-Id: I9cff7a23852fa1a67369e7807f7ae9f6e45d6131\nTest: none\n"
    }
  ]
}
