-
Guillaume Martres authoredGuillaume Martres authored
Grading and submission
Local tests and grading
Each assignment is shipped with two sets of tests:
- The tests defined under
src/test/scala
, these are usually incomplete: we strongly encourage you to write additional tests to exercise every aspect of your code. You can run these tests fromsbt
using the following command:test
- The grading tests, that we use to grade your assignments, these are
provided as a "black box": you can run them but are not allowed to see their
content, to encourage you to write your own tests. You can run them from
sbt
using the following command:runGradingTests
(remember that you can always put ~
before an sbt command to automatically
re-run it when you save a file)
Committing and pushing your code
You need to push your code to gitlab to receive a grade. If you forget, your grade will be zero.
If you've read the first few chapters of Git book as recommended, you must already be familiar with committing and pushing, but let's go over the basics once again:
At any point while working on an assignment, you can see what changes you haven't committed by writing:
git status
This will display the list of files you have modified since the last commit, to see the exact changes you made, run:
git diff
To save these changes in a commit, run: (replace "My message"
by a message
describing the changes since the last commit, see How to Write a Git Commit
Message for some tips on writing
good commit messages)
git commit -am "My message"
You can then synchronize your local git repository with the gitlab server by running:
git push
Note that there are also graphical user interfaces to interact with git, for example VSCode has built-in git support.
Once you've pushed your code, you can see the result online (under the CI/CD > Pipeline section of your personal gitlab repository) and check if your code compiles and runs properly on the grading environment.
The grading pipeline contains two steps:
- compile: your code does not compile for grading if the job fail.
- grade: the job results in a warning if you do not get the maximum grade (10.00/10.00)
You can click on the jobs to see the logs:
Your grade is given on the line that starts with Your overall score for this assignment is
If you push to gitlab multiple times, your final grade will be based on the last commit you pushed before the deadline.
Troubleshooting
Wrong remote address
Cloning into 'cs206-example'...
GitLab: The project you were looking for could not be found.
fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.
If you get the above message, you ever used the wrong clone URL or you recently created your account on gitlab.epfl.ch, please wait 15 minutes and try again.