mirror of
https://github.com/0rangebananaspy/authelia.git
synced 2024-09-14 22:47:21 +07:00
83488d52a6
* refactor(suites): replace selenium with go-rod This change replaces [tebeka/selenium](https://github.com/tebeka/selenium) with [go-rod](https://github.com/go-rod/rod). We no longer have a chromedriver/external driver dependency to utilise Selenium as we instead utilise the Chrome Dev Protocol to communicate with the browser. Rod [documents](https://go-rod.github.io/#/why-rod) benefits of choosing the library as opposed to the available alternatives.
30 lines
564 B
Go
30 lines
564 B
Go
package suites
|
|
|
|
import (
|
|
"fmt"
|
|
"strings"
|
|
"testing"
|
|
|
|
"github.com/go-rod/rod"
|
|
"github.com/stretchr/testify/assert"
|
|
"github.com/stretchr/testify/require"
|
|
)
|
|
|
|
func (rs *RodSession) verifyBodyContains(t *testing.T, page *rod.Page, pattern string) {
|
|
body, err := page.Element("body")
|
|
assert.NoError(t, err)
|
|
assert.NotNil(t, body)
|
|
|
|
text, err := body.Text()
|
|
assert.NoError(t, err)
|
|
assert.NotNil(t, text)
|
|
|
|
if strings.Contains(text, pattern) {
|
|
err = nil
|
|
} else {
|
|
err = fmt.Errorf("body does not contain pattern: %s", pattern)
|
|
}
|
|
|
|
require.NoError(t, err)
|
|
}
|