A professional, ultra-fast, and visually stunning tester for the 42 ft_printf project. Re-engineered to align perfectly with the 2024-2026 Subject requirements.
Warning
PLEB42 is an entirely independent community initiative. It is not officially endorsed by, affiliated with, or sponsored by the Staff of 42 or 42 São Paulo.
- Zero Solution Hosting: None of our repositories will ever host, share, or leak source code solutions for curriculum assignments. Our engineering scope is strictly limited to behavior validation, crash identification, and memory leak analysis.
- No Academic Verdicts: Passing a PLEB42 test suite provides no guarantee of passing the official Moulinette evaluation. Cadets bear ultimate and sole responsibility for the integrity, compliance, and originality of their submissions.
Caution
This tester is designed to be intentionally rigorous by nature (overkill). It tests extreme edge cases that often go beyond the official curriculum requirements.
- Do not fail your peers unfairly: A failure in this test suite does not mean a student should fail their peer-review.
- Evaluation Criteria: If your peer's code functions correctly and respects the official project subject, it deserves a pass. Use this tool for learning, not as an absolute grading metric.
- 🚀 Real-time God Progress: Watch your tests pass in real-time with an in-place updating progress bar.
- 🎯 Modular Testing: Separate suites for Mandatory, Bonus, and Stress Tests.
- 💎 Academic Integrity: Designed to be a rigorous validator. It reports discrepancies clearly without providing "cheating" shortcuts.
- 🧪 Extreme Robustness: Over 1500 test cases including massive field widths, conflicting flags, and complex edge cases.
- 📂 Refined Deepthought Logs: Professional test reports showing exact discrepancies between System and User output using
cat -estyle formatting. - 🛡️ Smart Forbidden Check: Accurate detection of external calls while respecting your internal
libftfunctions.
-
Clone this repository inside your
ft_printffolder:git clone https://github.com/PLEB42/printf-god.git god_tester
-
Configure your paths in
my_config.sh:cd god_tester # Ensure PATH_LIBFT, SRC_DIR and HEADER_DIR are correct nano my_config.sh
-
Run the magic:
./grademe.sh
./grademe.sh| Flag | Description |
|---|---|
./grademe.sh -complete |
Runs Mandatory + Bonus tests. |
./grademe.sh -mandatory |
Runs ONLY the mandatory conversions (cspdiuxX%). |
./grademe.sh -bonus |
Runs ONLY the bonus flags and width/precision tests. |
./grademe.sh -stress |
Runs complex mixed conversion tests. |
./grademe.sh -doom |
Runs EVERYTHING (Mandatory, Bonus, and Stress). |
./grademe.sh ft_printf_d: Run only tests for%d../grademe.sh -fast: Skip per-test leak check for maximum speed../grademe.sh -n: Skip Norminette../grademe.sh -f: Skip Forbidden functions check.
The generated deepthought file is your best friend for debugging. It follows a clean format:
- Test Case: Shows the specific
ft_printfcall. - Side-by-side comparison: Displays System output vs Your output.
- Non-printable chars: Uses
$to mark line endings, helping you find hidden spaces.
Part of the God Series for 42. Inspired by libft-god and maintained to provide the most rigorous testing environment for the Common Core.
Made with ❤️ for the 42 Community.