tiddlywiki_cp 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (69) hide show
  1. data/COPYING +674 -0
  2. data/History.txt +4 -0
  3. data/Manifest.txt +68 -0
  4. data/README.txt +3 -0
  5. data/Rakefile +123 -0
  6. data/bin/tiddlywiki_cp +13 -0
  7. data/lib/tiddlywiki_cp/converters.rb +36 -0
  8. data/lib/tiddlywiki_cp/file2file.rb +32 -0
  9. data/lib/tiddlywiki_cp/file2tiddler.rb +42 -0
  10. data/lib/tiddlywiki_cp/r4tw.rb +763 -0
  11. data/lib/tiddlywiki_cp/tiddler2directory.rb +27 -0
  12. data/lib/tiddlywiki_cp/tiddler2file.rb +41 -0
  13. data/lib/tiddlywiki_cp/tiddler2tiddlywiki.rb +29 -0
  14. data/lib/tiddlywiki_cp/tiddler_css.rb +39 -0
  15. data/lib/tiddlywiki_cp/tiddler_html.rb +39 -0
  16. data/lib/tiddlywiki_cp/tiddler_js.rb +39 -0
  17. data/lib/tiddlywiki_cp/tiddlywiki2file.rb +29 -0
  18. data/lib/tiddlywiki_cp/version.rb +24 -0
  19. data/lib/tiddlywiki_cp.rb +378 -0
  20. data/scripts/txt2html +67 -0
  21. data/setup.rb +1585 -0
  22. data/test/content/a +0 -0
  23. data/test/content/a.div +0 -0
  24. data/test/content/b +0 -0
  25. data/test/content/e +3 -0
  26. data/test/content/e.div +1 -0
  27. data/test/content/html_entities.html +6 -0
  28. data/test/content/test_fetch.html +6 -0
  29. data/test/content/universe.html +10522 -0
  30. data/test/r4tw/addtag.rb +93 -0
  31. data/test/r4tw/all.rb +29 -0
  32. data/test/r4tw/createfrom.rb +62 -0
  33. data/test/r4tw/empties/2.1.3.html +7087 -0
  34. data/test/r4tw/empties/2.2.0.beta5.html +8726 -0
  35. data/test/r4tw/fromremote.rb +19 -0
  36. data/test/r4tw/fromurl.rb +28 -0
  37. data/test/r4tw/shadows.rb +27 -0
  38. data/test/r4tw/tiddler.rb +70 -0
  39. data/test/r4tw/tiddlerfromurl.rb +23 -0
  40. data/test/r4tw/tiddlywiki.rb +66 -0
  41. data/test/r4tw/utils.rb +55 -0
  42. data/test/r4tw/withcontent/2.2.0.beta5.html +8739 -0
  43. data/test/r4tw/withcontent/22b5index.html +13523 -0
  44. data/test/r4tw/withcontent/empty2.html +7084 -0
  45. data/test/r4tw/withcontent/nothing.js +1 -0
  46. data/test/r4tw/write_all_tiddlers_to.rb +62 -0
  47. data/test/test_all.rb +8 -0
  48. data/test/test_helper.rb +36 -0
  49. data/test/test_tiddler_css.rb +55 -0
  50. data/test/test_tiddler_html.rb +54 -0
  51. data/test/test_tiddler_js.rb +56 -0
  52. data/test/test_tiddlywiki_cp.rb +341 -0
  53. data/website/files/DefaultTiddlers.tiddler +2 -0
  54. data/website/files/DefaultTiddlers.tiddler.div +1 -0
  55. data/website/files/Introduction.tiddler +12 -0
  56. data/website/files/Introduction.tiddler.div +1 -0
  57. data/website/files/MainMenu.tiddler +1 -0
  58. data/website/files/MainMenu.tiddler.div +1 -0
  59. data/website/files/SiteSubtitle.tiddler +1 -0
  60. data/website/files/SiteSubtitle.tiddler.div +1 -0
  61. data/website/files/SiteTitle.tiddler +1 -0
  62. data/website/files/SiteTitle.tiddler.div +1 -0
  63. data/website/files/Usage.tiddler +55 -0
  64. data/website/files/Usage.tiddler.div +1 -0
  65. data/website/files/WebDAVSavingPlugin.js +234 -0
  66. data/website/files/WebDAVSavingPlugin.js.div +1 -0
  67. data/website/index.html +9144 -0
  68. data/website/index.xml +336 -0
  69. metadata +116 -0
