feat: small testcases for parsers
This commit is contained in:
parent
4758e3be7a
commit
80e2bf6bad
|
@ -63,7 +63,7 @@
|
|||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a7bda693bf603a20b0ecf1bcdae62c7268596313e7efffcbc8a6fe393e3397b6,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,5906153391235cc9ed094402f2c5e42d98cf3073b0a8a1f3a4af354bdfc0c9a1,064c4ed06789f31bab546f36e2d40be547b92a6e1f647f7002fdea3a2b76ad98",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
|
@ -153,7 +153,7 @@
|
|||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/.config/joj/tools/tools/compile",
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
|
@ -243,7 +243,7 @@
|
|||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/.config/joj/tools/tools/filelength",
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
|
@ -352,7 +352,7 @@
|
|||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/.config/joj/tools/tests/homework/h7/.clang-tidy",
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
|
@ -719,7 +719,7 @@
|
|||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/.config/joj/homework/h7/e2/case0.in",
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
|
@ -736,7 +736,7 @@
|
|||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/.config/joj/homework/h7/e2/case1.in",
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
|
@ -762,7 +762,7 @@
|
|||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/.config/joj/homework/h7/e2/case0.out",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
|
@ -774,7 +774,7 @@
|
|||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/.config/joj/homework/h7/e2/case1.out",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
|
|
872
tests/convert/clang-tidy/task.json
Normal file
872
tests/convert/clang-tidy/task.json
Normal file
|
@ -0,0 +1,872 @@
|
|||
{
|
||||
"name": "hw7 ex2",
|
||||
"logPath": "/home/tt/.cache/joj3/homework/h7/e2.log",
|
||||
"expireUnixTimestamp": 1735574399,
|
||||
"effectiveUnixTimestamp": -1,
|
||||
"actorCsvPath": "/home/tt/.config/joj/students.csv",
|
||||
"maxTotalScore": 100,
|
||||
"stage": {
|
||||
"sandboxExecServer": "172.17.0.1:5051",
|
||||
"sandboxToken": "test",
|
||||
"outputPath": "/tmp/joj3_result.json",
|
||||
"stages": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/repo-health-checker",
|
||||
"-root=.",
|
||||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-check-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--group-config",
|
||||
"joj=1000:24,run=1000:24,=100:24"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/nuvole0217/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"with": {
|
||||
"score": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"with": {
|
||||
"score": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Compilation",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/compile"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [
|
||||
"h7/build/ex2",
|
||||
"h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json"
|
||||
],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-status",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "Congratulations! Your code compiled successfully.",
|
||||
"forceQuitOnNotAccepted": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Filelength",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/filelength",
|
||||
"400",
|
||||
"300",
|
||||
"*.cpp",
|
||||
"*.h"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "keyword",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"recommended"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"max"
|
||||
],
|
||||
"score": 20
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Clang-tidy",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"run-clang-tidy-18",
|
||||
"-header-filter=.*",
|
||||
"-quiet",
|
||||
"-load=/usr/local/lib/libcodequality.so",
|
||||
"-p",
|
||||
"h7/build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "clangtidy",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"readability-function-size"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-no-global-variables",
|
||||
"codequality-no-header-guard",
|
||||
"codequality-no-fflush-stdin"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-unchecked-malloc-result",
|
||||
"readability-duplicate-include",
|
||||
"readability-identifier-naming",
|
||||
"readability-redundant",
|
||||
"readability-misplaced-array-index",
|
||||
"cppcoreguidelines-init-variables",
|
||||
"bugprone-suspicious-string-compare",
|
||||
"google-global-names-in-headers",
|
||||
"clang-diagnostic",
|
||||
"clang-analyzer",
|
||||
"misc",
|
||||
"performance",
|
||||
"portability"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability-misleading-indentation"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cppcheck",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cppcheck",
|
||||
"--template={\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}",
|
||||
"--force",
|
||||
"--enable=all",
|
||||
"--suppress=missingIncludeSystem",
|
||||
"--quiet",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cppcheck",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"warning",
|
||||
"portability",
|
||||
"performance",
|
||||
"style"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"error"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cpplint",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--linelength=120",
|
||||
"--filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use",
|
||||
"--recursive",
|
||||
"--exclude=build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"build"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"runtime"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[joj] ex2-asan",
|
||||
"group": "joj",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./h7/build/ex2-asan",
|
||||
"-a"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "diff",
|
||||
"with": {
|
||||
"name": "diff",
|
||||
"cases": [
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": true,
|
||||
"showMemory": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"poststages": [
|
||||
{
|
||||
"name": "teapot",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-all-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--max-total-score",
|
||||
"100"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/tt/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "log",
|
||||
"with": {
|
||||
"msg": "joj3 summary"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
102
tests/convert/clang-tidy/task.toml
Normal file
102
tests/convert/clang-tidy/task.toml
Normal file
|
@ -0,0 +1,102 @@
|
|||
# general task configuration
|
||||
task.name = "hw7 ex2" # task name
|
||||
task.type = "homework/h7/e2" # remove this task type later
|
||||
|
||||
release.deadline = 2024-12-30 23:59:59+08:00
|
||||
release.begin_time = 2024-12-29 23:59:59+08:00
|
||||
|
||||
[[stages]]
|
||||
name = "Compilation"
|
||||
command = "./tools/compile" # eg. script running cmake commands
|
||||
files.import = [ "tools/compile" ]
|
||||
files.export = [ "h7/build/ex2", "h7/build/ex2-asan", "h7/build/ex2-ubsan", "h7/build/ex2-msan", "h7/build/compile_commands.json" ]
|
||||
score = 1
|
||||
|
||||
# compile parsers
|
||||
parsers = [ "result-detail", "result-status" ]
|
||||
result-status.comment = "Congratulations! Your code compiled successfully."
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
result-status.forcequit = true
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Filelength"
|
||||
command = "./tools/filelength 400 300 *.cpp *.h"
|
||||
files.import = [ "tools/filelength" ]
|
||||
|
||||
parsers = [ "keyword", "result-detail" ]
|
||||
keyword.keyword = [ "max", "recommended"]
|
||||
keyword.weight = [ 20, 10 ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Clang-tidy"
|
||||
command = "run-clang-tidy-18 -header-filter=.* -quiet -load=/usr/local/lib/libcodequality.so -p h7/build h7/ex2.cpp"
|
||||
files.import = [ "tests/homework/h7/.clang-tidy", "h7/build/compile_commands.json" ]
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "clangtidy", "result-detail" ]
|
||||
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
|
||||
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cppcheck"
|
||||
command = "cppcheck --template='{\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}' --force --enable=all --suppress=missingIncludeSystem --quiet h7/ex2.cpp"
|
||||
limit.stderr = 65
|
||||
|
||||
parsers = [ "cppcheck", "result-detail" ]
|
||||
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
|
||||
cppcheck.weight = [15, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cpplint"
|
||||
command = "cpplint --linelength=120 --filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use --recursive --exclude=build h7/ex2.cpp"
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "cpplint", "result-detail" ]
|
||||
cpplint.keyword = [ "runtime", "readability", "build" ]
|
||||
cpplint.weight = [ 5, 20, 10]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[joj] ex2-asan"
|
||||
command="./h7/build/ex2-asan -a"
|
||||
files.import = [ "h7/build/ex2-asan" ]
|
||||
limit.mem = 91224961
|
||||
|
||||
parsers = [ "diff", "result-detail" ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
|
||||
# will be removed as long as the name is fixed
|
||||
case0.diff.output.score = 5
|
||||
case0.limit.cpu = 1
|
||||
case0.limit.mem = 91224961
|
||||
case0.diff.output.ignorespaces = true
|
||||
#case0.limit.stdout = 8
|
||||
#case0.command = "./h7/build/ex2"
|
||||
case0.in = "case0.in"
|
||||
|
||||
case1.diff.output.score = 5
|
||||
case1.limit.cpu = 1
|
||||
case1.limit.mem = 91224961
|
||||
case1.diff.output.ignorespaces = true
|
||||
#case1.limit.stdout = 8
|
||||
#case1.command = "./h7/build/ex2"
|
||||
case1.in = "case1.in"
|
872
tests/convert/cppcheck/task.json
Normal file
872
tests/convert/cppcheck/task.json
Normal file
|
@ -0,0 +1,872 @@
|
|||
{
|
||||
"name": "hw7 ex2",
|
||||
"logPath": "/home/tt/.cache/joj3/homework/h7/e2.log",
|
||||
"expireUnixTimestamp": 1735574399,
|
||||
"effectiveUnixTimestamp": -1,
|
||||
"actorCsvPath": "/home/tt/.config/joj/students.csv",
|
||||
"maxTotalScore": 100,
|
||||
"stage": {
|
||||
"sandboxExecServer": "172.17.0.1:5051",
|
||||
"sandboxToken": "test",
|
||||
"outputPath": "/tmp/joj3_result.json",
|
||||
"stages": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/repo-health-checker",
|
||||
"-root=.",
|
||||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-check-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--group-config",
|
||||
"joj=1000:24,run=1000:24,=100:24"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/nuvole0217/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"with": {
|
||||
"score": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"with": {
|
||||
"score": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Compilation",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/compile"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [
|
||||
"h7/build/ex2",
|
||||
"h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json"
|
||||
],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-status",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "Congratulations! Your code compiled successfully.",
|
||||
"forceQuitOnNotAccepted": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Filelength",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/filelength",
|
||||
"400",
|
||||
"300",
|
||||
"*.cpp",
|
||||
"*.h"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "keyword",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"recommended"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"max"
|
||||
],
|
||||
"score": 20
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Clang-tidy",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"run-clang-tidy-18",
|
||||
"-header-filter=.*",
|
||||
"-quiet",
|
||||
"-load=/usr/local/lib/libcodequality.so",
|
||||
"-p",
|
||||
"h7/build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "clangtidy",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"readability-function-size"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-no-global-variables",
|
||||
"codequality-no-header-guard",
|
||||
"codequality-no-fflush-stdin"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-unchecked-malloc-result",
|
||||
"readability-duplicate-include",
|
||||
"readability-identifier-naming",
|
||||
"readability-redundant",
|
||||
"readability-misplaced-array-index",
|
||||
"cppcoreguidelines-init-variables",
|
||||
"bugprone-suspicious-string-compare",
|
||||
"google-global-names-in-headers",
|
||||
"clang-diagnostic",
|
||||
"clang-analyzer",
|
||||
"misc",
|
||||
"performance",
|
||||
"portability"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability-misleading-indentation"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cppcheck",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cppcheck",
|
||||
"--template={\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}",
|
||||
"--force",
|
||||
"--enable=all",
|
||||
"--suppress=missingIncludeSystem",
|
||||
"--quiet",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cppcheck",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"warning",
|
||||
"portability",
|
||||
"performance",
|
||||
"style"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"error"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cpplint",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--linelength=120",
|
||||
"--filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use",
|
||||
"--recursive",
|
||||
"--exclude=build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"build"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"runtime"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[joj] ex2-asan",
|
||||
"group": "joj",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./h7/build/ex2-asan",
|
||||
"-a"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "diff",
|
||||
"with": {
|
||||
"name": "diff",
|
||||
"cases": [
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": true,
|
||||
"showMemory": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"poststages": [
|
||||
{
|
||||
"name": "teapot",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-all-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--max-total-score",
|
||||
"100"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/tt/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "log",
|
||||
"with": {
|
||||
"msg": "joj3 summary"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
102
tests/convert/cppcheck/task.toml
Normal file
102
tests/convert/cppcheck/task.toml
Normal file
|
@ -0,0 +1,102 @@
|
|||
# general task configuration
|
||||
task.name = "hw7 ex2" # task name
|
||||
task.type = "homework/h7/e2" # remove this task type later
|
||||
|
||||
release.deadline = 2024-12-30 23:59:59+08:00
|
||||
release.begin_time = 2024-12-29 23:59:59+08:00
|
||||
|
||||
[[stages]]
|
||||
name = "Compilation"
|
||||
command = "./tools/compile" # eg. script running cmake commands
|
||||
files.import = [ "tools/compile" ]
|
||||
files.export = [ "h7/build/ex2", "h7/build/ex2-asan", "h7/build/ex2-ubsan", "h7/build/ex2-msan", "h7/build/compile_commands.json" ]
|
||||
score = 1
|
||||
|
||||
# compile parsers
|
||||
parsers = [ "result-detail", "result-status" ]
|
||||
result-status.comment = "Congratulations! Your code compiled successfully."
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
result-status.forcequit = true
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Filelength"
|
||||
command = "./tools/filelength 400 300 *.cpp *.h"
|
||||
files.import = [ "tools/filelength" ]
|
||||
|
||||
parsers = [ "keyword", "result-detail" ]
|
||||
keyword.keyword = [ "max", "recommended"]
|
||||
keyword.weight = [ 20, 10 ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Clang-tidy"
|
||||
command = "run-clang-tidy-18 -header-filter=.* -quiet -load=/usr/local/lib/libcodequality.so -p h7/build h7/ex2.cpp"
|
||||
files.import = [ "tests/homework/h7/.clang-tidy", "h7/build/compile_commands.json" ]
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "clangtidy", "result-detail" ]
|
||||
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
|
||||
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cppcheck"
|
||||
command = "cppcheck --template='{\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}' --force --enable=all --suppress=missingIncludeSystem --quiet h7/ex2.cpp"
|
||||
limit.stderr = 65
|
||||
|
||||
parsers = [ "cppcheck", "result-detail" ]
|
||||
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
|
||||
cppcheck.weight = [15, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cpplint"
|
||||
command = "cpplint --linelength=120 --filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use --recursive --exclude=build h7/ex2.cpp"
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "cpplint", "result-detail" ]
|
||||
cpplint.keyword = [ "runtime", "readability", "build" ]
|
||||
cpplint.weight = [ 5, 20, 10]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[joj] ex2-asan"
|
||||
command="./h7/build/ex2-asan -a"
|
||||
files.import = [ "h7/build/ex2-asan" ]
|
||||
limit.mem = 91224961
|
||||
|
||||
parsers = [ "diff", "result-detail" ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
|
||||
# will be removed as long as the name is fixed
|
||||
case0.diff.output.score = 5
|
||||
case0.limit.cpu = 1
|
||||
case0.limit.mem = 91224961
|
||||
case0.diff.output.ignorespaces = true
|
||||
#case0.limit.stdout = 8
|
||||
#case0.command = "./h7/build/ex2"
|
||||
case0.in = "case0.in"
|
||||
|
||||
case1.diff.output.score = 5
|
||||
case1.limit.cpu = 1
|
||||
case1.limit.mem = 91224961
|
||||
case1.diff.output.ignorespaces = true
|
||||
#case1.limit.stdout = 8
|
||||
#case1.command = "./h7/build/ex2"
|
||||
case1.in = "case1.in"
|
872
tests/convert/cpplint/task.json
Normal file
872
tests/convert/cpplint/task.json
Normal file
|
@ -0,0 +1,872 @@
|
|||
{
|
||||
"name": "hw7 ex2",
|
||||
"logPath": "/home/tt/.cache/joj3/homework/h7/e2.log",
|
||||
"expireUnixTimestamp": 1735574399,
|
||||
"effectiveUnixTimestamp": -1,
|
||||
"actorCsvPath": "/home/tt/.config/joj/students.csv",
|
||||
"maxTotalScore": 100,
|
||||
"stage": {
|
||||
"sandboxExecServer": "172.17.0.1:5051",
|
||||
"sandboxToken": "test",
|
||||
"outputPath": "/tmp/joj3_result.json",
|
||||
"stages": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/repo-health-checker",
|
||||
"-root=.",
|
||||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-check-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--group-config",
|
||||
"joj=1000:24,run=1000:24,=100:24"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/nuvole0217/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"with": {
|
||||
"score": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"with": {
|
||||
"score": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Compilation",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/compile"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [
|
||||
"h7/build/ex2",
|
||||
"h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json"
|
||||
],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-status",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "Congratulations! Your code compiled successfully.",
|
||||
"forceQuitOnNotAccepted": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Filelength",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/filelength",
|
||||
"400",
|
||||
"300",
|
||||
"*.cpp",
|
||||
"*.h"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "keyword",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"recommended"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"max"
|
||||
],
|
||||
"score": 20
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Clang-tidy",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"run-clang-tidy-18",
|
||||
"-header-filter=.*",
|
||||
"-quiet",
|
||||
"-load=/usr/local/lib/libcodequality.so",
|
||||
"-p",
|
||||
"h7/build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "clangtidy",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"readability-function-size"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-no-global-variables",
|
||||
"codequality-no-header-guard",
|
||||
"codequality-no-fflush-stdin"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-unchecked-malloc-result",
|
||||
"readability-duplicate-include",
|
||||
"readability-identifier-naming",
|
||||
"readability-redundant",
|
||||
"readability-misplaced-array-index",
|
||||
"cppcoreguidelines-init-variables",
|
||||
"bugprone-suspicious-string-compare",
|
||||
"google-global-names-in-headers",
|
||||
"clang-diagnostic",
|
||||
"clang-analyzer",
|
||||
"misc",
|
||||
"performance",
|
||||
"portability"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability-misleading-indentation"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cppcheck",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cppcheck",
|
||||
"--template={\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}",
|
||||
"--force",
|
||||
"--enable=all",
|
||||
"--suppress=missingIncludeSystem",
|
||||
"--quiet",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cppcheck",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"warning",
|
||||
"portability",
|
||||
"performance",
|
||||
"style"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"error"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cpplint",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--linelength=120",
|
||||
"--filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use",
|
||||
"--recursive",
|
||||
"--exclude=build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"build"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"runtime"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[joj] ex2-asan",
|
||||
"group": "joj",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./h7/build/ex2-asan",
|
||||
"-a"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "diff",
|
||||
"with": {
|
||||
"name": "diff",
|
||||
"cases": [
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": true,
|
||||
"showMemory": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"poststages": [
|
||||
{
|
||||
"name": "teapot",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-all-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--max-total-score",
|
||||
"100"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/tt/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "log",
|
||||
"with": {
|
||||
"msg": "joj3 summary"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
102
tests/convert/cpplint/task.toml
Normal file
102
tests/convert/cpplint/task.toml
Normal file
|
@ -0,0 +1,102 @@
|
|||
# general task configuration
|
||||
task.name = "hw7 ex2" # task name
|
||||
task.type = "homework/h7/e2" # remove this task type later
|
||||
|
||||
release.deadline = 2024-12-30 23:59:59+08:00
|
||||
release.begin_time = 2024-12-29 23:59:59+08:00
|
||||
|
||||
[[stages]]
|
||||
name = "Compilation"
|
||||
command = "./tools/compile" # eg. script running cmake commands
|
||||
files.import = [ "tools/compile" ]
|
||||
files.export = [ "h7/build/ex2", "h7/build/ex2-asan", "h7/build/ex2-ubsan", "h7/build/ex2-msan", "h7/build/compile_commands.json" ]
|
||||
score = 1
|
||||
|
||||
# compile parsers
|
||||
parsers = [ "result-detail", "result-status" ]
|
||||
result-status.comment = "Congratulations! Your code compiled successfully."
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
result-status.forcequit = true
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Filelength"
|
||||
command = "./tools/filelength 400 300 *.cpp *.h"
|
||||
files.import = [ "tools/filelength" ]
|
||||
|
||||
parsers = [ "keyword", "result-detail" ]
|
||||
keyword.keyword = [ "max", "recommended"]
|
||||
keyword.weight = [ 20, 10 ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Clang-tidy"
|
||||
command = "run-clang-tidy-18 -header-filter=.* -quiet -load=/usr/local/lib/libcodequality.so -p h7/build h7/ex2.cpp"
|
||||
files.import = [ "tests/homework/h7/.clang-tidy", "h7/build/compile_commands.json" ]
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "clangtidy", "result-detail" ]
|
||||
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
|
||||
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cppcheck"
|
||||
command = "cppcheck --template='{\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}' --force --enable=all --suppress=missingIncludeSystem --quiet h7/ex2.cpp"
|
||||
limit.stderr = 65
|
||||
|
||||
parsers = [ "cppcheck", "result-detail" ]
|
||||
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
|
||||
cppcheck.weight = [15, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cpplint"
|
||||
command = "cpplint --linelength=120 --filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use --recursive --exclude=build h7/ex2.cpp"
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "cpplint", "result-detail" ]
|
||||
cpplint.keyword = [ "runtime", "readability", "build" ]
|
||||
cpplint.weight = [ 5, 20, 10]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[joj] ex2-asan"
|
||||
command="./h7/build/ex2-asan -a"
|
||||
files.import = [ "h7/build/ex2-asan" ]
|
||||
limit.mem = 91224961
|
||||
|
||||
parsers = [ "diff", "result-detail" ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
|
||||
# will be removed as long as the name is fixed
|
||||
case0.diff.output.score = 5
|
||||
case0.limit.cpu = 1
|
||||
case0.limit.mem = 91224961
|
||||
case0.diff.output.ignorespaces = true
|
||||
#case0.limit.stdout = 8
|
||||
#case0.command = "./h7/build/ex2"
|
||||
case0.in = "case0.in"
|
||||
|
||||
case1.diff.output.score = 5
|
||||
case1.limit.cpu = 1
|
||||
case1.limit.mem = 91224961
|
||||
case1.diff.output.ignorespaces = true
|
||||
#case1.limit.stdout = 8
|
||||
#case1.command = "./h7/build/ex2"
|
||||
case1.in = "case1.in"
|
872
tests/convert/diff/task.json
Normal file
872
tests/convert/diff/task.json
Normal file
|
@ -0,0 +1,872 @@
|
|||
{
|
||||
"name": "hw7 ex2",
|
||||
"logPath": "/home/tt/.cache/joj3/homework/h7/e2.log",
|
||||
"expireUnixTimestamp": 1735574399,
|
||||
"effectiveUnixTimestamp": -1,
|
||||
"actorCsvPath": "/home/tt/.config/joj/students.csv",
|
||||
"maxTotalScore": 100,
|
||||
"stage": {
|
||||
"sandboxExecServer": "172.17.0.1:5051",
|
||||
"sandboxToken": "test",
|
||||
"outputPath": "/tmp/joj3_result.json",
|
||||
"stages": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/repo-health-checker",
|
||||
"-root=.",
|
||||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-check-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--group-config",
|
||||
"joj=1000:24,run=1000:24,=100:24"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/nuvole0217/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"with": {
|
||||
"score": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"with": {
|
||||
"score": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Compilation",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/compile"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [
|
||||
"h7/build/ex2",
|
||||
"h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json"
|
||||
],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-status",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "Congratulations! Your code compiled successfully.",
|
||||
"forceQuitOnNotAccepted": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Filelength",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/filelength",
|
||||
"400",
|
||||
"300",
|
||||
"*.cpp",
|
||||
"*.h"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "keyword",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"recommended"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"max"
|
||||
],
|
||||
"score": 20
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Clang-tidy",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"run-clang-tidy-18",
|
||||
"-header-filter=.*",
|
||||
"-quiet",
|
||||
"-load=/usr/local/lib/libcodequality.so",
|
||||
"-p",
|
||||
"h7/build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "clangtidy",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"readability-function-size"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-no-global-variables",
|
||||
"codequality-no-header-guard",
|
||||
"codequality-no-fflush-stdin"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-unchecked-malloc-result",
|
||||
"readability-duplicate-include",
|
||||
"readability-identifier-naming",
|
||||
"readability-redundant",
|
||||
"readability-misplaced-array-index",
|
||||
"cppcoreguidelines-init-variables",
|
||||
"bugprone-suspicious-string-compare",
|
||||
"google-global-names-in-headers",
|
||||
"clang-diagnostic",
|
||||
"clang-analyzer",
|
||||
"misc",
|
||||
"performance",
|
||||
"portability"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability-misleading-indentation"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cppcheck",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cppcheck",
|
||||
"--template={\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}",
|
||||
"--force",
|
||||
"--enable=all",
|
||||
"--suppress=missingIncludeSystem",
|
||||
"--quiet",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cppcheck",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"warning",
|
||||
"portability",
|
||||
"performance",
|
||||
"style"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"error"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cpplint",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--linelength=120",
|
||||
"--filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use",
|
||||
"--recursive",
|
||||
"--exclude=build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"build"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"runtime"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[joj] ex2-asan",
|
||||
"group": "joj",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./h7/build/ex2-asan",
|
||||
"-a"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "diff",
|
||||
"with": {
|
||||
"name": "diff",
|
||||
"cases": [
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": true,
|
||||
"showMemory": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"poststages": [
|
||||
{
|
||||
"name": "teapot",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-all-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--max-total-score",
|
||||
"100"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/tt/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "log",
|
||||
"with": {
|
||||
"msg": "joj3 summary"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
102
tests/convert/diff/task.toml
Normal file
102
tests/convert/diff/task.toml
Normal file
|
@ -0,0 +1,102 @@
|
|||
# general task configuration
|
||||
task.name = "hw7 ex2" # task name
|
||||
task.type = "homework/h7/e2" # remove this task type later
|
||||
|
||||
release.deadline = 2024-12-30 23:59:59+08:00
|
||||
release.begin_time = 2024-12-29 23:59:59+08:00
|
||||
|
||||
[[stages]]
|
||||
name = "Compilation"
|
||||
command = "./tools/compile" # eg. script running cmake commands
|
||||
files.import = [ "tools/compile" ]
|
||||
files.export = [ "h7/build/ex2", "h7/build/ex2-asan", "h7/build/ex2-ubsan", "h7/build/ex2-msan", "h7/build/compile_commands.json" ]
|
||||
score = 1
|
||||
|
||||
# compile parsers
|
||||
parsers = [ "result-detail", "result-status" ]
|
||||
result-status.comment = "Congratulations! Your code compiled successfully."
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
result-status.forcequit = true
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Filelength"
|
||||
command = "./tools/filelength 400 300 *.cpp *.h"
|
||||
files.import = [ "tools/filelength" ]
|
||||
|
||||
parsers = [ "keyword", "result-detail" ]
|
||||
keyword.keyword = [ "max", "recommended"]
|
||||
keyword.weight = [ 20, 10 ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Clang-tidy"
|
||||
command = "run-clang-tidy-18 -header-filter=.* -quiet -load=/usr/local/lib/libcodequality.so -p h7/build h7/ex2.cpp"
|
||||
files.import = [ "tests/homework/h7/.clang-tidy", "h7/build/compile_commands.json" ]
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "clangtidy", "result-detail" ]
|
||||
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
|
||||
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cppcheck"
|
||||
command = "cppcheck --template='{\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}' --force --enable=all --suppress=missingIncludeSystem --quiet h7/ex2.cpp"
|
||||
limit.stderr = 65
|
||||
|
||||
parsers = [ "cppcheck", "result-detail" ]
|
||||
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
|
||||
cppcheck.weight = [15, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cpplint"
|
||||
command = "cpplint --linelength=120 --filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use --recursive --exclude=build h7/ex2.cpp"
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "cpplint", "result-detail" ]
|
||||
cpplint.keyword = [ "runtime", "readability", "build" ]
|
||||
cpplint.weight = [ 5, 20, 10]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[joj] ex2-asan"
|
||||
command="./h7/build/ex2-asan -a"
|
||||
files.import = [ "h7/build/ex2-asan" ]
|
||||
limit.mem = 91224961
|
||||
|
||||
parsers = [ "diff", "result-detail" ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
|
||||
# will be removed as long as the name is fixed
|
||||
case0.diff.output.score = 5
|
||||
case0.limit.cpu = 1
|
||||
case0.limit.mem = 91224961
|
||||
case0.diff.output.ignorespaces = true
|
||||
#case0.limit.stdout = 8
|
||||
#case0.command = "./h7/build/ex2"
|
||||
case0.in = "case0.in"
|
||||
|
||||
case1.diff.output.score = 5
|
||||
case1.limit.cpu = 1
|
||||
case1.limit.mem = 91224961
|
||||
case1.diff.output.ignorespaces = true
|
||||
#case1.limit.stdout = 8
|
||||
#case1.command = "./h7/build/ex2"
|
||||
case1.in = "case1.in"
|
872
tests/convert/keyword/task.json
Normal file
872
tests/convert/keyword/task.json
Normal file
|
@ -0,0 +1,872 @@
|
|||
{
|
||||
"name": "hw7 ex2",
|
||||
"logPath": "/home/tt/.cache/joj3/homework/h7/e2.log",
|
||||
"expireUnixTimestamp": 1735574399,
|
||||
"effectiveUnixTimestamp": -1,
|
||||
"actorCsvPath": "/home/tt/.config/joj/students.csv",
|
||||
"maxTotalScore": 100,
|
||||
"stage": {
|
||||
"sandboxExecServer": "172.17.0.1:5051",
|
||||
"sandboxToken": "test",
|
||||
"outputPath": "/tmp/joj3_result.json",
|
||||
"stages": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/repo-health-checker",
|
||||
"-root=.",
|
||||
"-repoSize=50.5",
|
||||
"-meta=README.md",
|
||||
"-meta=Changelog.md",
|
||||
"-checkFileSumList=a5b63323a692d3d8b952442969649b4f823d58dae26429494f613df160710dfc,b1bbad25b830db0a77b15a033f9ca1b7ab44c1d2d05056412bd3e4421645f0bf,f6740081487ca34963a005209e2e9adfdf6f3561719af082d40fe80145e0cceb,bbeca1491c2f8364821a328a6677c0c5d59ccd60250abac3cec0887eeb9bde3e",
|
||||
"-checkFileNameList=.gitignore,.gitattributes,.gitea/workflows/push.yaml,.gitea/workflows/release.yaml"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-check-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--group-config",
|
||||
"joj=1000:24,run=1000:24,=100:24"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/nuvole0217/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"cpuLimit": 4000000000000,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "healthcheck",
|
||||
"with": {
|
||||
"score": 1
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "debug",
|
||||
"with": {
|
||||
"score": 0
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "Compilation",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/compile"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/compile": {
|
||||
"src": "/home/tt/./tools/tools/compile",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [
|
||||
"h7/build/ex2",
|
||||
"h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json"
|
||||
],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-status",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "Congratulations! Your code compiled successfully.",
|
||||
"forceQuitOnNotAccepted": true
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Filelength",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./tools/filelength",
|
||||
"400",
|
||||
"300",
|
||||
"*.cpp",
|
||||
"*.h"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tools/filelength": {
|
||||
"src": "/home/tt/./tools/tools/filelength",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "keyword",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"recommended"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"max"
|
||||
],
|
||||
"score": 20
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Clang-tidy",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"run-clang-tidy-18",
|
||||
"-header-filter=.*",
|
||||
"-quiet",
|
||||
"-load=/usr/local/lib/libcodequality.so",
|
||||
"-p",
|
||||
"h7/build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {
|
||||
"tests/homework/h7/.clang-tidy": {
|
||||
"src": "/home/tt/./tools/tests/homework/h7/.clang-tidy",
|
||||
"max": 419430400
|
||||
}
|
||||
},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "clangtidy",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"readability-function-size"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-no-global-variables",
|
||||
"codequality-no-header-guard",
|
||||
"codequality-no-fflush-stdin"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"codequality-unchecked-malloc-result",
|
||||
"readability-duplicate-include",
|
||||
"readability-identifier-naming",
|
||||
"readability-redundant",
|
||||
"readability-misplaced-array-index",
|
||||
"cppcoreguidelines-init-variables",
|
||||
"bugprone-suspicious-string-compare",
|
||||
"google-global-names-in-headers",
|
||||
"clang-diagnostic",
|
||||
"clang-analyzer",
|
||||
"misc",
|
||||
"performance",
|
||||
"portability"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability-misleading-indentation"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stdout"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cppcheck",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cppcheck",
|
||||
"--template={\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}",
|
||||
"--force",
|
||||
"--enable=all",
|
||||
"--suppress=missingIncludeSystem",
|
||||
"--quiet",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cppcheck",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"warning",
|
||||
"portability",
|
||||
"performance",
|
||||
"style"
|
||||
],
|
||||
"score": 5
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"error"
|
||||
],
|
||||
"score": 15
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[cq] Cpplint",
|
||||
"group": "cq",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"cpplint",
|
||||
"--linelength=120",
|
||||
"--filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use",
|
||||
"--recursive",
|
||||
"--exclude=build",
|
||||
"h7/ex2.cpp"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 65000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "cpplint",
|
||||
"with": {
|
||||
"matches": [
|
||||
{
|
||||
"keywords": [
|
||||
"build"
|
||||
],
|
||||
"score": 10
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"readability"
|
||||
],
|
||||
"score": 20
|
||||
},
|
||||
{
|
||||
"keywords": [
|
||||
"runtime"
|
||||
],
|
||||
"score": 5
|
||||
}
|
||||
],
|
||||
"fullscore": 0,
|
||||
"minscore": -1000,
|
||||
"files": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": false,
|
||||
"showMemory": false
|
||||
}
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"name": "[joj] ex2-asan",
|
||||
"group": "joj",
|
||||
"executor": {
|
||||
"name": "sandbox",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"./h7/build/ex2-asan",
|
||||
"-a"
|
||||
],
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 800000000000000
|
||||
},
|
||||
"cpuLimit": 1000000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 2000000000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {
|
||||
"h7/build/ex2": "h7/build/ex2",
|
||||
"h7/build/ex2-asan": "h7/build/ex2-asan",
|
||||
"h7/build/ex2-ubsan": "h7/build/ex2-ubsan",
|
||||
"h7/build/ex2-msan": "h7/build/ex2-msan",
|
||||
"h7/build/compile_commands.json": "h7/build/compile_commands.json"
|
||||
},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": [
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case0.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
},
|
||||
{
|
||||
"env": [
|
||||
"PATH=/usr/bin:/bin:/usr/local/bin"
|
||||
],
|
||||
"stdin": {
|
||||
"src": "/home/tt/./homework/h7/e2/case1.in",
|
||||
"max": 419430400
|
||||
},
|
||||
"cpuLimit": 1000000000,
|
||||
"clockLimit": 2000000000,
|
||||
"memoryLimit": 95656304705536,
|
||||
"procLimit": 50,
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "diff",
|
||||
"with": {
|
||||
"name": "diff",
|
||||
"cases": [
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case0.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"outputs": [
|
||||
{
|
||||
"score": 5,
|
||||
"fileName": "stdout",
|
||||
"answerPath": "/home/tt/./homework/h7/e2/case1.out",
|
||||
"forceQuitOnDiff": false,
|
||||
"alwaysHide": false,
|
||||
"compareSpace": false
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
},
|
||||
{
|
||||
"name": "result-detail",
|
||||
"with": {
|
||||
"score": 0,
|
||||
"comment": "",
|
||||
"showFiles": [
|
||||
"stderr"
|
||||
],
|
||||
"showExitStatus": true,
|
||||
"showRuntime": true,
|
||||
"showMemory": true
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"poststages": [
|
||||
{
|
||||
"name": "teapot",
|
||||
"group": "",
|
||||
"executor": {
|
||||
"name": "local",
|
||||
"with": {
|
||||
"default": {
|
||||
"args": [
|
||||
"/usr/local/bin/joint-teapot",
|
||||
"joj3-all-env",
|
||||
"/home/tt/.config/teapot/teapot.env",
|
||||
"--grading-repo-name",
|
||||
"Nuvole-joj",
|
||||
"--max-total-score",
|
||||
"100"
|
||||
],
|
||||
"env": [
|
||||
"LOG_FILE_PATH=/home/tt/.cache/joint-teapot-debug.log"
|
||||
],
|
||||
"stdin": {
|
||||
"content": "",
|
||||
"max": 419430400
|
||||
},
|
||||
"stdout": {
|
||||
"name": "stdout",
|
||||
"max": 4096
|
||||
},
|
||||
"stderr": {
|
||||
"name": "stderr",
|
||||
"max": 4096
|
||||
},
|
||||
"cpuLimit": 4000000000000,
|
||||
"realCpuLimit": 0,
|
||||
"clockLimit": 8000000000000,
|
||||
"memoryLimit": 838860800,
|
||||
"stackLimit": 0,
|
||||
"procLimit": 50,
|
||||
"cpuRateLimit": 0,
|
||||
"cpuSetLimit": "",
|
||||
"copyIn": {},
|
||||
"copyInCached": {},
|
||||
"copyInDir": ".",
|
||||
"copyOut": [
|
||||
"stdout",
|
||||
"stderr"
|
||||
],
|
||||
"copyOutCached": [],
|
||||
"copyOutMax": 0,
|
||||
"copyOutDir": "",
|
||||
"tty": false,
|
||||
"strictMemoryLimit": false,
|
||||
"dataSegmentLimit": false,
|
||||
"addressSpaceLimit": false
|
||||
},
|
||||
"cases": []
|
||||
}
|
||||
},
|
||||
"parsers": [
|
||||
{
|
||||
"name": "log",
|
||||
"with": {
|
||||
"msg": "joj3 summary"
|
||||
}
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
102
tests/convert/keyword/task.toml
Normal file
102
tests/convert/keyword/task.toml
Normal file
|
@ -0,0 +1,102 @@
|
|||
# general task configuration
|
||||
task.name = "hw7 ex2" # task name
|
||||
task.type = "homework/h7/e2" # remove this task type later
|
||||
|
||||
release.deadline = 2024-12-30 23:59:59+08:00
|
||||
release.begin_time = 2024-12-29 23:59:59+08:00
|
||||
|
||||
[[stages]]
|
||||
name = "Compilation"
|
||||
command = "./tools/compile" # eg. script running cmake commands
|
||||
files.import = [ "tools/compile" ]
|
||||
files.export = [ "h7/build/ex2", "h7/build/ex2-asan", "h7/build/ex2-ubsan", "h7/build/ex2-msan", "h7/build/compile_commands.json" ]
|
||||
score = 1
|
||||
|
||||
# compile parsers
|
||||
parsers = [ "result-detail", "result-status" ]
|
||||
result-status.comment = "Congratulations! Your code compiled successfully."
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
result-status.forcequit = true
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Filelength"
|
||||
command = "./tools/filelength 400 300 *.cpp *.h"
|
||||
files.import = [ "tools/filelength" ]
|
||||
|
||||
parsers = [ "keyword", "result-detail" ]
|
||||
keyword.keyword = [ "max", "recommended"]
|
||||
keyword.weight = [ 20, 10 ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Clang-tidy"
|
||||
command = "run-clang-tidy-18 -header-filter=.* -quiet -load=/usr/local/lib/libcodequality.so -p h7/build h7/ex2.cpp"
|
||||
files.import = [ "tests/homework/h7/.clang-tidy", "h7/build/compile_commands.json" ]
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "clangtidy", "result-detail" ]
|
||||
clangtidy.keyword = [ "codequality-unchecked-malloc-result", "codequality-no-global-variables", "codequality-no-header-guard", "codequality-no-fflush-stdin", "readability-function-size", "readability-duplicate-include", "readability-identifier-naming", "readability-redundant", "readability-misleading-indentation", "readability-misplaced-array-index", "cppcoreguidelines-init-variables", "bugprone-suspicious-string-compare", "google-global-names-in-headers", "clang-diagnostic", "clang-analyzer", "misc", "performance", "portability" ]
|
||||
clangtidy.weight = [ 5, 20, 20, 20, 10, 5, 5, 5, 15, 5, 5, 5, 5, 5, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stdout = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cppcheck"
|
||||
command = "cppcheck --template='{\"file\":\"{file}\",\"line\":{line}, \"column\":{column}, \"severity\":\"{severity}\", \"message\":\"{message}\", \"id\":\"{id}\"}' --force --enable=all --suppress=missingIncludeSystem --quiet h7/ex2.cpp"
|
||||
limit.stderr = 65
|
||||
|
||||
parsers = [ "cppcheck", "result-detail" ]
|
||||
cppcheck.keyword = ["error", "warning", "portability", "performance", "style"]
|
||||
cppcheck.weight = [15, 5, 5, 5, 5]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[cq] Cpplint"
|
||||
command = "cpplint --linelength=120 --filter=-legal,-readability/casting,-whitespace,-runtime/printf,-runtime/threadsafe_fn,-runtime/int,-readability/todo,-build/include_subdir,-build/header_guard,-build/include_what_you_use --recursive --exclude=build h7/ex2.cpp"
|
||||
limit.stdout = 65
|
||||
|
||||
parsers = [ "cpplint", "result-detail" ]
|
||||
cpplint.keyword = [ "runtime", "readability", "build" ]
|
||||
cpplint.weight = [ 5, 20, 10]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
result-detail.time = false
|
||||
result-detail.mem = false
|
||||
|
||||
[[stages]]
|
||||
name = "[joj] ex2-asan"
|
||||
command="./h7/build/ex2-asan -a"
|
||||
files.import = [ "h7/build/ex2-asan" ]
|
||||
limit.mem = 91224961
|
||||
|
||||
parsers = [ "diff", "result-detail" ]
|
||||
result-detail.exitstatus = true
|
||||
result-detail.stderr = true
|
||||
|
||||
# will be removed as long as the name is fixed
|
||||
case0.diff.output.score = 5
|
||||
case0.limit.cpu = 1
|
||||
case0.limit.mem = 91224961
|
||||
case0.diff.output.ignorespaces = true
|
||||
#case0.limit.stdout = 8
|
||||
#case0.command = "./h7/build/ex2"
|
||||
case0.in = "case0.in"
|
||||
|
||||
case1.diff.output.score = 5
|
||||
case1.limit.cpu = 1
|
||||
case1.limit.mem = 91224961
|
||||
case1.diff.output.ignorespaces = true
|
||||
#case1.limit.stdout = 8
|
||||
#case1.command = "./h7/build/ex2"
|
||||
case1.in = "case1.in"
|
|
@ -3,3 +3,23 @@ from tests.convert.utils import load_case
|
|||
|
||||
def test_basic() -> None:
|
||||
load_case("basic")
|
||||
|
||||
|
||||
def test_clang_tidy() -> None:
|
||||
load_case("clang-tidy")
|
||||
|
||||
|
||||
def test_cppcheck() -> None:
|
||||
load_case("cppcheck")
|
||||
|
||||
|
||||
def test_cpplint() -> None:
|
||||
load_case("cpplint")
|
||||
|
||||
|
||||
def test_diff() -> None:
|
||||
load_case("diff")
|
||||
|
||||
|
||||
def test_keyword() -> None:
|
||||
load_case("keyword")
|
||||
|
|
Loading…
Reference in New Issue
Block a user