polygon

package
v0.13.1 Latest Latest
Warning

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

Go to latest
Published: May 30, 2024 License: MIT Imports: 14 Imported by: 0

Documentation

Index

Constants

View Source
const (
	FullProblemScore = 100
)

Variables

View Source
var (
	ErrBadPolygonStatus = errors.New("bad polygon status")
	ErrInvalidMethod    = errors.New("invalid method")
)
View Source
var (
	ErrAllTestsAreSamples = errors.New("all tests are samples, try -s flag")
	ErrNoTestScore        = errors.New("test_score is not supported yet")
	ErrBadTestsOrder      = errors.New("bad tests order, fix in polygon required")
)

Functions

This section is empty.

Types

type Answer

type Answer struct {
	Status  string          `json:"status"`
	Comment string          `json:"comment"`
	Result  json.RawMessage `json:"result"`
}

type Config

type Config struct {
	URL       string `json:"url"`
	APIKey    string `json:"apiKey"`
	APISecret string `json:"apiSecret"`
}

type FileRequest added in v0.12.2

type FileRequest url.Values

func NewFileRequest added in v0.12.2

func NewFileRequest(pID int, typ FileType, name, file string) FileRequest

func (FileRequest) CheckExisting added in v0.12.2

func (fr FileRequest) CheckExisting(f bool) FileRequest

TODO: fix it.

func (FileRequest) SourceType added in v0.12.2

func (fr FileRequest) SourceType(typ string) FileRequest

type FileType added in v0.12.2

type FileType string
const (
	TypeSource   FileType = "source"
	TypeResource FileType = "resource"
	TypeAUX      FileType = "aux"
)

type GroupAnswer

type GroupAnswer struct {
	Name           string   `json:"name"`
	PointsPolicy   string   `json:"pointsPolicy"`
	FeedbackPolicy string   `json:"feedbackPolicy"`
	Dependencies   []string `json:"dependencies"`
}

type Polygon

type Polygon struct {
	// contains filtered or unexported fields
}

func NewPolygon

func NewPolygon(cfg *Config) *Polygon

func (*Polygon) EnableGroups

func (p *Polygon) EnableGroups(pID int) error

func (*Polygon) EnablePoints

func (p *Polygon) EnablePoints(pID int) error

func (*Polygon) GetGroups

func (p *Polygon) GetGroups(pID int) ([]GroupAnswer, error)

func (*Polygon) GetTests

func (p *Polygon) GetTests(pID int) ([]TestAnswer, error)

func (*Polygon) IncrementalScoring

func (p *Polygon) IncrementalScoring(pID int, samples bool) error

func (*Polygon) SaveFile added in v0.12.2

func (p *Polygon) SaveFile(fReq FileRequest) error

func (*Polygon) SaveSolution added in v0.12.2

func (p *Polygon) SaveSolution(pID int, name, data string, tag SolutionTag) error

func (*Polygon) SaveTags added in v0.12.1

func (p *Polygon) SaveTags(pID int, tags string) error

func (*Polygon) SaveTest

func (p *Polygon) SaveTest(tReq TestRequest) error

func (*Polygon) SetChecker added in v0.12.2

func (p *Polygon) SetChecker(pID int, checker string) error

func (*Polygon) SetInteractor added in v0.12.2

func (p *Polygon) SetInteractor(pID int, interactor string) error

func (*Polygon) SetValidator added in v0.12.2

func (p *Polygon) SetValidator(pID int, validator string) error

func (*Polygon) UpdateInfo added in v0.12.2

func (p *Polygon) UpdateInfo(pr ProblemRequest) error

type ProblemRequest added in v0.12.2

type ProblemRequest url.Values

func NewProblemRequest added in v0.12.2

func NewProblemRequest(pID int) ProblemRequest

func (ProblemRequest) InputFile added in v0.12.2

func (pr ProblemRequest) InputFile(name string) ProblemRequest

func (ProblemRequest) Interactive added in v0.12.2

func (pr ProblemRequest) Interactive(f bool) ProblemRequest

func (ProblemRequest) MemoryLimit added in v0.12.2

func (pr ProblemRequest) MemoryLimit(ml int) ProblemRequest

func (ProblemRequest) OutputFile added in v0.12.2

func (pr ProblemRequest) OutputFile(name string) ProblemRequest

func (ProblemRequest) TimeLimit added in v0.12.2

func (pr ProblemRequest) TimeLimit(tl int) ProblemRequest

type SolutionTag added in v0.12.2

type SolutionTag string
const (
	TagMain      SolutionTag = "MA"
	TagCorrect   SolutionTag = "OK"
	TagIncorrect SolutionTag = "RJ"
)

type TestAnswer

type TestAnswer struct {
	Index           int     `json:"index"`
	Group           string  `json:"group"`
	Points          float32 `json:"points"`
	UseInStatements bool    `json:"useInStatements"`
}

type TestRequest

type TestRequest url.Values

func NewTestRequest

func NewTestRequest(pID int, index int) TestRequest

func (TestRequest) Description added in v0.12.0

func (tr TestRequest) Description(description string) TestRequest

func (TestRequest) Group

func (tr TestRequest) Group(group string) TestRequest

func (TestRequest) Input added in v0.12.0

func (tr TestRequest) Input(input string) TestRequest

func (TestRequest) Points

func (tr TestRequest) Points(points float32) TestRequest

func (TestRequest) UseInStatements added in v0.12.2

func (tr TestRequest) UseInStatements(f bool) TestRequest

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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