Opened 12 years ago

Closed 12 years ago

#365 closed defect (fixed)

validation tests failing

Reported by: gray Owned by: ole
Priority: normal Milestone:
Component: Appearance and visualisation Version:
Severity: normal Keywords:
Cc:

Description (last modified by gray)

I ran the validation tests;

dgray@rhe-compute1:.../anuga_validation/automated_validation_tests$ python2.6 validate_all.py

After doing a compile and update. This is the result so far;

---------------------------------------------------------
Running all validation tests - some may take several days
and some may require memory in the order of 8-16GB       
---------------------------------------------------------
Validation test suites:
     ./UQ_runup_2006/validate_uq_runup.py
     ./fitting/validate_benchmark_fit.py
     ./flow_tests/validate_flow.py
     ./okushiri_tank_validation/validate_okushiri.py
     ./patong_beach_validation/validate_patong_scenario.py
     ./urs_mux_files_validation/validate_Bf.py


python validate_uq_runup.py
test_that_UQ_output_is_as_expected (__main__.Test_uq) ... python validate_benchmark_fit.py
test_fit_time_and_mem (__main__.Test_uq) ... python validate_flow.py
Exercise Ted Rigby's test of steady state flows ... sh: line 1: 15278 Segmentation fault      python run_inflow_test_using_flowline.py > run_inflow_test_using_flowline.stdout
FAIL

======================================================================
FAIL: Exercise Ted Rigby's test of steady state flows
----------------------------------------------------------------------
Traceback (most recent call last):
  File "validate_flow.py", line 30, in test_inflow_using_flowline
    assert res == 0
AssertionError

----------------------------------------------------------------------
Ran 1 test in 1.931s

FAILED (failures=1)
python validate_okushiri.py
Test that caching of set_quantity works ... Traceback (most recent call last):
  File "create_okushiri.py", line 169, in <module>
    create_mesh()
  File "create_okushiri.py", line 148, in create_mesh
    prepare_timeboundary(project.boundary_filename)
  File "create_okushiri.py", line 129, in prepare_timeboundary
    fid.starttime = 0.0
ValueError: Must be a datetime.timedelta object
FAIL
Test that ANUGA replicates physics of the Okushiri Island ... Traceback (most recent call last):
  File "create_okushiri.py", line 169, in <module>
    create_mesh()
  File "create_okushiri.py", line 148, in create_mesh
    prepare_timeboundary(project.boundary_filename)
  File "create_okushiri.py", line 129, in prepare_timeboundary
    fid.starttime = 0.0
ValueError: Must be a datetime.timedelta object
FAIL

======================================================================
FAIL: Test that caching of set_quantity works
----------------------------------------------------------------------
Traceback (most recent call last):
  File "validate_okushiri.py", line 53, in test_caching_of_set_quantity
    assert res == 0
AssertionError
====================================================================== FAIL: Test that ANUGA replicates physics of the Okushiri Island

Traceback (most recent call last):

File "validate_okushiri.py", line 32, in test_that_output_is_as_expected

assert res == 0

AssertionError?

Ran 2 tests in 0.886s

FAILED (failures=2) python validate_patong_scenario.py Exercise Patong Validation Scenario for three resolutions and ... ok

Ran 1 test in 1357.048s

OK python validate_Bf.py test_compare_URSsww_vs_EvolveANUGAsww (main.Test_Bf) ... FAIL

====================================================================== FAIL: test_compare_URSsww_vs_EvolveANUGAsww (main.Test_Bf)

Traceback (most recent call last):

File "validate_Bf.py", line 33, in test_compare_URSsww_vs_EvolveANUGAsww

assert res == 0

AssertionError?

Ran 1 test in 0.976s

FAILED (failures=1) That took 1375.41 seconds in total

I've added the screen dump of the first comments to the above code dump.

Change History (4)

comment:1 Changed 12 years ago by gray

More of the test results; { ====================================================================== FAIL: Test that ANUGA replicates physics of the Okushiri Island


Traceback (most recent call last):

File "validate_okushiri.py", line 32, in test_that_output_is_as_expected

assert res == 0

AssertionError?


Ran 2 tests in 0.886s

FAILED (failures=2) python validate_patong_scenario.py Exercise Patong Validation Scenario for three resolutions and ... ok


Ran 1 test in 1357.048s

OK python validate_Bf.py test_compare_URSsww_vs_EvolveANUGAsww (main.Test_Bf) ... FAIL

====================================================================== FAIL: test_compare_URSsww_vs_EvolveANUGAsww (main.Test_Bf)


Traceback (most recent call last):

File "validate_Bf.py", line 33, in test_compare_URSsww_vs_EvolveANUGAsww

assert res == 0

AssertionError?


Ran 1 test in 0.976s

FAILED (failures=1) That took 1375.41 seconds in total

}

comment:2 Changed 12 years ago by gray

  • Description modified (diff)

comment:3 Changed 12 years ago by gray

  • Description modified (diff)

comment:4 Changed 12 years ago by gray

  • Resolution set to fixed
  • Status changed from new to closed

validate_all.py was running python2.5. python2.5 on rhe-compute1 is broken.

Fix is described in anuga_validation/automated_validation_tests$ more README.txt ;

This directory, automated_validation_tests, contains a collection of 
projects that validate ANUGA against known scenarios either from physical 
observations or analytical solutions.

The validation tests take the form of automated unit tests except that they 
all test the whole system rather than individual components and that they
generally take considerably longer time to execute than normal unittests.

The master script, validate_all.py, will run through all tests.  

NOTE: In some circumstances there may be problems running validate_all.py
IF MORE THAN ONE PYTHON IS INSTALLED.  The workaround is to:
1. Decide which python you want to use, and get the absolute path to that
   executable ('which python2.5', for example)
2. Create a local 'bin' directory:
       mkdir ~/bin
3. Create a 'python' link in that directory to the python executable:
       ln -s <path_from_step_1> ~/bin/python
4. Create or modify your PATH variable in ~/.bashrc to include:
       export PATH=$HOME/bin:$PATH
   That is, ensure your 'local' bin is searched first
5. Remove any 'python' alias you may have defined in ~/.bashrc (or elsewhere)
6. Ensure all the above changes are in effect by opening a new terminal

The above workaround was tested under Linux.  Not sure about Windows.

I'm going to close this ticket, since these issues with the validation tests are fixed.

Note: See TracTickets for help on using tickets.