Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func Run ¶
func Run(t *testing.T, factory DeploymentFactory)
Run runs the entire workspace app test suite against deployments minted by the provided factory.
Types ¶
type App ¶
type App struct {
Username string
WorkspaceName string
// AgentName is optional, except for when proxying to a port. AgentName is
// always ignored when making a path app URL.
//
// Set WorkspaceName to `workspace.agent` if you want to generate a path app
// URL with an agent name.
AgentName string
AppSlugOrPort string
Query string
}
App is similar to httpapi.ApplicationURL but with a Query field.
type AppDetails ¶
type AppDetails struct {
*Deployment
Me codersdk.User
Workspace *codersdk.Workspace
Agent *codersdk.WorkspaceAgent
AppPort uint16
FakeApp App
OwnerApp App
AuthenticatedApp App
PublicApp App
PortApp App
}
AppDetails are the full test details returned from setupProxyTestWithFactory.
func (*AppDetails) PathAppURL ¶
func (d *AppDetails) PathAppURL(app App) *url.URL
PathAppURL returns the URL for the given path app.
func (*AppDetails) SubdomainAppURL ¶
func (d *AppDetails) SubdomainAppURL(app App) *url.URL
SubdomainAppURL returns the URL for the given subdomain app.
type Deployment ¶
type Deployment struct {
Options *DeploymentOptions
// Client should be logged in as the admin user.
Client *codersdk.Client
FirstUser codersdk.CreateFirstUserResponse
PathAppBaseURL *url.URL
}
Deployment is a license-agnostic deployment with all the fields that apps tests need.
type DeploymentFactory ¶
type DeploymentFactory func(t *testing.T, opts *DeploymentOptions) *Deployment
DeploymentFactory generates a deployment with an API client, a path base URL, and a subdomain app host URL.
type DeploymentOptions ¶
type DeploymentOptions struct {
AppHost string
DisablePathApps bool
DisableSubdomainApps bool
DangerousAllowPathAppSharing bool
DangerousAllowPathAppSiteOwnerAccess bool
// contains filtered or unexported fields
}
DeploymentOptions are the options for creating a *Deployment with a DeploymentFactory.
Click to show internal directories.
Click to hide internal directories.