Hi, I've been watching all the commits for the new test you have been adding. The test_suite/system_tests/diffusion_tensor.py file is the correct place for this test. Whether or not these commands are in a script is up to you. In this case it doesn't matter, it's really of benefit if someone posts a relax script with truncated data in a bug report. These can then go into the scripts and data directories and setting up the test is about 3 lines of code. As for using 'Ap4Aase_res1-12.pdb', well any of the data in these directories can be recycled to make life simpler. The code quality is quite good, although I have a few tips which should help. One thing I noticed with the test is that it doesn't use the standard relax convention for function names. The other thing is that in these tests, any files that are created should be sent to 'devnull' (by simply calling the file that) or sent into a temporary file so that it can be checked if it was properly created and then finally deleted. An example of using temporary files is in test_suite/unit_tests/sequence_testing_base.py. Note how setUp() creates the file and tearDown() destroys it. This is important so that relax doesn't leave orphaned files in the platform's specific temporary directory. Using devnull or a temp file will be necessary to get the test to pass. Cheers, Edward On Thu, Jul 3, 2008 at 12:20 AM, Sébastien Morin <sebastien.morin.1@xxxxxxxxx> wrote:
Hi Ed, I added test for the diffusion tensor PDB creation. I put stuff with the system tests for diffusion tensors. Maybe this is not the right place for that. If you prefer, I can move the new test to the 'test_suite/system_tests/scripts' subdirectory. Moreover, for testing the structure.create_diff_tensor_pdb() function, I used the 'Ap4Aase_res1-12.pdb' file. Is this fine ? Regards, Séb Edward d'Auvergne wrote:Hi, The system test is very basic to implement. Essentially you just have a script and data (made to be as small as possible but still trigger the problem, less than 10 kb, and randomised to protect unpublished data if necessary). These things are then packaged into the test_suite/system_tests/scripts and test_suite/shared_data/ directory, and executed by the test suite just as you would execute it on the command line. If files are generated by the script, these can be automatically lost by the file being called 'devnull' or be put into a temporary file for later checking. After the script is run, you can optionally add a few checks to see if it did what you wanted. Cheers, Edward On Wed, Jun 25, 2008 at 2:53 PM, Sébastien Morin <sebastien.morin.1@xxxxxxxxx> wrote:Hi Ed, First, thanks a lot for all the recent work ! I'll try to have a look at this and take some time to add tests as you proposed. However, this may have to wait for next week. Regards, Séb Edward d'Auvergne wrote:Hi, This bug is because the code that is being executed has not yet been converted to the new relax design. There are many parts of relax 1.3 which are still awaiting conversion, although this line should soon be reasonably usable. For feature requests, I would like to first implement system tests (and then maybe unit tests) and then make the code functional again. If you would like to try to add a system test for this feature yourself, that may speed up the process. These tests are essentially just an ordinary relax script with a few checks at the end to make sure the script functioned as it should have. Otherwise I'll add the test and then convert the code. Regards, Edward On Sun, Jun 22, 2008 at 6:41 PM, Sébastien Morin <NO-REPLY.INVALID-ADDRESS@xxxxxxx> wrote:URL: <http://gna.org/bugs/?11860> Summary: Feature request for diffusion tensor representation Project: relax Submitted by: semor Submitted on: Sunday 06/22/2008 at 12:41 Category: relax's source code Severity: 3 - Normal Priority: 5 - Normal Status: None Privacy: Public Assigned to: bugman Originator Name: Originator Email: Open/Closed: Open Discussion Lock: Any Release: Repository: 1.3 line Operating System: All systems _______________________________________________________ Details: [ As asked by Edward d'Auvergne after a personal communication, here is a bug report for a feature request... ] ------ Hi, I would like to create a pdb representation of the optimized diffusion tensor for my system. Using the sample script 'diff_tensor_pdb.py', I get the following error : ================================================ relax> state.save(state='relax_state_20082206_123756', dir_name=None, force=False, compress_type=1) Opening the file 'relax_state_20082206_123701.bz2' for writing. Traceback (most recent call last): File "./diff_tensor_pdb.py", line 20, in ? structure.create_diff_tensor_pdb(file=tensor_file, force=1) File "/home/semor/pse-4/collaborations/relax/relax-1.3/prompt/structure.py", line 164, in create_diff_tensor_pdb raise RelaxBoolError, ('force flag', force) RelaxBoolError: RelaxError: The force flag boolean argument 1 must either be True or False. ================================================ Removing the 'force' argument from the 'structure.create_diff_tensor_pdb()' function, I get the following error : ================================================ relax> state.save(state='relax_state_20082206_123329', dir_name=None, force=False, compress_type=1) Opening the file 'relax_state_20082206_123329.bz2' for writing. Traceback (most recent call last): File "./diff_tensor_pdb.py", line 20, in ? structure.create_diff_tensor_pdb(file=tensor_file) File "/home/semor/pse-4/collaborations/relax/relax-1.3/prompt/structure.py", line 167, in create_diff_tensor_pdb generic_fns.structure.geometric.create_diff_tensor_pdb(scale=scale, file=file, dir=dir, force=force) File "/home/semor/pse-4/collaborations/relax/relax-1.3/generic_fns/structure/geometric.py", line 193, in create_diff_tensor_pdb raise RelaxNoTensorError, 'diffusion' RelaxNoTensorError: RelaxError: No diffusion tensor data exists. ================================================ I know relax-1.3 isn't ready for complete use, however, I would like to ask for the fixing of this part of the code which isn't available in the 1.2 line... ================================================ line : 1.3 revision : 6425 ================================================ Thanks a lot ! Séb _______________________________________________________ Reply to this item at: <http://gna.org/bugs/?11860> _______________________________________________ Message sent via/by Gna! http://gna.org/