From 61754016baf1b8f4e86ccb3a49da335b7594e07e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Lo=C3=AFc=20Minier?= Date: Mon, 4 Jan 2010 23:52:22 +0100 Subject: Normalize output of get_source_control_field() --- pbuilder-satisfydepends-funcs | 26 ++++++++++++++++++++------ test_pbuilder-satisfydepends-funcs | 10 +++++----- 2 files changed, 25 insertions(+), 11 deletions(-) diff --git a/pbuilder-satisfydepends-funcs b/pbuilder-satisfydepends-funcs index 9beb691..5c43e34 100755 --- a/pbuilder-satisfydepends-funcs +++ b/pbuilder-satisfydepends-funcs @@ -53,20 +53,34 @@ checkbuilddep_versiondeps() { get_source_control_field() { local field="$1" - sed -n -e " -s/^$field://i + sed -n -e "s/^$field://i" -e ' t store -/^\$/q +/^$/q d : store H : loop n /^#/ b loop -/^[ \\t]/ b store +/^[ \t]/ b store x -s/\\n//g -p" \ +# output on single line +s/\n//g +# change series of tabs and spaces into a space +s/[\t ]\+/ /g +# normalize space before and after commas +s/ *, */, /g +# normalize space before and after pipes +s/ *| */ | /g +# normalize space before and after parentheses +s/ *( */ (/g +s/ *) */)/g +# normalize space between operator and version +s/(\(>>\|>=\|>\|==\|=\|<=\|<<\|<\|!=\) *\([^)]*\))/(\1 \2)/g +# normalize space at beginning and end of line +s/^ *// +s/ *$// +p' \ "$DEBIAN_CONTROL" } diff --git a/test_pbuilder-satisfydepends-funcs b/test_pbuilder-satisfydepends-funcs index 7bb6d30..479c1ff 100755 --- a/test_pbuilder-satisfydepends-funcs +++ b/test_pbuilder-satisfydepends-funcs @@ -22,9 +22,9 @@ test_get_build_deps() { Source: amule XXXX: Build-Depends: - autotools-dev, + autotools-dev ( >= 1.2 ) , debhelper , - quilt, + quilt(<<12:0), ## libwxgtk2.8-dev Build-Depends-Indep: test, test1, @@ -45,10 +45,10 @@ trap cleanup sigpipe sighup exit # TODO move to build dir DEBIAN_CONTROL="$(tempfile)" -expect_output " autotools-dev, debhelper , quilt, libwxgtk2.8-dev - test, test1, test2, test3 | test4, test5" \ +expect_output "autotools-dev (>= 1.2), debhelper, quilt (<< 12:0), libwxgtk2.8-dev +test, test1, test2, test3 | test4, test5" \ test_get_build_deps "no" -expect_output " autotools-dev, debhelper , quilt, libwxgtk2.8-dev" \ +expect_output "autotools-dev (>= 1.2), debhelper, quilt (<< 12:0), libwxgtk2.8-dev" \ test_get_build_deps "yes" testlib_summary -- cgit v1.2.3