From 77e52a4e2c4587785930491695486b2d8b26b509 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Sun, 24 Jul 2005 22:18:01 +0000 Subject: r8738: Test (using ejs!) the basic operation of the ldb modules. ejs seems to test this stuff very nicely! Andrew Bartlett (This used to be commit 325f6d24dfc285587bde9fea6eeaf136c2731eff) --- testprogs/ejs/ldb.js | 64 ++++++++++++++++++++++++++++++++++++++++++++++++---- 1 file changed, 60 insertions(+), 4 deletions(-) (limited to 'testprogs') diff --git a/testprogs/ejs/ldb.js b/testprogs/ejs/ldb.js index 819192b51e6..ea090a65b74 100755 --- a/testprogs/ejs/ldb.js +++ b/testprogs/ejs/ldb.js @@ -6,7 +6,7 @@ exec smbscript "$0" ${1+"$@"} var ldb = ldb_init(); - +var sys; function basic_tests(ldb) { println("Running basic tests"); @@ -53,16 +53,72 @@ x: 7 res = ldb.search("x=7"); assert(res.length == 1); assert(res[0].x.length == 2); + + /* Check a few things before we add modules */ + assert(res[0].objectGUID == undefined); + assert(res[0].createTimestamp == undefined); + assert(res[0].whenCreated == undefined); + +} +function setup_modules(ldb) +{ + ok = ldb.add(" +dn: @MODULES +@LIST: timestamps,objectguid,rdn_name +"); +} + +/* Test the basic operation of the timestamps,objectguid and name_rdn + modules */ + +function modules_test(ldb) +{ + println("Running modules tests"); + ok = ldb.add(" +dn: cn=x8,cn=test +objectClass: foo +x: 8 +"); + assert(ok); + + ok = ldb.add(" +dn: cn=x9,cn=test +objectClass: foo +x: 9 +"); + assert(ok); + + var res = ldb.search("x=8", NULL, ldb.SCOPE_DEFAULT); + assert(res[0].objectGUID != undefined); + assert(res[0].createTimestamp != undefined); + assert(res[0].whenCreated != undefined); + assert(res[0].name == "x8"); + + var res2 = ldb.search("x=9", NULL, ldb.SCOPE_DEFAULT); + assert(res2[0].objectGUID != undefined); + assert(res2[0].createTimestamp != undefined); + assert(res2[0].whenCreated != undefined); + assert(res2[0].name == "x9"); + + assert(res[0].objectGUID != res2[0].objectGUID); + } -sys_init(ldb); +sys = sys_init(); var dbfile = "test.ldb"; -ldb.unlink(dbfile); +sys.unlink(dbfile); var ok = ldb.connect("tdb://" + dbfile); assert(ok); basic_tests(ldb); -ldb.unlink(dbfile); +setup_modules(ldb); +ldb = ldb_init(); +var ok = ldb.connect("tdb://" + dbfile); +assert(ok); + +modules_test(ldb); + +sys.unlink(dbfile); return 0; -- cgit