Crates.io | advocat |
lib.rs | advocat |
version | 3.0.0 |
source | src |
created_at | 2022-09-12 12:22:47.483191 |
updated_at | 2022-09-12 12:22:47.483191 |
description | A complimentary CLI tool to jutge.org |
homepage | |
repository | https://github.com/rdvdev2/advocat |
max_upload_size | |
id | 663727 |
size | 109,001 |
No presentis res al jutge sense abans consultar al teu advocat!
Aquest programa és capaç de compilar els problemes del jutge i provar-los automàticament. Els tests es descarregaràn de
forma automàtica i es comprovaran. Si el problema demana un procediment en comptes d'un programa, es descarregarà el
procediment main()
utilitzat pel jutge per a avaluar el programa, evitant que hagis d'escriure tu mateix aquest
mètode que el jutge no avaluarà.
Guarda el teu treball com a main.cc
a una carpeta anomenada com la ID del problema del jutge
(p.ex. P90615_ca/main.cc
). Executa advocat
al directori i el programa automàticament complilarà i provarà el teu
programa. Tingues en compte que si la ID del problema comença amb 'X' el problema és privat i no és possible descarregar
els arxius sense iniciar sessió. Pots iniciar sessió al jutge a través de l'advocat modificant l'arxiu de configuració
~/.config/advocat/config.ini
per incloure els següents paràmetres:
[auth]
email = EL_TEU_CORREU
password = LA_TEVA_CONTRASENYA
Per a instal·lar o actualitzar el programa:
cargo install --git https://github.com/rdvdev2/advocat
Si mai has instal·lat programes mitjançant cargo install
, afegeix la ruta d'instal·lació al path:
# Al final del teu .bashrc / .zshrc
export PATH=$PATH:$HOME/.cargo/bin
Si tornes a obrir la terminal o recarregues el fitxer .bashrc
/ .zshrc
el programa ja estarà disponible.
Alguns problemes al jutge no tenen tests públics, o potser vols afegir al teu joc de proves un test privat que ha fallat
o altres casos inventats per tu. En aquests casos, l'advocat pot llegir els tests que guardis a la mateixa carpeta que
el teu main.cc
i a les seves subcarpetes. Cada test consta de dos arxius, amb el mateix nom i diferent extensió:
NOM_TEST.inp
: Conté l'entrada del programaNOM_TEST.cor
: Conté la sortida correcta del programa per a l'entrada corresponentÉs important vigilar les línies en blanc al final de l'arxiu .cor
, ja que si hi ha una línia en blanc al final de
l'arxiu el test només es considerarà correcte si el programa també produeix una línia en blanc. En el cas d'escriure
tests per a un problema de procediment (sense main()
) es recomana comprovar l'arxiu
~/.cache/advocat/ID_PROBLEMA/main.cc
per saber com es llegirà l'entrada.
Les plantilles de la carpeta templates/
, així com els procediments per a compilar els programes són adaptats del
repositori jutge-org/jutge-driver-std.
Tot i que l'advocat és un programa funcional, encara hi ha algunes característiques pendents d'implementar:
p1++
)Aquesta llista no està en ordre de prioritat, i qualsevol contribució és benvinguda.