# # 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 . # ### 3. (un)select all atoms inside sphere AT_SETUP([Selection - All atoms inside sphere]) AT_KEYWORDS([selection atom sphere select-atoms-inside-sphere]) file=allatomsoutsidesphere.xyz AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/pre/box.xyz $file], 0) AT_CHECK([chmod u+w $file], 0) AT_CHECK([../../molecuilder -i $file -v 2 --create-shape --shape-name "sphere1" --shape-type "sphere" --translation "10,10,10" --stretch "10., 10., 10." --angle-x 0. --angle-y 0. --angle-z 0. --select-shape-by-name "sphere1" --select-atoms-inside-volume -r], 0, [stdout], [stderr]) AT_CHECK([diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/post/allatomsoutsidesphere.xyz], 0, [ignore], [ignore]) # check size of sphere AT_SKIP_IF([! awk '' < /dev/null]) # check whether awk is there AT_SKIP_IF([! cat >/dev/null < /dev/null]) # check whether cat is there AT_SKIP_IF([! wc -l /dev/null]) # check whether wc is there AT_CHECK([cat < $file | awk -F" " '{ if ((NF == 4) && (($2-10)*($2-10)+($3-10)*($3-10)+($4-10)*($4-10)) > 100) print $1,$2,$3,$4;}' | wc -l], 0, [stdout], [ignore]) AT_CHECK([fgrep "505" stdout], 0, [ignore], [ignore]) AT_CHECK([cat < $file | awk -F" " '{ if ((NF == 4) && (($2-10)*($2-10)+($3-10)*($3-10)+($4-10)*($4-10)) < 100) print $1,$2,$3,$4;}' | wc -l], 0, [stdout], [ignore]) AT_CHECK([fgrep "0" stdout], 0, [ignore], [ignore]) AT_CLEANUP AT_SETUP([Selection - All atoms inside sphere with Undo]) AT_KEYWORDS([selection atom sphere select-atoms-inside-sphere undo]) file=allatomsoutsidesphere.xyz AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/pre/box.xyz $file], 0) AT_CHECK([chmod u+w $file], 0) AT_CHECK([../../molecuilder -i $file -v 2 --create-shape --shape-name "sphere1" --shape-type "sphere" --translation "10,10,10" --stretch "10., 10., 10." --angle-x 0. --angle-y 0. --angle-z 0. --select-shape-by-name "sphere1" --select-atoms-inside-volume --undo -r], 0, [stdout], [stderr]) AT_CHECK([diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/pre/box.xyz], 0, [ignore], [ignore]) AT_CLEANUP AT_SETUP([Selection - All atoms inside sphere with Redo]) AT_KEYWORDS([selection atom sphere select-atoms-inside-sphere redo]) file=allatomsoutsidesphere.xyz AT_CHECK([/bin/cp -f ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/pre/box.xyz $file], 0) AT_CHECK([chmod u+w $file], 0) AT_CHECK([../../molecuilder -i $file -v 2 --create-shape --shape-name "sphere1" --shape-type "sphere" --translation "10,10,10" --stretch "10., 10., 10." --angle-x 0. --angle-y 0. --angle-z 0. --select-shape-by-name "sphere1" --select-atoms-inside-volume --undo --redo -r], 0, [stdout], [stderr]) AT_CHECK([diff -I '.*Created by molecuilder.*' $file ${abs_top_srcdir}/tests/regression/Selection/Atoms/AtomsInsideSphere/post/allatomsoutsidesphere.xyz], 0, [ignore], [ignore]) AT_CLEANUP