diff --git a/internal/interop/oidcrp/browser_test.go b/internal/interop/oidcrp/browser_test.go index 7902b11e..1944ba36 100644 --- a/internal/interop/oidcrp/browser_test.go +++ b/internal/interop/oidcrp/browser_test.go @@ -116,7 +116,7 @@ func TestBrowserBindingCookie(t *testing.T) { browser, cancel := chromedp.NewContext(allocator) t.Cleanup(cancel) - require.NoError(t, chromedp.Run(browser), "starting Chrome") + require.NoError(t, chromedp.Do(browser), "starting Chrome") for _, name := range []string{"query", "formpost", "lax"} { t.Run(name, func(t *testing.T) { @@ -128,28 +128,22 @@ func TestBrowserBindingCookie(t *testing.T) { tab, cancel = context.WithTimeout(tab, 30*time.Second) defer cancel() - var ( - result string - cookies []*network.Cookie - ) - - require.NoError(t, chromedp.Run(tab, + require.NoError(t, chromedp.Do(tab, chromedp.Navigate(origin+"/login/"+name), - chromedp.WaitVisible("#username", chromedp.ByID), - chromedp.SendKeys("#username", "test-user@127.0.0.1", chromedp.ByID), - chromedp.SendKeys("#password", userPassword, chromedp.ByID), - chromedp.Submit("#password", chromedp.ByID), - chromedp.WaitVisible("#result", chromedp.ByID), - chromedp.Text("#result", &result, chromedp.ByID), - chromedp.ActionFunc(func(ctx context.Context) error { - var err error - cookies, err = network.GetCookies().WithURLs([]string{origin + "/"}).Do(ctx) - - return err //nolint:wrapcheck // test - }), + chromedp.WaitVisible(chromedp.ID("username")), + chromedp.SendKeys(chromedp.ID("username"), "test-user@127.0.0.1"), + chromedp.SendKeys(chromedp.ID("password"), userPassword), + chromedp.Submit(chromedp.ID("password")), + chromedp.WaitVisible(chromedp.ID("result")), )) - err := <-conn.results + result, err := chromedp.Run(tab, chromedp.Text(chromedp.ID("result"))) + require.NoError(t, err) + + jar, err := chromedp.Call(tab, network.GetCookies, network.GetCookiesParams{URLs: []string{origin + "/"}}) + require.NoError(t, err) + + err = <-conn.results if conn.want == nil { require.NoError(t, err) assert.Equal(t, "subject: "+userID, result) @@ -158,7 +152,7 @@ func TestBrowserBindingCookie(t *testing.T) { assert.True(t, strings.HasPrefix(result, "error: ")) } - for _, c := range cookies { + for _, c := range jar.Cookies { assert.False(t, strings.HasPrefix(c.Name, "__Host-oidc-"), "binding cookie %s left after the callback", c.Name) } }) diff --git a/internal/interop/oidcrp/go.mod b/internal/interop/oidcrp/go.mod index 0e6ac0fc..2310f59b 100644 --- a/internal/interop/oidcrp/go.mod +++ b/internal/interop/oidcrp/go.mod @@ -3,8 +3,8 @@ module github.com/hyperscale-stack/security/internal/interop/oidcrp go 1.26.5 require ( - github.com/chromedp/cdproto v0.0.0-20260714215040-dc233986426f - github.com/chromedp/chromedp v0.16.0 + github.com/chromedp/cdproto v0.157.8 + github.com/chromedp/chromedp v0.20.1 github.com/hyperscale-stack/security v0.0.0-00010101000000-000000000000 github.com/hyperscale-stack/security/oidc/client v0.0.0-00010101000000-000000000000 github.com/stretchr/testify v1.12.1 @@ -14,15 +14,11 @@ require ( require ( github.com/bmatcuk/doublestar/v4 v4.10.2 // indirect github.com/cespare/xxhash/v2 v2.3.0 // indirect - github.com/chromedp/sysutil v1.1.0 // indirect github.com/go-chi/chi/v5 v5.3.2 // indirect github.com/go-jose/go-jose/v4 v4.1.5 // indirect github.com/go-json-experiment/json v0.0.0-20260623181947-01eb4420fa68 // indirect github.com/go-logr/logr v1.4.4 // indirect github.com/go-logr/stdr v1.2.2 // indirect - github.com/gobwas/httphead v0.1.0 // indirect - github.com/gobwas/pool v0.2.1 // indirect - github.com/gobwas/ws v1.4.0 // indirect github.com/google/uuid v1.6.0 // indirect github.com/gorilla/securecookie v1.1.2 // indirect github.com/kr/text v0.2.0 // indirect @@ -37,7 +33,6 @@ require ( go.opentelemetry.io/otel/trace v1.47.0 // indirect go.yaml.in/yaml/v3 v3.0.5 // indirect golang.org/x/oauth2 v0.37.0 // indirect - golang.org/x/sys v0.49.0 // indirect golang.org/x/text v0.43.0 // indirect ) diff --git a/internal/interop/oidcrp/go.sum b/internal/interop/oidcrp/go.sum index 9842129c..93087be1 100644 --- a/internal/interop/oidcrp/go.sum +++ b/internal/interop/oidcrp/go.sum @@ -2,12 +2,10 @@ github.com/bmatcuk/doublestar/v4 v4.10.2 h1:eF7W7HWKg3z9NrWV9pTLnNeoXaqq3Tq9DNKX github.com/bmatcuk/doublestar/v4 v4.10.2/go.mod h1:xBQ8jztBU6kakFMg+8WGxn0c6z1fTSPVIjEY1Wr7jzc= github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs= github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs= -github.com/chromedp/cdproto v0.0.0-20260714215040-dc233986426f h1:0Z1zcSLEmnj2c2CmJYBqewtS6pxhB39bNWUSEUAWjgk= -github.com/chromedp/cdproto v0.0.0-20260714215040-dc233986426f/go.mod h1:RwFsSODCtFExll+GhHM6R92SARHR3Z3oipaxLHj46C0= -github.com/chromedp/chromedp v0.16.0 h1:rOO4deOm4CbZgBCa8mD9g2rDyIoNs0BkgvNrlbp5ouk= -github.com/chromedp/chromedp v0.16.0/go.mod h1:rbuGKFT1vMcFcFqKfPIO1GpX/N+2s8onm2qMxZLbU5U= -github.com/chromedp/sysutil v1.1.0 h1:PUFNv5EcprjqXZD9nJb9b/c9ibAbxiYo4exNWZyipwM= -github.com/chromedp/sysutil v1.1.0/go.mod h1:WiThHUdltqCNKGc4gaU50XgYjwjYIhKWoHGPTUfWTJ8= +github.com/chromedp/cdproto v0.157.8 h1:Tkq0AjsUlC3Z4sJfHBzV/uAAxnTF/AZyuSTjfV/1gvk= +github.com/chromedp/cdproto v0.157.8/go.mod h1:h68JaIuFr9o3yiayxEYhBdvaxgYO3shDrPSYhNlyfu0= +github.com/chromedp/chromedp v0.20.1 h1:983T9wmyM09JtROWlxhLQwljKOQovqt8CVE89W3U0NA= +github.com/chromedp/chromedp v0.20.1/go.mod h1:6z1Y5FdKUxRzxx2qcC5h1xjaBJrSWrZp1mjgITfNZig= github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E= github.com/go-chi/chi/v5 v5.3.2 h1:5YQkICvTCSZ25hoRsyJazN0scjzKGiu4VAUc7H1o1nY= github.com/go-chi/chi/v5 v5.3.2/go.mod h1:R+tYY2hNuVUUjxoPtqUdgBqevM9s9njzkTLutVsOCto= @@ -20,12 +18,6 @@ github.com/go-logr/logr v1.4.4 h1:tG4xh9yMsRCAiodLVTxyrkzSZ9+o0L1Kg/+cPVcbP/8= github.com/go-logr/logr v1.4.4/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= -github.com/gobwas/httphead v0.1.0 h1:exrUm0f4YX0L7EBwZHuCF4GDp8aJfVeBrlLQrs6NqWU= -github.com/gobwas/httphead v0.1.0/go.mod h1:O/RXo79gxV8G+RqlR/otEwx4Q36zl9rqC5u12GKvMCM= -github.com/gobwas/pool v0.2.1 h1:xfeeEhW7pwmX8nuLVlqbzVc7udMDrwetjEv+TZIz1og= -github.com/gobwas/pool v0.2.1/go.mod h1:q8bcK0KcYlCgd9e7WYLm9LpyS+YeLd8JVDW6WezmKEw= -github.com/gobwas/ws v1.4.0 h1:CTaoG1tojrh4ucGPcoJFiAQUAsEWekEWvLy7GsVNqGs= -github.com/gobwas/ws v1.4.0/go.mod h1:G3gNqMNtPppf5XUz7O4shetPpcZ1VJ7zt18dlUeakrc= github.com/golang/mock v1.6.0 h1:ErTB+efbowRARo13NNdxyJji2egdxLGQhRaY+DUumQc= github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs= github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8= @@ -40,14 +32,10 @@ github.com/kr/pretty v0.3.1 h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE= github.com/kr/pretty v0.3.1/go.mod h1:hoEshYVHaxMs3cyo3Yncou5ZscifuDolrwPKZanG3xk= github.com/kr/text v0.2.0 h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY= github.com/kr/text v0.2.0/go.mod h1:eLer722TekiGuMkidMxC/pM04lWEeraHUUmBw8l2grE= -github.com/ledongthuc/pdf v0.0.0-20220302134840-0c2507a12d80 h1:6Yzfa6GP0rIo/kULo2bwGEkFvCePZ3qHDDTC3/J9Swo= -github.com/ledongthuc/pdf v0.0.0-20220302134840-0c2507a12d80/go.mod h1:imJHygn/1yfhB7XSJJKlFZKl/J+dCPAknuiaGOshXAs= github.com/muhlemmer/gu v0.3.1 h1:7EAqmFrW7n3hETvuAdmFmn4hS8W+z3LgKtrnow+YzNM= github.com/muhlemmer/gu v0.3.1/go.mod h1:YHtHR+gxM+bKEIIs7Hmi9sPT3ZDUvTN/i88wQpZkrdM= github.com/muhlemmer/httpforwarded v0.1.0 h1:x4DLrzXdliq8mprgUMR0olDvHGkou5BJsK/vWUetyzY= github.com/muhlemmer/httpforwarded v0.1.0/go.mod h1:yo9czKedo2pdZhoXe+yDkGVbU0TJ0q9oQ90BVoDEtw0= -github.com/orisano/pixelmatch v0.0.0-20220722002657-fb0b55479cde h1:x0TT0RDC7UhAVbbWWBzr41ElhJx5tXPWkIHA2HWPRuw= -github.com/orisano/pixelmatch v0.0.0-20220722002657-fb0b55479cde/go.mod h1:nZgzbfBr3hhjoZnS66nKrHmduYNpc34ny7RK4z5/HM0= github.com/rogpeppe/go-internal v1.15.0 h1:D0RCU5rMAp+SpgkiNdrjfJ+LX4J1M32V2NeCY7EJ6hc= github.com/rogpeppe/go-internal v1.15.0/go.mod h1:DrUVZyrJU+txYW5/1kwtXQSMFio52ZOxX7yM1VHvnxs= github.com/rs/cors v1.11.1 h1:eU3gRzXLRK57F5rKMGMZURNdIG4EoAmX8k94r9wXWHA= @@ -74,7 +62,6 @@ go.yaml.in/yaml/v3 v3.0.5 h1:N6y/pJk8buWs9NY5ERU2HSMfm+IuD/OtfdAnq6kESPw= go.yaml.in/yaml/v3 v3.0.5/go.mod h1:HVTZu1O7/Vkt2N+BFy8Zza+lnLsABggaTM2ZpNIGuKg= golang.org/x/oauth2 v0.37.0 h1:JUlcxA8oAtauLfiH8FX2/FkAWHAdi0QtGCGc+hofE98= golang.org/x/oauth2 v0.37.0/go.mod h1:IxwZNxUULJmpBFf9K/9NTMSIfZZuvuTy1gGxhigP/58= -golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.49.0 h1:XbzkgYJHdqh/8m2Uu0W/dQv8nktxx4BFHp1M0gROTXA= golang.org/x/sys v0.49.0/go.mod h1:hNLxWAXmnKAxqDtdwIYC4bM9oQPEecfsnNMuSxOs3og= golang.org/x/text v0.43.0 h1:1QivrlhwAsnMOcqgOdl9my7s9OyZl8O5/UGUTJVXoWc=