#
# MoleCuilder - creates and alters molecular systems
# Copyright (C) 2008-2012 University of Bonn
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
#
#
# MoleCuilder - creates and alters molecular systems
# Copyright (C) 2008-2012 University of Bonn
#
# This program is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program. If not, see .
#
### element database
AT_SETUP([Standard Options - element database])
AT_KEYWORDS([options element-db])
file=test.conf
AT_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
#Element Name Symbol Period Group Block Atomic Number AtomicWeight Covalent Radius vdW Radius
Hydrogen H 1 1 s 1 1. 0.23 1.09
Helium He 1 18 p 2 4. 1.5 1.4
]])
AT_CHECK([cp -f ${abs_top_srcdir}/tests/regression/Options/ElementsDb/pre/test.conf $file], 0, [ignore], [ignore])
AT_CHECK([chmod u+w $file], 0, [ignore], [ignore])
AT_CHECK([../../molecuilder -i test.conf -e ./], 0, [stdout], [stderr])
AT_CHECK([grep -E "Using.*as elements database." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Element list loaded successfully." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Something went wrong while parsing the other databases!" stderr], 0, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.000" test.conf], 0, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.008" test.conf], 1, [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Standard Options - element database with Undo])
AT_KEYWORDS([options element-db undo])
file=test.conf
AT_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
#Element Name Symbol Period Group Block Atomic Number AtomicWeight Covalent Radius vdW Radius
Hydrogen H 1 1 s 1 1.008 0.23 1.09
Helium He 1 18 p 2 4.003 1.5 1.4
]])
AT_CHECK([cp -f ${abs_top_srcdir}/tests/regression/Options/ElementsDb/pre/test.conf $file], 0, [ignore], [ignore])
AT_CHECK([chmod u+w $file], 0, [ignore], [ignore])
AT_CHECK([../../molecuilder -i test.conf -e ./ --undo], 0, [stdout], [stderr])
AT_CHECK([grep -E "Using.*as elements database." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Element list loaded successfully." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Something went wrong while parsing the other databases!" stderr], 0, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.000" test.conf], 1, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.008" test.conf], 0, [ignore], [ignore])
AT_CLEANUP
AT_SETUP([Standard Options - element database with Redo])
AT_KEYWORDS([options element-db redo])
file=test.conf
AT_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
#Element Name Symbol Period Group Block Atomic Number AtomicWeight Covalent Radius vdW Radius
Hydrogen H 1 1 s 1 1.000 0.23 1.09
Helium He 1 18 p 2 4.003 1.5 1.4
]])
AT_CHECK([cp -f ${abs_top_srcdir}/tests/regression/Options/ElementsDb/pre/test.conf $file], 0, [ignore], [ignore])
AT_CHECK([chmod u+w $file], 0, [ignore], [ignore])
AT_CHECK([../../molecuilder -i test.conf -e ./ --undo --redo], 0, [stdout], [stderr])
AT_CHECK([grep -E "Using.*as elements database." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Element list loaded successfully." stdout], 0, [ignore], [ignore])
AT_CHECK([fgrep "Something went wrong while parsing the other databases!" stderr], 0, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.000" test.conf], 0, [ignore], [ignore])
AT_CHECK([grep "Ion_Type1.*1.008" test.conf], 1, [ignore], [ignore])
AT_CLEANUP