Observed since 20 Oct, 20:01 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
42grader
A Grader framework for 42 Piscine
42 Picsine을 위해 Node.js 런타임과 자바스크립트로 만들어진 채점기
42grader는 npm 저장소에 업로드되어 있습니다. npm install 명령으로 바로 설치할 수 있습니다.
npm i -g 42grader
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
nvm install --lts
npm i -g 42grader
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.3/install.sh | bash
nvm install --lts
이 명령을 실행하기 전에 npm prefix를 변경하는 것이 무엇인지 반드시 이해해야 합니다. 이해하지 못했다면 절대 이 명령을 실행하지 마십시오.
npm config set prefix '~/.local/'
echo 'export PATH=~/.local/bin/:$PATH' >> ~/.zshrc
zsh
npm i -g 42grader
42grader 명령으로 바로 실행할 수 있습니다.
42Grader는 ~/.42Grader 폴더를 사용합니다.
~/.42Grader/
├─ submission/
│ └─ (cloned git files)
└─ test/
└─ tester files
clone git from remote 옵션에 no를 선택한 경우 submissions 폴더 및 내용이 반드시 존재해야 합니다.
run test 옵션에 yes를 선택한 경우 test 폴더 및 테스터 파일이 반드시 필요합니다.
테스터 파일은 yaml 포맷을 가지고 있어야 합니다.
directory 필드에 폴더명을 입력하고,Files to turn in 섹션에 적힌 파일명을 file 필드에 입력하세요.function 필드에 입력하세요.testcase 필드에는 main.c 파일에 들어갈 C 코드를 작성합니다. main.c는 stdio.h, stdlib.h, string.h 및 unistd.h를 포함하고 있습니다.answer 필드의 정답은 마지막 개행 하나를 제거한 후 diff합니다. 만약 정답에 개행이 필요한 경우 \n 혹은 진짜 newline 하나를 삽입하세요.예시 테스터 파일입니다.
test:
- directory: ex00
file: ft_putchar.c
function: void ft_putchar(char c);
testcase: |
ft_putchar('a');
ft_putchar('b');
answer: |
ab
- directory: ex01
file: ft_print_alphabet.c
function: void ft_print_alphabet(void);
testcase: |
ft_print_alphabet();
answer: |
abcdefghijklmnopqrstuvwxyz
- directory: ex02
file: ft_print_reverse_alphabet.c
function: void ft_print_reverse_alphabet(void);
testcase: |
ft_print_reverse_alphabet();
answer: |
zyxwvutsrqponmlkjihgfedcba
./grader v1 폴더 안에 있는 42grader v1은 사용하지 마세요. MVP를 위해 C로 급조한 테스터기입니다. 안전/안정성을 보장하지 못합니다.
본 프로그램은 자유 소프트웨어입니다. Free Software Foundation에 의해 배포된 GNU Affero General Public License v3 혹은 이후의 버전 하에 본 프로그램을 배포하거나 수정할 수 있습니다.
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
js-yamlEnvironment{
"local_name": "js-yaml",
"alias": false,
"peer_metadata": null
} | ^4.1.0 | runtime |
promptsEnvironment{
"local_name": "prompts",
"alias": false,
"peer_metadata": null
} | ^2.4.2 | runtime |
shelljsEnvironment{
"local_name": "shelljs",
"alias": false,
"peer_metadata": null
} | ^0.8.5 | runtime |
Source distribution
{
"integrity": "sha512-VZViiGOqftJCaoKET09lzuaZ/GBBpH+Qsfee1w35mrkaR2fnN2ipvgAGE2HvJMjW2e0uWZAnCswwUBmBzvTWCQ==",
"shasum": "bce36963ca1cbaca0faef179bb0dd65cf6ce0e14",
"tarball": "https://registry.npmjs.org/42grader/-/42grader-2.0.0.tgz",
"fileCount": 3,
"unpackedSize": 2446,
"signatures": [
{
"keyid": "SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA",
"sig": "MEQCIDZCC6gdo+bbq0P/s7O031eLdm2v0o4WDQgvYqbRjbMbAiBMHMUPPfFj+NVojKjQayZrhTEaQejQMwdRu4hTFkpYQw=="
}
],
"npm-signature": "-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJjuSMpACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmpMfA//ZjX9Z5j4dJE+a04NA6dKD9EJL0ixzOZs8p+wQybOOnflh23t\r\nC21KOaZO1LsZUClCGanFOq3MyhzqLkeZIzKZKckqAutZrJ9oCQMQ1OKW6dbA\r\nrrnvMFRhq5dfp2kHjKux2CaMnn4X3epnpskUbfoV6GFQkBMyI9knlrGAK0I4\r\n/JBh/aW0DVO2RKwpy5OJb22W6QxA9hTSL8DRqWPAe/5EZQypPwX0wXbfjQPp\r\n82+qfSBiHntFzOKrV0geS6ThtcLRYe5Ei+SxEzwHonhFpF30wNFEPzuxewHY\r\nR5ILBgC14PavJt5xP7dU+r3cjV9Ulp/BJUdxFrEIIiWCgb2AYjs/REIR6Omj\r\nTEG6hPT/4bDfzmsJknPqA9bxHtxHW2Ib2NyZcZxSJAu4oFcxOZE+1NDlM25z\r\nYyofXzNaBDG4C+zUrwrHt/sIIPn774S+TgAW4rk2Bb6G3MINfZ4vP7BJgf2x\r\nitYk+akUrhTgho/Mp3RYU22pL4qnpS+8I1i7NwtfYr4uPfz5wv+M7XsxWv/6\r\nKqd5HWn7Au2YfCSANRRBCLtNyIrVnJ7nzjTMKwYwDZK8IuMANFgzn6yaOLIL\r\n2dljwxrcPhXlS0iaevhmYDvsqq03pSBdTjdX2tUIoL2XCd7srjalf+0uuwSO\r\nIn3CUbfUO/Hh78FQVD4ebtVBWzEuXC2fMHc=\r\n=46EG\r\n-----END PGP SIGNATURE-----\r\n"
}Observed since 20 Oct, 20:01 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:242f685e4cce34ec9acb8619b60029d2a3ce8ca51facd3c6dcd3130c605f3d42