webgen 0.5.5 → 0.5.6

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 (101) hide show
  1. data/ChangeLog +3662 -0
  2. data/Rakefile +8 -1
  3. data/VERSION +1 -1
  4. data/data/webgen/website_styles/1024px/src/default.template +1 -1
  5. data/data/webgen/website_styles/andreas00/src/default.template +1 -1
  6. data/data/webgen/website_styles/andreas01/src/default.template +2 -1
  7. data/data/webgen/website_styles/andreas03/src/default.template +1 -1
  8. data/data/webgen/website_styles/andreas04/src/default.template +1 -1
  9. data/data/webgen/website_styles/andreas05/src/default.template +1 -1
  10. data/data/webgen/website_styles/andreas06/src/default.template +1 -1
  11. data/data/webgen/website_styles/andreas07/src/default.template +1 -1
  12. data/data/webgen/website_styles/andreas08/src/default.template +1 -1
  13. data/data/webgen/website_styles/andreas09/src/default.template +1 -1
  14. data/data/webgen/website_styles/simple/src/default.template +1 -1
  15. data/doc/contentprocessor/fragments.page +25 -0
  16. data/doc/extensions.page +1 -1
  17. data/doc/manual.page +33 -15
  18. data/doc/reference_configuration.page +339 -62
  19. data/doc/reference_metainfo.page +11 -2
  20. data/doc/sourcehandler/feed.page +19 -4
  21. data/doc/sourcehandler/page.page +0 -16
  22. data/doc/tag/langbar.page +8 -1
  23. data/doc/tag/link.page +44 -0
  24. data/doc/tag/tikz.page +158 -0
  25. data/lib/webgen/cli.rb +4 -4
  26. data/lib/webgen/common/sitemap.rb +2 -3
  27. data/lib/webgen/configuration.rb +3 -1
  28. data/lib/webgen/contentprocessor.rb +1 -0
  29. data/lib/webgen/contentprocessor/blocks.rb +0 -2
  30. data/lib/webgen/contentprocessor/context.rb +0 -3
  31. data/lib/webgen/contentprocessor/erubis.rb +0 -2
  32. data/lib/webgen/contentprocessor/fragments.rb +23 -0
  33. data/lib/webgen/default_config.rb +15 -2
  34. data/lib/webgen/languages.rb +9 -0
  35. data/lib/webgen/logger.rb +18 -1
  36. data/lib/webgen/node.rb +50 -25
  37. data/lib/webgen/page.rb +26 -16
  38. data/lib/webgen/path.rb +20 -10
  39. data/lib/webgen/sourcehandler.rb +85 -69
  40. data/lib/webgen/sourcehandler/base.rb +38 -15
  41. data/lib/webgen/sourcehandler/copy.rb +2 -2
  42. data/lib/webgen/sourcehandler/directory.rb +16 -13
  43. data/lib/webgen/sourcehandler/feed.rb +6 -12
  44. data/lib/webgen/sourcehandler/fragment.rb +6 -11
  45. data/lib/webgen/sourcehandler/memory.rb +41 -0
  46. data/lib/webgen/sourcehandler/metainfo.rb +21 -21
  47. data/lib/webgen/sourcehandler/page.rb +7 -27
  48. data/lib/webgen/sourcehandler/sitemap.rb +0 -2
  49. data/lib/webgen/sourcehandler/template.rb +0 -4
  50. data/lib/webgen/sourcehandler/virtual.rb +18 -18
  51. data/lib/webgen/tag.rb +2 -0
  52. data/lib/webgen/tag/breadcrumbtrail.rb +1 -4
  53. data/lib/webgen/tag/coderay.rb +0 -3
  54. data/lib/webgen/tag/date.rb +0 -2
  55. data/lib/webgen/tag/executecommand.rb +1 -2
  56. data/lib/webgen/tag/includefile.rb +1 -3
  57. data/lib/webgen/tag/langbar.rb +2 -5
  58. data/lib/webgen/tag/link.rb +23 -0
  59. data/lib/webgen/tag/menu.rb +1 -4
  60. data/lib/webgen/tag/metainfo.rb +0 -2
  61. data/lib/webgen/tag/relocatable.rb +2 -3
  62. data/lib/webgen/tag/sitemap.rb +0 -3
  63. data/lib/webgen/tag/tikz.rb +117 -0
  64. data/lib/webgen/tree.rb +11 -6
  65. data/lib/webgen/version.rb +1 -1
  66. data/lib/webgen/website.rb +2 -1
  67. data/test/test_cli.rb +14 -0
  68. data/test/test_common_sitemap.rb +4 -4
  69. data/test/test_contentprocessor_context.rb +1 -1
  70. data/test/test_contentprocessor_fragments.rb +40 -0
  71. data/test/test_contentprocessor_redcloth.rb +1 -0
  72. data/test/test_contentprocessor_tags.rb +1 -1
  73. data/test/test_languages.rb +12 -0
  74. data/test/test_logger.rb +19 -0
  75. data/test/test_node.rb +35 -15
  76. data/test/test_output_filesystem.rb +1 -1
  77. data/test/test_page.rb +15 -6
  78. data/test/test_path.rb +37 -5
  79. data/test/test_source_filesystem.rb +1 -1
  80. data/test/test_source_stacked.rb +1 -1
  81. data/test/test_sourcehandler_base.rb +30 -1
  82. data/test/test_sourcehandler_copy.rb +1 -1
  83. data/test/test_sourcehandler_directory.rb +16 -1
  84. data/test/test_sourcehandler_feed.rb +9 -8
  85. data/test/test_sourcehandler_fragment.rb +1 -1
  86. data/test/test_sourcehandler_memory.rb +42 -0
  87. data/test/test_sourcehandler_metainfo.rb +23 -21
  88. data/test/test_sourcehandler_page.rb +5 -12
  89. data/test/test_sourcehandler_template.rb +1 -1
  90. data/test/test_sourcehandler_virtual.rb +2 -2
  91. data/test/test_tag_base.rb +0 -1
  92. data/test/test_tag_breadcrumbtrail.rb +4 -4
  93. data/test/test_tag_includefile.rb +3 -3
  94. data/test/test_tag_langbar.rb +12 -7
  95. data/test/test_tag_link.rb +61 -0
  96. data/test/test_tag_menu.rb +7 -7
  97. data/test/test_tag_metainfo.rb +1 -1
  98. data/test/test_tag_relocatable.rb +1 -1
  99. data/test/test_tag_tikz.rb +66 -0
  100. data/test/test_tree.rb +8 -9
  101. metadata +15 -2
