From 7e671ae37f6c951d4db18c446eed52685200b2e0 Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 11 Sep 2008 16:47:45 +0200 Subject: rename swat => swat2, so that we don't conflict with samba3 metze (This used to be commit bf852a3dbeee8900fa36978f08a5cdceabcbd926) --- swat2/esptest/exception.esp | 32 +++++++++++ swat2/esptest/formtest.esp | 35 ++++++++++++ swat2/esptest/include.esp | 14 +++++ swat2/esptest/index.esp | 7 +++ swat2/esptest/ldb.esp | 36 ++++++++++++ swat2/esptest/loadparm.esp | 75 +++++++++++++++++++++++++ swat2/esptest/qooxdoo.esp | 133 ++++++++++++++++++++++++++++++++++++++++++++ swat2/esptest/registry.esp | 50 +++++++++++++++++ swat2/esptest/samr.esp | 36 ++++++++++++ swat2/esptest/session.esp | 53 ++++++++++++++++++ swat2/esptest/showvars.esp | 24 ++++++++ 11 files changed, 495 insertions(+) create mode 100644 swat2/esptest/exception.esp create mode 100644 swat2/esptest/formtest.esp create mode 100644 swat2/esptest/include.esp create mode 100644 swat2/esptest/index.esp create mode 100644 swat2/esptest/ldb.esp create mode 100644 swat2/esptest/loadparm.esp create mode 100644 swat2/esptest/qooxdoo.esp create mode 100644 swat2/esptest/registry.esp create mode 100644 swat2/esptest/samr.esp create mode 100644 swat2/esptest/session.esp create mode 100644 swat2/esptest/showvars.esp (limited to 'swat2/esptest') diff --git a/swat2/esptest/exception.esp b/swat2/esptest/exception.esp new file mode 100644 index 0000000000..ff28d6318e --- /dev/null +++ b/swat2/esptest/exception.esp @@ -0,0 +1,32 @@ +<% page_header("columns", "ESP Exception test", "esptest"); + include("/scripting/forms.js"); +%> + +

Samba4 exception test

