This tool is to help manage and inspect Git Repos used for our the Coursework at WCCCEDU.
- Sync pull request branches locally so they can be reviewed and graded locally
- Search all submissions to validate academnic honesty
- Step through each submission branch and build/compile/execute the code
- Run automated tests and fuzzy acceptance on output on each submission based on a project described Rubric file
- Provide DSL to work with compiled and web based execution
- Integrate with Linters to verify student style to save time on pedantic comments by automating comments on student repos for teachers review.
Add this line to your application's Gemfile:
gem 'brown_noser', '~> 0.1.2'
And then execute:
Or install it yourself as:
$ gem install brown_noser
This gem exposes the
Sync PR Branches
Bring unmerged branches to local repo for easy viewing and searching without merging.
pet <user> <repo> -u <username> -p <password> -s pet <user> <repo> --username <username> --pasword <password> --sync
Search for patterns in local repo (Help find cheating)
pet -f 'Your query or Regex' pet --find 'Your query or Regex'
Detect with Cheating through MOSS
Currently supports .cpp files only more coming soon
pet <user> <repo> -u <username> -p <password> -c <moss_id>
brown_noser.html will include a link so you can view the comparisons that MOSS detected as possible duplication.
Create a moss account so you can have a moss_id
Visit https://theory.stanford.edu/~aiken/moss/ and follow the instructions listed under
Registering for MOSS.
Once you send your registration email you will receive a response containing a bunch of perl code. Search the email for
userid, your MOSS ID will look like this 11111927.
Clone and run
bundle install to receive deps.
Bug reports and pull requests are welcome on GitHub at https://github.com/WCCCEDU/brown_noser.
The gem is available as open source under the terms of the MIT License.