Added GetPluginID method and tests (#27281)

A new method, GetPluginID, has been added to the Manifest model. This function returns the ID of a plugin. Corresponding unit tests have also been implemented to ensure that this function works as expected. The test cases cover scenarios where IDs are the same and different.
This commit is contained in:
Domenico Rizzo 2024-06-10 17:11:47 +02:00 committed by GitHub
parent cebe7e0315
commit 4acc4796ed
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
2 changed files with 27 additions and 0 deletions

View File

@ -322,6 +322,10 @@ func (m *Manifest) IsValid() error {
return nil
}
func (m *Manifest) GetPluginID() string {
return m.Id
}
func (s *PluginSettingsSchema) isValid() error {
for _, setting := range s.Settings {
err := setting.isValid()

View File

@ -81,6 +81,29 @@ func TestIsValid(t *testing.T) {
}
}
func TestGetPluginIdReturnsCorrectId(t *testing.T) {
testCases := []struct {
Title string
Id string
manifest *Manifest
ExpectEqual bool
}{
{"Ids are Different", "not-same.com.company.test", &Manifest{Id: "com.company.test"}, false},
{"Ids are the same", "com.company.test", &Manifest{Id: "com.company.test"}, true},
}
for _, tc := range testCases {
t.Run(tc.Title, func(t *testing.T) {
id := tc.manifest.GetPluginID()
if tc.ExpectEqual {
assert.Equal(t, tc.Id, id)
} else {
assert.NotEqual(t, tc.Id, id)
}
})
}
}
func TestIsValidSettingsSchema(t *testing.T) {
testCases := []struct {
Title string