tiddlywiki_cp 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.
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
+