source: tests/regression/testsuite.at@ afd01c

Action_Thermostats Add_AtomRandomPerturbation Add_FitFragmentPartialChargesAction Add_RotateAroundBondAction Add_SelectAtomByNameAction Added_ParseSaveFragmentResults AddingActions_SaveParseParticleParameters Adding_Graph_to_ChangeBondActions Adding_MD_integration_tests Adding_ParticleName_to_Atom Adding_StructOpt_integration_tests AtomFragments Automaking_mpqc_open AutomationFragmentation_failures Candidate_v1.5.4 Candidate_v1.6.0 Candidate_v1.6.1 ChangeBugEmailaddress ChangingTestPorts ChemicalSpaceEvaluator CombiningParticlePotentialParsing Combining_Subpackages Debian_Package_split Debian_package_split_molecuildergui_only Disabling_MemDebug Docu_Python_wait EmpiricalPotential_contain_HomologyGraph EmpiricalPotential_contain_HomologyGraph_documentation Enable_parallel_make_install Enhance_userguide Enhanced_StructuralOptimization Enhanced_StructuralOptimization_continued Example_ManyWaysToTranslateAtom Exclude_Hydrogens_annealWithBondGraph FitPartialCharges_GlobalError Fix_BoundInBox_CenterInBox_MoleculeActions Fix_ChargeSampling_PBC Fix_ChronosMutex Fix_FitPartialCharges Fix_FitPotential_needs_atomicnumbers Fix_ForceAnnealing Fix_IndependentFragmentGrids Fix_ParseParticles Fix_ParseParticles_split_forward_backward_Actions Fix_PopActions Fix_QtFragmentList_sorted_selection Fix_Restrictedkeyset_FragmentMolecule Fix_StatusMsg Fix_StepWorldTime_single_argument Fix_Verbose_Codepatterns Fix_fitting_potentials Fixes ForceAnnealing_goodresults ForceAnnealing_oldresults ForceAnnealing_tocheck ForceAnnealing_with_BondGraph ForceAnnealing_with_BondGraph_continued ForceAnnealing_with_BondGraph_continued_betteresults ForceAnnealing_with_BondGraph_contraction-expansion FragmentAction_writes_AtomFragments FragmentMolecule_checks_bonddegrees GeometryObjects Gui_Fixes Gui_displays_atomic_force_velocity ImplicitCharges IndependentFragmentGrids IndependentFragmentGrids_IndividualZeroInstances IndependentFragmentGrids_IntegrationTest IndependentFragmentGrids_Sole_NN_Calculation JobMarket_RobustOnKillsSegFaults JobMarket_StableWorkerPool JobMarket_unresolvable_hostname_fix MoreRobust_FragmentAutomation ODR_violation_mpqc_open PartialCharges_OrthogonalSummation PdbParser_setsAtomName PythonUI_with_named_parameters QtGui_reactivate_TimeChanged_changes Recreated_GuiChecks Rewrite_FitPartialCharges RotateToPrincipalAxisSystem_UndoRedo SaturateAtoms_findBestMatching SaturateAtoms_singleDegree StoppableMakroAction Subpackage_CodePatterns Subpackage_JobMarket Subpackage_LinearAlgebra Subpackage_levmar Subpackage_mpqc_open Subpackage_vmg Switchable_LogView ThirdParty_MPQC_rebuilt_buildsystem TrajectoryDependenant_MaxOrder TremoloParser_IncreasedPrecision TremoloParser_MultipleTimesteps TremoloParser_setsAtomName Ubuntu_1604_changes stable
Last change on this file since afd01c was afd01c, checked in by Frederik Heber <heber@…>, 15 years ago

Added case '-d' (duplicate box) to testsuite.

  • Property mode set to 100755
