39 lines
900 B
Go
39 lines
900 B
Go
package server
|
|
|
|
import (
|
|
"testing"
|
|
|
|
"github.com/stretchr/testify/assert"
|
|
)
|
|
|
|
func TestHeadlessConfigConstruction(t *testing.T) {
|
|
config := &HeadlessConfig{
|
|
ServerURL: "http://127.0.0.1:3000",
|
|
ChromePath: "/usr/bin/chromium",
|
|
}
|
|
|
|
assert.Equal(t, "http://127.0.0.1:3000", config.ServerURL)
|
|
assert.Equal(t, "/usr/bin/chromium", config.ChromePath)
|
|
assert.Empty(t, config.HeadlessToken)
|
|
}
|
|
|
|
func TestHeadlessConfigWithToken(t *testing.T) {
|
|
config := &HeadlessConfig{
|
|
ServerURL: "http://127.0.0.1:3000",
|
|
HeadlessToken: "abc123",
|
|
}
|
|
|
|
assert.Equal(t, "abc123", config.HeadlessToken)
|
|
}
|
|
|
|
func TestHeadlessBrowserStartFailsWithoutChrome(t *testing.T) {
|
|
config := &HeadlessConfig{
|
|
ServerURL: "http://127.0.0.1:9999",
|
|
ChromePath: "/nonexistent/chrome",
|
|
}
|
|
|
|
hb, err := StartHeadlessBrowser(config)
|
|
assert.Error(t, err, "should fail when Chrome binary is not found")
|
|
assert.Nil(t, hb)
|
|
}
|