Bug 2020769 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

Because bug 2020683 needs `default:` out of mozilla central, because it will become an invalid stanza on the Nimbus side, it was proposed to be removed in bug 2012763. 

We should reinstate these tests because it confirms that Nimbus is correctly parsing and identifying Gecko Preference experiments after bug 2020683 lands and the `default:stanza` can be removed. 

We cannot remove the default stanza alone because of: 

```
Validating manifest for different channels:
❎ 
release.............invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
Error: Manifest contains error(s) in 4 channels
❎ 
beta................invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
❎ 
nightly.............invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
❎ 
developer...........invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
```

What should be reinstated is:

```
nimbus.fml.yaml:
  gecko-nimbus-validation:
    description: "Feature for validating Nimbus Gecko functionality"
    variables:
      test-preference:
        description: "A test gecko preference"
        type: String
        gecko-pref:
          pref: "gecko.nimbus.test"
          branch: "default"

NimbusGeckoPrefHandler.kt:
fun `test nimbusGeckoPreferences has appropriate values`() {
        val handler = makeHandler()
        assertNotNull(handler.nimbusGeckoPreferences["gecko-nimbus-validation"])
        assertNotNull(
            handler.nimbusGeckoPreferences["gecko-nimbus-validation"]?.get(
                "test-preference",
            ),
        )
    }

    @Test
    fun `preferenceList has appropriate values`() {
        val handler = makeHandler()
        assertTrue(handler.preferenceList.contains(TEST_PREF))
    }

```

See [D285806](https://phabricator.services.mozilla.com/D285806). May or may not need to use mockking after reinstating.
Because bug 2020683 needs `default:` out of mozilla central, because it will become an invalid stanza on the Nimbus side, it was proposed to be removed in bug 2012763. 

We should reinstate these tests because it confirms that Nimbus is correctly parsing and identifying Gecko Preference experiments after bug 2020683 lands and the `default:stanza` can be removed. 

We cannot remove the default stanza alone because of: 

```
Validating manifest for different channels:
❎ 
release.............invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
Error: Manifest contains error(s) in 4 channels
❎ 
beta................invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
❎ 
nightly.............invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
❎ 
developer...........invalid
: Validation Error at features/gecko-nimbus-validation.test-preference: Invalid value null for type String
```

What should be reinstated is:

```
nimbus.fml.yaml:
  gecko-nimbus-validation:
    description: "Feature for validating Nimbus Gecko functionality"
    variables:
      test-preference:
        description: "A test gecko preference"
        type: String
        gecko-pref:
          pref: "gecko.nimbus.test"
          branch: "default"

NimbusGeckoPrefHandler.kt:
fun `test nimbusGeckoPreferences has appropriate values`() {
        val handler = makeHandler()
        assertNotNull(handler.nimbusGeckoPreferences["gecko-nimbus-validation"])
        assertNotNull(
            handler.nimbusGeckoPreferences["gecko-nimbus-validation"]?.get(
                "test-preference",
            ),
        )
    }

    @Test
    fun `preferenceList has appropriate values`() {
        val handler = makeHandler()
        assertTrue(handler.preferenceList.contains(TEST_PREF))
    }

```

See [D285806](https://phabricator.services.mozilla.com/D285806). Need to get rid of mockking after reinstating.

Back to Bug 2020769 Comment 0