scripttests

package
v0.11.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2026 License: MIT Imports: 30 Imported by: 0

Documentation

Overview

Package scripttests contains a specification of the behaviour of client-side scripting.

The tests are written targetting an interface; allowing different script engines to use the same suite of tests.

Index

Constants

This section is empty.

Variables

View Source
var WithLogOption = browsertest.WithLogOption
View Source
var WithMinLogLevel = browsertest.WithMinLogLevel

Functions

func RunBasicSuite

func RunBasicSuite(t *testing.T, e html.ScriptEngine)

func RunDataStarTests

func RunDataStarTests(t *testing.T, e html.ScriptEngine)

func RunDownloadScriptSuite

func RunDownloadScriptSuite(t *testing.T, e html.ScriptEngine)

func RunHtmxTests

func RunHtmxTests(t *testing.T, e html.ScriptEngine)

func RunModuleSuite

func RunModuleSuite(t *testing.T, e html.ScriptEngine)

func RunSuites

func RunSuites(t *testing.T, e html.ScriptEngine)

Types

type AbortControllerSuite

type AbortControllerSuite struct {
	ScriptHostSuite
}

func NewAbortControllerSuite

func NewAbortControllerSuite(h html.ScriptEngine) *AbortControllerSuite

func (*AbortControllerSuite) TestAbortSignal

func (s *AbortControllerSuite) TestAbortSignal()

func (*AbortControllerSuite) TestGlobals

func (s *AbortControllerSuite) TestGlobals()

type ClassListTestSuite

type ClassListTestSuite struct {
	ScriptHostSuite
}

func NewClassListTestSuite

func NewClassListTestSuite(h html.ScriptEngine) *ClassListTestSuite

func (*ClassListTestSuite) TestAdd

func (s *ClassListTestSuite) TestAdd()

func (*ClassListTestSuite) TestClassListIsIterable

func (s *ClassListTestSuite) TestClassListIsIterable()

func (*ClassListTestSuite) TestIterableIteratesClassNames

func (s *ClassListTestSuite) TestIterableIteratesClassNames()

func (*ClassListTestSuite) TestToggleExistingClassName

func (s *ClassListTestSuite) TestToggleExistingClassName()

func (*ClassListTestSuite) TestToggleForceExistingItem

func (s *ClassListTestSuite) TestToggleForceExistingItem()

func (*ClassListTestSuite) TestToggleForceNonExistingItem

func (s *ClassListTestSuite) TestToggleForceNonExistingItem()

func (*ClassListTestSuite) TestToggleNoForceExistingItem

func (s *ClassListTestSuite) TestToggleNoForceExistingItem()

func (*ClassListTestSuite) TestToggleNoForceNonExistingItem

func (s *ClassListTestSuite) TestToggleNoForceNonExistingItem()

func (*ClassListTestSuite) TestToggleNonExistingClassName

func (s *ClassListTestSuite) TestToggleNonExistingClassName()

type DatasetSuite

type DatasetSuite struct {
	ScriptHostSuite
}

func NewDatasetSuite

func NewDatasetSuite(h html.ScriptEngine) *DatasetSuite

func (*DatasetSuite) TestDataset

func (s *DatasetSuite) TestDataset()

func (*DatasetSuite) TestIsAFunction

func (s *DatasetSuite) TestIsAFunction()

type DocumentFragmentSuite

type DocumentFragmentSuite struct {
	ScriptHostSuite
}

func NewDocumentFragmentSuite

func NewDocumentFragmentSuite(h html.ScriptEngine) *DocumentFragmentSuite

func (*DocumentFragmentSuite) TestInheritance

func (s *DocumentFragmentSuite) TestInheritance()

func (*DocumentFragmentSuite) TestMethods

func (s *DocumentFragmentSuite) TestMethods()

type ElementSuite

type ElementSuite struct {
	ScriptHostSuite
}

func NewElementSuite

func NewElementSuite(h html.ScriptEngine) *ElementSuite

