Added onPostCreate() to the lifecycle methods invoked in ActivityController.configurationChange(). This reflects framework behaviour.
diff --git a/robolectric/src/main/java/org/robolectric/util/ActivityController.java b/robolectric/src/main/java/org/robolectric/util/ActivityController.java
index e3343cc..87db037 100644
--- a/robolectric/src/main/java/org/robolectric/util/ActivityController.java
+++ b/robolectric/src/main/java/org/robolectric/util/ActivityController.java
@@ -303,6 +303,8 @@
ReflectionHelpers.callInstanceMethod(Activity.class, recreatedActivity, "onStart");
ReflectionHelpers.callInstanceMethod(Activity.class, recreatedActivity,
"onRestoreInstanceState", ClassParameter.from(Bundle.class, outState));
+ ReflectionHelpers.callInstanceMethod(Activity.class, recreatedActivity,
+ "onPostCreate", ClassParameter.from(Bundle.class, outState));
ReflectionHelpers.callInstanceMethod(Activity.class, recreatedActivity, "onResume");
}
});
diff --git a/robolectric/src/test/java/org/robolectric/util/ActivityControllerTest.java b/robolectric/src/test/java/org/robolectric/util/ActivityControllerTest.java
index 74c5972..83a1e34 100644
--- a/robolectric/src/test/java/org/robolectric/util/ActivityControllerTest.java
+++ b/robolectric/src/test/java/org/robolectric/util/ActivityControllerTest.java
@@ -228,7 +228,15 @@
final float newFontScale = config.fontScale *= 2;
controller.configurationChange(config);
- transcript.assertEventsInclude("onPause", "onStop", "onDestroy", "onCreate", "onStart", "onResume");
+ transcript.assertEventsInclude(
+ "onPause",
+ "onStop",
+ "onDestroy",
+ "onCreate",
+ "onStart",
+ "onRestoreInstanceState",
+ "onPostCreate",
+ "onResume");
assertThat(controller.get().getResources().getConfiguration().fontScale).isEqualTo(newFontScale);
}