@@ -1,7 +1,7 @@
1
1
  require 'test/unit'
2
2
  require 'webgen/tree'
3
3
  require 'webgen/contentprocessor'
4
- require 'webgen/tag/metainfo'
4
+ require 'webgen/tag'
5
5
 
6
6
  class TestTagMetainfo < Test::Unit::TestCase
7
7
 
@@ -2,7 +2,7 @@ require 'test/unit'
2
2
  require 'helper'
3
3
  require 'webgen/tree'
4
4
  require 'webgen/contentprocessor'
5
- require 'webgen/tag/relocatable'
5
+ require 'webgen/tag'
6
6
 
7
7
  class TestTagRelocatable < Test::Unit::TestCase
8
8
 
@@ -0,0 +1,66 @@
1
+ require 'test/unit'
2
+ require 'helper'
3
+ require 'webgen/tag'
4
+
5
+ class TestTagTikZ < Test::Unit::TestCase
6
+
7
+ include Test::WebsiteHelper
8
+
9
+ def setup
10
+ super
11
+ @obj = Webgen::Tag::TikZ.new
12
+ Webgen::SourceHandler::Main.new # service create_nodes
13
+ Webgen::SourceHandler::Directory.new # service create_directories
14
+ end
15
+
16
+ def call(context, body, path, libs, opts, res, trans, imgattr)
17
+ @obj.set_params({'tag.tikz.path' => path, 'tag.tikz.libraries' => libs,
18
+ 'tag.tikz.opts' => opts, 'tag.tikz.resolution' => res,
19
+ 'tag.tikz.transparent' => trans, 'tag.tikz.img_attr' => imgattr})
20
+ result = @obj.call('tikz', body, context)
21
+ @obj.set_params({})
22
+ result
23
+ end
24
+
25
+ def test_call
26
+ root = Webgen::Node.new(Webgen::Tree.new.dummy_root, '/', '/')
27
+ context = Webgen::ContentProcessor::Context.new(:chain => [root])
28
+
29
+ output = call(context, '\tikz \draw (0,0) -- (0,1);', 'test.png', [], '', '72 72', false, {})
30
+ assert_equal('<img src="test.png" />', output)
31
+ assert(root.tree['/test.png'])
32
+ assert_not_nil(root.tree['/test.png'].content)
33
+ root.tree.delete_node('/test.png')
34
+
35
+ output = call(context, '\tikz \asdfasdfasf', 'test.png', [], '', '72 72', false, {})
36
+ assert_equal('<img src="test.png" />', output)
37
+ assert(root.tree['/test.png'])
38
+ assert_nil(root.tree['/test.png'].content)
39
+ root.tree.delete_node('/test.png')
40
+
41
+ output = call(context, '\tikz \draw (0,0) -- (0,1);', '/images/test.gif', ['arrows'], '->', '72 72', true, {'alt' => 'title'})
42
+ assert_equal('<img src="images/test.gif" alt="title" />', output)
43
+ assert(root.tree['/images/test.gif'])
44
+ assert_not_nil(root.tree['/images/test.gif'].content)
45
+ root.tree.delete_node('/images/test.gif')
46
+
47
+ output = call(context, '\tikz \draw (0,0) -- (0,1);', 'images/../img/test.png', [], '', '300 72', true, {})
48
+ assert_equal('<img src="img/test.png" />', output)
49
+ assert(root.tree['/img/test.png'])
50
+ assert_not_nil(root.tree['/img/test.png'].content)
51
+ root.tree.delete_node('/img/test.png')
52
+ end
53
+
54
+ def test_run_command
55
+ root = Webgen::Node.new(Webgen::Tree.new.dummy_root, '/', '/')
56
+ context = Webgen::ContentProcessor::Context.new(:chain => [root])
57
+ assert_equal("hallo\n", @obj.send(:run_command, echo_cmd('hallo'), context))
58
+ assert_nil(@obj.send(:run_command, 'unknown_command 2>&1', context))
59
+ end
60
+
61
+ def echo_cmd(data)
62
+ (Config::CONFIG['arch'].include?('mswin32') ? "echo #{data}" : "echo '#{data}'")
63
+ end
64
+
65
+
66
+ end
@@ -13,15 +13,17 @@ class TestTree < Test::Unit::TestCase
13
13
 
