dockerjudge.main - Main

dockerjudge main functions

Judge

dockerjudge.main.judge(processor, source, tests, config=None, client=None)[source]

Main function

Parameters
  • processor (dockerjudge.processor.Processor, list or tuple) – Programming language processor

  • source (str) – Source code

  • tests (list) – Test cases

  • config (dict) –

    Configuration

    Key

    Description

    Default

    Value type

    callback

    compile

    Compilation callback

    None

    function

    judge

    Callback after judging

    demux

    compile

    Return stdout and stderr of compiler separately

    False

    bool

    iofilename

    in

    Input filename

    stdin

    str

    out

    Output filename

    stdout

    limit

    time

    Time limit

    1

    int or float

    network

    Network enabled

    False

    bool

    threads

    Thread limit

    None

    int

  • client (docker.client.DockerClient) – Docker client

Returns

Result

Return type

list

Key

Value type

Description

0

list

Result of each test case

1

byte

Compiler output

Tese case

Key

Value type

Description

0

Status

Status code

1

tuple

stdout and stderr

2

float

Time spent

Callback

Compile

Parameter

Type

Description

0

int

Return value of the compiler

1

byte or tuple

Output of compiler, value type depends on demux

Judge

Parameter

Type

Description

0

int

Test case id, starting from 0

1

Status

Status

2

tuple

Output (stdout, stderr)

3

float

Time used