Developers' Forum

testing JOBE installation gives 35 passed, 1 failed

 
Picture of stefan weber
testing JOBE installation gives 35 passed, 1 failed
by stefan weber - Friday, 18 August 2017, 9:49 PM
 

I just configured our JOBE server, however, I got a single exception when testing the installation:

maybe someone can offer some advice on the possible cause?


/var/www/html/jobe$ python3 testsubmit.py

Supported languages:

    c: 5.4.0

    cpp: 5.4.0

    java: 1.8.0_131

    nodejs: 4.2.6

    octave: 4.0.0

    pascal: 3.0.0

    php: 7.0.22

    python2: 2.7.12

    python3: 3.5.2


Valid Python3 OK

Python3 with stdin OK

Syntactically invalid Python3 OK

Python3 runtime error OK

Python3 file I/O OK

Testing use of interpreter args with Python3 OK

Testing use of runargs args with Python3 OK

Python3 program with customised timeout OK

Python3 program with support files OK


***************** FAILED TEST ******************


{'run_id': None, 'cmpinfo': '', 'stderr': '', 'outcome': 15, 'stdout': 'No config file found, using default configuration\n'}

Valid Python3/pylint program

Successful run


Output:

No config file found, using default configuration



************************************************


Invalid Python3/pylint program OK

Test good C hello world OK

Test compile error C hello world OK

Test use of compileargs with C OK

Test runtime error C hello world OK

Test timelimit on C OK

Test outputlimit on C OK

Memory limit exceeded in C (seg faults) OK

Infinite recursion (stack error) on C OK

C program controlled forking OK

Valid Octave OK

octave with stdin OK

Syntactically invalid Octave (treated as runtime error) OK

Syntactically valid Nodejs hello world OK

Syntactically invalid (non-strict) Nodejs OK

Correct Php program  OK

Syntactically incorrect Php program  OK

Syntactically incorrect Php program  OK

Correct Java program  OK

Correct Java program without supplied sourcefilename  OK

Syntactically incorrect Java program  OK

Java program with a support class (.java) OK

Test good C++ hello world OK

Test compile error C++ hello world OK

Good Hello world Pascal test OK

Fail Hello world Pascal test OK


36 tests, 35 passed, 1 failed, 0 exceptions


Checking parallel submissions

Doing child 0

Doing child 1

Doing child 2

Doing child 3

Doing child 4

Doing child 5

Doing child 6

Doing child 7

Doing child 8

Doing child 9

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

C program to check parallel submissions OK

All done


Testing a submission with an excessive cputime parameter

OK


Picture of Richard Lobb
Re: testing JOBE installation gives 35 passed, 1 failed
by Richard Lobb - Sunday, 20 August 2017, 1:30 PM
 

Hi Stefan

That's an error in the configuration of pylint. If you're not planning on using pylint, which is a Python style checker not used by any of the built-in question types, you can ignore the error.

It looks like one line of the Jobe install commands hasn't worked, namely

pylint --reports=no --generate-rcfile > /etc/pylintrc
For this command to work you have to be root; putting sudo in front won't work, because bash will disallow the redirection of standard output into a write-protected directory. So first enter the command sudo -i or sudo bash and then type the above command. I think you'll find that error then disappears.

Richard


Picture of stefan weber
Re: testing JOBE installation gives 35 passed, 1 failed
by stefan weber - Monday, 21 August 2017, 9:27 PM
 

all working now, thanks a lot Richard

Picture of Cesar Varela
Re: testing JOBE installation gives 35 passed, 1 failed
by Cesar Varela - Saturday, 23 December 2017, 8:12 AM
 

Hello Stefan.

What did you do to solve the error?

Thanks

Picture of stefan weber
Re: testing JOBE installation gives 35 passed, 1 failed
by stefan weber - Thursday, 28 December 2017, 1:36 AM
 
exactly what richard told me to do in his post above mine :)
Picture of Martin Zwerschke
Re: testing JOBE installation gives 35 passed, 1 failed
by Martin Zwerschke - Monday, 12 February 2018, 11:56 PM
 
Having updated my older jobe Server to latest jobe version and to Ubuntu 17.10 I get a similar problem like described in this thread running testsubmit.py:
Python3 program with support files
Jobe result: Successful run

Output:
The first file
Line 2
Second file

=====================================

***************** FAILED TEST ******************

{'run_id': '/home/jobe/runs/jobe_N1P8lg', 'outcome': 15, 'cmpinfo': '', 'stdout': '------------------------------------\n', 'stderr': ''}
Valid Python3/pylint program
Jobe result: Successful run

Output:
------------------------------------


************************************************

=====================================
Invalid Python3/pylint program
Jobe result: Successful run


As you can see, there is no Output like the hint to a missing /etc/pylintrc
I have already checked, that this file was successfully generated.
Picture of Richard Lobb
Re: testing JOBE installation gives 35 passed, 1 failed
by Richard Lobb - Tuesday, 13 February 2018, 10:49 PM
 

Hi Martin

Thanks for the heads up on this.

It seems that the version of pylint3 you get with Ubuntu 17.10 has a new feature called "score", which prints out the score even for a program that passes all the tests. You need to disable the score in the pylintrc file. You can do this by running the following command as root (sudo bash first), which replaces the version in README.md for newer versions of Ubuntu. 

pylint3 --reports=no --score=n --generate-rcfile > /etc/pylintrc
-- Richard
Picture of Martin Zwerschke
Re: testing JOBE installation gives 35 passed, 1 failed
by Martin Zwerschke - Wednesday, 14 February 2018, 4:51 AM
 
Hi Richard,

this worked for me, thanks a lot.

And because I integrated a Mono-C#-Test into testsubmit.py I now have 40 of 40 tests passed.