qwikdoc 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +5 -0
- data/.rspec +2 -0
- data/CHANGES +3 -0
- data/COPYING +340 -0
- data/Gemfile +3 -0
- data/README.md +10 -0
- data/Rakefile +10 -0
- data/TextFormattingRules +137 -0
- data/TextFormattingRules.ja +143 -0
- data/bin/qwikdoc +34 -0
- data/lib/qwik_doc.rb +15 -0
- data/lib/qwik_doc/hack.rb +184 -0
- data/qwikdoc.gemspec +26 -0
- data/spec/qwik_doc_spec.rb +305 -0
- data/spec/spec_helper.rb +12 -0
- data/vendor/qwik/Makefile +63 -0
- data/vendor/qwik/Rakefile +17 -0
- data/vendor/qwik/act-aa.rb +83 -0
- data/vendor/qwik/act-archive.rb +386 -0
- data/vendor/qwik/act-attach.rb +304 -0
- data/vendor/qwik/act-backup.rb +236 -0
- data/vendor/qwik/act-basic.rb +325 -0
- data/vendor/qwik/act-book.rb +161 -0
- data/vendor/qwik/act-calc.rb +371 -0
- data/vendor/qwik/act-charset.rb +251 -0
- data/vendor/qwik/act-christel.rb +112 -0
- data/vendor/qwik/act-chronology.rb +149 -0
- data/vendor/qwik/act-code.rb +155 -0
- data/vendor/qwik/act-comment.rb +554 -0
- data/vendor/qwik/act-config.rb +49 -0
- data/vendor/qwik/act-counter.rb +125 -0
- data/vendor/qwik/act-day.rb +96 -0
- data/vendor/qwik/act-describe.rb +135 -0
- data/vendor/qwik/act-diary.rb +109 -0
- data/vendor/qwik/act-edit.rb +317 -0
- data/vendor/qwik/act-embed-html.rb +296 -0
- data/vendor/qwik/act-emode.rb +150 -0
- data/vendor/qwik/act-event.rb +187 -0
- data/vendor/qwik/act-file.rb +303 -0
- data/vendor/qwik/act-files.rb +771 -0
- data/vendor/qwik/act-getpass.rb +295 -0
- data/vendor/qwik/act-history.rb +136 -0
- data/vendor/qwik/act-html.rb +204 -0
- data/vendor/qwik/act-httpauth.rb +147 -0
- data/vendor/qwik/act-include.rb +142 -0
- data/vendor/qwik/act-interwiki.rb +189 -0
- data/vendor/qwik/act-isearch.rb +109 -0
- data/vendor/qwik/act-keywords.rb +137 -0
- data/vendor/qwik/act-lang.rb +81 -0
- data/vendor/qwik/act-license.rb +63 -0
- data/vendor/qwik/act-list.rb +287 -0
- data/vendor/qwik/act-login.rb +410 -0
- data/vendor/qwik/act-logout.rb +60 -0
- data/vendor/qwik/act-mail.rb +159 -0
- data/vendor/qwik/act-map.rb +292 -0
- data/vendor/qwik/act-md5.rb +42 -0
- data/vendor/qwik/act-mdlb.rb +741 -0
- data/vendor/qwik/act-media.rb +416 -0
- data/vendor/qwik/act-member.rb +157 -0
- data/vendor/qwik/act-menu.rb +142 -0
- data/vendor/qwik/act-metadata.rb +323 -0
- data/vendor/qwik/act-mlsubmitform.rb +49 -0
- data/vendor/qwik/act-monitor.rb +167 -0
- data/vendor/qwik/act-new.rb +418 -0
- data/vendor/qwik/act-pagelist.rb +248 -0
- data/vendor/qwik/act-password.rb +145 -0
- data/vendor/qwik/act-plan.rb +210 -0
- data/vendor/qwik/act-povray.rb +230 -0
- data/vendor/qwik/act-presen.rb +380 -0
- data/vendor/qwik/act-redirect.rb +133 -0
- data/vendor/qwik/act-ring.rb +1071 -0
- data/vendor/qwik/act-rrefs.rb +255 -0
- data/vendor/qwik/act-ruby.rb +116 -0
- data/vendor/qwik/act-sample.rb +170 -0
- data/vendor/qwik/act-save.rb +295 -0
- data/vendor/qwik/act-schedule.rb +374 -0
- data/vendor/qwik/act-search.rb +180 -0
- data/vendor/qwik/act-searchwords.rb +51 -0
- data/vendor/qwik/act-sendpass.rb +83 -0
- data/vendor/qwik/act-site.rb +89 -0
- data/vendor/qwik/act-sitebackup.rb +419 -0
- data/vendor/qwik/act-sitelog.rb +118 -0
- data/vendor/qwik/act-smil.rb +299 -0
- data/vendor/qwik/act-status.rb +220 -0
- data/vendor/qwik/act-style.rb +608 -0
- data/vendor/qwik/act-table.rb +263 -0
- data/vendor/qwik/act-tableform.rb +241 -0
- data/vendor/qwik/act-tag.rb +103 -0
- data/vendor/qwik/act-text.rb +70 -0
- data/vendor/qwik/act-textarea.rb +164 -0
- data/vendor/qwik/act-theme.rb +346 -0
- data/vendor/qwik/act-toc.rb +112 -0
- data/vendor/qwik/act-typekey.rb +198 -0
- data/vendor/qwik/act-under-const.rb +94 -0
- data/vendor/qwik/act-webservice.rb +321 -0
- data/vendor/qwik/act-wema.rb +558 -0
- data/vendor/qwik/act-wysiwyg.rb +238 -0
- data/vendor/qwik/action.rb +325 -0
- data/vendor/qwik/autoreload.rb +98 -0
- data/vendor/qwik/bench-bench.rb +28 -0
- data/vendor/qwik/bench-emode.rb +47 -0
- data/vendor/qwik/bench-format-xml.rb +70 -0
- data/vendor/qwik/bench-large-table.rb +62 -0
- data/vendor/qwik/bench-md5.rb +14 -0
- data/vendor/qwik/bench-module-session.rb +19 -0
- data/vendor/qwik/bench-page.rb +50 -0
- data/vendor/qwik/bench-s-md5.rb +28 -0
- data/vendor/qwik/bench-session.rb +25 -0
- data/vendor/qwik/bench-textformat.rb +31 -0
- data/vendor/qwik/catalog-factory.rb +91 -0
- data/vendor/qwik/catalog-ja.rb +479 -0
- data/vendor/qwik/catalog-ml-ja.rb +145 -0
- data/vendor/qwik/check-act-monitor.rb +112 -0
- data/vendor/qwik/check-act-monitor2.rb +46 -0
- data/vendor/qwik/check-act-theme.rb +27 -0
- data/vendor/qwik/check-event.rb +112 -0
- data/vendor/qwik/check-event2.rb +55 -0
- data/vendor/qwik/check-htree-rexml.rb +77 -0
- data/vendor/qwik/check-htree.rb +51 -0
- data/vendor/qwik/check-libxml.rb +135 -0
- data/vendor/qwik/check-many-pages.rb +47 -0
- data/vendor/qwik/check-monitor.rb +33 -0
- data/vendor/qwik/check-observer.rb +67 -0
- data/vendor/qwik/check-server.rb +61 -0
- data/vendor/qwik/check-uuencode.rb +33 -0
- data/vendor/qwik/check-webdav.rb +65 -0
- data/vendor/qwik/check-xml-xpath.rb +27 -0
- data/vendor/qwik/common-backtrace.rb +94 -0
- data/vendor/qwik/common-basic.rb +111 -0
- data/vendor/qwik/common-condition.rb +142 -0
- data/vendor/qwik/common-error.rb +48 -0
- data/vendor/qwik/common-gettext.rb +50 -0
- data/vendor/qwik/common-javascript.rb +45 -0
- data/vendor/qwik/common-notice.rb +132 -0
- data/vendor/qwik/common-plain.rb +105 -0
- data/vendor/qwik/common-plugin.rb +111 -0
- data/vendor/qwik/common-res.rb +76 -0
- data/vendor/qwik/common-resolve.rb +92 -0
- data/vendor/qwik/common-send.rb +171 -0
- data/vendor/qwik/common-session.rb +139 -0
- data/vendor/qwik/common-surface.rb +261 -0
- data/vendor/qwik/common-url.rb +90 -0
- data/vendor/qwik/compat/Makefile +12 -0
- data/vendor/qwik/compat/add_load_path.rb +1 -0
- data/vendor/qwik/config.rb +299 -0
- data/vendor/qwik/db-b-backup.rb +142 -0
- data/vendor/qwik/db-backup.rb +184 -0
- data/vendor/qwik/db-berkeley.rb +306 -0
- data/vendor/qwik/db-filesystem.rb +305 -0
- data/vendor/qwik/db-indexer.rb +154 -0
- data/vendor/qwik/db-searchwords.rb +238 -0
- data/vendor/qwik/description-ja.rb +267 -0
- data/vendor/qwik/description.rb +256 -0
- data/vendor/qwik/dev-add-copyright.rb +23 -0
- data/vendor/qwik/dev-backup.rb +24 -0
- data/vendor/qwik/dev-bench.rb +175 -0
- data/vendor/qwik/dev-calctime.rb +52 -0
- data/vendor/qwik/dev-css-compressor.rb +60 -0
- data/vendor/qwik/dev-extract-catalog.rb +102 -0
- data/vendor/qwik/dev-js-compressor.rb +73 -0
- data/vendor/qwik/dev-release.rb +235 -0
- data/vendor/qwik/dev-replace.rb +353 -0
- data/vendor/qwik/dev-sendmail.rb +25 -0
- data/vendor/qwik/farm.rb +283 -0
- data/vendor/qwik/gettext.rb +56 -0
- data/vendor/qwik/group-cond.rb +157 -0
- data/vendor/qwik/group-config.rb +247 -0
- data/vendor/qwik/group-confirm.rb +147 -0
- data/vendor/qwik/group-db.rb +326 -0
- data/vendor/qwik/group-mail.rb +195 -0
- data/vendor/qwik/group-member.rb +307 -0
- data/vendor/qwik/group-sendmail.rb +231 -0
- data/vendor/qwik/group-site.rb +374 -0
- data/vendor/qwik/group-sweep.rb +63 -0
- data/vendor/qwik/group.rb +157 -0
- data/vendor/qwik/helper.rb +6 -0
- data/vendor/qwik/html-generator.rb +104 -0
- data/vendor/qwik/html-to-wabisabi.rb +149 -0
- data/vendor/qwik/htree-diff.rb +87 -0
- data/vendor/qwik/htree-format-xml.rb +57 -0
- data/vendor/qwik/htree-generator.rb +144 -0
- data/vendor/qwik/htree-get.rb +251 -0
- data/vendor/qwik/htree-html-generator.rb +179 -0
- data/vendor/qwik/htree-template.rb +263 -0
- data/vendor/qwik/htree-to-wabisabi.rb +171 -0
- data/vendor/qwik/loadlib.rb +79 -0
- data/vendor/qwik/logger.rb +115 -0
- data/vendor/qwik/mail-body.rb +171 -0
- data/vendor/qwik/mail-header.rb +474 -0
- data/vendor/qwik/mail-multipart.rb +193 -0
- data/vendor/qwik/mail-parse.rb +147 -0
- data/vendor/qwik/mail.rb +341 -0
- data/vendor/qwik/mailaddress.rb +83 -0
- data/vendor/qwik/mdlb-model.rb +81 -0
- data/vendor/qwik/mdlb-sample.rb +324 -0
- data/vendor/qwik/ml-catalog-factory.rb +27 -0
- data/vendor/qwik/ml-exception.rb +15 -0
- data/vendor/qwik/ml-generator.rb +28 -0
- data/vendor/qwik/ml-gettext.rb +137 -0
- data/vendor/qwik/ml-logger.rb +82 -0
- data/vendor/qwik/ml-memory.rb +65 -0
- data/vendor/qwik/ml-msg-validator.rb +86 -0
- data/vendor/qwik/ml-processor.rb +609 -0
- data/vendor/qwik/ml-quickml-server.rb +122 -0
- data/vendor/qwik/ml-sendmail.rb +0 -0
- data/vendor/qwik/ml-server.rb +107 -0
- data/vendor/qwik/ml-session.rb +348 -0
- data/vendor/qwik/ml-sweeper.rb +101 -0
- data/vendor/qwik/mock-logger.rb +65 -0
- data/vendor/qwik/mock-sendmail.rb +78 -0
- data/vendor/qwik/mock-socket.rb +82 -0
- data/vendor/qwik/modulobe.rb +406 -0
- data/vendor/qwik/mongrel-server.rb +72 -0
- data/vendor/qwik/page-files.rb +249 -0
- data/vendor/qwik/page-generate.rb +82 -0
- data/vendor/qwik/page-get.rb +262 -0
- data/vendor/qwik/page-images.rb +168 -0
- data/vendor/qwik/page-put.rb +128 -0
- data/vendor/qwik/page-rrefs.rb +154 -0
- data/vendor/qwik/page-title.rb +0 -0
- data/vendor/qwik/page-wikidb.rb +234 -0
- data/vendor/qwik/page.rb +67 -0
- data/vendor/qwik/pages.rb +444 -0
- data/vendor/qwik/parse-plugin.rb +249 -0
- data/vendor/qwik/parser-emode.rb +116 -0
- data/vendor/qwik/parser-inline.rb +273 -0
- data/vendor/qwik/parser.rb +350 -0
- data/vendor/qwik/password.rb +183 -0
- data/vendor/qwik/periodic.rb +79 -0
- data/vendor/qwik/qp.rb +56 -0
- data/vendor/qwik/qwik-service.rb +341 -0
- data/vendor/qwik/qwik.rb +5 -0
- data/vendor/qwik/qwikweb-adduser.rb +34 -0
- data/vendor/qwik/qwikweb-catalog-validator.rb +110 -0
- data/vendor/qwik/qwikweb-incgen.rb +28 -0
- data/vendor/qwik/qwikweb-makesite.rb +41 -0
- data/vendor/qwik/qwikweb-server.rb +44 -0
- data/vendor/qwik/qwikweb-showpassword.rb +26 -0
- data/vendor/qwik/qwikweb-watchlog.rb +67 -0
- data/vendor/qwik/request-path.rb +304 -0
- data/vendor/qwik/request-ua.rb +76 -0
- data/vendor/qwik/request-webrick.rb +81 -0
- data/vendor/qwik/request.rb +91 -0
- data/vendor/qwik/resolve-tdiary.rb +292 -0
- data/vendor/qwik/resolve.rb +121 -0
- data/vendor/qwik/response.rb +228 -0
- data/vendor/qwik/server-memory.rb +57 -0
- data/vendor/qwik/server-webrick.rb +102 -0
- data/vendor/qwik/server.rb +252 -0
- data/vendor/qwik/site-config.rb +149 -0
- data/vendor/qwik/site-db.rb +136 -0
- data/vendor/qwik/site-event.rb +162 -0
- data/vendor/qwik/site-files.rb +86 -0
- data/vendor/qwik/site-group.rb +103 -0
- data/vendor/qwik/site-index.rb +47 -0
- data/vendor/qwik/site-log.rb +64 -0
- data/vendor/qwik/site-member.rb +230 -0
- data/vendor/qwik/site-monitor.rb +97 -0
- data/vendor/qwik/site-pages.rb +62 -0
- data/vendor/qwik/site-plan.rb +139 -0
- data/vendor/qwik/site-report.rb +282 -0
- data/vendor/qwik/site-resolve.rb +230 -0
- data/vendor/qwik/site-rrefs.rb +18 -0
- data/vendor/qwik/site-search.rb +180 -0
- data/vendor/qwik/site-timeline.rb +153 -0
- data/vendor/qwik/site-url.rb +189 -0
- data/vendor/qwik/site.rb +76 -0
- data/vendor/qwik/smil-time.rb +105 -0
- data/vendor/qwik/smtp-session.rb +331 -0
- data/vendor/qwik/template-generator.rb +149 -0
- data/vendor/qwik/template.rb +85 -0
- data/vendor/qwik/test-common.rb +10 -0
- data/vendor/qwik/test-ml-info.rb +225 -0
- data/vendor/qwik/test-module-ml.rb +142 -0
- data/vendor/qwik/test-module-path.rb +110 -0
- data/vendor/qwik/test-module-public.rb +70 -0
- data/vendor/qwik/test-module-server.rb +98 -0
- data/vendor/qwik/test-module-session.rb +264 -0
- data/vendor/qwik/test-module-suite.rb +91 -0
- data/vendor/qwik/test-ms-applemail.rb +59 -0
- data/vendor/qwik/test-ms-attach.rb +174 -0
- data/vendor/qwik/test-ms-basic.rb +40 -0
- data/vendor/qwik/test-ms-close.rb +35 -0
- data/vendor/qwik/test-ms-confirm.rb +75 -0
- data/vendor/qwik/test-ms-ignore-spam.rb +57 -0
- data/vendor/qwik/test-ms-japanese.rb +97 -0
- data/vendor/qwik/test-ms-jfilename.rb +82 -0
- data/vendor/qwik/test-ms-large.rb +58 -0
- data/vendor/qwik/test-ms-member.rb +103 -0
- data/vendor/qwik/test-ms-multipart.rb +84 -0
- data/vendor/qwik/test-ms-org.rb +129 -0
- data/vendor/qwik/test-ms-plan.rb +130 -0
- data/vendor/qwik/test-ms-post.rb +53 -0
- data/vendor/qwik/test-ms-quopri.rb +76 -0
- data/vendor/qwik/test-sub-quopri.rb +45 -0
- data/vendor/qwik/test-submit-base64.rb +59 -0
- data/vendor/qwik/test-submit-forward.rb +61 -0
- data/vendor/qwik/test-submit-html-mail.rb +52 -0
- data/vendor/qwik/test-submit-japanese.rb +135 -0
- data/vendor/qwik/test-submit-jfilename.rb +144 -0
- data/vendor/qwik/test-submit-uuencode.rb +71 -0
- data/vendor/qwik/test-suite-all.rb +8 -0
- data/vendor/qwik/test-suite-basic.rb +9 -0
- data/vendor/qwik/test-suite-ml.rb +9 -0
- data/vendor/qwik/test-typekey.rb +64 -0
- data/vendor/qwik/testunit.rb +45 -0
- data/vendor/qwik/tokenizer-inline.rb +294 -0
- data/vendor/qwik/tokenizer.rb +332 -0
- data/vendor/qwik/typekey.rb +160 -0
- data/vendor/qwik/util-basic.rb +135 -0
- data/vendor/qwik/util-charset.rb +332 -0
- data/vendor/qwik/util-css.rb +56 -0
- data/vendor/qwik/util-csv-tokenizer.rb +113 -0
- data/vendor/qwik/util-filename.rb +112 -0
- data/vendor/qwik/util-pathname.rb +202 -0
- data/vendor/qwik/util-pid.rb +58 -0
- data/vendor/qwik/util-safe.rb +67 -0
- data/vendor/qwik/util-sendmail.rb +273 -0
- data/vendor/qwik/util-string.rb +203 -0
- data/vendor/qwik/util-time.rb +125 -0
- data/vendor/qwik/util-webrick.rb +176 -0
- data/vendor/qwik/version.rb +11 -0
- data/vendor/qwik/wabisabi-basic.rb +163 -0
- data/vendor/qwik/wabisabi-diff.rb +130 -0
- data/vendor/qwik/wabisabi-format-xml.rb +310 -0
- data/vendor/qwik/wabisabi-generator.rb +262 -0
- data/vendor/qwik/wabisabi-index.rb +174 -0
- data/vendor/qwik/wabisabi-table.rb +212 -0
- data/vendor/qwik/wabisabi-template.rb +295 -0
- data/vendor/qwik/wabisabi-to-htree.rb +111 -0
- data/vendor/qwik/wabisabi-to-wiki.rb +690 -0
- data/vendor/qwik/wabisabi-traverse.rb +207 -0
- data/vendor/qwik/wabisabi-validator.rb +116 -0
- data/vendor/qwik/wabisabi.rb +5 -0
- metadata +416 -0
|
@@ -0,0 +1,353 @@
|
|
|
1
|
+
# Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
|
|
2
|
+
# This is free software with ABSOLUTELY NO WARRANTY.
|
|
3
|
+
# You can redistribute it and/or modify it under the terms of the GNU GPL 2.
|
|
4
|
+
|
|
5
|
+
require 'pp'
|
|
6
|
+
|
|
7
|
+
$LOAD_PATH << '..' unless $LOAD_PATH.include? '..'
|
|
8
|
+
require 'qwik/util-pathname'
|
|
9
|
+
|
|
10
|
+
def dummy_replace_line(line) # dummy
|
|
11
|
+
return line
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
def replace_line(line)
|
|
15
|
+
return line.gsub(/\$LOAD_PATH \<\< \'\.\.\'/) {
|
|
16
|
+
"$LOAD_PATH.unshift '..'"
|
|
17
|
+
}
|
|
18
|
+
end
|
|
19
|
+
|
|
20
|
+
def replace_content_by_line(content, dryrun)
|
|
21
|
+
replace = false
|
|
22
|
+
newcontent = ''
|
|
23
|
+
content.each {|line|
|
|
24
|
+
newline = replace_line(line)
|
|
25
|
+
if newline != line
|
|
26
|
+
yield
|
|
27
|
+
puts "-#{line}"
|
|
28
|
+
puts "+#{newline}"
|
|
29
|
+
replace = true
|
|
30
|
+
end
|
|
31
|
+
newline = line if dryrun # for debug
|
|
32
|
+
newcontent << newline
|
|
33
|
+
}
|
|
34
|
+
return replace, newcontent, dryrun
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def main
|
|
38
|
+
#dryrun = false
|
|
39
|
+
dryrun = true
|
|
40
|
+
|
|
41
|
+
#Dir.glob('test-sub-*.rb') {|fname|
|
|
42
|
+
|
|
43
|
+
last_fname = ''
|
|
44
|
+
|
|
45
|
+
Dir.glob('*.rb') {|fname|
|
|
46
|
+
next if fname == 'dev-replace.rb'
|
|
47
|
+
content = open(fname, 'rb') {|f| f.read }
|
|
48
|
+
|
|
49
|
+
replace, newcontent, dryrun = replace_content_by_line(content, dryrun) {
|
|
50
|
+
if last_fname != fname
|
|
51
|
+
puts "��#{fname}"
|
|
52
|
+
last_fname = fname
|
|
53
|
+
end
|
|
54
|
+
}
|
|
55
|
+
|
|
56
|
+
if replace
|
|
57
|
+
open("#{fname}.bak", 'wb') {|f|
|
|
58
|
+
f.print content # make backup
|
|
59
|
+
}
|
|
60
|
+
open(fname, 'wb') {|f|
|
|
61
|
+
f.print newcontent # make new content
|
|
62
|
+
}
|
|
63
|
+
end
|
|
64
|
+
}
|
|
65
|
+
end
|
|
66
|
+
main
|
|
67
|
+
|
|
68
|
+
=begin
|
|
69
|
+
|
|
70
|
+
OLD_BANNER = <<"EOS"
|
|
71
|
+
#
|
|
72
|
+
# Copyright (C) 2003-2006 Kouichirou Eto
|
|
73
|
+
# All rights reserved.
|
|
74
|
+
# This is free software with ABSOLUTELY NO WARRANTY.
|
|
75
|
+
#
|
|
76
|
+
# You can redistribute it and/or modify it under the terms of
|
|
77
|
+
# the GNU General Public License version 2.
|
|
78
|
+
#
|
|
79
|
+
EOS
|
|
80
|
+
|
|
81
|
+
NEW_BANNER = <<"EOS"
|
|
82
|
+
# Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
|
|
83
|
+
# This is free software with ABSOLUTELY NO WARRANTY.
|
|
84
|
+
# You can redistribute it and/or modify it under the terms of the GNU GPL 2.
|
|
85
|
+
EOS
|
|
86
|
+
|
|
87
|
+
def replace_line(line)
|
|
88
|
+
return line.gsub(OLD_BANNER) {
|
|
89
|
+
NEW_BANNER
|
|
90
|
+
}
|
|
91
|
+
end
|
|
92
|
+
|
|
93
|
+
def nureplace_line(line)
|
|
94
|
+
return line.gsub(%r|2003-2005|) {
|
|
95
|
+
"2003-2006"
|
|
96
|
+
}
|
|
97
|
+
end
|
|
98
|
+
|
|
99
|
+
def nu2replace_line(line)
|
|
100
|
+
return line.gsub(%r|c_relative_to_absolute|) {
|
|
101
|
+
"c_relative_to_root"
|
|
102
|
+
}
|
|
103
|
+
end
|
|
104
|
+
|
|
105
|
+
def nu3replace_line(line)
|
|
106
|
+
return line.gsub(%r|c_relative_to_full|) {
|
|
107
|
+
"c_relative_to_absolute"
|
|
108
|
+
}
|
|
109
|
+
end
|
|
110
|
+
|
|
111
|
+
def replace_line(line)
|
|
112
|
+
return line.gsub(%r|\$LOAD_PATH \<\< '\.\.' unless \$LOAD_PATH\.include\?\('\.\.'\)|) {
|
|
113
|
+
"$LOAD_PATH << '..' unless $LOAD_PATH.include? '..'"
|
|
114
|
+
}
|
|
115
|
+
end
|
|
116
|
+
|
|
117
|
+
def replace_line(line)
|
|
118
|
+
return line.gsub(%r|\$LOAD_PATH\.unshift 'compat' unless \$LOAD_PATH\.include\? 'compat'|) {
|
|
119
|
+
"$LOAD_PATH << 'compat' unless $LOAD_PATH.include? 'compat'"
|
|
120
|
+
}
|
|
121
|
+
end
|
|
122
|
+
|
|
123
|
+
def nu3_replace_line(line)
|
|
124
|
+
return line.gsub(%r|\$LOAD_PATH\.unshift\('\.\.\/\.\.\/compat'\) unless \$LOAD_PATH\.include\?\('\.\.\/\.\.\/compat'\)|) {
|
|
125
|
+
"$LOAD_PATH.unshift 'compat' unless $LOAD_PATH.include? 'compat'"
|
|
126
|
+
}
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
def nu2_replace_line(line)
|
|
130
|
+
str = "\$LOAD_PATH << '..' unless \$LOAD_PATH.include?('..')"
|
|
131
|
+
restr = Regexp.escape(str)
|
|
132
|
+
#puts restr
|
|
133
|
+
# \$LOAD_PATH\ <<\ '\.\.'\ unless\ \$LOAD_PATH\.include\?\('\.\.'\)
|
|
134
|
+
re = Regexp.compile(restr)
|
|
135
|
+
out = "\$LOAD_PATH << '..' unless \$LOAD_PATH.include? '..'"
|
|
136
|
+
return line.gsub(re) {
|
|
137
|
+
out
|
|
138
|
+
}
|
|
139
|
+
end
|
|
140
|
+
|
|
141
|
+
def nu_replace_line(line)
|
|
142
|
+
return line.gsub(%r|\$LOAD_PATH << \'\.\./\.\./lib\' unless \$LOAD_PATH\.include\?\('\.\./\.\./lib'|) {
|
|
143
|
+
"\$LOAD_PATH << '..' unless \$LOAD_PATH.include?('..'"
|
|
144
|
+
}
|
|
145
|
+
end
|
|
146
|
+
|
|
147
|
+
|
|
148
|
+
# ============================== souko
|
|
149
|
+
def nu_replace_line(line)
|
|
150
|
+
return line.gsub(/require \"t\/test\"/) {
|
|
151
|
+
"require \"qwik\/test-common\""
|
|
152
|
+
}
|
|
153
|
+
end
|
|
154
|
+
|
|
155
|
+
def nu2replace_line(line)
|
|
156
|
+
return line.gsub(/class TC\_/) {
|
|
157
|
+
'class Test'
|
|
158
|
+
}
|
|
159
|
+
end
|
|
160
|
+
|
|
161
|
+
def nu3replace_line(line)
|
|
162
|
+
return line.gsub(/if \$debug/) {
|
|
163
|
+
'if defined?($debug) && $debug'
|
|
164
|
+
}
|
|
165
|
+
end
|
|
166
|
+
|
|
167
|
+
def nu4replace_line(line)
|
|
168
|
+
return line.gsub(/assert_wiki/) {
|
|
169
|
+
'ok_wi'
|
|
170
|
+
}
|
|
171
|
+
end
|
|
172
|
+
|
|
173
|
+
def nu5replace_line(line)
|
|
174
|
+
return line.gsub(/assert_in\(/) {
|
|
175
|
+
'ok_in('
|
|
176
|
+
}
|
|
177
|
+
end
|
|
178
|
+
|
|
179
|
+
def nu6replace_line(line)
|
|
180
|
+
return line.gsub(/assert_xpath/) {
|
|
181
|
+
'ok_xp'
|
|
182
|
+
}
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
def nu7replace_line(line)
|
|
186
|
+
return line.gsub(/assert_equal/) {
|
|
187
|
+
'ok_eq'
|
|
188
|
+
}
|
|
189
|
+
end
|
|
190
|
+
|
|
191
|
+
def nu8replace_line(line)
|
|
192
|
+
return line.gsub(/require \"test\/unit\"/) {
|
|
193
|
+
"require \"qwik\/testunit\""
|
|
194
|
+
}
|
|
195
|
+
end
|
|
196
|
+
|
|
197
|
+
def nu9replace_line(line)
|
|
198
|
+
return line.gsub(/assert_xml/) {
|
|
199
|
+
'ok_in'
|
|
200
|
+
}
|
|
201
|
+
end
|
|
202
|
+
|
|
203
|
+
def nu10replace_line(line)
|
|
204
|
+
return line.gsub(/require \"qwik\/memory\"/) {
|
|
205
|
+
"require \"qwik\/server-memory\""
|
|
206
|
+
}
|
|
207
|
+
end
|
|
208
|
+
|
|
209
|
+
def nu11replace_line(line)
|
|
210
|
+
return line.gsub(/include TestQuickMLModule/) {
|
|
211
|
+
'include TestModuleML'
|
|
212
|
+
}
|
|
213
|
+
end
|
|
214
|
+
|
|
215
|
+
def nu12replace_line(line)
|
|
216
|
+
return line.gsub(/include TestMLSessionModule/) {
|
|
217
|
+
'include TestModuleML'
|
|
218
|
+
}
|
|
219
|
+
end
|
|
220
|
+
|
|
221
|
+
def nu13replace_line(line)
|
|
222
|
+
return line.gsub(/require \"qwik\/test-module-ms\"/) {
|
|
223
|
+
"require \"qwik/test-module-ml\""
|
|
224
|
+
}
|
|
225
|
+
end
|
|
226
|
+
|
|
227
|
+
def nu14replace_line(line)
|
|
228
|
+
return line.gsub(/user@e.com/) {
|
|
229
|
+
'bob@example.net'
|
|
230
|
+
}
|
|
231
|
+
end
|
|
232
|
+
|
|
233
|
+
def nu15replace_line(line)
|
|
234
|
+
return line.gsub(/Mail\.send_mail/) {
|
|
235
|
+
'Sendmail.send_mail'
|
|
236
|
+
}
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
def nu16replace_line(line)
|
|
240
|
+
return line.gsub(/class QuickML$/) {
|
|
241
|
+
'class Group'
|
|
242
|
+
}
|
|
243
|
+
end
|
|
244
|
+
|
|
245
|
+
def nu17replace_line(line)
|
|
246
|
+
return line.gsub(/QuickML::QuickML/) {
|
|
247
|
+
'QuickML::Group'
|
|
248
|
+
}
|
|
249
|
+
end
|
|
250
|
+
|
|
251
|
+
def nu18replace_line(line)
|
|
252
|
+
return line.gsub(/QuickML\./) {
|
|
253
|
+
"Group\."
|
|
254
|
+
}
|
|
255
|
+
end
|
|
256
|
+
|
|
257
|
+
def nu19replace_line(line)
|
|
258
|
+
return line.gsub(/require "qwik\/util-path"/) {
|
|
259
|
+
'require "qwik/util-pathname'
|
|
260
|
+
}
|
|
261
|
+
end
|
|
262
|
+
|
|
263
|
+
def nu20replace_line(line)
|
|
264
|
+
return line.gsub(/require "qwik\/util-pathname$/) {
|
|
265
|
+
'require "qwik\/util-pathname"'
|
|
266
|
+
}
|
|
267
|
+
end
|
|
268
|
+
|
|
269
|
+
def nu21replace_line(line)
|
|
270
|
+
return line.gsub(/require "qwik\\\/util-pathname"/) {
|
|
271
|
+
'require "qwik/util-pathname"'
|
|
272
|
+
}
|
|
273
|
+
end
|
|
274
|
+
|
|
275
|
+
def nu22replace_line(line)
|
|
276
|
+
return line.gsub(/Qwik::Config.new\(true\)/) {
|
|
277
|
+
'Qwik::Config.new(:debug=>true)'
|
|
278
|
+
}
|
|
279
|
+
end
|
|
280
|
+
|
|
281
|
+
def nu23replace_line(line)
|
|
282
|
+
if /\$debug/ =~ line
|
|
283
|
+
pp line
|
|
284
|
+
end
|
|
285
|
+
return line
|
|
286
|
+
end
|
|
287
|
+
|
|
288
|
+
def nu24replace_line(line)
|
|
289
|
+
return line.gsub(/\$debug/) {
|
|
290
|
+
'$test'
|
|
291
|
+
}
|
|
292
|
+
end
|
|
293
|
+
|
|
294
|
+
def nu25replace_line(line)
|
|
295
|
+
# return line.gsub(/charset='([\w]+)'/) {
|
|
296
|
+
# return line.gsub(/charset='([\w-]+)'/) {
|
|
297
|
+
#a = 'charset'
|
|
298
|
+
#a = 'filename'
|
|
299
|
+
#a = 'boundary'
|
|
300
|
+
#return line.gsub(/#{a}='([\w\.-]+)'/) {
|
|
301
|
+
|
|
302
|
+
return line.gsub(/; ([A-Za-z]+)='([\w \.-]+)'/) {
|
|
303
|
+
k = $1
|
|
304
|
+
v = $2
|
|
305
|
+
"; #{k}=\"#{v}\""
|
|
306
|
+
}
|
|
307
|
+
end
|
|
308
|
+
|
|
309
|
+
def nu27replace_line(line)
|
|
310
|
+
return line.gsub(%r|"../../lib"|) {
|
|
311
|
+
"'../../lib'"
|
|
312
|
+
}
|
|
313
|
+
end
|
|
314
|
+
|
|
315
|
+
def nu28replace_line(line)
|
|
316
|
+
return line if line.include?("\\")
|
|
317
|
+
return line.gsub(%r|""|) {
|
|
318
|
+
"''"
|
|
319
|
+
}
|
|
320
|
+
end
|
|
321
|
+
|
|
322
|
+
def nu29replace_line(line)
|
|
323
|
+
return line if line.include?("\\")
|
|
324
|
+
return line if line.include?('<')
|
|
325
|
+
return line if line.include?('>')
|
|
326
|
+
|
|
327
|
+
line = line.gsub(/\"(.*?)\"/) {
|
|
328
|
+
str = $1
|
|
329
|
+
ignore = %w(ascii section EOT)
|
|
330
|
+
if ignore.include?(str)
|
|
331
|
+
"\"#{str}\""
|
|
332
|
+
# elsif /\A[A-Za-z0-9\:\.\/_ |-]+\z/ =~ str
|
|
333
|
+
# elsif /\A[A-Za-z0-9\:\._ |-]+\z/ =~ str
|
|
334
|
+
# elsif /\A[A-Za-z0-9\@\:\._ |-]+\z/ =~ str
|
|
335
|
+
# elsif /\A[A-Za-z0-9\%\*\/\@\:\._ |-]+\z/ =~ str
|
|
336
|
+
# elsif /\A[A-Za-z0-9\%\*\/\@\:\._ |-]+\z/ =~ str
|
|
337
|
+
elsif /\A[A-Za-z0-9\,\%\*\/\@\:\._ \|-]+\z/ =~ str
|
|
338
|
+
"'#{str}'"
|
|
339
|
+
else
|
|
340
|
+
"\"#{str}\""
|
|
341
|
+
end
|
|
342
|
+
}
|
|
343
|
+
|
|
344
|
+
return line
|
|
345
|
+
end
|
|
346
|
+
|
|
347
|
+
def replace_line(line)
|
|
348
|
+
return line.gsub(%r|assert_text\(\'(.+)\', \'title\'\)|) {
|
|
349
|
+
"ok_title('#{$1}')"
|
|
350
|
+
}
|
|
351
|
+
end
|
|
352
|
+
|
|
353
|
+
=end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
|
|
2
|
+
# This is free software with ABSOLUTELY NO WARRANTY.
|
|
3
|
+
# You can redistribute it and/or modify it under the terms of the GNU GPL 2.
|
|
4
|
+
|
|
5
|
+
# You can send a mail using SMTP for checking the status.
|
|
6
|
+
|
|
7
|
+
$LOAD_PATH.unshift '..' unless $LOAD_PATH.include? '..'
|
|
8
|
+
require 'qwik/config'
|
|
9
|
+
require 'qwik/util-sendmail'
|
|
10
|
+
require 'qwik/qwik-mail'
|
|
11
|
+
|
|
12
|
+
def main
|
|
13
|
+
config = Qwik::Config.new
|
|
14
|
+
config.update(:smtp_host => '127.0.0.1', :smtp_port => '25')
|
|
15
|
+
mail = {
|
|
16
|
+
:from => 'etocom@gmail.com',
|
|
17
|
+
:to => 'etoeto@qwik.jp',
|
|
18
|
+
:subject => 'test',
|
|
19
|
+
:content => 'test desu.',
|
|
20
|
+
}
|
|
21
|
+
sendmail = Qwik::Sendmail.new('127.0.0.1', '25')
|
|
22
|
+
sendmail.send(mail)
|
|
23
|
+
end
|
|
24
|
+
|
|
25
|
+
main
|
data/vendor/qwik/farm.rb
ADDED
|
@@ -0,0 +1,283 @@
|
|
|
1
|
+
# -*- coding: shift_jis -*-
|
|
2
|
+
# Copyright (C) 2003-2006 Kouichirou Eto, All rights reserved.
|
|
3
|
+
# This is free software with ABSOLUTELY NO WARRANTY.
|
|
4
|
+
# You can redistribute it and/or modify it under the terms of the GNU GPL 2.
|
|
5
|
+
|
|
6
|
+
$LOAD_PATH.unshift '..' unless $LOAD_PATH.include? '..'
|
|
7
|
+
require 'qwik/site'
|
|
8
|
+
require 'qwik/util-pathname'
|
|
9
|
+
require 'qwik/util-time'
|
|
10
|
+
|
|
11
|
+
# $update_group_files = true
|
|
12
|
+
$update_group_files = false
|
|
13
|
+
|
|
14
|
+
module Qwik
|
|
15
|
+
# Bundle many sites to one object.
|
|
16
|
+
class Farm
|
|
17
|
+
def initialize(config, memory)
|
|
18
|
+
@config = config
|
|
19
|
+
@memory = memory
|
|
20
|
+
@logger = @memory[:logger]
|
|
21
|
+
@data_path = @config.sites_dir.path
|
|
22
|
+
@grave_path = @config.grave_dir.path
|
|
23
|
+
@top_sitename = @config.default_sitename
|
|
24
|
+
if $update_group_files
|
|
25
|
+
$update_group_files = false # Set before to do it.
|
|
26
|
+
update_group_files
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
|
|
30
|
+
def update_group_files
|
|
31
|
+
list().each {|sitename|
|
|
32
|
+
site = get_site(sitename)
|
|
33
|
+
site.member.update_group_files
|
|
34
|
+
}
|
|
35
|
+
end
|
|
36
|
+
|
|
37
|
+
def get_site(sitename)
|
|
38
|
+
sitepath = @data_path + sitename
|
|
39
|
+
|
|
40
|
+
# FIXME: Should we check the directory everytime?
|
|
41
|
+
if ! sitepath.directory? # At the first, check the directory.
|
|
42
|
+
return nil # No such site.
|
|
43
|
+
end
|
|
44
|
+
|
|
45
|
+
# Now, I am sure that we have the directory for the site.
|
|
46
|
+
# Create a new site object and return it.
|
|
47
|
+
return Site.new(@config, @memory, sitename)
|
|
48
|
+
end
|
|
49
|
+
alias exist? get_site
|
|
50
|
+
|
|
51
|
+
def get_top_site
|
|
52
|
+
return get_site(@top_sitename)
|
|
53
|
+
end
|
|
54
|
+
|
|
55
|
+
def list
|
|
56
|
+
return check_all_sites.sort
|
|
57
|
+
end
|
|
58
|
+
|
|
59
|
+
def close_all
|
|
60
|
+
list().each {|sitename|
|
|
61
|
+
site = self.get_site(sitename)
|
|
62
|
+
site.close if site
|
|
63
|
+
}
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def make_site(sitename, now = Time.now)
|
|
67
|
+
sitepath = @data_path + sitename
|
|
68
|
+
raise 'site already exist' if sitepath.exist? # Check the path first.
|
|
69
|
+
sitepath.mkdir
|
|
70
|
+
page = (sitepath + "_QwikSite.txt")
|
|
71
|
+
page.write(now.rfc_date)
|
|
72
|
+
return nil
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
def sweep
|
|
76
|
+
@logger.log(WEBrick::Log::INFO, 'start sweep') unless $test
|
|
77
|
+
|
|
78
|
+
log = @memory[:bury_log]
|
|
79
|
+
unless $test
|
|
80
|
+
log.info("start sweep")
|
|
81
|
+
end
|
|
82
|
+
|
|
83
|
+
inactive_sites = check_inactive_sites
|
|
84
|
+
buried = []
|
|
85
|
+
inactive_sites.each {|sitename|
|
|
86
|
+
@logger.log(WEBrick::Log::INFO, 'sweep '+sitename) unless $test
|
|
87
|
+
buried << bury(sitename)
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
unless $test
|
|
91
|
+
log.info("end sweep")
|
|
92
|
+
end
|
|
93
|
+
|
|
94
|
+
return buried
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
def check_inactive_sites
|
|
98
|
+
inactive_sites = []
|
|
99
|
+
list().each {|sitename|
|
|
100
|
+
# Do not bury default site.
|
|
101
|
+
next if sitename == @top_sitename
|
|
102
|
+
site = get_site(sitename)
|
|
103
|
+
# Check a particular page to check the directory is a site or not.
|
|
104
|
+
next if ! site.exist?('_SiteConfig')
|
|
105
|
+
inactive_sites << sitename if site && site.inactive?
|
|
106
|
+
}
|
|
107
|
+
return inactive_sites
|
|
108
|
+
end
|
|
109
|
+
|
|
110
|
+
private
|
|
111
|
+
|
|
112
|
+
def check_all_sites
|
|
113
|
+
sites = Array.new
|
|
114
|
+
|
|
115
|
+
# Check the direcotry entries.
|
|
116
|
+
@data_path.each_entry {|entry|
|
|
117
|
+
pa = @data_path + entry
|
|
118
|
+
next if ! pa.directory? # is not a directory?
|
|
119
|
+
sitename = entry.to_s
|
|
120
|
+
next if sitename[0] == ?. # begin with dot?
|
|
121
|
+
next if sitename == 'CVS'
|
|
122
|
+
#next if (pa + '_SiteConfig.txt').exist? # check the site.
|
|
123
|
+
sites << sitename
|
|
124
|
+
}
|
|
125
|
+
|
|
126
|
+
return sites
|
|
127
|
+
end
|
|
128
|
+
|
|
129
|
+
def bury(sitename)
|
|
130
|
+
site = get_site(sitename)
|
|
131
|
+
if site.unconfirmed?
|
|
132
|
+
dump_site(site, 'deleted')
|
|
133
|
+
delete(site)
|
|
134
|
+
return
|
|
135
|
+
end
|
|
136
|
+
dump_site(site, 'buried')
|
|
137
|
+
|
|
138
|
+
sitepath = site.path
|
|
139
|
+
dirtime = sitepath.mtime.to_i
|
|
140
|
+
@grave_path.check_directory
|
|
141
|
+
(sitepath.parent + ".grave").check_directory
|
|
142
|
+
while true
|
|
143
|
+
tempgravepath = sitepath.parent + ".grave" + "#{dirtime}_#{sitename}"
|
|
144
|
+
gravesitepath = @grave_path + "#{dirtime}_#{sitename}"
|
|
145
|
+
unless tempgravepath.exist? || gravesitepath.exist?
|
|
146
|
+
# step1. move atomically on same disk volume
|
|
147
|
+
sitepath.rename(tempgravepath)
|
|
148
|
+
# step2. move across disk volume
|
|
149
|
+
#FileUtils.mv(tempgravepath, gravesitepath)
|
|
150
|
+
break
|
|
151
|
+
end
|
|
152
|
+
dirtime += 1
|
|
153
|
+
end
|
|
154
|
+
#return gravesitepath
|
|
155
|
+
return tempgravepath
|
|
156
|
+
end
|
|
157
|
+
|
|
158
|
+
def bury_dummy(sitename)
|
|
159
|
+
site = get_site(sitename)
|
|
160
|
+
dump_site(site, 'bury dummy')
|
|
161
|
+
return site.path
|
|
162
|
+
end
|
|
163
|
+
|
|
164
|
+
require 'stringio'
|
|
165
|
+
def dump_site(site, message)
|
|
166
|
+
log = @memory[:bury_log]
|
|
167
|
+
buff = StringIO.new
|
|
168
|
+
buff.puts("#{message}: #{site.sitename}")
|
|
169
|
+
|
|
170
|
+
ml_life_time = site.siteconfig['ml_life_time'].to_i
|
|
171
|
+
days = ml_life_time / (60*60*24)
|
|
172
|
+
buff.puts("ml_life_time: #{ml_life_time} (#{days}d)")
|
|
173
|
+
|
|
174
|
+
site.path.children.sort{|a,b| b.mtime <=> a.mtime }.each do |path|
|
|
175
|
+
buff << path.mtime.strftime("%Y-%m-%d %H:%M:%S ")
|
|
176
|
+
buff << sprintf("% 8d ", path.size)
|
|
177
|
+
buff << path.basename.to_s
|
|
178
|
+
buff << "\n"
|
|
179
|
+
end
|
|
180
|
+
unless $test
|
|
181
|
+
log.info(buff.string)
|
|
182
|
+
end
|
|
183
|
+
end
|
|
184
|
+
|
|
185
|
+
def delete(site)
|
|
186
|
+
sitepath = site.path
|
|
187
|
+
sitepath.remove_directory
|
|
188
|
+
end
|
|
189
|
+
|
|
190
|
+
end
|
|
191
|
+
end
|
|
192
|
+
|
|
193
|
+
if $0 == __FILE__
|
|
194
|
+
require 'qwik/test-module-session'
|
|
195
|
+
$test = true
|
|
196
|
+
end
|
|
197
|
+
|
|
198
|
+
if defined?($test) && $test
|
|
199
|
+
class TestFarm < Test::Unit::TestCase
|
|
200
|
+
include TestSession
|
|
201
|
+
|
|
202
|
+
def test_make_site
|
|
203
|
+
farm = @memory.farm
|
|
204
|
+
farm.close_all
|
|
205
|
+
@dir.teardown
|
|
206
|
+
@dir.rmtree if @dir.directory?
|
|
207
|
+
@dir.rmdir if @dir.directory?
|
|
208
|
+
|
|
209
|
+
dir = @config.sites_dir.path
|
|
210
|
+
|
|
211
|
+
# test_exist?
|
|
212
|
+
assert_equal false, !!farm.exist?('test')
|
|
213
|
+
assert_equal nil, farm.get_site('test')
|
|
214
|
+
assert_equal false, (dir + 'test').exist?
|
|
215
|
+
|
|
216
|
+
# test_make_site
|
|
217
|
+
assert_equal false, (dir + 'test').path.exist?
|
|
218
|
+
farm.make_site('test', Time.at(0))
|
|
219
|
+
assert_equal true, (dir + 'test').path.exist?
|
|
220
|
+
assert_equal true, (dir + 'test/_QwikSite.txt').path.exist?
|
|
221
|
+
assert_equal "1970-01-01T09:00:00", (dir + 'test/_QwikSite.txt').path.read
|
|
222
|
+
assert_equal false, (dir + 'test/test').path.exist?
|
|
223
|
+
assert_equal true, !!farm.exist?('test')
|
|
224
|
+
assert_equal false, (dir + 'test/test').path.exist?
|
|
225
|
+
|
|
226
|
+
site = farm.get_site('test')
|
|
227
|
+
assert_equal true, (dir + 'test'.path).exist?
|
|
228
|
+
assert_equal false, (dir + 'test/test').path.exist?
|
|
229
|
+
#assert_equal true, (dir + 'test/test').path.exist?
|
|
230
|
+
assert_equal 'test', site.sitename
|
|
231
|
+
|
|
232
|
+
# test_raise
|
|
233
|
+
assert_raise(RuntimeError) {
|
|
234
|
+
# Creating a site with same name cause error.
|
|
235
|
+
farm.make_site('test')
|
|
236
|
+
}
|
|
237
|
+
end
|
|
238
|
+
|
|
239
|
+
def test_all
|
|
240
|
+
farm = @memory.farm
|
|
241
|
+
|
|
242
|
+
# test_top_site
|
|
243
|
+
site = farm.get_top_site
|
|
244
|
+
eq @config.default_sitename, site.sitename
|
|
245
|
+
|
|
246
|
+
# test_list
|
|
247
|
+
is "Array", farm.list.class.name
|
|
248
|
+
|
|
249
|
+
#assert_equal false, (@dir+"test").exist?
|
|
250
|
+
end
|
|
251
|
+
|
|
252
|
+
def test_sweep
|
|
253
|
+
farm = @memory.farm
|
|
254
|
+
|
|
255
|
+
site = farm.get_site('test')
|
|
256
|
+
page = site['_SiteConfig']
|
|
257
|
+
page.put_with_time(':ml_life_time:0', 0) # Die soon.
|
|
258
|
+
|
|
259
|
+
# test_inactive?
|
|
260
|
+
eq true, site.inactive?
|
|
261
|
+
|
|
262
|
+
# test_sweep
|
|
263
|
+
buried = farm.sweep
|
|
264
|
+
site = farm.get_site('test')
|
|
265
|
+
eq nil, site
|
|
266
|
+
|
|
267
|
+
# Clean up the grave dir.
|
|
268
|
+
buried.each {|gravesitepath|
|
|
269
|
+
gravesitepath.teardown
|
|
270
|
+
gravesitepath.rmtree
|
|
271
|
+
}
|
|
272
|
+
end
|
|
273
|
+
|
|
274
|
+
def test_delete
|
|
275
|
+
farm = @memory.farm
|
|
276
|
+
site = farm.get_site('test')
|
|
277
|
+
site_path = site.path
|
|
278
|
+
t_make_public(Qwik::Farm, :delete)
|
|
279
|
+
farm.delete(site)
|
|
280
|
+
eq false, site_path.exist?
|
|
281
|
+
end
|
|
282
|
+
end
|
|
283
|
+
end
|