func (*ElementSuite) TestAppendMultipleElements

func (s *ElementSuite) TestAppendMultipleElements()

func (*ElementSuite) TestAttributes

func (s *ElementSuite) TestAttributes()

func (*ElementSuite) TestBasicElementProperties

func (s *ElementSuite) TestBasicElementProperties()

func (*ElementSuite) TestChildren

func (s *ElementSuite) TestChildren()

func (*ElementSuite) TestElementSiblings

func (s *ElementSuite) TestElementSiblings()

func (*ElementSuite) TestElementStyle

func (s *ElementSuite) TestElementStyle()

func (*ElementSuite) TestIDLInterfaceNamesForElements

func (s *ElementSuite) TestIDLInterfaceNamesForElements()

func (*ElementSuite) TestInsertAdjacentHTML

func (s *ElementSuite) TestInsertAdjacentHTML()

func (*ElementSuite) TestInsertAdjacentHTMLBadPosition

func (s *ElementSuite) TestInsertAdjacentHTMLBadPosition()

func (*ElementSuite) TestQuerySelector

func (s *ElementSuite) TestQuerySelector()

func (*ElementSuite) TestSetOuterHTML

func (s *ElementSuite) TestSetOuterHTML()

type EventLoopTestSuite

type EventLoopTestSuite struct {
	suite.Suite
	// contains filtered or unexported fields
}

func NewEventLoopTestSuite

func NewEventLoopTestSuite(e html.ScriptEngine) *EventLoopTestSuite

func (*EventLoopTestSuite) SetupTest

func (s *EventLoopTestSuite) SetupTest()

func (*EventLoopTestSuite) TeardownTest

func (s *EventLoopTestSuite) TeardownTest()

func (*EventLoopTestSuite) TestClearTimeout

func (s *EventLoopTestSuite) TestClearTimeout()

func (*EventLoopTestSuite) TestDeferExecution

func (s *EventLoopTestSuite) TestDeferExecution()

func (*EventLoopTestSuite) TestDispatchError

func (s *EventLoopTestSuite) TestDispatchError()

func (*EventLoopTestSuite) TestGlobals

func (s *EventLoopTestSuite) TestGlobals()

func (*EventLoopTestSuite) TestInterval

func (s *EventLoopTestSuite) TestInterval()

func (*EventLoopTestSuite) TestQueueMicrotask

func (s *EventLoopTestSuite) TestQueueMicrotask()

type FormDataSuite

type FormDataSuite struct {
	ScriptHostSuite
}

func NewFormDataSuite

func NewFormDataSuite(h html.ScriptEngine) *FormDataSuite

func (*FormDataSuite) TestAddAndGet

func (s *FormDataSuite) TestAddAndGet()

func (*FormDataSuite) TestForEach

func (s *FormDataSuite) TestForEach()

func (*FormDataSuite) TestGetEntries

func (s *FormDataSuite) TestGetEntries()

func (*FormDataSuite) TestGetKeys

func (s *FormDataSuite) TestGetKeys()

func (*FormDataSuite) TestInheritance

func (s *FormDataSuite) TestInheritance()

func (*FormDataSuite) TestIterable

func (s *FormDataSuite) TestIterable()

type LocationSuite

type LocationSuite struct {
	ScriptHostSuite
}

func NewLocationSuite

func NewLocationSuite(h html.ScriptEngine) *LocationSuite

func (*LocationSuite) TestGlobalScope

func (s *LocationSuite) TestGlobalScope()

func (*LocationSuite) TestHrefEqualsDocumentLocation

func (s *LocationSuite) TestHrefEqualsDocumentLocation()

type NamedNodeMapSuite

type NamedNodeMapSuite struct {
	ScriptHostSuite
}

func NewNamedNodeMapSuite

func NewNamedNodeMapSuite(h html.ScriptEngine) *NamedNodeMapSuite

func (*NamedNodeMapSuite) TestIndex

