ldb: make ldb a top level library for Samba 4.0
[kai/samba-autobuild/.git] / lib / ldb / tests / test-controls.sh
1 #!/bin/sh
2
3 if [ -n "$TEST_DATA_PREFIX" ]; then
4         LDB_URL="$TEST_DATA_PREFIX/tdbtest.ldb"
5 else
6         LDB_URL="tdbtest.ldb"
7 fi
8 export LDB_URL
9
10 PATH=bin:$PATH
11 export PATH
12
13 rm -f $LDB_URL*
14
15 echo "LDB_URL: $LDB_URL"
16 cat <<EOF | $VALGRIND ldbadd || exit 1
17 dn: @MODULES
18 @LIST: sample
19 EOF
20
21 cat <<EOF | $VALGRIND ldbadd || exit 1
22 dn: dc=bar
23 dc: bar
24 someThing: someThingElse
25 EOF
26
27 $VALGRIND ldbsearch "(touchedBy=sample)" | grep "touchedBy: sample" || exit 1
28 # This action are expected to fails because the sample module return an error when presented the relax control
29
30 cat <<EOF | $VALGRIND ldbadd --controls "relax:0" && exit 1
31 dn: dc=foobar
32 dc: foobar
33 someThing: someThingElse
34 EOF
35
36 cat <<EOF | $VALGRIND ldbmodify --controls "relax:0" && exit 1
37 dn: dc=bar
38 changetype: modify
39 replace someThing
40 someThing: someThingElseBetter
41 EOF
42
43 $VALGRIND ldbsearch --controls "bypassoperational:0" >/dev/null 2>&1 || exit 1
44
45 set