poldek: poldek/tests/Makefile.am, poldek/tests/httpd.py (REMOVED), ...

mis mis at pld-linux.org
Sat Jun 23 21:07:24 CEST 2007


Author: mis                          Date: Sat Jun 23 19:07:24 2007 GMT
Module: poldek                        Tag: HEAD
---- Log message:
- we got the tests

---- Files affected:
poldek/poldek/tests:
   Makefile.am (1.8 -> 1.9) , httpd.py (1.1 -> NONE)  (REMOVED), test_patch.sh (1.1 -> NONE)  (REMOVED), utest_mkidx.sh (1.2 -> NONE)  (REMOVED)
poldek/poldek/tests/repo:
   Bar-3.2-1.noarch.rpm (NONE -> 1.1)  (NEW), Boo-3.2-1.noarch.rpm (NONE -> 1.1)  (NEW), Foo-2.2-1.noarch.rpm (NONE -> 1.1)  (NEW), bar-1.0-1.noarch.rpm (NONE -> 1.1)  (NEW), bar-2.1-1.noarch.rpm (NONE -> 1.1)  (NEW), bug-1.0-1.noarch.rpm (NONE -> 1.1)  (NEW), buz-1.0-1.noarch.rpm (NONE -> 1.1)  (NEW), h-1.0-1.noarch.rpm (NONE -> 1.1)  (NEW), poldek.conf (1.1 -> NONE)  (REMOVED)
poldek/poldek/tests/sh:
   01-create-repo (NONE -> 1.1)  (NEW), 02-up-repo (NONE -> 1.1)  (NEW), 03-up-loop (NONE -> 1.1)  (NEW)
poldek/poldek/tests/sh/lib:
   repo-setup (1.1 -> 1.2) , setup (1.1 -> 1.2) , shunit2 (1.2 -> 1.3) 

---- Diffs:

================================================================
Index: poldek/poldek/tests/Makefile.am
diff -u poldek/poldek/tests/Makefile.am:1.8 poldek/poldek/tests/Makefile.am:1.9
--- poldek/poldek/tests/Makefile.am:1.8	Fri Jun 22 12:28:20 2007
+++ poldek/poldek/tests/Makefile.am	Sat Jun 23 21:07:19 2007
@@ -5,7 +5,8 @@
 test_poldek_SOURCES = test_poldek.c test_match.c test_env.c \
 	   	              test_pmdb.c test_op.c test_config.c test.h 	
 
-EXTRA_DIST = utest_mkidx.sh httpd.py test_patch.sh
+EXTRA_DIST = poldek_test_conf.conf sh repo
+
 
 test_poldek_INCLUDES= @CHECK_CFLAGS@
 test_poldek_LDADD = @CHECK_LIBS@ ../libpoldek_allsym.la ../vfile/libvfile.la  
@@ -15,25 +16,27 @@
 
 clean-local:
 	-rm -f *.tmp core *.o *.bak *~ *% *\# TAGS gmon.out \#*\# dupa* 
+	-find sh -name \*~ | xargs -r rm
 
+check: poldek_test_conf.conf
+	$(MAKE) check-am
 
-runtests: poldek_test_conf.conf
-	$(MAKE) check
-	@echo; echo "Running *.sh tests"; \
-	n=0; nfails=0;                   \
-	for i in utest_*.sh; do          \
-	    [ -f $$i ] || continue;      \
-	    n=$$(expr $$n + 1);          \
-	    echo "  running $$i";        \
-	    sh $$i;                      \
-        if [ $$? -ne 0 ]; then       \
-          nfails=$$(expr $$nfails + 1); \
-          echo "    $$i FAILED";     \
-        else                         \
-          echo "    $$i PASSED";     \
-        fi;                          \
-   done;                             \
-   echo "====================================="; \
-   echo "$$n tests passed / $$nfails failed";    \
-   echo "====================================="
+sheck:
+	@echo; echo "Running *.sh tests";  \
+	find sh -name \*~ | xargs -r rm;   \
+	n=0; nok=0;                        \
+	for i in sh/[0-9][0-9]*; do        \
+	  [ -f $$i ] || continue;          \
+	  n=$$(expr $$n + 1);              \
+	  sh $$i -n 10; 		   \
+          if [ $$? -eq 0 ]; then           \
+            nok=$$(expr $$nok + 1);     \
+            echo "  ## $$i PASSED";     \
+          else                          \
+            echo "  ## $$i FAILED";     \
+          fi;                           \
+	done;                           \
+	echo "====================================="; \
+	echo " Passed $$nok tests of total $$n";      \
+	echo "====================================="
 

