Skip to content
Community recreation of School42's Moulinette.
Perl Perl 6 Other
Branch: master
Clone or download
Pull request Compare This branch is 10 commits ahead of mirror12k:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
README.md
config_d02.pl
config_d03.pl
config_d04.pl
config_d05.pl
config_d06.pl
config_d07.pl
config_d08.pl
config_d10.pl
config_d11.pl
config_deval.pl
config_dmatch.pl
evaluateuser
mockmoulinette
spawn.pl
stupidity.c

README.md

MockMoulinette

A script that runs Norminette and compiles your code and runs some Moulinette checks automatically with the correct flags. Great for peer reviews and checking your own work.

The community's best attempt to recreate Moulinette.

It isn't 100% accourate. So if it says everything is good, it might still be wrong. Also, it might have some false-positive errors. But again, this is the best we got.

If you notice an error please open an issue about it here in the repo.

The Moulinette checks are based on 42us-stupidity.

Prerequisits

You have to run this on a computer provided by School42. There are 2 reasons for this:

  • Only those machines have the necessery kerberos tickets and access rights
  • Only those machines have the command necessary for this project: norminette

Usage

  1. Go to releases
  2. From the latest release download mockmoulinette
  3. Go into the download folder and run:

sh mockmoulinette <git_repo_to_evaluate> <day_number>

(e.g. sh mockmoulinette vogsphere@vgs.42.us.org:intra/2019/activities/piscine_c_day_06/uuser 06)

Now you should have the results on the Desktop in RESULT.txt file and this file should be open infront of you.

  1. Before you run it again delete the RESULT.txt file from the Desktop.

Common errors and mistakes

Error: No such file or directory

  • Solution #1: Check the extension, some browsers put some extension to the file
  • Solution #2: Check that you are in the right folder: the one that contains the script

Other errors

  • Solution #1: Make sure that the arguments are correct in the script call (sh mockmoulinette <repo_link> <day_number>)
  • Solution #2: Open an issue

Contributing

If you notice a bug or an error or have a question then open an issue regarding it.

If you want to help but don't know how then check the issues.

When you have changes ready, you can create pull requests.

I will respond to everyone asap.

Example outputs

Example of a perfect output:

+-+-+-+-+-+-+-+-+-+-+
|N|o|r|m|i|n|e|t|t|e|
+-+-+-+-+-+-+-+-+-+-+

Norme: ./work/ex00/ft_ft.c
Norme: ./work/ex01/ft_ultimate_ft.c
Norme: ./work/ex02/ft_swap.c
Norme: ./work/ex03/ft_div_mod.c
Norme: ./work/ex04/ft_ultimate_div_mod.c
Norme: ./work/ex05/ft_putstr.c
Norme: ./work/ex06/ft_strlen.c
Norme: ./work/ex07/ft_strrev.c
Norme: ./work/ex08/ft_atoi.c
Norme: ./work/ex09/ft_sort_integer_table.c

+-+-+-+-+-+-+-+-+-+-+
|M|o|u|l|i|n|e|t|t|e|
+-+-+-+-+-+-+-+-+-+-+

work/ex00/main good!
work/ex01/main good!
work/ex02/main good!
work/ex03/main good!
work/ex04/main good!
work/ex05/main_basic good!
work/ex05/main_multiple good!
work/ex05/main_empty good!
work/ex06/main_basic good!
work/ex06/main_empty good!
work/ex07/main_basic good!
work/ex07/main_empty good!
work/ex08/main_basic good!
work/ex08/main_big good!
work/ex09/main_basic good!
You can’t perform that action at this time.