File size: 25.2 KB
Line 
1# Process with autom4te to create an -*- Autotest -*- test suite.
2#
3# see regression/... subdirs wherein for each of the cases and each check (enumerated) is a pre and post dir.
4# In pre initial files are placed, in post results can be found to be checked by diff in this testsuite.
5
6AT_INIT([Molecular Builder])
7
8
9AT_BANNER([MoleCuilder - standard options])
10# 1. verbosity
11AT_SETUP([Standard Options - verbosity])
12AT_KEYWORDS([options])
13AT_CHECK([pwd],[ignore],[ignore])
14AT_CHECK([../../molecuilder -v 1], 0, [stdout], [ignore])
15AT_CHECK([fgrep olecuilder stdout], 0, [ignore], [ignore])
16AT_CLEANUP
17
18# 2. help screen
19AT_SETUP([Standard Options - help screen])
20AT_KEYWORDS([options])
21AT_CHECK([../../molecuilder -h], 0, [stdout], [ignore])
22AT_CHECK([fgrep "Give this help screen" stdout], 0, [ignore], [ignore])
23AT_CLEANUP
24
25# 3. no element database
26AT_SETUP([Standard Options - no element database])
27AT_KEYWORDS([options])
28AT_CHECK([../../molecuilder -e], 255, [ignore], [stderr])
29AT_CHECK([fgrep "Not enough or invalid arguments" stderr], 0, [ignore], [ignore])
30AT_CLEANUP
31
32# 4. element database
33AT_SETUP([Standard Options - element database])
34AT_KEYWORDS([options])
35AT_DATA([elements.db], [[# Covalent radius of each element in Angstroem from CSD (binding is: [Rcov(A)+Rcov(B)-t,Rcov(A)+Rcov(B)+t] with t = 0.4A
36#Element Name Symbol Period Group Block Atomic Number AtomicWeight Covalent Radius vdW Radius
37Hydrogen H 1 1 s 1 1.008 0.23 1.09
38Helium He 1 18 p 2 4.003 1.5 1.4
39]])
40AT_CHECK([../../molecuilder test.conf -e ./], 0, [stdout], [stderr])
41AT_CHECK([grep -E "Using.*as elements database." stdout], 0, [ignore], [ignore])
42AT_CHECK([fgrep "Element list loaded successfully." stdout], 0, [ignore], [ignore])
43AT_CHECK([fgrep "Something went wrong while parsing the other databases!" stderr], 0, [ignore], [ignore])
44AT_CLEANUP
45
46# 5. bond length database
47AT_SETUP([Standard Options - bond length table])
48AT_KEYWORDS([options])
49AT_DATA([bondlength.db], [[# bond length database
50 1 2
511 1. 0.
522 0. 0.
53]])
54AT_CHECK([../../molecuilder test.conf -g bondlength.db], 0, [stdout], [stderr])
55AT_CHECK([grep -E "Using.*as bond length table." stdout], 0, [ignore], [ignore])
56AT_CLEANUP
57
58# 6. fast trajectories
59AT_SETUP([Standard Options - fast trajectories])
60AT_KEYWORDS([options])
61AT_CHECK([../../molecuilder test.conf -n], 0, [stdout], [stderr])
62AT_CHECK([fgrep "I won't parse trajectories" stdout], 0, [ignore], [ignore])
63AT_CLEANUP
64
65# 7. molecule default name
66AT_SETUP([Standard Options - molecule default name])
67AT_KEYWORDS([options])
68AT_CHECK([../../molecuilder test.conf -X test], 0, [stdout], [stderr])
69AT_CHECK([fgrep "Default name of new molecules set to test." stdout], 0, [ignore], [ignore])
70AT_CLEANUP
71
72AT_BANNER([MoleCuilder - Specifics])
73# 1. MPQC basis
74AT_SETUP([Specifics - MPQC basis])
75AT_KEYWORDS([options])
76AT_CHECK([pwd],[ignore],[ignore])
77AT_CHECK([../../molecuilder test.conf -v 1 -M test], 0, [stdout], [ignore])
78AT_CHECK([fgrep "Setting MPQC basis to test." stdout], 0, [ignore], [ignore])
79AT_CLEANUP
80
81
82AT_BANNER([MoleCuilder - molecular config creation from xyz file and atom adding])
83# 1. create some simplest molecular geometry
84AT_SETUP([Simple configuration - xyz file generation])
85AT_KEYWORDS([configuration])
86AT_DATA([test.xyz], [[1
87 # test configuration, created by molecuilder test suite
88H 10. 10. 10.
89]])
90AT_CHECK([file=test.xyz; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/1/post/$file], 0, [ignore], [ignore])
91AT_CLEANUP
92
93# 2. parsing an xyz
94AT_SETUP([Simple configuration - parsing xyz file])
95AT_KEYWORDS([configuration])
96AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/2/pre/test.xyz .], 0)
97AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -p test.xyz], 0, [ignore], [ignore])
98AT_CHECK([fgrep "Ion_Type1_1" test.conf], 0, [Ion_Type1_1 10.000000000 10.000000000 10.000000000 0 # molecule nr 0
99], [ignore])
100AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/2/post/$file], 0, [ignore], [ignore])
101AT_CHECK([file=test.conf.in; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/2/post/$file], 0, [ignore], [ignore])
102AT_CHECK([file=test.conf.xyz; diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/2/post/$file], 0, [ignore], [ignore])
103AT_CLEANUP
104
105# 3. add atom
106AT_SETUP([Simple configuration - adding atom])
107AT_KEYWORDS([configuration])
108AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -a 1 10. 10. 10.], 0, [ignore], [ignore])
109AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/3/post/$file], 0, [ignore], [ignore])
110AT_CHECK([file=test.conf.in; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/3/post/$file], 0, [ignore], [ignore])
111AT_CHECK([file=test.conf.xyz; diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/3/post/$file], 0, [ignore], [ignore])
112AT_CLEANUP
113
114# 4. change the element
115AT_SETUP([Simple configuration - Changing element])
116AT_KEYWORDS([configuration])
117AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/4/pre/test.conf test.conf], 0)
118AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -E 0 6], 0, [ignore], [ignore])
119AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/4/post/$file], 0, [ignore], [ignore])
120AT_CLEANUP
121
122# 5. remove atom
123AT_SETUP([Simple configuration - Atom removal])
124AT_KEYWORDS([configuration])
125AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/pre/test.conf .], 0)
126AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -r 0], 0, [ignore], [ignore])
127AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/post/$file], 0, [ignore], [ignore])
128AT_CHECK([file=test.conf.in; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/post/$file], 0, [ignore], [ignore])
129AT_CHECK([file=test.conf.xyz; diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/5/post/$file], 0, [ignore], [ignore])
130AT_CLEANUP
131
132# 6. test some more configuration that all desire parameters and count how many complain
133AT_SETUP([Simple configuration - invalid commands on empty configs])
134AT_KEYWORDS([configuration])
135AT_CHECK([../../molecuilder empty.conf -e ${abs_top_srcdir}/src/ -t -s -b -E -c -b -a -U -T -u], 255, [ignore], [stderr])
136AT_CHECK([fgrep -c "Not enough or invalid" stderr], 0, [1
137], [ignore])
138AT_CLEANUP
139
140# 7. test some more configuration that all need parameters and count how many complain
141AT_SETUP([Simple configuration - invalid commands on present configs])
142AT_KEYWORDS([configuration])
143AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/7/pre/test.conf .], 0)
144AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -t], 255, [ignore], [stderr])
145AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
146AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -s -b -E -c -b -a -U -T -u], 255, [ignore], [stderr])
147AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
148AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -b -E -c -b -a -U -T -u], 255, [ignore], [stderr])
149AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
150AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -E -c -b -a -U -T -u], 255, [ignore], [stderr])
151AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
152AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -c -b -a -U -T -u], 255, [ignore], [stderr])
153AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
154AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -b -a -U -T -u], 255, [ignore], [stderr])
155AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
156AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -a -U -T -u], 255, [ignore], [stderr])
157AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
158AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -U -T -u], 255, [ignore], [stderr])
159AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
160AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -T -u], 255, [ignore], [stderr])
161AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
162AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -u], 255, [ignore], [stderr])
163AT_CHECK([fgrep -c "CRITICAL: Not enough or invalid" stderr], 0, [ignore], [ignore])
164AT_CLEANUP
165
166# 8. Removing sphere of atoms
167AT_SETUP([Simple configuration - BROKEN: Removing sphere of atoms])
168AT_KEYWORDS([configuration])
169AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/8/pre/test.* .], 0)
170AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -R 2 7.], 134, [stdout], [stderr])
171AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Simple_configuration/8/post/$file], 0, [ignore], [ignore])
172AT_CLEANUP
173
174
175AT_BANNER([MoleCuilder - simulation domain])
176# 1. define box setting
177AT_SETUP([Domain - defining simulation domain])
178AT_KEYWORDS([domain])
179AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -B 10 0 10 0 0 10], 0, [stdout], [stderr])
180AT_CHECK([fgrep "BoxLength" test.conf], 0, [stdout], [stderr])
181AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/1/post/test.conf], 0, [stdout], [stderr])
182AT_CLEANUP
183
184# 2. center atoms in defined domain
185AT_SETUP([Domain - setting and centering in domain])
186AT_KEYWORDS([domain])
187AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/2/pre/test.conf .], 0)
188AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -b 15 0 15 0 0 15], 0, [stdout], [stderr])
189AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/2/post/test.conf], 0, [stdout], [stderr])
190AT_CLEANUP
191
192# 3. center atoms with defined boundary
193AT_SETUP([Domain - centering with defined boundary])
194AT_KEYWORDS([domain])
195AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/3/pre/test.conf .], 0)
196AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -c 5 10 15], 0, [stdout], [stderr])
197AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/3/post/test.conf], 0, [stdout], [stderr])
198AT_CLEANUP
199
200# 4. center atoms and adjusting boundary
201AT_SETUP([Domain - centering and setting domain])
202AT_KEYWORDS([domain])
203AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/4/pre/test.conf .], 0)
204AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -O], 0, [stdout], [stderr])
205AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/4/post/test.conf], 0, [stdout], [stderr])
206AT_CLEANUP
207
208# 5. scaling box
209AT_SETUP([Domain - scaling box])
210AT_KEYWORDS([domain])
211AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/5/pre/test.conf .], 0)
212AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -s 0.5 1. 0.9], 0, [stdout], [stderr])
213AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/5/post/test.conf], 0, [stdout], [stderr])
214AT_CLEANUP
215
216# 6. duplicating box
217AT_SETUP([Domain - duplicating box])
218AT_KEYWORDS([domain])
219AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf .], 0)
220AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -d 1 1 1], 0, [stdout], [stderr])
221AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/test.conf], 0, [stdout], [stderr])
222AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf .], 0)
223AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -d 2 1 1], 0, [stdout], [stderr])
224AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/test-x.conf], 0, [stdout], [stderr])
225AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf .], 0)
226AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -d 1 2 1], 0, [stdout], [stderr])
227AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/test-y.conf], 0, [stdout], [stderr])
228AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/pre/test.conf .], 0)
229AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -d 1 1 2], 0, [stdout], [stderr])
230AT_CHECK([diff test.conf ${abs_top_srcdir}/${AUTOTEST_PATH}/Domain/6/post/test-z.conf], 0, [stdout], [stderr])
231AT_CLEANUP
232
233
234AT_BANNER([MoleCuilder - Graph routines test])
235# 1. DFS analysis
236AT_SETUP([Graph - DFS analysis])
237AT_KEYWORDS([graph])
238AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Graph/1/pre/test.conf .], 0)
239AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -D 2.], 0, [stdout], [stderr])
240AT_CHECK([fgrep -c "No rings were detected in the molecular structure." stdout], 0, [1
241], [ignore])
242AT_CLEANUP
243
244AT_SETUP([Graph - subgraph dissection])
245AT_KEYWORDS([graph])
246AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Graph/2/pre/test.conf .], 0)
247AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -I], 0, [stdout], [stderr])
248AT_CHECK([fgrep "I scanned 31 molecules." stdout], 0, [ignore], [ignore])
249AT_CLEANUP
250
251
252AT_BANNER([MoleCuilder - Molecules])
253# 1. Bonds from file
254AT_SETUP([Molecules - Bonds from file])
255AT_KEYWORDS([Molecules])
256AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/1/pre/test.* .], 0)
257AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 4 -A test.dbond], 0, [stdout], [stderr])
258AT_CHECK([fgrep "Looking for atoms 2 and 9." stdout], 0, [ignore], [ignore])
259AT_CLEANUP
260
261# 2. Storing adjacency info
262AT_SETUP([Molecules - Storing bond info])
263AT_KEYWORDS([Molecules])
264AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/2/pre/test.conf .], 0)
265AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 1 -j test.dbond], 0, [stdout], [stderr])
266AT_CHECK([file=test.dbond; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/2/post/$file], 0, [ignore], [ignore])
267AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 1 -J test.adj], 0, [stdout], [stderr])
268AT_CHECK([file=test.adj; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/2/post/$file], 0, [ignore], [ignore])
269AT_CLEANUP
270
271# 3. Storing temperature
272AT_SETUP([Molecules - Storing temperature])
273AT_KEYWORDS([Molecules])
274AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/3/pre/test.conf .], 0)
275AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -S test.ekin], 0, [stdout], [stderr])
276AT_CHECK([file=test.ekin; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/3/post/$file], 0, [ignore], [ignore])
277AT_CLEANUP
278
279# 4. linear interpolation
280AT_SETUP([Molecules - BROKEN: Linear interpolation])
281AT_KEYWORDS([Molecules])
282AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/4/pre/test.conf .], 0)
283AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -L 0 1 teststep 1], 0, [stdout], [stderr])
284AT_CLEANUP
285
286# 5. Verlet force integration
287AT_SETUP([Molecules - BROKEN: Verlet force integration])
288AT_KEYWORDS([Molecules])
289AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/5/pre/test.* .], 0)
290AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -P test.forces], 134, [stdout], [stderr])
291#AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/5/post/$file], 0, [ignore], [ignore])
292AT_CLEANUP
293
294# 6. Translation
295AT_SETUP([Molecules - Translation])
296AT_KEYWORDS([Molecules])
297AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/6/pre/test.* .], 0)
298AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -t 1. 1. 1.], 0, [stdout], [stderr])
299AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/6/post/$file], 0, [ignore], [ignore])
300AT_CLEANUP
301
302# 7. Periodic translation
303AT_SETUP([Molecules - Periodic translation])
304AT_KEYWORDS([Molecules])
305AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/7/pre/test.* .], 0)
306AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -T 12. 12. 12.], 0, [stdout], [stderr])
307AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/7/post/$file], 0, [ignore], [ignore])
308AT_CLEANUP
309
310# 8. Periodic translation
311AT_SETUP([Molecules - BROKEN: Rotate to PAS])
312AT_KEYWORDS([Molecules])
313AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/8/pre/test.* .], 0)
314AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -m 1], 0, [stdout], [stderr])
315#AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Molecules/8/post/$file], 0, [ignore], [ignore])
316AT_CLEANUP
317
318
319AT_BANNER([MoleCuilder - Fragmentation and Re-fragmentation test])
320# 1. check config
321AT_SETUP([Fragmentation - Checking present config])
322AT_KEYWORDS([fragmentation])
323AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Fragmentation/1/pre/test.conf .], 0)
324AT_CHECK([fgrep "Ion_Type1_4" test.conf], 0, [Ion_Type1_4 8.532785963 4.787886018 2.645886050 0 # molecule nr 6
325], [ignore])
326AT_CHECK([fgrep "Ion_Type2_4" test.conf], 1, [ignore], [ignore])
327AT_CLEANUP
328
329# 2. fragment the molecule and check the number of configs
330AT_SETUP([Fragmentation - Fragmentation])
331AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Fragmentation/2/pre/test.conf .], 0)
332AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -f 1.55 2], 0, [ignore], [ignore], [mkdir std; mv BondFragment*.conf* std/])
333AT_CHECK([mkdir std; mv BondFragment*.conf* std/], 0)
334AT_CHECK([ls -l std/BondFragment*.conf | wc -l], 0, [5
335], [ignore])
336AT_CLEANUP
337
338# 3. check whether parsing of BondFragment files and re-rwriting config files is working (exit code is 2 as we don't need to continue wrt to ...OrderAtSite)
339AT_SETUP([Fragmentation - Fragmentation is at MaxOrder])
340AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Fragmentation/3/pre/* .], 0)
341AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -f 1.55 2], 2, [ignore], [ignore], [mkdir new; mv BondFragment*.conf* new/])
342AT_CHECK([mkdir new; mv BondFragment*.conf* new/], 0)
343AT_CLEANUP
344
345
346AT_BANNER([MoleCuilder - Tesselation test])
347# 1. Non convex tesselation
348AT_SETUP([Tesselation - Non-Convex Envelope])
349AT_KEYWORDS([Tesselation])
350AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/pre/* .], 0)
351AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 4. NonConvexEnvelope], 0, [stdout], [stderr])
352AT_CHECK([file=NonConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/post/$file], 0, [ignore], [ignore])
353AT_CHECK([file=NonConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/1/post/$file], 0, [ignore], [ignore])
354AT_CLEANUP
355
356# 2. convex tesselation (where the non-convex is already convex)
357AT_SETUP([Tesselation - Convex Envelope])
358AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/pre/* .], 0)
359AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o ConvexEnvelope NonConvexEnvelope], 0, [stdout], [stderr])
360AT_CHECK([file=ConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/post/$file], 0, [ignore], [ignore])
361AT_CHECK([file=ConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/2/post/$file], 0, [ignore], [ignore])
362AT_CHECK([fgrep "tesselated volume area is 16.4016 angstrom^3" stdout], 0, [ignore], [ignore])
363AT_CHECK([diff ConvexEnvelope.dat NonConvexEnvelope.dat], 0, [ignore], [ignore])
364AT_CLEANUP
365
366# 3. Big Non convex tesselation
367AT_SETUP([Tesselation - Big non-Convex Envelope])
368AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/pre/* .], 0)
369AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -N 4. NonConvexEnvelope], 0, [stdout], [stderr])
370AT_CHECK([file=NonConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/post/$file], 0, [ignore], [ignore])
371AT_CHECK([file=NonConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/3/post/$file], 0, [ignore], [ignore])
372AT_CLEANUP
373
374# 4. Big convex tesselation - is not working yet
375#AT_SETUP([Tesselation - big convex Envelope])
376#AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/pre/* .], 0)
377#AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -o ConvexEnvelope NonConvexEnvelope], 0, [stdout], [stderr])
378#AT_CHECK([file=ConvexEnvelope.dat; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/post/$file], 0, [ignore], [ignore])
379#AT_CHECK([file=ConvexEnvelope.r3d; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Tesselation/4/post/$file], 0, [ignore], [ignore])
380#AT_CHECK([fgrep "tesselated volume area is 16.4016 angstrom^3" stdout], 0, [ignore], [ignore])
381#AT_CLEANUP
382
383
384AT_BANNER([MoleCuilder - Filling in molecules])
385# 1. filling box
386AT_SETUP([Filling - filling empty box])
387AT_KEYWORDS([filling])
388AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Filling/1/pre/test.conf .], 0)
389AT_DATA([water.xyz], [[3
390 # test configuration, created by molecuilder test suite
391O 0. 0. 0.
392H 0.758602 0. 0.504284
393H 0.758602 0. -0.504284
394]])
395AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -F water.xyz 3.1 3.1 3.1 2.1 0. 0. 0], 0, [stdout], [stderr])
396AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Filling/1/post/$file], 0, [ignore], [ignore])
397AT_CLEANUP
398
399# 2. suspend in water with certain density
400AT_SETUP([Filling - BROKEN: suspend in water])
401AT_KEYWORDS([filling])
402AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Filling/2/pre/test.conf .], 0)
403AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -u 1.3], 0, [stdout], [stderr])
404#AT_CHECK([file=test.conf; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Filling/2/post/$file], 0, [ignore], [ignore])
405AT_CLEANUP
406
407
408AT_BANNER([MoleCuilder - Analysis])
409# 1. pair correlation analysis
410AT_SETUP([Analysis - pair correlation])
411AT_KEYWORDS([analysis])
412AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/1/pre/test.conf .], 0)
413AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -C E 1 8 output.csv bin_output.csv 0 20], 0, [stdout], [stderr])
414AT_CHECK([fgrep "Begin of PairCorrelation" stdout], 0, [ignore], [ignore])
415AT_CHECK([file=output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/1/post/$file], 0, [ignore], [ignore])
416AT_CHECK([file=bin_output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/1/post/$file], 0, [ignore], [ignore])
417AT_CLEANUP
418
419# 2. pair correlation analysis - range test
420AT_SETUP([Analysis - pair correlation range test])
421AT_KEYWORDS([analysis])
422AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/pre/test.conf .], 0)
423AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -C E 1 8 output-5.csv bin_output-5.csv 0 5], 0, [stdout], [stderr])
424AT_CHECK([file=output-5.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
425AT_CHECK([file=bin_output-5.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
426AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -C E 1 8 output-10.csv bin_output-10.csv 5 10], 0, [stdout], [stderr])
427AT_CHECK([file=output-10.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
428AT_CHECK([file=bin_output-10.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
429AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -C E 1 8 output-20.csv bin_output-20.csv 10 20], 0, [stdout], [stderr])
430AT_CHECK([file=output-20.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
431AT_CHECK([file=bin_output-20.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/2/post/$file], 0, [ignore], [ignore])
432AT_CLEANUP
433
434# 3. pair correlation analysis to point
435AT_SETUP([Analysis - point correlation])
436AT_KEYWORDS([analysis])
437AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/3/pre/test.conf .], 0)
438AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -C P 1 10. 10. 10. output.csv bin_output.csv 0 20], 0, [stdout], [stderr])
439AT_CHECK([fgrep "Begin of CorrelationToPoint" stdout], 0, [ignore], [ignore])
440AT_CHECK([file=output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/3/post/$file], 0, [ignore], [ignore])
441AT_CHECK([file=bin_output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/3/post/$file], 0, [ignore], [ignore])
442AT_CLEANUP
443
444# 4. pair correlation analysis to surface
445AT_SETUP([Analysis - surface correlation])
446AT_KEYWORDS([analysis])
447AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/4/pre/test.conf .], 0)
448AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -I -C S 1 output.csv bin_output.csv 1. 0 20], 0, [stdout], [stderr])
449AT_CHECK([fgrep "Begin of CorrelationToSurface" stdout], 0, [ignore], [ignore])
450AT_CHECK([file=output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/4/post/$file], 0, [ignore], [ignore])
451AT_CHECK([file=bin_output.csv; diff $file ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/4/post/$file], 0, [ignore], [ignore])
452AT_CLEANUP
453
454# 4. principal axis system
455AT_SETUP([Analysis - principal axis system])
456AT_KEYWORDS([analysis])
457AT_CHECK([/bin/cp -f ${abs_top_srcdir}/${AUTOTEST_PATH}/Analysis/5/pre/test.conf .], 0)
458AT_CHECK([../../molecuilder test.conf -e ${abs_top_srcdir}/src/ -v 3 -m 0], 0, [stdout], [stderr])
459AT_CHECK([fgrep "eigenvalue = 4382.53," stdout], 0, [ignore], [ignore])
460AT_CHECK([fgrep "eigenvalue = 4369.24," stdout], 0, [ignore], [ignore])
461AT_CHECK([fgrep "eigenvalue = 28.9359," stdout], 0, [ignore], [ignore])
462AT_CLEANUP
Note: See TracBrowser for help on using the repository browser.