================================================================
Index: poldek/poldek/tests/repo/Bar-3.2-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/Boo-3.2-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/Foo-2.2-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/bar-1.0-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/bar-2.1-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/bug-1.0-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/buz-1.0-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/repo/h-1.0-1.noarch.rpm
<<Binary file>>

================================================================
Index: poldek/poldek/tests/sh/01-create-repo
diff -u /dev/null poldek/poldek/tests/sh/01-create-repo:1.1
--- /dev/null	Sat Jun 23 21:07:24 2007
+++ poldek/poldek/tests/sh/01-create-repo	Sat Jun 23 21:07:19 2007
@@ -0,0 +1,161 @@
+#!/bin/sh
+# $Id$
+
+# --mkidx tests 
+
+#  Index creation use cases:
+Case_a="-s /foo                   =>  dir  -> default type"
+Case_b="--st type -s /foo         =>  type -> default type"
+Case_c="--st type /foo --mt type  =>  type -> dtype"
+Case_d="-s /foo --mt dtype        =>  dir  -> dtype"
+Case_e="-s /foo --mt dtype,dtype2 =>  dir  -> dtype"
+Case_f="-n foo                    =>  dir (or original type) -> foo's type"
+Case_g="-s /foo --mkidx=/tmp/bar.gz"
+Case_h="-n foo --mkidx=/tmp/bar.gz"
+
+
+. ./sh/lib/setup
+. ./sh/lib/repo-setup
+
+testCreateDefaultType() 
+{
+    msgn $Case_a
+    $POLDEK_NOCONF -s $REPO --mkidx || fail "mkidx #1 failed"
+    die_if_empty_index "$REPO/packages.ndir.gz"
+
+    $POLDEK_NOCONF -s $REPO --mkidx=$TMPDIR || fail "mkidx #2 failed"
+    die_if_empty_index "$TMPDIR/packages.ndir.gz"
+    if ! diff -u $REPO/packages.ndir.md $TMPDIR/packages.ndir.md; then
+        fail "differ md's!"
+    fi    
+}
+
+#  b) --st type -s /foo         =>  type -> default type
+#  c) --st type /foo --mt type  =>  type -> dtype
+testConvertRepos() 
+{
+    $POLDEK_NOCONF -s $REPO --mkidx || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.ndir.gz"
+
+    rm -rf $TMPDIR/packages.*
+    cp $REPO/packages.ndir.* $TMPDIR || fail "cp failed"
+
+    
+    # c) --st type /foo --mt type =>  type -> dtype
+    msgn "$Case_c"
+    $POLDEK_NOCONF --st pndir -s $TMPDIR --mkidx --mt=pdir || fail "$Case_c failed"
+    die_if_empty_index "$TMPDIR/packages.dir.gz" 
+
+    # b) --st type -s /foo
+    msgn "$Case_b"
+    rm -f $TMPDIR/packages.ndir*
+    $POLDEK_NOCONF --st pdir -s $TMPDIR --mkidx || fail "$Case_b failed"
+    die_if_empty_index "$TMPDIR/packages.ndir.gz"
+}
+
+#  d) -s /foo --mt dtype        =>  dir  -> dtype
+#  e) -s /foo --mt dtype,dtype2 =>  dir  -> dtype
+testSelectType() 
+{
+    msgn "$Case_d"
+    $POLDEK_NOCONF -s $REPO --mkidx --mt pdir || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.dir.gz"
+
+    rm -rf $REPO/packages.*
+    $POLDEK_NOCONF -s $REPO --st dir --mkidx --mt pdir || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.dir.gz"
+
+    setUp
+
+    msgn "$Case_e"
+    $POLDEK_NOCONF -s $REPO --mkidx --mt pdir,pndir || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.ndir.gz"
+    die_if_empty_index "$REPO/packages.dir.gz"
+}
+
+poldek_n() {
+    $POLDEK_NOCONF -Osource1="repo-pndir,type=pndir $REPO" -Osource2="repo-pdir,type=pdir $REPO" $@
+}
+
+#  f) -n foo                    =>  dir (or original type) -> foo's type
+testCreateByName() 
+{
+    msgn "$Case_f"
+    poldek_n -n repo-pndir --mkidx || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.ndir.gz"
+
+    poldek_n -n repo-pdir --mkidx || fail "mkidx failed"
+    die_if_empty_index "$REPO/packages.dir.gz"
+
+    setUp
+
+    poldek_n -n repo-pndir -n repo-pdir --mkidx || fail "-n 1 -n 2 --mkidx failed"
+    die_if_empty_index "$REPO/packages.ndir.gz"
+    die_if_empty_index "$REPO/packages.dir.gz"
+}
+
+#  g) -s /foo --mkidx=/tmp/bar.gz 
+testNonDefaultName() 
+{
+    msgn "$Case_g"
+    poldek="$POLDEK_NOCONF"
+
+    $poldek -s $REPO --mkidx=$TMPDIR || fail "mkidx #1 failed"
+    die_if_empty_index "$TMPDIR/packages.ndir.gz"
+
+    $poldek -s $REPO --mkidx=$TMPDIR/packages.foo.ndir.gz || fail "mkidx #2 failed"
+    die_if_empty_index "$TMPDIR/packages.foo.ndir.gz"
+
+    $poldek -s $REPO --mkidx=$TMP --mt pdir || fail "mkidx #4 failed"
+    die_if_empty_index "$TMP/packages.dir.gz"
+    
+    $poldek -s $REPO --mkidx=$TMP/packages.bar.dir.gz --mt pdir || fail "mkidx #5 failed"
+    die_if_empty_index "$TMP/packages.bar.dir.gz"
+    
+    $poldek --st pdir -s $TMPDIR/packages.bar.dir.gz \
+            --mkidx=$TMPDIR/packages.foo2.ndir.gz --mt pndir || fail "mkidx #6 failed"
+
+    die_if_empty_index "$TMP/packages.foo2.ndir.gz"
+
+    $poldek --st pndir -s $TMP/packages.foo2.ndir.gz \
+            --mkidx=$TMP/packages.foo3.ndir.gz --mt pndir || fail "mkidx #7 failed"
+    die_if_empty_index "$TMP/packages.foo3.ndir.gz"
+
+    setUp
+    $poldek -s $REPO --mkidx --mt pndir,pdir || fail "mkidx #8 failed"
+
+
+    poldek="$POLDEK_UP -Ovfile_retries=1"
+    $poldek --st pndir -s $REPOURL --mkidx=$TMPDIR fail "mkidx #9 failed"
+    die_if_empty_index "$TMPDIR/packages.ndir.gz"
+
+    $poldek --st pndir -s $REPOURL --mkidx=$TMPDIR --mt pdir || fail "mkidx #10 failed"
+    die_if_empty_index "$TMPDIR/packages.dir.gz"
+
+    $poldek --st pndir -s $REPOURL --mkidx=$TMPDIR/packages.foo.ndir.gz || fail "mkidx #11 failed"
+    die_if_empty_index "$TMPDIR/packages.foo.ndir.gz"
+
+    $poldek --st pndir -s $REPOURL --mkidx=$TMP/packages.bar.dir.gz --mt pdir || fail "mkidx #12 failed"
+    die_if_empty_index "$TMPDIR/packages.bar.dir.gz"
+}
+
+#  h) -n foo --mkidx=/tmp/bar.gz 
+testCreateFromRemoteRepos() 
+{
+    
+    msgn "$Case_h"
+    poldek_n -n repo-pdir --mkidx=$TMPDIR/packages.foo.ndir.gz --mt pndir || 
+        fail "mkidx #1 failed"
+    die_if_empty_index "$TMPDIR/packages.foo.ndir.gz"
+
+    poldek_n -n repo-pndir --mkidx=$TMPDIR/packages.foo2.ndir.gz --mt pndir || 
+        fail "mkidx #2 failed"
+
+    die_if_empty_index "$TMPDIR/packages.foo2.ndir.gz"
+
+    poldek_n -n repo-pdir --mkidx=$TMPDIR/packages.bar.dir.gz || 
+        fail "mkidx #3 failed"
+    die_if_empty_index "$TMPDIR/packages.bar.dir.gz"
+}
+
+. ./sh/lib/shunit2
\ No newline at end of file

