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.
Этот коммит содержится в:
Domenico Rizzo
2024-06-10 17:11:47 +02:00
коммит произвёл GitHub
родитель cebe7e0315
Коммит 4acc4796ed
2 изменённых файлов: 27 добавлений и 0 удалений

Просмотреть файл

@@ -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()

Просмотреть файл

@@ -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