source: src/Fragmentation/Automation/unittests/Makefile.am@ d920b9

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 d920b9 was d920b9, checked in by Frederik Heber <heber@…>, 13 years ago

Abstracted FragmentJob and introduced SystemCommandJob which has its former functionality.

  • FragmentJob now has just virtual function Work(), not implemented.
  • former command and outputfile is taken over by SystemCommandJob.
  • a FragmentJob or derived class is default cstor'ed always with JobId::IllegalJob.
  • so far SystemCommandJob captures command's stdout and parses it back from file. We use mkstemps() for creating a random file and popen() to pipe stdout directly. For this we require boost::iostreams and ::filesystem.
  • SystemCommandJob has virtual method extractString() to be adaptable to the output of various system commands.
  • changes almost everywhere due to SystemCommandJob taking place of FragmentJob and FragmentJob::ptr and FragmentResult::ptr requirements.
  • added FragmentWorker::dummyInit() to enforce binding of the executable to all possible derived FragmentJob's.
  • added unit test for SystemCommandJob.
  • added FragmentJobStub that implements a no-brainer job for testing.
  • NOTE: boost::iostreams is incompatible with MemDebug due to placement new.
  • Property mode set to 100644
File size: 3.7 KB
Line 
1# PLEASE adhere to the alphabetical ordering in this Makefile!
2# Also indentation by a single tab
3
4FRAGMENTATIONAUTOMATIONTESTSSOURCES = \
5 unittests/FragmentJobUnitTest.cpp \
6 unittests/FragmentResultUnitTest.cpp \
7 unittests/FragmentQueueUnitTest.cpp \
8 unittests/SystemCommandJobUnitTest.cpp
9
10FRAGMENTATIONAUTOMATIONTESTSHEADERS = \
11 unittests/FragmentJobUnitTest.hpp \
12 unittests/FragmentResultUnitTest.hpp \
13 unittests/FragmentQueueUnitTest.hpp \
14 unittests/SystemCommandJobUnitTest.hpp
15
16FRAGMENTATIONAUTOMATIONTESTS = \
17 FragmentJobUnitTest \
18 FragmentResultUnitTest \
19 FragmentQueueUnitTest \
20 SystemCommandJobUnitTest
21
22
23TESTS += $(FRAGMENTATIONAUTOMATIONTESTS)
24check_PROGRAMS += $(FRAGMENTATIONAUTOMATIONTESTS)
25noinst_PROGRAMS += $(FRAGMENTATIONAUTOMATIONTESTS)
26
27FRAGMENTATIONAUTOMATIONLIBS = \
28 libMolecuilderFragmentJobs.la \
29 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
30 $(BOOST_THREAD_LDFLAGS) $(BOOST_THREAD_LIBS) \
31 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
32 ${CodePatterns_LIBS}
33
34FragmentJobUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
35FragmentJobUnitTest_CPPFLAGS = ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS}
36FragmentJobUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
37 unittests/FragmentJobUnitTest.cpp \
38 unittests/FragmentJobUnitTest.hpp \
39 unittests/stubs/FragmentResultStub.cpp \
40 unittests/stubs/FragmentJobStub.cpp \
41 unittests/stubs/FragmentJobStub.hpp \
42 JobId.cpp \
43 JobId.hpp \
44 Jobs/FragmentJob.cpp \
45 Jobs/FragmentJob.hpp \
46 Results/FragmentResult.hpp
47FragmentJobUnitTest_LDADD = \
48 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
49 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
50 ${CodePatterns_LIBS}
51
52FragmentQueueUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
53FragmentQueueUnitTest_CPPFLAGS = ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS}
54FragmentQueueUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
55 unittests/FragmentQueueUnitTest.cpp \
56 unittests/FragmentQueueUnitTest.hpp \
57 unittests/stubs/FragmentJobStub.cpp \
58 unittests/stubs/FragmentJobStub.hpp
59FragmentQueueUnitTest_LDADD = \
60 libMolecuilderFragmentJobs.la \
61 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
62 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
63 ${CodePatterns_LIBS}
64
65FragmentResultUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
66FragmentResultUnitTest_CPPFLAGS = ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS}
67FragmentResultUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
68 unittests/FragmentResultUnitTest.cpp \
69 unittests/FragmentResultUnitTest.hpp
70FragmentResultUnitTest_LDADD = \
71 libMolecuilderFragmentJobs.la \
72 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
73 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
74 ${CodePatterns_LIBS}
75
76SystemCommandJobUnitTest_LDFLAGS = ${CodePatterns_LIBS} $(CPPUNIT_LIBS) -ldl
77SystemCommandJobUnitTest_CPPFLAGS = ${BOOST_CPPFLAGS} $(CPPUNIT_CFLAGS) ${CodePatterns_CFLAGS}
78SystemCommandJobUnitTest_SOURCES = $(top_srcdir)/src/unittests/UnitTestMain.cpp \
79 unittests/SystemCommandJobUnitTest.cpp \
80 unittests/SystemCommandJobUnitTest.hpp \
81 Results/FragmentResult.cpp \
82 Results/FragmentResult.hpp \
83 Jobs/FragmentJob.cpp \
84 Jobs/FragmentJob.hpp \
85 Jobs/SystemCommandJob.cpp \
86 Jobs/SystemCommandJob.hpp \
87 JobId.cpp \
88 JobId.hpp
89SystemCommandJobUnitTest_LDADD = \
90 $(BOOST_FILESYSTEM_LDFLAGS) $(BOOST_FILESYSTEM_LIBS) \
91 $(BOOST_IOSTREAMS_LDFLAGS) $(BOOST_IOSTREAMS_LIBS) \
92 $(BOOST_SERIALIZATION_LDFLAGS) $(BOOST_SERIALIZATION_LIBS) \
93 $(BOOST_SYSTEM_LDFLAGS) $(BOOST_SYSTEM_LIBS) \
94 ${CodePatterns_LIBS}
95
96#AUTOMAKE_OPTIONS = parallel-tests
Note: See TracBrowser for help on using the repository browser.