! Copyright (C) 2009 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.
-USING: db.tuples locals site-watcher site-watcher.db
-site-watcher.private kernel db io.directories io.files.temp
-continuations db.sqlite
-sequences tools.test ;
+USING: continuations db db.tuples io.directories io.files.temp kernel
+locals sequences site-watcher.db tools.test webapps.utils ;
IN: site-watcher.tests
[ "site-watcher.db" temp-file delete-file ] ignore-errors
:: fake-sites ( -- seq )
- "site-watcher.db" temp-file <sqlite-db> [
+ "site-watcher.db" <temp-sqlite-db> [
account ensure-table
site ensure-table
watching-site ensure-table
-USING: continuations db db.sqlite io.directories io.files.temp
-webapps.mason.backend tools.test ;
+USING: continuations db io.directories io.files.temp tools.test
+webapps.mason.backend webapps.utils ;
IN: webapps.mason.backend.tests
[ "mason-test.db" temp-file delete-file ] ignore-errors
{ 0 1 2 } [
! Do it in a with-transaction to simulate semantics of
! with-mason-db
- "mason-test.db" temp-file <sqlite-db> [
+ "mason-test.db" <temp-sqlite-db> [
[
init-mason-db
! Copyright (C) 2009 Slava Pestov.
! See http://factorcode.org/license.txt for BSD license.
-USING: accessors assocs db.sqlite furnace furnace.actions
+USING: accessors assocs db db.sqlite db.tuples furnace furnace.actions
furnace.alloy furnace.auth furnace.auth.features.deactivate-user
furnace.auth.features.edit-profile
furnace.auth.features.recover-password
furnace.auth.features.registration furnace.auth.login
furnace.boilerplate furnace.redirection html.forms http.server
http.server.dispatchers kernel namespaces site-watcher site-watcher.db
-site-watcher.private urls validators io.sockets.secure.debug
-io.servers io.files.temp db db.tuples sequences
+site-watcher.private urls sequences validators
webapps.site-watcher.common webapps.site-watcher.watching
-webapps.site-watcher.spidering ;
+webapps.site-watcher.spidering webapps.utils ;
QUALIFIED: assocs
IN: webapps.site-watcher
allow-edit-profile
allow-deactivation ;
-: <site-watcher-server> ( -- threaded-server )
- <http-server>
- <test-secure-config> >>secure-config
- 8081 >>insecure
- 8431 >>secure ;
-
: site-watcher-db ( -- db )
- "test.db" temp-file <sqlite-db> ;
+ "test.db" <temp-sqlite-db> ;
<site-watcher-app>
<login-config>
: start-site-watcher ( -- )
init-db
site-watcher-db run-site-watcher
- <site-watcher-server> start-server drop ;
+ run-test-httpd ;
hashtables urls html.forms html.components html.templates.chloe http.server
http.server.dispatchers furnace furnace.boilerplate furnace.auth
furnace.actions furnace.redirection furnace.db furnace.auth.login
-io.sockets.secure.debug ;
+webapps.utils ;
IN: webapps.todo
TUPLE: todo-list < dispatcher ;
USING: furnace.auth.features.registration
furnace.auth.features.edit-profile
furnace.auth.features.deactivate-user
-db.sqlite
-furnace.alloy
-io.servers
-io.sockets.secure ;
+furnace.alloy ;
: <login-config> ( responder -- responder' )
"Todo list" <login-realm>
allow-edit-profile
allow-deactivation ;
-: todo-db ( -- db ) "resource:todo.db" <sqlite-db> ;
+: todo-db ( -- db )
+ "todo.db" <temp-sqlite-db> ;
: init-todo-db ( -- )
todo-db [
<login-config>
todo-db <alloy> ;
-: <todo-website-server> ( -- threaded-server )
- <http-server>
- <test-secure-config> >>secure-config
- 8080 >>insecure
- 8431 >>secure ;
-
: run-todo ( -- )
<todo-app> main-responder set-global
todo-db start-expiring
- <todo-website-server> start-server drop ;
+ run-test-httpd ;
MAIN: run-todo
--- /dev/null
+USING: accessors db.sqlite http.server io.files.temp io.servers
+io.sockets.secure.debug kernel ;
+IN: webapps.utils
+
+: <temp-sqlite-db> ( name -- db )
+ temp-file <sqlite-db> ;
+
+: <test-http-server> ( -- threaded-server )
+ <http-server>
+ <test-secure-config> >>secure-config
+ 8081 >>insecure
+ 8431 >>secure ;
+
+: run-test-httpd ( -- )
+ <test-http-server> start-server drop ;
-USING: accessors calendar db db.sqlite db.tuples furnace.alloy
+USING: accessors calendar db db.tuples furnace.alloy
furnace.recaptcha.example http.server io.directories
-io.encodings.ascii io.files io.files.temp io.servers
-io.sockets.secure.debug kernel namespaces sequences splitting
-webapps.wiki websites.concatenative ;
+io.encodings.ascii io.files io.servers kernel namespaces sequences
+splitting webapps.utils webapps.wiki websites.concatenative ;
IN: webapps.wiki.example
: wiki-db ( -- db )
- "wiki.db" temp-file <sqlite-db> ;
+ "wiki.db" <temp-sqlite-db> ;
: insert-page ( file-name -- )
dup ".txt" ?tail [
<factor-boilerplate>
wiki-db <alloy> ;
-: <wiki-website-server> ( -- threaded-server )
- <http-server>
- <test-secure-config> >>secure-config
- 8080 >>insecure
- 8431 >>secure ;
-
: run-wiki ( -- )
init-wiki-db
<wiki-app> main-responder set-global
wiki-db start-expiring
- <wiki-website-server> start-server drop ;
+ run-test-httpd ;
MAIN: run-wiki