Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ff9b6fab authored by Paul Duffin's avatar Paul Duffin
Browse files

bootclasspath_fragment: Treat some specific modules as test

Treats bootclasspath_fragment modules that have not yet been converted
to test modules as if they were test modules. This is a temporary work
around to ease the migration to bootclasspath_fragment_test modules and
is expected to be reverted.

Bug: 194063708
Test: m nothing
Change-Id: I093fbec4e926719b644c64ebfc63f9e3070e28db
parent c15b9e99
Loading
Loading
Loading
Loading
+16 −1
Original line number Diff line number Diff line
@@ -827,7 +827,22 @@ func (b *BootclasspathFragmentModule) createHiddenAPIFlagInput(ctx android.Modul

// isTestFragment returns true if the current module is a test bootclasspath_fragment.
func (b *BootclasspathFragmentModule) isTestFragment() bool {
	return b.testFragment
	if b.testFragment {
		return true
	}

	// TODO(b/194063708): Once test fragments all use bootclasspath_fragment_test
	// Some temporary exceptions until all test fragments use the
	// bootclasspath_fragment_test module type.
	name := b.BaseModuleName()
	if strings.HasPrefix(name, "test_") {
		return true
	}
	if name == "apex.apexd_test_bootclasspath-fragment" {
		return true
	}

	return false
}

// produceHiddenAPIOutput produces the hidden API all-flags.csv file (and supporting files)
+22 −0
Original line number Diff line number Diff line
@@ -293,6 +293,22 @@ func TestBootclasspathFragment_Test(t *testing.T) {
			},
		}

		bootclasspath_fragment {
			name: "test_fragment",
			contents: ["mysdklibrary"],
			hidden_api: {
				split_packages: [],
			},
		}

		bootclasspath_fragment {
			name: "apex.apexd_test_bootclasspath-fragment",
			contents: ["mysdklibrary"],
			hidden_api: {
				split_packages: [],
			},
		}

		bootclasspath_fragment_test {
			name: "a_test_fragment",
			contents: ["mysdklibrary"],
@@ -314,6 +330,12 @@ func TestBootclasspathFragment_Test(t *testing.T) {
	fragment := result.Module("myfragment", "android_common").(*BootclasspathFragmentModule)
	android.AssertBoolEquals(t, "not a test fragment", false, fragment.isTestFragment())

	fragment = result.Module("test_fragment", "android_common").(*BootclasspathFragmentModule)
	android.AssertBoolEquals(t, "is a test fragment by prefix", true, fragment.isTestFragment())

	fragment = result.Module("a_test_fragment", "android_common").(*BootclasspathFragmentModule)
	android.AssertBoolEquals(t, "is a test fragment by type", true, fragment.isTestFragment())

	fragment = result.Module("apex.apexd_test_bootclasspath-fragment", "android_common").(*BootclasspathFragmentModule)
	android.AssertBoolEquals(t, "is a test fragment by name", true, fragment.isTestFragment())
}