================================================================
Index: poldek/poldek/tests/sh/02-up-repo
diff -u /dev/null poldek/poldek/tests/sh/02-up-repo:1.1
--- /dev/null	Sat Jun 23 21:07:24 2007
+++ poldek/poldek/tests/sh/02-up-repo	Sat Jun 23 21:07:19 2007
@@ -0,0 +1,70 @@
+#!/bin/sh
+# $Id$
+
+. ./sh/lib/setup
+. ./sh/lib/repo-setup
+
+mkidx() {
+   $POLDEK_NOCONF -s $REPO --mkidx --mt pndir || fail "mkidx failed"
+}
+
+up() {
+   $POLDEK_UP -Oautoupa=n -Osource="test,type=pndir $REPOURL" --up || fail "up failed"
+}
+
+testUpdate() 
+{
+    rm -rf $REPO/*.rpm
+    # Create repo and generate some diffs
+    msg "\n## Creating empty index"
+    indexfile="$REPO/packages.ndir.gz"
+    mkidx
+    die_if_invalid_index $indexfile 0
+    
+    msg "\n## up"
+    up
+
+    msg "\n## Changing repo #1"    
+    sleep 1
+    add_package_to_repo
+    mkidx
+    die_if_invalid_index $indexfile 1
+    die_if_invalid_index "$REPO/packages.i/packages.ndir.diff.toc.gz" 1
+
+    msg "\n## up"
+    up
+
+    msg "\n## Changing repo #2"
+    sleep 1
+    remove_package_from_repo
+    mkidx
+    die_if_invalid_index $indexfile 0
+    die_if_invalid_index "$REPO/packages.i/packages.ndir.diff.toc.gz" 2
+    
+    msg "\n## up"
+    up
+
+    msg "\n## Changing repo #3"
+    sleep 1
+    add_package_to_repo
+    add_package_to_repo
+    mkidx 
+    die_if_invalid_index $indexfile 2
+    die_if_invalid_index "$REPO/packages.i/packages.ndir.diff.toc.gz" 3
+
+    msg "\n## up"
+    up
+
+    # <glen att pld-linux.org> report: <https://bugs.pld-linux.org/show_bug.cgi?id=28>
+    msg "\n## Reset repo"
+    sleep 1
+    rm -rf $REPO/packages.*
+    add_package_to_repo
+    mkidx
+    msg "\n## up"
+    up
+
+    
+}
+
+. ./sh/lib/shunit2
\ No newline at end of file

================================================================
Index: poldek/poldek/tests/sh/03-up-loop
diff -u /dev/null poldek/poldek/tests/sh/03-up-loop:1.1
--- /dev/null	Sat Jun 23 21:07:24 2007
+++ poldek/poldek/tests/sh/03-up-loop	Sat Jun 23 21:07:19 2007
@@ -0,0 +1,49 @@
+#!/bin/sh
+# $Id$
+
+. ./sh/lib/setup
+. ./sh/lib/repo-setup
+
+mkidx() {
+   $POLDEK_NOCONF -s $REPO --mkidx --mt pndir || fail "mkidx failed"
+}
+
+up() {
+   $POLDEK_UP -Oautoupa=n -Osource="test,type=pndir $REPOURL" --up
+}
+
+testUpLoop() 
+{
+    rm -rf $REPO/*.rpm
+    # Create repo and generate some diffs
+    msg "\n## Creating empty index"
+    indexfile="$REPO/packages.ndir.gz"
+    mkidx
+    die_if_invalid_index $indexfile 0
+    
+    msg "\n## up"
+    up
+    
+    nloop=0
+    maxloop=${MAXLOOP:-"60"}
+
+    while [ $nloop -lt $maxloop ]; do
+        msg "\n#### Iteration #${nloop}"    
+        sleep 1    
+        random_change_repo
+
+        npackages=$(ls $REPO/*.rpm 2>/dev/null | wc -l)
+        echo "#${nloop} repository contains $npackages package(s)"
+        mkidx
+
+        msgn "  up"
+        up 
+        if [ $? -ne 0 ]; then 
+           fail "up #${nloop} failed"
+           nloop=$maxloop
+        fi
+        nloop=$(expr $nloop + 1)
+    done
+}
+
+. ./sh/lib/shunit2
\ No newline at end of file

================================================================
Index: poldek/poldek/tests/sh/lib/repo-setup
diff -u poldek/poldek/tests/sh/lib/repo-setup:1.1 poldek/poldek/tests/sh/lib/repo-setup:1.2
--- poldek/poldek/tests/sh/lib/repo-setup:1.1	Sat Jun 23 17:25:21 2007
+++ poldek/poldek/tests/sh/lib/repo-setup	Sat Jun 23 21:07:19 2007
@@ -1,3 +1,4 @@
+#!/bin/sh
 
 tearDown() {
     [ -n "$REPO" ] && rm -rf $REPO/packages.*
@@ -13,10 +14,10 @@
     POLDEK="$PWD/../cli/poldek $QUIET"
     POLDEK_NOCONF="$POLDEK --noconf -Ovfile_retries=1"
 
-    [ ! -d "repo" ] && fail "repo: no such directory"
-    SOURCE_REPO="${PWD}/repo"
+    SOURCE_REPO=${SOURCE_REPO:-"${PWD}/repo"}
+    [ ! -d "$SOURCE_REPO" ] && fail "$SOURCE_REPO: no such directory"
 
-    [ -z "$TMP" ] && TMP="${TMPDIR}"
+    TMP=${TMP:-"$TMPDIR"}
     [ -z "$TMP" ] && TMP="${PWD}"
     TMP="${TMP}/poldekTests"
     TMPDIR="$TMP"
@@ -40,14 +41,22 @@
 
 oneTimeTearDown() {
    if echo $TMPDIR | grep -q poldekTest; then rm -rf $TMPDIR; fi
+   tmpdir=$(dirname $TMPDIR)
+   TMP="$tmpdir"
+   TMPDIR="$tmpdir"
 }
 
+die_if_empty_index() {
+    die_if_invalid_index $1 ""
+}    
+
 die_if_invalid_index() {
     anindex=$1
+    expected_packages=$2
 
     [ -f $anindex ] || fail "$anindex not created"
     if echo $anindex | grep -q "diff.toc"; then
-       expected_lines=$2
+       expected_lines="$expected_packages"
 
        lines=$(zcat $anindex | wc -l)
        if [ "$lines" != "$expected_lines" ]; then
@@ -69,11 +78,16 @@
     fi
 
     if zgrep -q 'Contains 0 packages' $anindex; then
-        expected_packages=$2
         if [ "$expected_packages" != "0" ]; then
             fail "empty $anindex"
         fi
     fi
+
+    if [ -n "$expected_packages" ]; then 
+       if ! zgrep -q "Contains $expected_packages packages" $anindex; then
+            fail "$anindex: number of packages mismatch"
+       fi
+    fi
 }
 
 
@@ -83,7 +97,7 @@
         package=$(basename $p)
 
         if [ ! -f "$REPO/$package" ]; then
-            cp $p $REPO
+            ln -sf $p $REPO/$package
             msg "Added $package"
             return 0
         fi
@@ -97,3 +111,43 @@
     msg "Removed $(basename $package)"
 }
 
+
+random_change_repo() {
+    to_add=$(perl -e '@s=(a..z, A..Z, 0..9); print $s[rand(@s)]')
+    to_del=$(perl -e '@s=(a..z, A..Z, 0..9); print $s[rand(@s)]')
+
+    while [ "$to_add" == "$to_del" ]; do
+       to_del=$(perl -e '@s=(a..z, A..Z, 0..9); print $s[rand(@s)]')
+    done
+
+    #echo "- adding $to_add\*, removing $to_del\*";
+
+    nadded=0
+    nremoved=0
+
+    for i in $SOURCE_REPO/${to_add}*.rpm; do
+        bn=$(basename $i);
+          
+        [ ! -f $i ] && continue;
+        [ -f $REPO/$bn ] && continue;
+
+        nadded=$(expr $nadded + 1)
+        msg "    - add $bn"
+        ln -sf $i $REPO/$bn
+    done
+
+    for i in $REPO/${to_del}*.rpm; do
+        bn=$(basename $i);
+          
+        [ ! -f $i ] && continue
+        msg "   - rm $bn"
+        rm -f $i
+        nremoved=$(expr $nremoved + 1)
+    done 
+	
+
+    nchanges=$(expr $nadded + $nremoved)
+    [ "$nchanges" = "0" ] && random_change_repo
+
+    #msg "Added $nadded and $nremoved removed"
+}
\ No newline at end of file

================================================================
Index: poldek/poldek/tests/sh/lib/setup
diff -u poldek/poldek/tests/sh/lib/setup:1.1 poldek/poldek/tests/sh/lib/setup:1.2
--- poldek/poldek/tests/sh/lib/setup:1.1	Sat Jun 23 17:25:21 2007
+++ poldek/poldek/tests/sh/lib/setup	Sat Jun 23 21:07:19 2007
@@ -1,7 +1,5 @@
+#!/bin/sh
 # 
-# 
-
-[ -z "$QUIET" ] && QUIET="-q"
 
 msg() {
     [ "$QUIET" != "-q" ] && echo -e $@
@@ -10,3 +8,36 @@
 msgn() {
     msg "\n## $@"
 }
+
+QUIET=${QUIET:-"-q"}
+POLDEK_TESTING=1 # prevent diff.toc vacuuming
+export POLDEK_TESTING
+
+MAXLOOP=60
+VERBOSE=""
+
+while test $# -gt 0 ; do
+    case "${1}" in
+        --source-repo)
+            shift; SOURCE_REPO="${1}"; shift ;;
+
+        -v)
+            shift; VERBOSE="$VERBOSE -v";;
+            
+        -n) shift; MAXLOOP="${1}"; shift ;;
+
+        -h)
+            echo "Usage: $(basename $0) [--source-repo REPO] [-v] [-n NUM]"
+            echo '    --source-repo  - source (read-only) repository for *-repo tests'
+            echo "    -v             - be verbose"
+            echo '    -n NUM         - do NUM iteration in *-loop tests'
+            exit 0; shift ;;
+
+        *)
+            echo "unknown option ${1}; try -h"; exit 1;
+    esac
+done
+[ -n "$VERBOSE" ] && QUIET="$VERBOSE"
+
+
+

================================================================
Index: poldek/poldek/tests/sh/lib/shunit2
diff -u poldek/poldek/tests/sh/lib/shunit2:1.2 poldek/poldek/tests/sh/lib/shunit2:1.3
--- poldek/poldek/tests/sh/lib/shunit2:1.2	Sat Jun 23 20:28:56 2007
+++ poldek/poldek/tests/sh/lib/shunit2	Sat Jun 23 21:07:19 2007
@@ -698,6 +698,7 @@
   echo '#'
   echo '# Performing tests'
   echo '#'
+
   for _su_func in ${__shunit_suite}; do
     # disable skipping
     endSkipping
@@ -870,7 +871,6 @@
 
 # execute the tests
 _shunit_execSuite
-
 # execute the oneTimeTearDown function (if it exists)
 oneTimeTearDown
 
@@ -884,6 +884,10 @@
 done
 unset _shunit_shellFlag
 
+ec=0
+[ "${__shunit_testsFailed}" -gt 0 ] && ec=1
+
+exit $ec
 #/**
 # </s:shelldoc>
 #*/
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/poldek/poldek/tests/Makefile.am?r1=1.8&r2=1.9&f=u
    http://cvs.pld-linux.org/poldek/poldek/tests/sh/lib/repo-setup?r1=1.1&r2=1.2&f=u
    http://cvs.pld-linux.org/poldek/poldek/tests/sh/lib/setup?r1=1.1&r2=1.2&f=u
    http://cvs.pld-linux.org/poldek/poldek/tests/sh/lib/shunit2?r1=1.2&r2=1.3&f=u



More information about the pld-cvs-commit mailing list