Skip to content

Commit 4a718bf

Browse files
authored
Update README.md
1 parent 985e824 commit 4a718bf

1 file changed

Lines changed: 74 additions & 1 deletion

File tree

README.md

Lines changed: 74 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,75 @@
11
# 42PyChecker
2-
A rework made from 42FileChecker in Python
2+
3+
<!-- Need an image here -->
4+
5+
The script is designed as a reminder:
6+
* author file terminated by a Line Feed
7+
* count and files name
8+
* code's standard
9+
* required and forbidden functions
10+
* macro definitions
11+
* static variables & functions declarations
12+
* makefile rules
13+
14+
Extra tests may also be performed:
15+
* memory leaks detection
16+
* speed test comparison
17+
* Unit Tests
18+
19+
Complete unit tests are handled through external frameworks whose sources are automatically downloaded, configured and updated in background when you run the script:
20+
* [**moulitest**](https://github.com/yyang42/moulitest), developed by [@yyang42](https://github.com/yyang42) and other contributors
21+
* [**libftest**](https://github.com/jtoty/Libftest), developed by [@jtoty](https://github.com/jtoty)
22+
<!--* [**libft-unit-test**](https://github.com/alelievr/libft-unit-test), developed by [@alelievr](https://github.com/alelievr)-->
23+
<!--* [**fillit_checker**](https://github.com/anisg/fillit_checker), developed by [@anisg](https://github.com/anisg)-->
24+
* [**Maintest**](https://github.com/QuentinPerez/Maintest), developed by [@QuentinPerez](https://github.com/QuentinPerez) and other contributors
25+
<!--* [**42ShellTester**](https://github.com/we-sh/42ShellTester), developed by [@gabkk](https://github.com/gabkk) and [@jgigault](https://github.com/jgigault)-->
26+
27+
## Install & launch
28+
This script requires python 3.6 or above to work.
29+
```bash
30+
git clone https://github.com/seluj78/42PyChecker ~/42PyChecker
31+
cd ~/42PyChecker && python3 ./42PyChecker.py
32+
```
33+
34+
## non-interactive mode
35+
The non-interactive mode enables you to launch a test suite without any prompt.
36+
You must specify the two options `--project` and `--path`.
37+
Here is an example of use with the project `libft`:
38+
```bash
39+
python3 ~/42PyChecker/42PyChecker.py --project=libft --path=/Users/admin/Projects/libft/
40+
```
41+
42+
## options
43+
44+
#### `--project` + *`$PROJECT`*
45+
46+
Required for non-interactive mode.
47+
Specify the name of the project you want to test.
48+
e.g.: `python3 ./42PyChecker.py --project=libft`.
49+
Must be one of the following values: `42commandements`, `libft` or `other`.
50+
51+
#### `--path` + *`$PATH`*
52+
53+
Required for non-interactive mode.
54+
This option has no effect when used without the option `--project`.
55+
Specify the absolute path of directory of your project.
56+
e.g.: `python3 ./42PyChecker.py --project=libft --path=/Users/admin/Projects/libft/`.
57+
58+
##### `--no-author`, `--no-norm`, `--no-makefile`, `--no-forbidden-functions`, `--no-static`, `--no-moulitest`, `--no-maintest`, `--no-libftest`
59+
60+
Disable a specific test.
61+
62+
#### `--show-c` and `--show-w`
63+
These options will display respectively the License and the Warranty.
64+
65+
## official team and credits
66+
67+
42PyChecker is an open source project distributed under licence [GNU-3.0](https://github.com/Seluj78/42PyChecker/blob/master/LICENSE).
68+
69+
Originally developed by Jules Lasne [@seluj78](https://github.com/seluj78) <<jules.lasne@gmail.com>>
70+
71+
Huge thanks to the original author and main inspiration, Jean Michel Gigault [@jgigault](https://github.com/jgigault) and his incredible [42FileChecker](https://github.com/jgigault/42FileChecker)
72+
73+
## contribute
74+
75+
If you want to be part of the project, to fix and to improve 42PyChecker, please follow the guide lines [**Contributing to 42PyChecker**](https://github.com/seluj78/42PyChecker/wiki/Contributing-to-42PyChecker), or if you want your own unit testing framework to be integrated in the 42PyChecker, just let me know at **jlasne@student.42.fr**.

0 commit comments

Comments
 (0)