@@ -0,0 +1,19 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."
5
+ require 'r4tw'
6
+
7
+ class FromRemote < Test::Unit::TestCase
8
+
9
+ def setup
10
+ @tw = make_tw { source_url }
11
+ end
12
+
13
+ def test_it
14
+ @tw.add_tiddler_from_remote_tw("http://www.tiddlywiki.com/#HelloThere")
15
+ assert_equal( @tw.get_tiddler("HelloThere").name, "HelloThere" )
16
+ assert_equal( @tw.get_tiddler("HelloThere").modifier, "JeremyRuston" )
17
+ end
18
+
19
+ end
@@ -0,0 +1,28 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."
5
+ require 'r4tw'
6
+
7
+ class FromUrl < Test::Unit::TestCase
8
+
9
+ def setup
10
+
11
+ @foo = fetch_url("http://www.tiddlywiki.com/empty.html")
12
+
13
+ @tw = make_tw {
14
+ source_url
15
+ }
16
+
17
+ end
18
+
19
+ def test_it
20
+
21
+ assert_equal(
22
+ @foo,
23
+ @tw.to_s
24
+ )
25
+
26
+ end
27
+
28
+ end
@@ -0,0 +1,27 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."; require 'r4tw'
5
+
6
+ # might need some work here for 2.2 beta ???????
7
+
8
+ class ShadowTest < Test::Unit::TestCase
9
+
10
+ def setup
11
+ @tw = make_tw {
12
+ source_file "#{this_dir(__FILE__)}/empties/2.1.3.html"
13
+ }
14
+ end
15
+
16
+ def test_shadow
17
+ @tw.add_shadow_tiddler Tiddler.new.from_scratch({'tiddler'=>'foo','text'=>'bar'})
18
+ #@tw.to_file "shadowtest.html"
19
+ #
20
+ assert_match(
21
+ /^config.shadowTiddlers\["foo"\] = "bar";/m,
22
+ @tw.to_s
23
+ )
24
+
25
+ end
26
+
27
+ end
@@ -0,0 +1,70 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."
5
+ require 'r4tw'
6
+
7
+ class TiddlerTest < Test::Unit::TestCase
8
+
9
+ def test_tiddler
10
+
11
+ t = Tiddler.new.from_scratch
12
+
13
+ assert_match(
14
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags=""><\/div>/,
15
+ t.to_div
16
+ )
17
+
18
+ tt = Tiddler.new({})
19
+
20
+ assert_match(
21
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags=""><\/div>/,
22
+ tt.to_div
23
+ )
24
+
25
+
26
+ assert_equal("New Tiddler",t.name)
27
+ assert_equal("YourName",t.fields['modifier'])
28
+
29
+ assert_equal(
30
+ t.to_div,
31
+ Tiddler.new.from_div(t.to_div).to_div
32
+ )
33
+
34
+ assert_equal(0,t.extended_fields.length)
35
+
36
+ t.fields['foo'] = "blah"
37
+ assert_equal(['foo'],t.extended_fields)
38
+
39
+ assert_match(
40
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags="" foo="blah">/,
41
+ t.to_div
42
+ )
43
+
44
+ assert_match(
45
+ /<\/pre>\n<\/div>$/,
46
+ t.to_div(true)
47
+ )
48
+
49
+
50
+ t.add_tag("MyTag")
51
+ assert_match(
52
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags="MyTag" foo="blah">/,
53
+ t.to_div
54
+ )
55
+
56
+ t.add_tag("My Other Tag")
57
+ assert_match(
58
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags="MyTag \[\[My Other Tag\]\]" foo="blah">/,
59
+ t.to_div
60
+ )
61
+
62
+ t.remove_tag("MyTag")
63
+ assert_match(
64
+ /<div tiddler="New Tiddler" modifier="YourName" modified="\d+" created="\d+" tags="\[\[My Other Tag\]\]" foo="blah"><\/div>/,
65
+ t.to_div
66
+ )
67
+
68
+
69
+ end
70
+ end
@@ -0,0 +1,23 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."; require 'r4tw'
5
+
6
+ class TiddlerFromUrl < Test::Unit::TestCase
7
+
8
+ def setup
9
+ @tw = make_tw {
10
+ source_file "#{this_dir(__FILE__)}/empties/2.1.3.html"
11
+ }
12
+ end
13
+
14
+ def test_it
15
+ @tw.add_tiddler_from_url(
16
+ "http://svn.tiddlywiki.org/Trunk/contributors/SimonBaird/mptw/trunk/noupgrade/MonkeyPirateTiddlyWiki.tiddler",
17
+ {'tiddler'=>'MPTW'}
18
+ )
19
+ # @tw.to_file "zz"
20
+ assert_equal( @tw.get_tiddler("MPTW").name, "MPTW" )
21
+ end
22
+
23
+ end
@@ -0,0 +1,66 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << "..";
5
+ require 'r4tw'
6
+
7
+ class TiddlyWikiTest < Test::Unit::TestCase
8
+
9
+ def setup
10
+
11
+ # these are 2.1 TW
12
+ @tw1 = make_tw { source_file "#{this_dir(__FILE__)}/empties/2.1.3.html" }
13
+ @tw2 = make_tw { source_file "#{this_dir(__FILE__)}/withcontent/empty2.html" }
14
+
15
+ # these two are 2.2 beta TW
16
+ @tw3 = make_tw { source_file "#{this_dir(__FILE__)}/empties/2.2.0.beta5.html" }
17
+ @tw4 = make_tw { source_file "#{this_dir(__FILE__)}/withcontent/2.2.0.beta5.html" }
18
+
19
+ @tw5 = make_tw { source_file "#{this_dir(__FILE__)}/withcontent/22b5index.html" }
20
+
21
+ end
22
+
23
+ def test_load_empty
24
+
25
+ # should be the case that reading and writing a TW
26
+ # doesn't change it
27
+ assert_equal(File.read("#{this_dir(__FILE__)}/empties/2.1.3.html"),@tw1.to_s)
28
+ assert_equal(File.read("#{this_dir(__FILE__)}/withcontent/empty2.html"),@tw2.to_s)
29
+
30
+ assert_equal(File.read("#{this_dir(__FILE__)}/empties/2.2.0.beta5.html"),@tw3.to_s)
31
+ assert_equal(File.read("#{this_dir(__FILE__)}/withcontent/2.2.0.beta5.html"),@tw4.to_s)
32
+
33
+ assert_equal(File.read("#{this_dir(__FILE__)}/withcontent/22b5index.html"),@tw5.to_s)
34
+
35
+ end
36
+
37
+ def test_orig_tiddler
38
+
39
+ # check that we found some tiddlers or not as approriate
40
+
41
+ assert_equal(0,@tw1.tiddlers.length)
42
+
43
+ assert_equal(
44
+ "translations",
45
+ @tw2.get_tiddler("translations").name
46
+ )
47
+
48
+ assert_equal(
49
+ "JeremyRuston",
50
+ @tw2.get_tiddler("translations").modifier
51
+ )
52
+
53
+
54
+ assert_equal(0,@tw3.tiddlers.length)
55
+
56
+ assert_equal(2,@tw4.tiddlers.length)
57
+
58
+ assert_equal(
59
+ "SimonBaird",
60
+ @tw4.get_tiddler("Foo").modifier
61
+ )
62
+
63
+
64
+ end
65
+
66
+ end
@@ -0,0 +1,55 @@
1
+
2
+ require 'test/unit'
3
+
4
+ $LOAD_PATH << ".."
5
+ require 'r4tw'
6
+
7
+ class UtilsTest < Test::Unit::TestCase
8
+
9
+ def test_encode_decode
10
+
11
+ foo = '"<foo>&'
12
+ assert_equal(foo,'&quot;&lt;foo&gt;&amp;'.decodeHTML)
13
+ assert_equal(foo,foo.encodeHTML.decodeHTML)
14
+
15
+ end
16
+
17
+ def test_escape_line_breaks
18
+
19
+ foo = "hey\nhey"
20
+ assert_equal(foo,"hey\\nhey".unescapeLineBreaks)
21
+ assert_equal(foo,foo.escapeLineBreaks.unescapeLineBreaks)
22
+
23
+ foo = '\\\\'
24
+ assert_equal(foo,'\\s\\s'.unescapeLineBreaks)
25
+ assert_equal(foo,foo.escapeLineBreaks.unescapeLineBreaks)
26
+
27
+ end
28
+
29
+ def test_dates
30
+ foo = "200712101122"
31
+ bar = Time.convertFromYYYYMMDDHHMM(foo)
32
+ assert_equal("Mon Dec 10 11:22:00 UTC 2007",bar.to_s)
33
+ assert_equal(foo,bar.convertToYYYYMMDDHHMM)
34
+
35
+ # this test depends on timezone. I am at GMT+10
36
+ assert_equal("200712102122",bar.convertToLocalYYYYMMDDHHMM)
37
+ end
38
+
39
+ def test_bracketed
40
+ foo = ["Hello there", "this", "that", "other", "one more"];
41
+
42
+ assert_equal(
43
+ foo,
44
+ "[[Hello there]] this that [[other]] [[one more]]".readBrackettedList
45
+ )
46
+
47
+ assert_equal(
48
+ foo,
49
+ foo.toBrackettedList.readBrackettedList
50
+ )
51
+
52
+ end
53
+
54
+ end
55
+