Merge remote-tracking branch 'square/master' into robolectric-2-master

* square/master: (152 commits)
  Reverted pom to r2 since our build server can't handle r3
  Implement ShadowBitmapDrawable.mutate()
  Attempt to be DRY about SDK. Ha.
  And update the manifest to API 16.
  Update resource loading to use API 16.
  'snapshots' -> 'url'
  Update to a Maps dependnecy from this decade.
  Allow for specifying a custom nexus URL via profile.
  Allow system features to be toggled. Fix Fragment resume state tracking.
  Return drawables when setting CompoundDrawables with resourceIds
  Include text values in TextView dump. Implement TextUtils.htmlEncode.
  Implement CheckedTestView toggling etc.
  Call View#onAttachedToWindow, View#onDetachedFromWindow, Fragment#onAttach, and Fragment#onDetach as appropriate.
  Add Robolectric.dump() and Robolectric.innerText() convenience methods. Include visibility attribute in view dump.
  Implement TypedArray#getTextArray.
  Provide a way to inject a Resources object on resources-related shadows (implement UsesResources).
  Support enabling bluetooth
  Add getOnFocusChangeListener to View
  When popping a fragment from the back stack, restore the previoius fragment.
  Implement Bundle.set/get*Array.
  ...

Conflicts:
	.gitignore
	.pairs
	README.md
	build.xml
	find-android.bat
	lib/main/junit-dep-4.8.2.jar
	pom.xml
	src/main/java/android/os/TestVibrator.java
	src/main/java/android/webkit/TestWebSettings.java
	src/main/java/com/xtremelabs/robolectric/Robolectric.java
	src/main/java/com/xtremelabs/robolectric/RobolectricConfig.java
	src/main/java/com/xtremelabs/robolectric/RobolectricTestRunner.java
	src/main/java/com/xtremelabs/robolectric/res/ColorResourceLoader.java
	src/main/java/com/xtremelabs/robolectric/res/DrawableResourceLoader.java
	src/main/java/com/xtremelabs/robolectric/res/IntegerResourceLoader.java
	src/main/java/com/xtremelabs/robolectric/res/ResourceLoader.java
	src/main/java/com/xtremelabs/robolectric/res/RobolectricPackageManager.java
	src/main/java/com/xtremelabs/robolectric/res/ViewLoader.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowActivity.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowAlertDialog.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowApplication.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowBitmapDrawable.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowBitmapFactory.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowBluetoothAdapter.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowBundle.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowCanvas.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowCheckedTextView.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowContentResolver.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowContext.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowContextWrapper.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowDialog.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowDialogFragment.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowEditText.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowFragment.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowFragmentActivity.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowFrameLayout.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowHtml.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowImageView.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowIntent.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowLinearLayout.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowListActivity.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowLocation.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowLocationManager.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowRect.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowResources.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowSQLiteCloseable.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowSensorManager.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowSettings.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowTextUtils.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowTextView.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowTypedArray.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowView.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowViewAnimator.java
	src/main/java/com/xtremelabs/robolectric/shadows/ShadowViewGroup.java
	src/main/java/com/xtremelabs/robolectric/tester/android/util/TestAttributeSet.java
	src/main/java/com/xtremelabs/robolectric/tester/android/view/TestMenuItem.java
	src/main/java/com/xtremelabs/robolectric/tester/org/apache/http/FakeHttpLayer.java
	src/test/java/android/webkit/TestWebSettingsTest.java
	src/test/java/com/xtremelabs/robolectric/R.java
	src/test/java/com/xtremelabs/robolectric/RobolectricConfigTest.java
	src/test/java/com/xtremelabs/robolectric/res/DrawableResourceLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/res/IntegerResourceLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/res/MenuResourceLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/res/RawResourceLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/res/ResourceLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/res/TestAttributeSetTest.java
	src/test/java/com/xtremelabs/robolectric/res/ViewLoaderTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ActivityTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/BitmapFactoryTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/BluetoothAdapterTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/CheckedTextViewTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ContextTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/DefaultRequestDirectorTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/DialogFragmentTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/DialogTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/EditTextTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/FragmentTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/FrameLayoutTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/HtmlTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/LocationTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/PreferenceActivityTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ResourcesTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/SettingsTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/SpannableStringBuilderTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/TextUtilsTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/TextViewTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/TypedArrayTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ViewAnimatorTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ViewGroupTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/ViewTest.java
	src/test/java/com/xtremelabs/robolectric/shadows/testing/OnMethodTestActivity.java
	src/test/java/com/xtremelabs/robolectric/tester/android/view/TestWindowTest.java
	src/test/java/com/xtremelabs/robolectric/util/TestUtil.java
tree: 55ac8eab369bbdc4c044ed094e807d7872ab1677
  1. lib/
  2. src/
  3. .gitignore
  4. .pairs
  5. .travis.yml
  6. build.properties
  7. build.xml
  8. find-android.bat
  9. find-android.sh
  10. LICENSE.txt
  11. pom.xml
  12. README.md
  13. update-downloads.rb
README.md

Robolectric

An Android Testing Framework

Robolectric can be built using either Maven or Ant. Both Eclipse (with the M2Eclipse plug-in) and IntelliJ can import the pom.xml file and will automatically generate their project files from it.

For more information about how to use Robolectric on your project, extend its functionality, and join the community of contributors, please see: http://pivotal.github.com/robolectric/index.html

Build Status

http://ci.robolectric.org

Known compile issues

If your build fails because of maps.jar is missing then install all the android extra and run:

git clone https://github.com/mosabua/maven-android-sdk-deployer.git
cd maven-android-sdk-deployer/
maven install -P <ANDROID_VERSION>