Files
2025-01-06 14:52:02 +08:00

50 lines
1.6 KiB
Go

package plugin_entities
import (
"testing"
)
func TestPluginUniqueIdentifier(t *testing.T) {
i, err := NewPluginUniqueIdentifier("langgenius/test:1.0.0@1234567890abcdef1234567890abcdef1234567890abcdef")
if err != nil {
t.Fatalf("NewPluginUniqueIdentifier() returned an error: %v", err)
}
if i.Author() != "langgenius" {
t.Fatalf("Author() = %s; want langgenius", i.Author())
}
if i.PluginID() != "langgenius/test" {
t.Fatalf("PluginID() = %s; want langgenius/test", i.PluginID())
}
if i.Version() != "1.0.0" {
t.Fatalf("Version() = %s; want 1.0.0", i.Version())
}
if i.Checksum() != "1234567890abcdef1234567890abcdef1234567890abcdef" {
t.Fatalf("Checksum() = %s; want 1234567890abcdef1234567890abcdef1234567890abcdef", i.Checksum())
}
_, err = NewPluginUniqueIdentifier("test:1.0.0@1234567890abcdef1234567890abcdef1234567890abcdef")
if err != nil {
t.Fatalf("NewPluginUniqueIdentifier() returned an error: %v", err)
}
_, err = NewPluginUniqueIdentifier("1.0.0@1234567890abcdef1234567890abcdef1234567890abcdef")
if err == nil {
t.Fatalf("NewPluginUniqueIdentifier() returned nil error for invalid identifier")
}
_, err = NewPluginUniqueIdentifier("1234567890abcdef1234567890abcdef1234567890abcdef")
if err == nil {
t.Fatalf("NewPluginUniqueIdentifier() returned nil error for invalid identifier")
}
_, err = NewPluginUniqueIdentifier("langgenius/test:1.0.0@123456")
if err == nil {
t.Fatalf("NewPluginUniqueIdentifier() returned nil error for invalid identifier")
}
_, err = NewPluginUniqueIdentifier("langgenius/test:1.0.0")
if err == nil {
t.Fatalf("NewPluginUniqueIdentifier() returned nil error for invalid identifier")
}
}