RNGP - Top level property enableHermes -> hermesEnabled

Summary:
This is part of a series of tasks to make the React Native Gradle Plugin (RNGP) variant-aware.

Here I'm renaming the top level property to enable hermes from `enableHermes` to `hermesEnabled`. We have a bunch of other properties which are called *Enabled. This one was following a different convention.

I'm retaining the backward compatibility for users using `project.ext.react.enableHermes` so this is not going to be a breakign change.

Changelog:
[Internal] [Changed] - RNGP - Top level property enableHermes -> hermesEnabled

Reviewed By: cipolleschi

Differential Revision: D40633109

fbshipit-source-id: 9d7efad6cb3bb382d1beb56966795a3f42bdaae6
This commit is contained in:
Nicola Corti
2022-10-24 07:00:36 -07:00
committed by Facebook GitHub Bot
parent 074e3f0009
commit 41fec07e20
3 changed files with 7 additions and 5 deletions
@@ -19,8 +19,8 @@ internal object ProjectUtils {
internal val Project.isHermesEnabled: Boolean
get() =
if (project.hasProperty("enableHermes")) {
project.property("enableHermes").toString().lowercase().toBooleanStrictOrNull() ?: true
if (project.hasProperty("hermesEnabled")) {
project.property("hermesEnabled").toString().lowercase().toBooleanStrictOrNull() ?: true
} else if (project.extensions.extraProperties.has("react")) {
@Suppress("UNCHECKED_CAST")
val reactMap = project.extensions.extraProperties.get("react") as? Map<String, Any?>
@@ -50,21 +50,21 @@ class ProjectUtilsTest {
@Test
fun isNewArchEnabled_withDisabledViaProperty_returnsFalse() {
val project = createProject()
project.extensions.extraProperties.set("enableHermes", "false")
project.extensions.extraProperties.set("hermesEnabled", "false")
assertFalse(project.isHermesEnabled)
}
@Test
fun isHermesEnabled_withEnabledViaProperty_returnsTrue() {
val project = createProject()
project.extensions.extraProperties.set("enableHermes", "true")
project.extensions.extraProperties.set("hermesEnabled", "true")
assertTrue(project.isHermesEnabled)
}
@Test
fun isHermesEnabled_withInvalidViaProperty_returnsTrue() {
val project = createProject()
project.extensions.extraProperties.set("enableHermes", "¯\\_(ツ)_/¯")
project.extensions.extraProperties.set("hermesEnabled", "¯\\_(ツ)_/¯")
assertTrue(project.isHermesEnabled)
}
@@ -14,3 +14,5 @@ FLIPPER_VERSION=0.125.0
# RN-Tester is building with NewArch always enabled
newArchEnabled=true
# RN-Tester is running with Hermes enabled and filtering variants with enableHermesOnlyInVariants
hermesEnabled=true