Migrate existing navigation-testing to internal testutils

The existing navigation-testing files are used for internal testing of
the navigation library. This change migrates this existing module to the
internal testutils module in order to free up the navigation-testing
module for a new navigation testing library.

Test: ./gradlew bOS
Change-Id: Ie5054bfcf6b3053b28446174d302587403d2468a
diff --git a/navigation/benchmark/build.gradle b/navigation/benchmark/build.gradle
index ad5d976..0a34527 100644
--- a/navigation/benchmark/build.gradle
+++ b/navigation/benchmark/build.gradle
@@ -28,7 +28,7 @@
 dependencies {
     androidTestImplementation(project(":benchmark:benchmark-junit4"))
     androidTestImplementation(project(":navigation:navigation-runtime"))
-    androidTestImplementation(project(":navigation:navigation-testing"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
     androidTestImplementation(JUNIT)
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
diff --git a/navigation/benchmark/src/androidTest/java/androidx/navigation/NavInflaterBenchmark.kt b/navigation/benchmark/src/androidTest/java/androidx/navigation/NavInflaterBenchmark.kt
index 9ff4684..5ad1271 100644
--- a/navigation/benchmark/src/androidTest/java/androidx/navigation/NavInflaterBenchmark.kt
+++ b/navigation/benchmark/src/androidTest/java/androidx/navigation/NavInflaterBenchmark.kt
@@ -18,10 +18,10 @@
 
 import androidx.benchmark.junit4.BenchmarkRule
 import androidx.benchmark.junit4.measureRepeated
-import androidx.navigation.testing.TestNavigatorProvider
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.LargeTest
+import androidx.testutils.TestNavigatorProvider
 import org.junit.Rule
 import org.junit.Test
 import org.junit.runner.RunWith
diff --git a/navigation/integration-tests/testapp/build.gradle b/navigation/integration-tests/testapp/build.gradle
index 10880ce..244628b 100644
--- a/navigation/integration-tests/testapp/build.gradle
+++ b/navigation/integration-tests/testapp/build.gradle
@@ -34,7 +34,7 @@
     implementation("androidx.appcompat:appcompat:1.1.0")
     implementation(project(":navigation:navigation-fragment-ktx"))
     implementation(project(":navigation:navigation-ui-ktx"))
-    implementation(project(":navigation:navigation-testing"))
+    implementation(project(":internal-testutils-navigation"))
 }
 
 tasks['check'].dependsOn(tasks['connectedCheck'])
diff --git a/navigation/integration-tests/testapp/src/main/java/androidx/navigation/testapp/HelpActivity.kt b/navigation/integration-tests/testapp/src/main/java/androidx/navigation/testapp/HelpActivity.kt
index 900d312..d867585 100644
--- a/navigation/integration-tests/testapp/src/main/java/androidx/navigation/testapp/HelpActivity.kt
+++ b/navigation/integration-tests/testapp/src/main/java/androidx/navigation/testapp/HelpActivity.kt
@@ -29,9 +29,9 @@
 import androidx.navigation.ActivityNavigator
 import androidx.navigation.NavController
 import androidx.navigation.createGraph
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.navigation.ui.setupWithNavController
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.android.material.bottomsheet.BottomSheetDialogFragment
 import com.google.android.material.navigation.NavigationView
 
diff --git a/navigation/navigation-fragment-ktx/build.gradle b/navigation/navigation-fragment-ktx/build.gradle
index 372e15f..e4be07a0 100644
--- a/navigation/navigation-fragment-ktx/build.gradle
+++ b/navigation/navigation-fragment-ktx/build.gradle
@@ -42,7 +42,6 @@
     api(project(":lifecycle:lifecycle-viewmodel-ktx"))
     api(KOTLIN_STDLIB)
     androidTestImplementation(project(":fragment:fragment-testing"))
-    androidTestImplementation(project(":navigation:navigation-testing"))
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
     androidTestImplementation(ANDROIDX_TEST_RUNNER)
@@ -51,7 +50,8 @@
     androidTestImplementation(TRUTH)
     androidTestImplementation(MOCKITO_CORE, libs.exclude_bytebuddy)
     androidTestImplementation(DEXMAKER_MOCKITO, libs.exclude_bytebuddy)
-    androidTestImplementation project(':internal-testutils-runtime')
+    androidTestImplementation(project(":internal-testutils-runtime"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
 }
 
 androidx {
diff --git a/navigation/navigation-fragment-ktx/src/androidTest/java/androidx/navigation/fragment/NavGraphViewModelLazyTest.kt b/navigation/navigation-fragment-ktx/src/androidTest/java/androidx/navigation/fragment/NavGraphViewModelLazyTest.kt
index 5a7eff9..758e0eb 100644
--- a/navigation/navigation-fragment-ktx/src/androidTest/java/androidx/navigation/fragment/NavGraphViewModelLazyTest.kt
+++ b/navigation/navigation-fragment-ktx/src/androidTest/java/androidx/navigation/fragment/NavGraphViewModelLazyTest.kt
@@ -34,12 +34,12 @@
 import androidx.navigation.navGraphViewModels
 import androidx.navigation.navigation
 import androidx.navigation.plusAssign
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ActivityScenario
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.LargeTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import androidx.testutils.withActivity
 import com.google.common.truth.Truth.assertThat
 import org.junit.Test
diff --git a/navigation/navigation-fragment/build.gradle b/navigation/navigation-fragment/build.gradle
index 8f92abb..6e83cca 100644
--- a/navigation/navigation-fragment/build.gradle
+++ b/navigation/navigation-fragment/build.gradle
@@ -30,7 +30,6 @@
     api(project(":fragment:fragment"))
     api(project(":navigation:navigation-runtime"))
 
-    androidTestImplementation(project(":navigation:navigation-testing"))
     androidTestImplementation(project(":navigation:navigation-runtime-ktx"))
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
@@ -41,6 +40,7 @@
     androidTestImplementation project(':internal-testutils-runtime'), {
         exclude group: 'androidx.fragment', module: 'fragment'
     }
+    androidTestImplementation(project(':internal-testutils-navigation'))
 }
 
 androidx {
diff --git a/navigation/navigation-fragment/src/androidTest/java/androidx/navigation/fragment/BaseNavControllerTest.kt b/navigation/navigation-fragment/src/androidTest/java/androidx/navigation/fragment/BaseNavControllerTest.kt
index 8b2eff6..67093f6 100644
--- a/navigation/navigation-fragment/src/androidTest/java/androidx/navigation/fragment/BaseNavControllerTest.kt
+++ b/navigation/navigation-fragment/src/androidTest/java/androidx/navigation/fragment/BaseNavControllerTest.kt
@@ -30,10 +30,10 @@
 import androidx.navigation.fragment.test.R
 import androidx.navigation.get
 import androidx.navigation.plusAssign
-import androidx.navigation.testing.TestNavigator
 import androidx.test.filters.SmallTest
 import androidx.test.platform.app.InstrumentationRegistry
 import androidx.test.rule.ActivityTestRule
+import androidx.testutils.TestNavigator
 import org.junit.Assert.assertEquals
 import org.junit.Assert.assertNotNull
 import org.junit.Before
diff --git a/navigation/navigation-runtime-ktx/build.gradle b/navigation/navigation-runtime-ktx/build.gradle
index e5535ec..1b8c942 100644
--- a/navigation/navigation-runtime-ktx/build.gradle
+++ b/navigation/navigation-runtime-ktx/build.gradle
@@ -45,7 +45,7 @@
         because 'Mirror navigation-runtime dependency graph for -ktx artifacts'
     }
     api(KOTLIN_STDLIB)
-    androidTestImplementation(project(":navigation:navigation-testing"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
     androidTestImplementation(TRUTH)
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
diff --git a/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavControllerTest.kt b/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavControllerTest.kt
index 6967d7c..70cfa2e 100644
--- a/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavControllerTest.kt
+++ b/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavControllerTest.kt
@@ -17,10 +17,10 @@
 package androidx.navigation
 
 import android.content.Context
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.filters.SmallTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import org.junit.Assert.assertTrue
 import org.junit.Test
 
diff --git a/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavHostTest.kt b/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavHostTest.kt
index 91d6b22..d744cce 100644
--- a/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavHostTest.kt
+++ b/navigation/navigation-runtime-ktx/src/androidTest/java/androidx/navigation/NavHostTest.kt
@@ -17,10 +17,10 @@
 package androidx.navigation
 
 import android.content.Context
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.filters.SmallTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import org.junit.Assert.assertTrue
 import org.junit.Test
 
diff --git a/navigation/navigation-runtime-truth/build.gradle b/navigation/navigation-runtime-truth/build.gradle
index 156ff7f..b68f6a4 100644
--- a/navigation/navigation-runtime-truth/build.gradle
+++ b/navigation/navigation-runtime-truth/build.gradle
@@ -41,7 +41,7 @@
     api(TRUTH)
     api(KOTLIN_STDLIB)
     androidTestImplementation(project(":internal-testutils-truth"))
-    androidTestImplementation(project(":navigation:navigation-testing"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
     androidTestImplementation(TRUTH)
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
diff --git a/navigation/navigation-runtime-truth/src/androidTest/java/androidx/navigation/truth/NavControllerSubjectTest.kt b/navigation/navigation-runtime-truth/src/androidTest/java/androidx/navigation/truth/NavControllerSubjectTest.kt
index 680ab54..b52c7bc 100644
--- a/navigation/navigation-runtime-truth/src/androidTest/java/androidx/navigation/truth/NavControllerSubjectTest.kt
+++ b/navigation/navigation-runtime-truth/src/androidTest/java/androidx/navigation/truth/NavControllerSubjectTest.kt
@@ -18,11 +18,11 @@
 
 import androidx.navigation.NavController
 import androidx.navigation.plusAssign
-import androidx.navigation.testing.TestNavigator
 import androidx.navigation.truth.test.R
 import androidx.navigation.truth.NavControllerSubject.Companion.assertThat
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.filters.SmallTest
+import androidx.testutils.TestNavigator
 import androidx.testutils.assertThrows
 import org.junit.Before
 import org.junit.Test
diff --git a/navigation/navigation-runtime/build.gradle b/navigation/navigation-runtime/build.gradle
index b2ad1c3..3ca981d 100644
--- a/navigation/navigation-runtime/build.gradle
+++ b/navigation/navigation-runtime/build.gradle
@@ -33,7 +33,7 @@
     api("androidx.savedstate:savedstate:1.0.0")
     api(project(":lifecycle:lifecycle-viewmodel-savedstate"))
 
-    androidTestImplementation(project(":navigation:navigation-testing"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
     androidTestImplementation(ANDROIDX_TEST_RUNNER)
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/FloatingWindowTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/FloatingWindowTest.kt
index ae5b762a..341322b 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/FloatingWindowTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/FloatingWindowTest.kt
@@ -18,10 +18,10 @@
 
 import androidx.navigation.test.FloatingTestNavigator
 import androidx.navigation.test.R
-import androidx.navigation.testing.TestNavigator
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.MediumTest
+import androidx.testutils.TestNavigator
 import com.google.common.truth.Truth.assertThat
 import org.junit.Test
 import org.junit.runner.RunWith
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryLifecycleTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryLifecycleTest.kt
index 88847fa..0e477bec 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryLifecycleTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryLifecycleTest.kt
@@ -24,11 +24,11 @@
 import androidx.navigation.test.FloatingTestNavigator
 import androidx.navigation.test.R
 import androidx.navigation.test.dialog
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.MediumTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.common.truth.Truth.assertWithMessage
 import org.junit.Test
 import org.junit.runner.RunWith
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryTest.kt
index ab84f8c..e11f0c8 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavBackStackEntryTest.kt
@@ -23,11 +23,11 @@
 import androidx.lifecycle.ViewModelProvider
 import androidx.lifecycle.ViewModelStore
 import androidx.navigation.test.R
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.MediumTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.common.truth.Truth.assertThat
 import com.google.common.truth.Truth.assertWithMessage
 import org.junit.Assert.fail
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerActivityTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerActivityTest.kt
index 980f0619..5789706 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerActivityTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerActivityTest.kt
@@ -20,10 +20,10 @@
 import android.content.Intent
 import android.net.Uri
 import androidx.navigation.test.R
-import androidx.navigation.testing.TestNavigator
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.LargeTest
 import androidx.test.rule.ActivityTestRule
+import androidx.testutils.TestNavigator
 import com.google.common.truth.Truth.assertThat
 import org.junit.Before
 import org.junit.Rule
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerTest.kt
index 454fbfd..8abba23 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavControllerTest.kt
@@ -22,11 +22,11 @@
 import android.os.Parcel
 import android.os.Parcelable
 import androidx.navigation.test.R
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.MediumTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.common.truth.Truth.assertThat
 import com.google.common.truth.Truth.assertWithMessage
 import org.junit.Assert.assertEquals
@@ -923,4 +923,4 @@
 
         override fun newArray(size: Int): Array<CustomTestParcelable?> = arrayOfNulls(size)
     }
-}
\ No newline at end of file
+}
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavDeepLinkBuilderTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavDeepLinkBuilderTest.kt
index 817a770..773a100 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavDeepLinkBuilderTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavDeepLinkBuilderTest.kt
@@ -19,11 +19,11 @@
 import androidx.navigation.test.R
 import android.content.Context
 import android.os.Bundle
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.common.truth.Truth.assertWithMessage
 import org.junit.Assert.assertEquals
 import org.junit.Test
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt
index b950630..e295fe70 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/NavInflaterTest.kt
@@ -21,11 +21,11 @@
 import android.net.Uri
 import androidx.navigation.test.R
 import androidx.navigation.test.TestEnum
-import androidx.navigation.testing.TestNavigatorProvider
 import androidx.test.core.app.ApplicationProvider
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.SmallTest
 import androidx.test.platform.app.InstrumentationRegistry
+import androidx.testutils.TestNavigatorProvider
 import com.google.common.truth.Truth.assertThat
 import org.junit.Before
 import org.junit.Test
diff --git a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/test/FloatingTestNavigator.kt b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/test/FloatingTestNavigator.kt
index 5f2c038..0de74a5 100644
--- a/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/test/FloatingTestNavigator.kt
+++ b/navigation/navigation-runtime/src/androidTest/java/androidx/navigation/test/FloatingTestNavigator.kt
@@ -25,7 +25,7 @@
 import androidx.navigation.NavGraphBuilder
 import androidx.navigation.Navigator
 import androidx.navigation.get
-import androidx.navigation.testing.TestNavigator
+import androidx.testutils.TestNavigator
 
 @Navigator.Name("dialog")
 class FloatingTestNavigator : TestNavigator() {
diff --git a/navigation/navigation-testing/src/main/AndroidManifest.xml b/navigation/navigation-testing/src/main/AndroidManifest.xml
index 248fd5aa..1d483b4 100644
--- a/navigation/navigation-testing/src/main/AndroidManifest.xml
+++ b/navigation/navigation-testing/src/main/AndroidManifest.xml
@@ -16,5 +16,4 @@
   -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
     package="androidx.navigation.testing">
-
 </manifest>
diff --git a/navigation/navigation-ui/build.gradle b/navigation/navigation-ui/build.gradle
index e2149eb..30becfa 100644
--- a/navigation/navigation-ui/build.gradle
+++ b/navigation/navigation-ui/build.gradle
@@ -38,7 +38,7 @@
     implementation('androidx.transition:transition:1.0.1')
 
     androidTestImplementation(project(":navigation:navigation-runtime-ktx"))
-    androidTestImplementation(project(":navigation:navigation-testing"))
+    androidTestImplementation(project(":internal-testutils-navigation"))
     androidTestImplementation(KOTLIN_STDLIB)
     androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
     androidTestImplementation(ANDROIDX_TEST_CORE)
diff --git a/navigation/navigation-ui/src/androidTest/java/androidx/navigation/ui/AppBarConfigurationTest.kt b/navigation/navigation-ui/src/androidTest/java/androidx/navigation/ui/AppBarConfigurationTest.kt
index 16ca6cd..d8e1201 100644
--- a/navigation/navigation-ui/src/androidTest/java/androidx/navigation/ui/AppBarConfigurationTest.kt
+++ b/navigation/navigation-ui/src/androidTest/java/androidx/navigation/ui/AppBarConfigurationTest.kt
@@ -21,11 +21,11 @@
 import androidx.navigation.NavController
 import androidx.navigation.createGraph
 import androidx.navigation.plusAssign
-import androidx.navigation.testing.TestNavigator
-import androidx.navigation.testing.test
 import androidx.test.ext.junit.runners.AndroidJUnit4
 import androidx.test.filters.LargeTest
 import androidx.test.platform.app.InstrumentationRegistry
+import androidx.testutils.TestNavigator
+import androidx.testutils.test
 import com.google.common.truth.Truth.assertThat
 import org.junit.Before
 import org.junit.Test
diff --git a/settings.gradle b/settings.gradle
index 9a878fb0..e74554a 100644
--- a/settings.gradle
+++ b/settings.gradle
@@ -316,6 +316,7 @@
 includeProject(":internal-testutils-espresso", "testutils/testutils-espresso")
 includeProject(":internal-testutils-truth", "testutils/testutils-truth")
 includeProject(":internal-testutils-ktx", "testutils/testutils-ktx")
+includeProject(":internal-testutils-navigation", "testutils/testutils-navigation")
 
 /////////////////////////////
 //
diff --git a/testutils/testutils-navigation/build.gradle b/testutils/testutils-navigation/build.gradle
new file mode 100644
index 0000000..d951ddf
--- /dev/null
+++ b/testutils/testutils-navigation/build.gradle
@@ -0,0 +1,51 @@
+/*
+ * Copyright 2018 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import static androidx.build.dependencies.DependenciesKt.*
+import androidx.build.LibraryGroups
+import androidx.build.LibraryVersions
+import androidx.build.AndroidXExtension
+import androidx.build.Publish
+
+plugins {
+    id("AndroidXPlugin")
+    id("com.android.library")
+    id("org.jetbrains.kotlin.android")
+}
+
+android {
+    buildTypes {
+        debug {
+            testCoverageEnabled = false // Breaks Kotlin compiler.
+        }
+    }
+}
+
+dependencies {
+    api(project(":navigation:navigation-common-ktx"))
+
+    testImplementation(JUNIT)
+    testImplementation(MOCKITO_CORE)
+
+    androidTestImplementation(ANDROIDX_TEST_EXT_JUNIT)
+    androidTestImplementation(ANDROIDX_TEST_CORE)
+    androidTestImplementation(ANDROIDX_TEST_RUNNER)
+    androidTestImplementation(ESPRESSO_CORE)
+}
+
+androidx {
+    toolingProject = true
+}
diff --git a/navigation/navigation-testing/src/androidTest/AndroidManifest.xml b/testutils/testutils-navigation/src/androidTest/AndroidManifest.xml
similarity index 94%
rename from navigation/navigation-testing/src/androidTest/AndroidManifest.xml
rename to testutils/testutils-navigation/src/androidTest/AndroidManifest.xml
index 1d483b4..118821f 100644
--- a/navigation/navigation-testing/src/androidTest/AndroidManifest.xml
+++ b/testutils/testutils-navigation/src/androidTest/AndroidManifest.xml
@@ -15,5 +15,5 @@
   ~ limitations under the License.
   -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="androidx.navigation.testing">
+    package="androidx.testutils">
 </manifest>
diff --git a/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavigatorDestinationBuilderTest.kt b/testutils/testutils-navigation/src/androidTest/java/androidx/testutils/TestNavigatorDestinationBuilderTest.kt
similarity index 97%
rename from navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavigatorDestinationBuilderTest.kt
rename to testutils/testutils-navigation/src/androidTest/java/androidx/testutils/TestNavigatorDestinationBuilderTest.kt
index 07c2c3f..007f62d 100644
--- a/navigation/navigation-testing/src/androidTest/java/androidx/navigation/testing/TestNavigatorDestinationBuilderTest.kt
+++ b/testutils/testutils-navigation/src/androidTest/java/androidx/testutils/TestNavigatorDestinationBuilderTest.kt
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package androidx.navigation.testing
+package androidx.testutils
 
 import androidx.navigation.contains
 import androidx.navigation.get
diff --git a/navigation/navigation-testing/src/androidTest/AndroidManifest.xml b/testutils/testutils-navigation/src/main/AndroidManifest.xml
similarity index 94%
copy from navigation/navigation-testing/src/androidTest/AndroidManifest.xml
copy to testutils/testutils-navigation/src/main/AndroidManifest.xml
index 1d483b4..118821f 100644
--- a/navigation/navigation-testing/src/androidTest/AndroidManifest.xml
+++ b/testutils/testutils-navigation/src/main/AndroidManifest.xml
@@ -15,5 +15,5 @@
   ~ limitations under the License.
   -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="androidx.navigation.testing">
+    package="androidx.testutils">
 </manifest>
diff --git a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigator.kt b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigator.kt
similarity index 97%
rename from navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigator.kt
rename to testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigator.kt
index 059f0f9..1893300 100644
--- a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigator.kt
+++ b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigator.kt
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package androidx.navigation.testing
+package androidx.testutils
 
 import android.os.Bundle
 
diff --git a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorDestinationBuilder.kt b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorDestinationBuilder.kt
similarity index 97%
rename from navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorDestinationBuilder.kt
rename to testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorDestinationBuilder.kt
index 892b39e..a5e45d8 100644
--- a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorDestinationBuilder.kt
+++ b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorDestinationBuilder.kt
@@ -16,7 +16,7 @@
 
 @file:Suppress("NOTHING_TO_INLINE")
 
-package androidx.navigation.testing
+package androidx.testutils
 
 import androidx.annotation.IdRes
 import androidx.navigation.NavDestinationBuilder
diff --git a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorProvider.kt
similarity index 95%
rename from navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt
rename to testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorProvider.kt
index 238ba92..6829dd2 100644
--- a/navigation/navigation-testing/src/main/java/androidx/navigation/testing/TestNavigatorProvider.kt
+++ b/testutils/testutils-navigation/src/main/java/androidx/testutils/TestNavigatorProvider.kt
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package androidx.navigation.testing
+package androidx.testutils
 
 import androidx.navigation.NavGraphNavigator
 import androidx.navigation.NavigatorProvider
diff --git a/navigation/navigation-testing/src/test/java/androidx/navigation/testing/TestNavigatorTest.kt b/testutils/testutils-navigation/src/test/java/androidx/testutils/TestNavigatorTest.kt
similarity index 97%
rename from navigation/navigation-testing/src/test/java/androidx/navigation/testing/TestNavigatorTest.kt
rename to testutils/testutils-navigation/src/test/java/androidx/testutils/TestNavigatorTest.kt
index 323d60a..2c53c7f 100644
--- a/navigation/navigation-testing/src/test/java/androidx/navigation/testing/TestNavigatorTest.kt
+++ b/testutils/testutils-navigation/src/test/java/androidx/testutils/TestNavigatorTest.kt
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package androidx.navigation.testing
+package androidx.testutils
 
 import android.os.Bundle
 import org.junit.Assert.assertEquals