Hi Troels, You have to be careful with tempfile.NamedTemporaryFile(). From the docs (https://docs.python.org/2/library/tempfile.html), you'll see that the delete parameter is not present in Python 2.5, so this will break compatibility. This is why you'll see that I haven't used this in the test suite yet, as a lot of NMR labs use outdated computer systems with old software versions.
Cheers, Edward On 6 December 2014 at 14:45, <tlin...@nmr-relax.com> wrote: > Author: tlinnet > Date: Sat Dec 6 14:45:18 2014 > New Revision: 26976 > > URL: http://svn.gna.org/viewcvs/relax?rev=26976&view=rev > Log: > Added systemtest Spectrum.test_grace_int, to test plotting the intensity per > residue. > > This is to prepare for a grace plotting of the signaÃl to noise level per > residue. > > Also added additional tests for signal to noise ratio calculation in the > systemtest Spectrum.test_signal_noise_ratio. > > Modified: > trunk/test_suite/system_tests/spectrum.py > > Modified: trunk/test_suite/system_tests/spectrum.py > URL: > http://svn.gna.org/viewcvs/relax/trunk/test_suite/system_tests/spectrum.py?rev=26976&r1=26975&r2=26976&view=diff > ============================================================================== > --- trunk/test_suite/system_tests/spectrum.py (original) > +++ trunk/test_suite/system_tests/spectrum.py Sat Dec 6 14:45:18 2014 > @@ -23,6 +23,8 @@ > > # Python module imports. > from os import sep > +from os.path import basename, dirname > +from tempfile import mkdtemp, NamedTemporaryFile > > # relax module imports. > from data_store import Relax_data_store; ds = Relax_data_store() > @@ -35,6 +37,13 @@ > class Spectrum(SystemTestCase): > """TestCase class for the functional tests for the support of different > spectrum intensity calculation or errors, signal to noise and plotting.""" > > + > + def setUp(self): > + """Set up for all the functional tests.""" > + > + # Create a temporary directory for dumping files. > + ds.tmpdir = mkdtemp() > + self.tmpdir = ds.tmpdir > > def setup_signal_noise_ratio(self): > """Setup intensity data. > @@ -126,7 +135,8 @@ > # Setup data. > self.setup_signal_noise_ratio() > > - # Test > + # Test the signal to noise ratio calculation. > + self.interpreter.spectrum.sn_ratio() > > # Assign counter > i = 0 > @@ -138,14 +148,49 @@ > for j in range(17): > # Test intensity. > data_int = ds.data[i][j+7] * ds.data[i][5] > - self.assertEqual(cur_spin.peak_intensity['Z_A%i'%j], > data_int) > + pint = cur_spin.peak_intensity['Z_A%i'%j] > + self.assertEqual(pint, data_int) > > # Test baseplane_rmsd. > - self.assertEqual(cur_spin.baseplane_rmsd['Z_A%i'%j], > ds.rmsd[j]) > + data_rmsd = ds.rmsd[j] > + self.assertEqual(cur_spin.baseplane_rmsd['Z_A%i'%j], > data_rmsd) > > # Test the calculated peak_intensity_err. > # Since we have measured intensity height, and have not > specified replications, this is the same as rmsd. > - self.assertEqual(cur_spin.peak_intensity_err['Z_A%i'%j], > ds.rmsd[j]) > + pint_err = cur_spin.peak_intensity_err['Z_A%i'%j] > + self.assertEqual(pint_err, ds.rmsd[j]) > + > + # Test the signal to noise ratio. > + sn_ratio = data_int / data_rmsd > + self.assertEqual(cur_spin.sn_ratio['Z_A%i'%j], sn_ratio) > + self.assertEqual(cur_spin.sn_ratio['Z_A%i'%j], pint/pint_err) > > # Add to counter > - i += 1 > + i += 1 > + > + > + def test_grace_int(self): > + """Test grace plotting function for plotting the intensities per > residue. > + """ > + > + > + # Setup data. > + self.setup_signal_noise_ratio() > + > + # Deselect spin with negative intensity. > + self.interpreter.deselect.spin(spin_id=':4@N', boolean='AND', > change_all=False) > + > + # Test show grace. If showing, the temporary directory created, > should not be deleted. > + show_grace = False > + if show_grace: > + outfile= NamedTemporaryFile(delete=False).name > + filedir = dirname(outfile) > + else: > + filedir = self.tmpdir > + outfile = 'int.agr' > + > + self.interpreter.grace.write(x_data_type='res_num', > y_data_type='peak_intensity', file=outfile, dir=filedir, force=True) > + > + # View the plotting. > + if show_grace: > + self.interpreter.grace.view(file=outfile, dir=filedir, > grace_exe='xmgrace') > > > _______________________________________________ > relax (http://www.nmr-relax.com) > > This is the relax-commits mailing list > relax-comm...@gna.org > > To unsubscribe from this list, get a password > reminder, or change your subscription options, > visit the list information page at > https://mail.gna.org/listinfo/relax-commits _______________________________________________ relax (http://www.nmr-relax.com) This is the relax-devel mailing list relax-devel@gna.org To unsubscribe from this list, get a password reminder, or change your subscription options, visit the list information page at https://mail.gna.org/listinfo/relax-devel