annotate scripts/test.luan @ 1688:5eb985d1411f

'http/serve.luan' now allows overriding port
author Fox
date Sat, 11 Jun 2022 21:14:19 +0200
parents 82415c9c0015
children b82767112d8e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
693
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
1 local Binary = require "luan:Binary.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
2 local Html = require "luan:Html.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
3 local Io = require "luan:Io.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
4 local Luan = require "luan:Luan.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
5 local Math = require "luan:Math.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
6 local Package = require "luan:Package.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
7 local String = require "luan:String.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
8 local Table = require "luan:Table.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
9 local Thread = require "luan:Thread.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
10 local Time = require "luan:Time.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
11 local Http = require "luan:http/Http.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
12 local Http_test = require "luan:http/Http_test.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
13 local Server = require "luan:http/Server.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
14 local Lucene = require "luan:lucene/Lucene.luan"
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
15 local Mail = require "luan:mail/Mail.luan"
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
16
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
17 local error = Luan.error
554
18504c41b0be move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents: 548
diff changeset
18 local range = Luan.range or error()
18504c41b0be move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents: 548
diff changeset
19 local trim = String.trim or error()
18504c41b0be move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents: 548
diff changeset
20 local find = String.find or error()
18504c41b0be move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents: 548
diff changeset
21 local init = Http_test.init or error()
18504c41b0be move debug() to Io and remove Debug module;
Franklin Schmidt <fschmidt@gmail.com>
parents: 548
diff changeset
22 local get_page = Http_test.get_page or error()
1270
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
23 local run_page = Http_test.run_page or error()
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
24
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
25
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
26 local function print(...)
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
27 Io.print_to(Io.stderr,...)
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
28 end
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
29
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
30 local page
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
31
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
32 init()
1152
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
33 Http.request.parameters.code = "require('luan:Io.luan').print 'hi'"
1270
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
34 page = run_page(require("luan:http/tools/Run.luan").respond)
539
473e456444ff Remove object-oriented primitive methods for string and binary
Franklin Schmidt <fschmidt@gmail.com>
parents: 519
diff changeset
35 trim(page) == "hi" or error "failed"
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
36
1369
709f7498a363 change Lucene.index() and add Lucene.recover()
Franklin Schmidt <fschmidt@gmail.com>
parents: 1270
diff changeset
37 --[[
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
38 init()
1152
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
39 Http.request.parameters.cmd = "'ab'..'cd'"
1270
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
40 page = run_page(require("luan:http/tools/Shell.luan").respond)
539
473e456444ff Remove object-oriented primitive methods for string and binary
Franklin Schmidt <fschmidt@gmail.com>
parents: 519
diff changeset
41 find(page,"abcd") or error "failed"
1369
709f7498a363 change Lucene.index() and add Lucene.recover()
Franklin Schmidt <fschmidt@gmail.com>
parents: 1270
diff changeset
42 ]]
321
7f7708e8fdd4 remove import statement
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 308
diff changeset
43
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
44 -- lucene
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
45
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
46 local this_file = Io.schemes.file(Luan.arg[0])
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
47 local this_dir = this_file.parent()
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
48 local lucene_dir = this_dir.parent().child("build").child("lucene_test")
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
49 --print(lucene_dir.to_string())
1369
709f7498a363 change Lucene.index() and add Lucene.recover()
Franklin Schmidt <fschmidt@gmail.com>
parents: 1270
diff changeset
50 local db = Lucene.index(lucene_dir)
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
51 db.delete_all()
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
52
693
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
53 local Web_search = require "luan:lucene/Web_search.luan"
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
54 local web_search = Web_search.of(db)
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
55
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
56 init()
505
7bc63886d4f2 web page modules now return a function
Franklin Schmidt <fschmidt@gmail.com>
parents: 503
diff changeset
57 web_search()
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
58
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
59 init()
1152
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
60 Http.request.parameters.query = ""
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
61 Http.request.parameters.rows = "100"
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
62 Http.request.parameters.sort = ""
505
7bc63886d4f2 web page modules now return a function
Franklin Schmidt <fschmidt@gmail.com>
parents: 503
diff changeset
63 web_search()
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
64
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
65
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
66 -- website
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
67
693
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
68 function Io.schemes.site(path)
ca169567ce07 module URIs must now include ".luan"
Franklin Schmidt <fschmidt@gmail.com>
parents: 563
diff changeset
69 return Io.uri( "file:../website/src"..path )
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
70 end
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
71
1369
709f7498a363 change Lucene.index() and add Lucene.recover()
Franklin Schmidt <fschmidt@gmail.com>
parents: 1270
diff changeset
72 --[[
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
73 init(); get_page "/"
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
74 init(); get_page "/docs.html"
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
75 init(); get_page "/tutorial.html"
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
76 init(); get_page "/pil.html"
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
77 init(); get_page "/manual.html"
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
78 init(); get_page "/diff.html"
1369
709f7498a363 change Lucene.index() and add Lucene.recover()
Franklin Schmidt <fschmidt@gmail.com>
parents: 1270
diff changeset
79 ]]
1270
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
80 init(); get_page "/examples/hi.html"
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
81 init(); get_page "/examples/hi2.html"
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
82 init(); get_page "/examples/shell.html"
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
83
503
92c3d22745b8 make _ENV optional
Franklin Schmidt <fschmidt@gmail.com>
parents: 497
diff changeset
84 init()
1152
21d157b153fe change http parameters interface
Franklin Schmidt <fschmidt@gmail.com>
parents: 797
diff changeset
85 Http.request.parameters.name = "bob"
1270
d410747a671a fix scripts/test.luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 1269
diff changeset
86 page = get_page "/examples/hi2.html"
539
473e456444ff Remove object-oriented primitive methods for string and binary
Franklin Schmidt <fschmidt@gmail.com>
parents: 519
diff changeset
87 find(page,"bob") or error "failed"
497
55f9f74f1e55 Http.request is now pure luan
Franklin Schmidt <fschmidt@gmail.com>
parents: 495
diff changeset
88
323
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
89
cd2924a1052c improve testing
fschmidt@gmail.com <fschmidt@gmail.com@21e917c8-12df-6dd8-5cb6-c86387c605b9>
parents: 321
diff changeset
90 print "done"