func (s *NamedNodeMapSuite) TestIndex()

func (*NamedNodeMapSuite) TestIndexOutOfRange

func (s *NamedNodeMapSuite) TestIndexOutOfRange()

func (*NamedNodeMapSuite) TestInheritance

func (s *NamedNodeMapSuite) TestInheritance()

func (*NamedNodeMapSuite) TestIterateAttributes

func (s *NamedNodeMapSuite) TestIterateAttributes()

func (*NamedNodeMapSuite) TestNodeTypeOfAttributes

func (s *NamedNodeMapSuite) TestNodeTypeOfAttributes()

type NodeListSuite

type NodeListSuite struct {
	ScriptHostSuite
}

func NewNodeListSuite

func NewNodeListSuite(h html.ScriptEngine) *NodeListSuite

func (*NodeListSuite) TestExtendsObject

func (s *NodeListSuite) TestExtendsObject()

func (*NodeListSuite) TestNodeListWithThreeElements

func (s *NodeListSuite) TestNodeListWithThreeElements()

type NodeTestSuite

type NodeTestSuite struct {
	ScriptHostSuite
}

func NewNodeTestSuite

func NewNodeTestSuite(h html.ScriptEngine) *NodeTestSuite

func (*NodeTestSuite) TestContains

func (s *NodeTestSuite) TestContains()

func (*NodeTestSuite) TestFirstChild

func (s *NodeTestSuite) TestFirstChild()

func (*NodeTestSuite) TestInsertBefore

func (s *NodeTestSuite) TestInsertBefore()

func (*NodeTestSuite) TestInsertBeforeWithNoRef

func (s *NodeTestSuite) TestInsertBeforeWithNoRef()

func (*NodeTestSuite) TestInsertBeforeWithNullRef

func (s *NodeTestSuite) TestInsertBeforeWithNullRef()

func (*NodeTestSuite) TestRemoveChild

func (s *NodeTestSuite) TestRemoveChild()

func (*NodeTestSuite) TestStructure

func (s *NodeTestSuite) TestStructure()

type ScriptHostFactorySuite

type ScriptHostFactorySuite struct {
	gosttest.GomegaSuite

	Window htmltest.WindowHelper
	// contains filtered or unexported fields
}

func NewScriptHostFactorySuite

func NewScriptHostFactorySuite(f html.ScriptEngine) *ScriptHostFactorySuite

func (*ScriptHostFactorySuite) Eval

func (s *ScriptHostFactorySuite) Eval(script string) (any, error)

Eval runs a script and returns the evaluated value as a native Go value.

Returns an error if no suitable conversion could be found or if the conversion is not implemented.

Returns an error if script code throws an exception.

If the return value is not needed, you can use RunScript instead to avoid dealing with errors if return value conversion is not possible.

func (*ScriptHostFactorySuite) MustEval

func (s *ScriptHostFactorySuite) MustEval(script string) any

func (*ScriptHostFactorySuite) MustRunScript

func (s *ScriptHostFactorySuite) MustRunScript(script string)

MustRunScript runs a script and marks the test as an error if an error occurs.

func (*ScriptHostFactorySuite) RunScript

func (s *ScriptHostFactorySuite) RunScript(script string) error

Runs a script, and discards the returned value.

Returns an error if the script code throws. Named RunScript to not shadow [Suite.Run].

func (*ScriptHostFactorySuite) SetupTest

func (s *ScriptHostFactorySuite) SetupTest()

type ScriptHostSuite

type ScriptHostSuite struct {
	gosttest.GomegaSuite

	Window htmltest.WindowHelper
	// contains filtered or unexported fields
}

func NewScriptHostSuite

func NewScriptHostSuite(e html.ScriptEngine) *ScriptHostSuite

func (*ScriptHostSuite) Eval

func (s *ScriptHostSuite) Eval(script string) (any, error)

Runs a script and returns the evaluated value as a native Go value.