14
14
  def test_initialize
15
15
  assert_not_nil(@tree.dummy_root)
16
+ assert_equal('', @tree.dummy_root.absolute_lcn)
16
17
  end
17
18
 
18
19
  def test_root
19
20
  root = Webgen::Node.new(@tree.dummy_root, '/', '/')
20
21
  assert_equal(root, @tree.root)
22
+ assert_equal('/', root.absolute_lcn)
21
23
  end
22
24
 
23
- def test_register_node
24
- # Tree#register_node is called when creating a node
25
+ def test_register_node_and_register_path
26
+ # Tree#register_node/_path is called when creating a node
25
27
  node = Webgen::Node.new(@tree.dummy_root, 'dummy/', 'dummy')
26
28
  assert_equal(node, @tree['/dummy', :alcn])
27
29
  assert_equal(node, @tree['/dummy', :acn])
@@ -29,6 +31,8 @@ class TestTree < Test::Unit::TestCase
29
31
  assert_raise(RuntimeError) { Webgen::Node.new(@tree.dummy_root, '/', 'dummy') }
30
32
  assert_raise(RuntimeError) { Webgen::Node.new(@tree.dummy_root, 'dummy/', 'other') }
31
33
  assert_nothing_raised { Webgen::Node.new(@tree.dummy_root, 'dummy/', 'unknown', {'no_output' => true}) }
34
+ Webgen::Node.new(@tree.dummy_root, 'new', 'new', {'no_output' => true})
35
+ assert(!@tree['new', :path])
32
36
  end
33
37
 
34
38
  def test_delete_node
@@ -42,8 +46,7 @@ class TestTree < Test::Unit::TestCase
42
46
  @tree.delete_node(@tree.dummy_root)
43
47
  assert_not_nil(@tree[''])
44
48
 
45
- @tree.delete_node(root)
46
- assert_not_nil(@tree['/'])
49
+ assert_nothing_raised { @tree.delete_node('/unknown_path') }
47
50
 
48
51
  @tree.delete_node(file)
49
52
  assert_nil(@tree['/testfile'])
@@ -52,17 +55,13 @@ class TestTree < Test::Unit::TestCase
52
55
  assert_equal(1, root.children.size)
53
56
  assert_equal(1, nrcalls)
54
57
 
55
- @tree.delete_node('/', true)
58
+ @tree.delete_node('/')
56
59
  assert_nil(@tree['/testdir'])
57
60
  assert_nil(@tree['/testdir', :acn])
58
61
  assert_nil(@tree.node_info['/testdir'])
59
62
  assert_nil(@tree['/'])
60
63
  assert_nil(@tree.node_info['/'])
61
64
  assert_equal(3, nrcalls)
62
-
63
- Webgen::Node.new(root, 'testfile', 'testfile')
64
- Webgen::Node.new(root, 'testdir/', 'testdir')
65
- @tree.delete_node(root, true)
66
65
  assert_equal([@tree.dummy_root], @tree.node_access[:alcn].values)
67
66
  end
68
67
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webgen
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.5
4
+ version: 0.5.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thomas Leitner
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-10-01 00:00:00 +02:00
12
+ date: 2008-10-20 00:00:00 +02:00
13
13
  default_executable: webgen
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -194,6 +194,7 @@ files:
194
194
  - Rakefile
195
195
  - setup.rb
196
196
  - VERSION
