1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 from data_store import Relax_data_store; ds = Relax_data_store()
24 from test_suite.system_tests.base_classes import SystemTestCase
25
26
27 -class Value(SystemTestCase):
28 """Class for testing various aspects specific to the value user functions."""
29
35
36
38 """Test the value.copy user function."""
39
40
41 self.interpreter.pipe.create('orig', 'mf')
42
43
44 self.interpreter.spin.create(mol_name='test mol', res_name='Gly', res_num=1, spin_name='N')
45 self.interpreter.spin.create(mol_name='test mol', res_name='Gly', res_num=2, spin_name='N')
46 self.interpreter.spin.create(mol_name='test mol', res_name='Gly', res_num=3, spin_name='N')
47
48
49 self.interpreter.value.set(val=0.8, param='s2', spin_id=':1,2')
50 self.interpreter.value.set(val=0.1, param='s2', spin_id=':1', error=True)
51 self.interpreter.value.set(val=0.2, param='s2', spin_id=':2', error=True)
52 self.interpreter.value.set(val=0.3, param='s2', spin_id=':3', error=True)
53
54
55 self.interpreter.pipe.create('new', 'mf')
56
57
58 self.interpreter.sequence.copy(pipe_from='orig', pipe_to='new')
59 self.interpreter.value.copy(pipe_from='orig', pipe_to='new', param='s2')
60
61
62 for pipe in ['orig', 'new']:
63
64 print("Checking the values of the '%s' data pipe." % pipe)
65
66
67 self.assertEqual(ds[pipe].mol[0].res[0].spin[0].s2, 0.8)
68 self.assertEqual(ds[pipe].mol[0].res[1].spin[0].s2, 0.8)
69 self.assertTrue(not hasattr(ds[pipe].mol[0].res[2].spin[0], 's2'))
70
71
72 self.assertEqual(ds[pipe].mol[0].res[0].spin[0].s2_err, 0.1)
73 self.assertEqual(ds[pipe].mol[0].res[1].spin[0].s2_err, 0.2)
74 self.assertEqual(ds[pipe].mol[0].res[2].spin[0].s2_err, 0.3)
75