From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11758 invoked by alias); 11 Dec 2011 23:14:39 -0000 Received: (qmail 11734 invoked by uid 9699); 11 Dec 2011 23:14:38 -0000 Date: Sun, 11 Dec 2011 23:14:00 -0000 Message-ID: <20111211231438.11731.qmail@sourceware.org> From: mornfall@sourceware.org To: lvm-devel@redhat.com, lvm2-cvs@sourceware.org Subject: LVM2/test/shell dumpconfig.sh Mailing-List: contact lvm2-cvs-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Post: List-Help: , Sender: lvm2-cvs-owner@sourceware.org X-SW-Source: 2011-12/txt/msg00024.txt.bz2 CVSROOT: /cvs/lvm2 Module name: LVM2 Changes by: mornfall@sourceware.org 2011-12-11 23:14:38 Added files: test/shell : dumpconfig.sh Log message: Add a shell test for config parsing and merging (lvm dumpconfig). Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/LVM2/test/shell/dumpconfig.sh.diff?cvsroot=lvm2&r1=NONE&r2=1.1 /cvs/lvm2/LVM2/test/shell/dumpconfig.sh,v --> standard output revision 1.1 --- LVM2/test/shell/dumpconfig.sh +++ - 2011-12-11 23:14:38.586181000 +0000 @@ -0,0 +1,35 @@ +# Copyright (C) 2011 Red Hat, Inc. All rights reserved. +# +# This copyrighted material is made available to anyone wishing to use, +# modify, copy, or redistribute it subject to the terms and conditions +# of the GNU General Public License v.2. +# +# You should have received a copy of the GNU General Public License +# along with this program; if not, write to the Free Software Foundation, +# Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + +. lib/test + +flatten() { + cat > flatten.config + + for s in `egrep '^[a-z]+ {$' flatten.config | sed -e s,{$,,`; do + sed -e "/^$s/,/^}/p;d" flatten.config | sed -e '1d;$d' | sed -e "s,^[ \t]*,$s/,"; + done +} + +lvm dumpconfig -vvvv | flatten | sort > config.dump +flatten < etc/lvm.conf | sort > config.input + +# check that dumpconfig output corresponds to the lvm.conf input +diff -wu config.input config.dump + +# and that merging multiple config files (through tags) works +lvm dumpconfig | flatten | not grep 'log/verbose=1' +lvm dumpconfig | flatten | grep 'log/indent=1' + +aux lvmconf 'tags/@foo {}' +echo 'log { verbose = 1 }' > etc/lvm_foo.conf +lvm dumpconfig | flatten | grep 'log/verbose=1' +lvm dumpconfig | flatten | grep 'log/indent=1' +