197
+ - ChangeLog
197
198
  - AUTHORS
198
199
  - THANKS
199
200
  - COPYING
@@ -361,6 +362,7 @@ files:
361
362
  - doc/contentprocessor/builder.page
362
363
  - doc/contentprocessor/erb.page
363
364
  - doc/contentprocessor/erubis.page
365
+ - doc/contentprocessor/fragments.page
364
366
  - doc/contentprocessor/haml.page
365
367
  - doc/contentprocessor/maruku.page
366
368
  - doc/contentprocessor/rdiscount.page
@@ -395,10 +397,12 @@ files:
395
397
  - doc/tag/executecommand.page
396
398
  - doc/tag/includefile.page
397
399
  - doc/tag/langbar.page
400
+ - doc/tag/link.page
398
401
  - doc/tag/menu.page
399
402
  - doc/tag/metainfo.page
400
403
  - doc/tag/relocatable.page
401
404
  - doc/tag/sitemap.page
405
+ - doc/tag/tikz.page
402
406
  - doc/tag.template
403
407
  - doc/upgrading.page
404
408
  - doc/webgen_page_format.page
@@ -417,6 +421,7 @@ files:
417
421
  - lib/webgen/contentprocessor/context.rb
418
422
  - lib/webgen/contentprocessor/erb.rb
419
423
  - lib/webgen/contentprocessor/erubis.rb
424
+ - lib/webgen/contentprocessor/fragments.rb
420
425
  - lib/webgen/contentprocessor/haml.rb
421
426
  - lib/webgen/contentprocessor/maruku.rb
422
427
  - lib/webgen/contentprocessor/rdiscount.rb
@@ -444,6 +449,7 @@ files:
444
449
  - lib/webgen/sourcehandler/directory.rb
445
450
  - lib/webgen/sourcehandler/feed.rb
446
451
  - lib/webgen/sourcehandler/fragment.rb
452
+ - lib/webgen/sourcehandler/memory.rb
447
453
  - lib/webgen/sourcehandler/metainfo.rb
448
454
  - lib/webgen/sourcehandler/page.rb
449
455
  - lib/webgen/sourcehandler/sitemap.rb
@@ -457,10 +463,12 @@ files:
457
463
  - lib/webgen/tag/executecommand.rb
458
464
  - lib/webgen/tag/includefile.rb
459
465
  - lib/webgen/tag/langbar.rb
466
+ - lib/webgen/tag/link.rb
460
467
  - lib/webgen/tag/menu.rb
461
468
  - lib/webgen/tag/metainfo.rb
462
469
  - lib/webgen/tag/relocatable.rb
463
470
  - lib/webgen/tag/sitemap.rb
471
+ - lib/webgen/tag/tikz.rb
464
472
  - lib/webgen/tag.rb
465
473
  - lib/webgen/tree.rb
466
474
  - lib/webgen/version.rb
@@ -482,6 +490,7 @@ files:
482
490
  - misc/images/quote.gif
483
491
  - test/test_blackboard.rb
484
492
  - test/test_cache.rb
493
+ - test/test_cli.rb
485
494
  - test/test_common_sitemap.rb
486
495
  - test/test_configuration.rb
487
496
  - test/test_contentprocessor.rb
@@ -490,6 +499,7 @@ files:
490
499
  - test/test_contentprocessor_context.rb
491
500
  - test/test_contentprocessor_erb.rb
492
501
  - test/test_contentprocessor_erubis.rb
502
+ - test/test_contentprocessor_fragments.rb
493
503
  - test/test_contentprocessor_haml.rb
494
504
  - test/test_contentprocessor_maruku.rb
495
505
  - test/test_contentprocessor_rdiscount.rb
@@ -512,6 +522,7 @@ files:
512
522
  - test/test_sourcehandler_directory.rb
513
523
  - test/test_sourcehandler_feed.rb
514
524
  - test/test_sourcehandler_fragment.rb
525
+ - test/test_sourcehandler_memory.rb
515
526
  - test/test_sourcehandler_metainfo.rb
516
527
  - test/test_sourcehandler_page.rb
517
528
  - test/test_sourcehandler_sitemap.rb
@@ -524,10 +535,12 @@ files:
524
535
  - test/test_tag_executecommand.rb
525
536
  - test/test_tag_includefile.rb
526
537
  - test/test_tag_langbar.rb
538
+ - test/test_tag_link.rb
527
539
  - test/test_tag_menu.rb
528
540
  - test/test_tag_metainfo.rb
529
541
  - test/test_tag_relocatable.rb
530
542
  - test/test_tag_sitemap.rb
543
+ - test/test_tag_tikz.rb
531
544
  - test/test_tree.rb
532
545
  - test/test_webgentask.rb
533
546
  - test/test_website.rb