初始化仓库
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
package line
|
||||
|
||||
import (
|
||||
"testing"
|
||||
|
||||
"github.com/chenhg5/cc-connect/core"
|
||||
)
|
||||
|
||||
func TestPlatform_Name(t *testing.T) {
|
||||
p := &Platform{}
|
||||
if got := p.Name(); got != "line" {
|
||||
t.Errorf("Name() = %q, want %q", got, "line")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_MissingCredentials(t *testing.T) {
|
||||
// Missing both channel_secret and channel_token
|
||||
_, err := New(map[string]any{})
|
||||
if err == nil {
|
||||
t.Error("expected error for missing credentials, got nil")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_MissingChannelSecret(t *testing.T) {
|
||||
// Only channel_token provided
|
||||
_, err := New(map[string]any{"channel_token": "token"})
|
||||
if err == nil {
|
||||
t.Error("expected error for missing channel_secret, got nil")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_MissingChannelToken(t *testing.T) {
|
||||
// Only channel_secret provided
|
||||
_, err := New(map[string]any{"channel_secret": "secret"})
|
||||
if err == nil {
|
||||
t.Error("expected error for missing channel_token, got nil")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_WithValidCredentials(t *testing.T) {
|
||||
p, err := New(map[string]any{
|
||||
"channel_secret": "test-secret",
|
||||
"channel_token": "test-token",
|
||||
})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
if p == nil {
|
||||
t.Fatal("expected platform, got nil")
|
||||
}
|
||||
if p.Name() != "line" {
|
||||
t.Errorf("Name() = %q, want %q", p.Name(), "line")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_DefaultPort(t *testing.T) {
|
||||
p, err := New(map[string]any{
|
||||
"channel_secret": "test-secret",
|
||||
"channel_token": "test-token",
|
||||
})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
platform := p.(*Platform)
|
||||
if platform.port != "8080" {
|
||||
t.Errorf("port = %q, want %q", platform.port, "8080")
|
||||
}
|
||||
if platform.callbackPath != "/callback" {
|
||||
t.Errorf("callbackPath = %q, want %q", platform.callbackPath, "/callback")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_CustomPortAndPath(t *testing.T) {
|
||||
p, err := New(map[string]any{
|
||||
"channel_secret": "test-secret",
|
||||
"channel_token": "test-token",
|
||||
"port": "9090",
|
||||
"callback_path": "/webhook",
|
||||
})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
platform := p.(*Platform)
|
||||
if platform.port != "9090" {
|
||||
t.Errorf("port = %q, want %q", platform.port, "9090")
|
||||
}
|
||||
if platform.callbackPath != "/webhook" {
|
||||
t.Errorf("callbackPath = %q, want %q", platform.callbackPath, "/webhook")
|
||||
}
|
||||
}
|
||||
|
||||
func TestNew_WithAllowFrom(t *testing.T) {
|
||||
p, err := New(map[string]any{
|
||||
"channel_secret": "test-secret",
|
||||
"channel_token": "test-token",
|
||||
"allow_from": "user1,user2",
|
||||
})
|
||||
if err != nil {
|
||||
t.Errorf("unexpected error: %v", err)
|
||||
}
|
||||
platform := p.(*Platform)
|
||||
if platform.allowFrom != "user1,user2" {
|
||||
t.Errorf("allowFrom = %q, want %q", platform.allowFrom, "user1,user2")
|
||||
}
|
||||
}
|
||||
|
||||
// verify Platform implements core.Platform
|
||||
var _ core.Platform = (*Platform)(nil)
|
||||
Reference in New Issue
Block a user