Panics (or generates an error?) if no suitable conversion could be found (i.e. gost doesn't implement this yet).

Returns an error if script code throws.

If the return value is not used, call run; to avoid panic/error

func (*ScriptHostSuite) MustEval

func (s *ScriptHostSuite) MustEval(script string) any

func (*ScriptHostSuite) MustLoadHTML

func (s *ScriptHostSuite) MustLoadHTML(html string)

func (*ScriptHostSuite) MustRunScript

func (s *ScriptHostSuite) MustRunScript(script string)

MustRunScript runs a script and marks the test as an error if an error occurs.

func (*ScriptHostSuite) RunScript

func (s *ScriptHostSuite) RunScript(script string) error

Runs a script, and discards the returned value.

Returns an error if the script code throws. Named RunScript to not shadow [Suite.Run].

func (*ScriptHostSuite) SetupTest

func (s *ScriptHostSuite) SetupTest()

func (*ScriptHostSuite) TeardownTest

func (s *ScriptHostSuite) TeardownTest()

type ShadowRootSuite

type ShadowRootSuite struct {
	ScriptHostSuite
}

func NewShadowRootSuite

func NewShadowRootSuite(h html.ScriptEngine) *ShadowRootSuite

func (*ShadowRootSuite) TestInheritance

func (s *ShadowRootSuite) TestInheritance()

func (*ShadowRootSuite) TestNodeType

func (s *ShadowRootSuite) TestNodeType()

type StreamsSuite

type StreamsSuite struct {
	ScriptHostFactorySuite
}

func NewStreamsSuite

func NewStreamsSuite(e html.ScriptEngine) *StreamsSuite

func (*StreamsSuite) TestPrototypes

func (s *StreamsSuite) TestPrototypes()

type WindowTestSuite

type WindowTestSuite struct {
	ScriptHostSuite
}

func NewWindowTestSuite

func NewWindowTestSuite(h html.ScriptEngine) *WindowTestSuite

func (*WindowTestSuite) TestConstructorName

func (s *WindowTestSuite) TestConstructorName()

func (*WindowTestSuite) TestDOMContentLoaded

func (s *WindowTestSuite) TestDOMContentLoaded()

func (*WindowTestSuite) TestDocumentProperty

func (s *WindowTestSuite) TestDocumentProperty()

func (*WindowTestSuite) TestGlobalInstance

func (s *WindowTestSuite) TestGlobalInstance()

func (*WindowTestSuite) TestLocation

func (s *WindowTestSuite) TestLocation()

func (*WindowTestSuite) TestWindowConstructor

func (s *WindowTestSuite) TestWindowConstructor()

func (*WindowTestSuite) TestWindowInheritance

func (s *WindowTestSuite) TestWindowInheritance()

type XMLHttpRequestSuite

type XMLHttpRequestSuite struct {
	gosttest.GomegaSuite
	// contains filtered or unexported fields
}

func NewXMLHttpRequestSuite

func NewXMLHttpRequestSuite(e html.ScriptEngine) *XMLHttpRequestSuite

func (*XMLHttpRequestSuite) ServeHTTP

func (s *XMLHttpRequestSuite) ServeHTTP(w http.ResponseWriter, r *http.Request)

func (*XMLHttpRequestSuite) TestInheritance

func (s *XMLHttpRequestSuite) TestInheritance()

func (*XMLHttpRequestSuite) TestLoadEvent

func (s *XMLHttpRequestSuite) TestLoadEvent()

func (*XMLHttpRequestSuite) TestOnloadAttribute

func (s *XMLHttpRequestSuite) TestOnloadAttribute()

func (*XMLHttpRequestSuite) TestSendFormData

func (s *XMLHttpRequestSuite) TestSendFormData()

func (*XMLHttpRequestSuite) TestSendNullBody

func (s *XMLHttpRequestSuite) TestSendNullBody()

func (*XMLHttpRequestSuite) TestSendString

func (s *XMLHttpRequestSuite) TestSendString()

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL