Skip to content
This repository has been archived by the owner on Dec 24, 2022. It is now read-only.
SnowyCoder edited this page Jan 5, 2017 · 4 revisions
  1. What is Verifier
  2. Simple setup
  3. More

What is Verifier


The students usually need some software to make tests in their computers, but the only ones that are available are really poor (like ted-learning) or really expensive. This is a open-source project that offers teachers and students a free, stable and open-source test-software, maintained from the UpperLevel group (and whoever wants to help us).

Simple setup


This server has a lot of customizable things like time-limits and ssl encryption, this paragraph helps the reader to create an initial working setup of the server with no encryption. If you want to discover more and add encryption read the following paragraph: More in depth.

Get the latest executables

It can be found here in the relases.

Start the server

It doesn't have a GUI yet, but the executable comes with an already written batch to help (if you can't execute it, just open the console and type java -jar verifier-server.jar. If it still doesn't work make sure you have the latest java version installed (this projects requires java 8.
Once you've started the server it will ask for the port in which he must start, if you want to set the port from arguments write -p <port> or --port <port> in the arguments.

Register the users

The server is loaded but, if a student tries to login, he'd find that the server gives him an error. To register an user there are two ways, the manual way is to create a file under the "users" folder with the name of the class (the extension doesn't matter) and write into it the names and surnames of the students followed by their password (ex)
lorenzo rutayisire minecraft
rossi lorenzo test
gaudesi alessandro maria password
In this the users will be loaded using the last word as their password. The case and the name order do not matter (in the username).
Once written the file you can log back in the console and write login reload to make the server reload the users from files. The last method is to use a build-in command: login <class> <username>, the password will be asked in the console. With this method the user will not be registered into files, to make it we need to type the command login save (that will automatically create a backup of the user database. To test if our classes and users where registered properly we can execute login list to list all the classes and login list <class> to list all the users inside a specific class.

Load an assignment

Now the students can login but they will be stucked waiting the server for an assignment. To make the server load an assignment we need to type the command assignment load <path> (or ass load <path> for fast typing). If you don't have an assignment you can get the example one by executing ass test <path>. he assignments are in YAML format so it's suggested to use the .yml extension. The name before the extension is the id of the assignment, it needs to be unique for every assignment, so the suggested name is subject + iso date (ex: "math-2017-01-04"). subject first so in the folder they get ordered by subject, and the same thing for the iso date. If you use this format the assignments will be ordered nicely in each of the student's directory.

Close the server

Once all of your students have completed the test (you can check the remaining ones with ass uncommitted) you need to close the server. Closing bruteforcefully the console is dangerous and should NOT be done in any case, to close the server in the proper way we need to execute the command stop. The server takes some seconds to shutdown because he needs to close every thread and every resource.


More

There are other things that can be used in the verifier, here's a list of paces that describes them: