summaryrefslogtreecommitdiff
path: root/source4/lib/ldb
diff options
context:
space:
mode:
Diffstat (limited to 'source4/lib/ldb')
-rw-r--r--source4/lib/ldb/tests/test-tdb-features.sh78
-rwxr-xr-xsource4/lib/ldb/tests/test-tdb.sh4
2 files changed, 81 insertions, 1 deletions
diff --git a/source4/lib/ldb/tests/test-tdb-features.sh b/source4/lib/ldb/tests/test-tdb-features.sh
new file mode 100644
index 0000000000..7ed55430f7
--- /dev/null
+++ b/source4/lib/ldb/tests/test-tdb-features.sh
@@ -0,0 +1,78 @@
+#!/bin/sh
+
+echo "Running tdb feature tests"
+
+rm -f $LDB_URL
+
+checkcount() {
+ count=$1
+ expression="$2"
+ n=`bin/ldbsearch "$expression" | grep ^dn | wc -l`
+ if [ $n != $count ]; then
+ echo "Got $n but expected $count for $expression"
+ bin/ldbsearch "$expression"
+ exit 1
+ fi
+ echo "OK: $count $expression"
+}
+
+echo "Testing case sensitve search"
+cat <<EOF | bin/ldbadd || exit 1
+dn: cn=t1,cn=TEST
+test: foo
+EOF
+
+
+echo $ldif | bin/ldbadd || exit 1
+bin/ldbsearch
+
+checkcount 1 '(test=foo)'
+checkcount 0 '(test=FOO)'
+checkcount 0 '(test=fo*)'
+
+echo "Making case insensitive"
+cat <<EOF | bin/ldbmodify || exit 1
+dn: @ATTRIBUTES
+changetype: add
+add: test
+test: CASE_INSENSITIVE
+EOF
+
+echo $ldif | bin/ldbmodify || exit 1
+checkcount 1 '(test=foo)'
+checkcount 1 '(test=FOO)'
+checkcount 0 '(test=fo*)'
+
+echo "adding wildcard"
+cat <<EOF | bin/ldbmodify || exit 1
+dn: @ATTRIBUTES
+changetype: modify
+add: test
+test: WILDCARD
+EOF
+checkcount 1 '(test=foo)'
+checkcount 1 '(test=FOO)'
+checkcount 1 '(test=fo*)'
+
+echo "adding i"
+cat <<EOF | bin/ldbmodify || exit 1
+dn: cn=t1,cn=TEST
+changetype: modify
+add: i
+i: 0x100
+EOF
+checkcount 1 '(i=0x100)'
+checkcount 0 '(i=256)'
+
+echo "marking i as INTEGER"
+cat <<EOF | bin/ldbmodify || exit 1
+dn: @ATTRIBUTES
+changetype: modify
+add: i
+i: INTEGER
+EOF
+checkcount 1 '(i=0x100)'
+checkcount 1 '(i=256)'
+
+
+rm -f $LDB_URL
diff --git a/source4/lib/ldb/tests/test-tdb.sh b/source4/lib/ldb/tests/test-tdb.sh
index 9c2f9cd7ba..470975e8b8 100755
--- a/source4/lib/ldb/tests/test-tdb.sh
+++ b/source4/lib/ldb/tests/test-tdb.sh
@@ -1,10 +1,12 @@
#!/bin/sh
-export LDB_URL="tdb://tdbtest.ldb"
+export LDB_URL="tdbtest.ldb"
rm -f tdbtest.ldb
. tests/test-generic.sh
. tests/test-extended.sh
+
+. tests/test-tdb-features.sh