api

package
v1.7.2 Latest Latest
Warning

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

Go to latest
Published: Aug 22, 2024 License: MIT Imports: 7 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type CLICommandResult added in v1.3.0

type CLICommandResult struct {
	ExitCode     int
	FinalCommand string `json:"-"`
	Stdout       string
}

type CLICommandTestCase added in v1.3.0

type CLICommandTestCase struct {
	ExitCode           *int
	StdoutContainsAll  []string
	StdoutContainsNone []string
	StdoutMatches      *string
	StdoutLinesGt      *int
}

type HTTPTest

type HTTPTest struct {
	StatusCode     *int
	BodyContains   *string
	HeadersContain *HTTPTestHeader
	JSONValue      *HTTPTestJSONValue
}

Only one of these fields should be set

type HTTPTestHeader

type HTTPTestHeader struct {
	Key   string
	Value string
}

type HTTPTestJSONValue

type HTTPTestJSONValue struct {
	Path        string
	Operator    OperatorType
	IntValue    *int
	StringValue *string
	BoolValue   *bool
}

type HTTPTestValidationError

type HTTPTestValidationError struct {
	ErrorMessage       *string `json:"Error"`
	FailedRequestIndex *int    `json:"FailedRequestIndex"`
	FailedTestIndex    *int    `json:"FailedTestIndex"`
}

func SubmitHTTPTestLesson added in v1.4.0

func SubmitHTTPTestLesson(uuid string, results any) (*HTTPTestValidationError, error)

type Lesson added in v1.4.0

type Lesson struct {
	Lesson struct {
		Type                 string
		LessonDataHTTPTests  *LessonDataHTTPTests
		LessonDataCLICommand *LessonDataCLICommand
	}
}

func FetchLesson added in v1.4.0

func FetchLesson(uuid string) (*Lesson, error)

type LessonDataCLICommand added in v1.4.0

type LessonDataCLICommand struct {
	CLICommandData struct {
		Commands []struct {
			Command string
			Tests   []CLICommandTestCase
		}
	}
}

type LessonDataHTTPTests added in v1.4.0

type LessonDataHTTPTests struct {
	HttpTests struct {
		BaseURL             *string
		ContainsCompleteDir bool
		Requests            []struct {
			ResponseVariables []ResponseVariable
			Tests             []HTTPTest
			Request           struct {
				BasicAuth *struct {
					Username string
					Password string
				}
				Headers  map[string]string
				BodyJSON map[string]interface{}
				Method   string
				Path     string
				Actions  struct {
					DelayRequestByMs *int32
				}
			}
		}
	}
}

type LoginRequest

type LoginRequest struct {
	Otp string `json:"otp"`
}

type LoginResponse

type LoginResponse struct {
	AccessToken  string `json:"access_token"`
	RefreshToken string `json:"refresh_token"`
}

func FetchAccessToken

func FetchAccessToken() (*LoginResponse, error)

func LoginWithCode

func LoginWithCode(code string) (*LoginResponse, error)

type OperatorType

type OperatorType string
const (
	OpEquals      OperatorType = "eq"
	OpGreaterThan OperatorType = "gt"
)

type ResponseVariable

type ResponseVariable struct {
	Name string
	Path string
}

type StructuredErrCLICommand added in v1.3.0

type StructuredErrCLICommand struct {
	ErrorMessage       string `json:"Error"`
	FailedCommandIndex int    `json:"FailedCommandIndex"`
	FailedTestIndex    int    `json:"FailedTestIndex"`
}

func SubmitCLICommandLesson added in v1.4.0

func SubmitCLICommandLesson(uuid string, results []CLICommandResult) (*StructuredErrCLICommand, error)

Jump to

Keyboard shortcuts

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