+ /**
+ * @param callable $callback
+ * @since 1.27
+ */
+ protected function addTeardownCallback( $callback ) {
+ $this->teardownCallbacks[] = $callback;
+ }
+
+ /**
+ * Do any final cleanup after run(), deferred updates, and all DB commits happen
+ *
+ * @since 1.27
+ */
+ public function teardown() {
+ foreach ( $this->teardownCallbacks as $callback ) {
+ call_user_func( $callback );
+ }
+ }
+