+ + +<% +var f = FormObj("ExceptionTest", 0, 2); +f.submit[0] = "Generate Exception"; +f.submit[1] = "No Exception"; + +f.display(); + +if (request['REQUEST_METHOD'] == "POST") { + function TestFunction(arg1, arg2) { + return "OK"; + } + + if (form['submit'] == "Generate Exception") { + write("I expect you to die Mr Bond!
\n"); + TestFunction("foo"); + } else { + write("no exception
\n"); + TestFunction("foo", "bar"); + } +} +%> + +and here is some filler text ... + +<% page_footer(); %> diff --git a/swat2/esptest/formtest.esp b/swat2/esptest/formtest.esp new file mode 100644 index 0000000000..2310849895 --- /dev/null +++ b/swat2/esptest/formtest.esp @@ -0,0 +1,35 @@ +<% page_header("columns", "ESP Form Test", "esptest"); + include("/scripting/forms.js"); +%> + +<% +var f = FormObj("FormTest", 3, 2); +f.element[0].label = "First Name"; +f.element[0].name = "firstName"; +f.element[0].value = form['firstName']; +f.element[1].label = "Last Name"; +f.element[1].name = "lastName"; +f.element[1].value = form['lastName']; +f.element[2].label = "Color"; +f.element[2].type = "select"; +f.element[2].list = new Array("Red", "Green", "Blue", "Yellow"); +f.element[2].value = form['Color']; +f.submit[0] = "OK"; +f.submit[1] = "Cancel"; + +f.display(); + +<% + /* if its a post then the user has filled in the form, so + report the values + */ + if (form['submit'] == "OK") { +%> + You chose firstName=@@form['firstName'] lastName=@@form['lastName']

+ +<% + simple_table(form); + } +%> + +<% page_footer(); %> diff --git a/swat2/esptest/include.esp b/swat2/esptest/include.esp new file mode 100644 index 0000000000..5d558d59dc --- /dev/null +++ b/swat2/esptest/include.esp @@ -0,0 +1,14 @@ +<% page_header("columns", "ESP Include Test", "esptest"); %> + +including /scripting/test.ejs

+<% include("/scripting/test.ejs"); %> +calling a function from test.ejs ...

+<% showArray("request", request); %> + +including /scripting/test.esp

+<% include /scripting/test.esp %> +calling a function from test.esp ...

+<% res = testfn('foo'); %> +result is: @@res + +<% page_footer(); %> diff --git a/swat2/esptest/index.esp b/swat2/esptest/index.esp new file mode 100644 index 0000000000..663f82c599 --- /dev/null +++ b/swat2/esptest/index.esp @@ -0,0 +1,7 @@ +<% page_header("columns", "ESP Tests", "esptest"); %> + +

ESP Test functions

+ +Please select a menu item from the selection on the left + +<% page_footer(); %> diff --git a/swat2/esptest/ldb.esp b/swat2/esptest/ldb.esp new file mode 100644 index 0000000000..cf2725fbcf --- /dev/null +++ b/swat2/esptest/ldb.esp @@ -0,0 +1,36 @@ +<% page_header("columns", "ESP ldb test", "esptest"); %> + +

Samba4 ldb test

+ +

An attribute constrained search

+ +<% +var lp = loadparm_init(); +var dbfile = lp.get("sam database"); +var attrs = new Array("name", "dnsDomain", "objectSid", "dn"); +var ldb = ldb_init(); +ldb.session_info = session.authinfo.session_info; + +var ok = ldb.connect(dbfile); +assert(ok); + +res = ldb.search("(objectClass=domain)", NULL, ldb.SCOPE_DEFAULT, attrs); +multi_table(res, "dn"); +%> + +

An unconstrained search

+ +<% +res = ldb.search("(objectClass=user)"); +multi_table(res, "dn"); +%> + +

A search with bad arguments

+ +<% +res = ldb.search("=blah", "foo"); +%> + +all done + +<% page_footer() %> diff --git a/swat2/esptest/loadparm.esp b/swat2/esptest/loadparm.esp new file mode 100644 index 0000000000..9581af0262 --- /dev/null +++ b/swat2/esptest/loadparm.esp @@ -0,0 +1,75 @@ +<% page_header("columns", "ESP loadparm test", "esptest" ); + include("/scripting/forms.js"); +%> + +

Samba4 loadparm test

+ +<% +lp = loadparm_init(); + +var f = FormObj("LoadparmTest", 2, 1); +f.element[0].label = "Share"; +f.element[1].label = "Parameter"; +f.submit[0] = "OK"; + +f.display(); + +function stringVar(v) { + var type = typeof(v); + var ret = ""; + if (type == "object") { + for (val in v) { + ret = ret + " " + v[val]; + } + } else { + ret = ret + v; + } + return ret; +} + +function showValue(name, v) { + write("parameter:" + name + "
\n"); + write("Type is: " + typeof(v) + "
\n"); + write("Value is: " + stringVar(v) + "

\n"); +} + + +if (request['REQUEST_METHOD'] == "POST") { + /* if they cancelled then take them back to the list of tests */ + if (form['submit'] == "Cancel") { + redirect("/"); + } + + var v; + + share = form['Share']; + name = form['Parameter']; + if (share && name) { + v = lp.get(share, name); + } else if (name) { + v = lp.get(name); + } + + showValue(name, v); +} +%> + +Here are some commonly used parameters:

+ +<% +showValue("defined services", lp.services()); + +function showParameter(name) { + showValue(name, lp.get(name)); +} + +showParameter("server services"); +showParameter("netbios name"); +showParameter("security"); +showParameter("workgroup"); +showParameter("log level"); +showParameter("server signing"); +showParameter("interfaces"); +%> + +<% page_footer(); %> diff --git a/swat2/esptest/qooxdoo.esp b/swat2/esptest/qooxdoo.esp new file mode 100644 index 0000000000..554a4e90d5 --- /dev/null +++ b/swat2/esptest/qooxdoo.esp @@ -0,0 +1,133 @@ +<% +/******************************/ +/* server side AJAJ functions */ +libinclude("server_call.js"); + +/* this is a call that the client js code can make - it just adds + some more elements to the passed object, then returns the object */ +function testfunc(x) { + var sys = sys_init(); + x.nttime = sys.nttime(); + x.timestring = sys.httptime(x.nttime); + return x; +} + +/* register a call for clients to make */ +var call = servCallObj(); +call.add('testfunc', testfunc); + +/* run the function that was asked for */ +call.run(); + + /***********************/ + /* now the main page */ + page_header("columns", "ESP qooxdoo test", "esptest"); +%> + + + + +

Samba4 qooxdoo test

+ + + + +
+ +<% page_footer(); %> diff --git a/swat2/esptest/registry.esp b/swat2/esptest/registry.esp new file mode 100644 index 0000000000..efdfefc37e --- /dev/null +++ b/swat2/esptest/registry.esp @@ -0,0 +1,50 @@ +<% + page_header("columns", "ESP registry edit", "esptest"); +%> + + + + + +

Registry Editor

+ + + +
+ +<% page_footer(); %> diff --git a/swat2/esptest/samr.esp b/swat2/esptest/samr.esp new file mode 100644 index 0000000000..a60a02e7c8 --- /dev/null +++ b/swat2/esptest/samr.esp @@ -0,0 +1,36 @@ +<% page_header("columns", "ESP samr test", "esptest"); + + libinclude("base.js"); + libinclude("samr.js"); +%> + +

Samba4 samr rpc test

+ +<% +var conn = samr_init(); +var binding = "ncalrpc:"; +status = conn.connect(binding); +check_status_ok(status); + +handle = samrConnect(conn); + +domains = samrEnumDomains(conn, handle); + +for (i=0;iDomain " + domains[i].name + "\n"); + sid = samrLookupDomain(conn, handle, domains[i].name); + dom_handle = samrOpenDomain(conn, handle, sid); + users = samrEnumDomainUsers(conn, dom_handle); + samrFillUserInfo(conn, dom_handle, users, 3); + if (users.length == 0) { + write("no users in domain
\n"); + } else { + multi_table(users, "name"); + } + samrClose(conn, dom_handle); +} + +%> + + +<% page_footer(); %> diff --git a/swat2/esptest/session.esp b/swat2/esptest/session.esp new file mode 100644 index 0000000000..6213dde62f --- /dev/null +++ b/swat2/esptest/session.esp @@ -0,0 +1,53 @@ +<% page_header("columns", "ESP session test", "esptest"); + include("/scripting/forms.js"); +%> + +

Samba4 session test

+ +<% +var f = FormObj("SessionTest", 3, 4); +f.element[0].label = "Name"; +f.element[1].label = "Value"; +f.element[2].label = "Timeout"; +f.submit[0] = "Append"; +f.submit[1] = "Reset"; +f.submit[2] = "Destroy"; +f.submit[3] = "Cancel"; + +f.display(); + + /* if its a post then the user has filled in the form, so + report the values + */ +if (request['REQUEST_METHOD'] == "POST") { + /* if they cancelled then take them back to the list of tests */ + if (form['submit'] == "Cancel") { + redirect("/"); + } + + name = form['Name']; + value = form['Value']; + timeout = form['Timeout']; + + if (timeout) { + useSession(timeout); + } + + if (form['submit'] == "Reset" && name) { + session[name] = null; + } + + if (form['submit'] == "Append" && name) { + session[name] = "" + session[name] + value; + } + + if (form['submit'] == "Destroy") { + destroySession(); + } +} + +simple_table(session); +write("SessionId=" + request['SESSION_ID'] + "
\n"); +%> + +<% page_footer(); %> diff --git a/swat2/esptest/showvars.esp b/swat2/esptest/showvars.esp new file mode 100644 index 0000000000..dc55b1e58b --- /dev/null +++ b/swat2/esptest/showvars.esp @@ -0,0 +1,24 @@ +<% page_header("columns", "ESP standard variables test", "esptest"); %> + +

Samba4 showvars test

+ +<% + function showArray(name, array) { + write("

Array: " + name + "

\n"); + if (array == undefined) { + write("undefined
\n"); + } else { + simple_table(array); + } + } + + showArray("headers", headers); + showArray("application", application); + showArray("cookies", cookies); + showArray("files", files); + showArray("request", request); + showArray("server", server); + showArray("session", session); +%> + +<% page_footer(); %> -- cgit