qrush-jekyll 0.3.0.1

Sign up to get free protection for your applications and to get access to all the features.
File without changes
data/test/test_post.rb ADDED
@@ -0,0 +1,99 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestPost < Test::Unit::TestCase
4
+ def setup
5
+
6
+ end
7
+
8
+ def test_valid
9
+ assert Post.valid?("2008-10-19-foo-bar.textile")
10
+ assert Post.valid?("foo/bar/2008-10-19-foo-bar.textile")
11
+
12
+ assert !Post.valid?("lol2008-10-19-foo-bar.textile")
13
+ assert !Post.valid?("blah")
14
+ end
15
+
16
+ def test_process
17
+ p = Post.allocate
18
+ p.process("2008-10-19-foo-bar.textile")
19
+
20
+ assert_equal Time.parse("2008-10-19"), p.date
21
+ assert_equal "foo-bar", p.slug
22
+ assert_equal ".textile", p.ext
23
+ end
24
+
25
+ def test_url
26
+ p = Post.allocate
27
+ p.categories = []
28
+ p.process("2008-10-19-foo-bar.textile")
29
+
30
+ assert_equal "/2008/10/19/foo-bar.html", p.url
31
+ end
32
+
33
+ def test_permalink
34
+ p = Post.allocate
35
+ p.process("2008-12-03-permalinked-post.textile")
36
+ p.read_yaml(File.join(File.dirname(__FILE__), *%w[source _posts]), "2008-12-03-permalinked-post.textile")
37
+
38
+ assert_equal "my_category/permalinked-post", p.permalink
39
+ end
40
+
41
+ def test_dir_respects_permalink
42
+ p = Post.allocate
43
+ p.process("2008-12-03-permalinked-post.textile")
44
+ p.read_yaml(File.join(File.dirname(__FILE__), *%w[source _posts]), "2008-12-03-permalinked-post.textile")
45
+
46
+ assert_equal "my_category", p.dir
47
+ end
48
+
49
+ def test_read_yaml
50
+ p = Post.allocate
51
+ p.read_yaml(File.join(File.dirname(__FILE__), *%w[source _posts]), "2008-10-18-foo-bar.textile")
52
+
53
+ assert_equal({"title" => "Foo Bar", "layout" => "default"}, p.data)
54
+ assert_equal "\nh1. {{ page.title }}\n\nBest *post* ever", p.content
55
+ end
56
+
57
+ def test_transform
58
+ p = Post.allocate
59
+ p.process("2008-10-18-foo-bar.textile")
60
+ p.read_yaml(File.join(File.dirname(__FILE__), *%w[source _posts]), "2008-10-18-foo-bar.textile")
61
+ p.transform
62
+
63
+ assert_equal "<h1>{{ page.title }}</h1>\n<p>Best <strong>post</strong> ever</p>", p.content
64
+ end
65
+
66
+ def test_render
67
+ p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2008-10-18-foo-bar.textile")
68
+ layouts = {"default" => Layout.new(File.join(File.dirname(__FILE__), *%w[source _layouts]), "simple.html")}
69
+ p.render(layouts, {"site" => {"posts" => []}})
70
+
71
+ assert_equal "<<< <h1>Foo Bar</h1>\n<p>Best <strong>post</strong> ever</p> >>>", p.output
72
+ end
73
+
74
+ def test_write
75
+ clear_dest
76
+
77
+ p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2008-10-18-foo-bar.textile")
78
+ layouts = {"default" => Layout.new(File.join(File.dirname(__FILE__), *%w[source _layouts]), "simple.html")}
79
+ p.render(layouts, {"site" => {"posts" => []}})
80
+ p.write(dest_dir)
81
+ end
82
+
83
+ def test_data
84
+ p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2008-11-21-complex.textile")
85
+ layouts = {"default" => Layout.new(File.join(File.dirname(__FILE__), *%w[source _layouts]), "simple.html")}
86
+ p.render(layouts, {"site" => {"posts" => []}})
87
+
88
+ assert_equal "<<< <p>url: /2008/11/21/complex.html<br />\ndate: #{Time.parse("2008-11-21")}<br />\nid: /2008/11/21/complex</p> >>>", p.output
89
+ end
90
+
91
+ def test_include
92
+ Jekyll.source = File.join(File.dirname(__FILE__), *%w[source])
93
+ p = Post.new(File.join(File.dirname(__FILE__), *%w[source]), '', "2008-12-13-include.markdown")
94
+ layouts = {"default" => Layout.new(File.join(File.dirname(__FILE__), *%w[source _layouts]), "simple.html")}
95
+ p.render(layouts, {"site" => {"posts" => []}})
96
+
97
+ assert_equal "<<< <hr />\n<p>Tom Preston-Werner github.com/mojombo</p>\n\n<p>This <em>is</em> cool</p> >>>", p.output
98
+ end
99
+ end
data/test/test_site.rb ADDED
@@ -0,0 +1,30 @@
1
+ require File.dirname(__FILE__) + '/helper'
2
+
3
+ class TestSite < Test::Unit::TestCase
4
+ def setup
5
+ source = File.join(File.dirname(__FILE__), *%w[source])
6
+ @s = Site.new(source, dest_dir)
7
+ end
8
+
9
+ def test_site_init
10
+
11
+ end
12
+
13
+ def test_read_layouts
14
+ @s.read_layouts
15
+
16
+ assert_equal ["default", "simple"].sort, @s.layouts.keys.sort
17
+ end
18
+
19
+ def test_read_posts
20
+ @s.read_posts('')
21
+
22
+ assert_equal 4, @s.posts.size
23
+ end
24
+
25
+ def test_write_posts
26
+ clear_dest
27
+
28
+ @s.process
29
+ end
30
+ end
metadata ADDED
@@ -0,0 +1,156 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: qrush-jekyll
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.3.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Tom Preston-Werner
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+
12
+ date: 2008-12-24 00:00:00 -08:00
13
+ default_executable: jekyll
14
+ dependencies:
15
+ - !ruby/object:Gem::Dependency
16
+ name: RedCloth
17
+ version_requirement:
18
+ version_requirements: !ruby/object:Gem::Requirement
19
+ requirements:
20
+ - - ">="
21
+ - !ruby/object:Gem::Version
22
+ version: "0"
23
+ version:
24
+ - !ruby/object:Gem::Dependency
25
+ name: liquid
26
+ version_requirement:
27
+ version_requirements: !ruby/object:Gem::Requirement
28
+ requirements:
29
+ - - ">="
30
+ - !ruby/object:Gem::Version
31
+ version: "0"
32
+ version:
33
+ - !ruby/object:Gem::Dependency
34
+ name: classifier
35
+ version_requirement:
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: "0"
41
+ version:
42
+ - !ruby/object:Gem::Dependency
43
+ name: maruku
44
+ version_requirement:
45
+ version_requirements: !ruby/object:Gem::Requirement
46
+ requirements:
47
+ - - ">="
48
+ - !ruby/object:Gem::Version
49
+ version: "0"
50
+ version:
51
+ - !ruby/object:Gem::Dependency
52
+ name: directory_watcher
53
+ version_requirement:
54
+ version_requirements: !ruby/object:Gem::Requirement
55
+ requirements:
56
+ - - ">="
57
+ - !ruby/object:Gem::Version
58
+ version: "0"
59
+ version:
60
+ - !ruby/object:Gem::Dependency
61
+ name: open4
62
+ version_requirement:
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: "0"
68
+ version:
69
+ - !ruby/object:Gem::Dependency
70
+ name: hoe
71
+ version_requirement:
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ requirements:
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 1.8.0
77
+ version:
78
+ description:
79
+ email:
80
+ - tom@mojombo.com
81
+ executables:
82
+ - jekyll
83
+ extensions: []
84
+
85
+ extra_rdoc_files:
86
+ - History.txt
87
+ - Manifest.txt
88
+ files:
89
+ - History.txt
90
+ - Manifest.txt
91
+ - README.textile
92
+ - Rakefile
93
+ - bin/jekyll
94
+ - jekyll.gemspec
95
+ - lib/jekyll.rb
96
+ - lib/jekyll/albino.rb
97
+ - lib/jekyll/converters/csv.rb
98
+ - lib/jekyll/converters/mephisto.rb
99
+ - lib/jekyll/converters/mt.rb
100
+ - lib/jekyll/converters/wordpress.rb
101
+ - lib/jekyll/convertible.rb
102
+ - lib/jekyll/core_ext.rb
103
+ - lib/jekyll/filters.rb
104
+ - lib/jekyll/layout.rb
105
+ - lib/jekyll/page.rb
106
+ - lib/jekyll/post.rb
107
+ - lib/jekyll/site.rb
108
+ - lib/jekyll/tags/highlight.rb
109
+ - lib/jekyll/tags/include.rb
110
+ - test/helper.rb
111
+ - test/source/_includes/sig.markdown
112
+ - test/source/_layouts/default.html
113
+ - test/source/_layouts/simple.html
114
+ - test/source/_posts/2008-10-18-foo-bar.textile
115
+ - test/source/_posts/2008-11-21-complex.textile
116
+ - test/source/_posts/2008-12-03-permalinked-post.textile
117
+ - test/source/_posts/2008-12-13-include.markdown
118
+ - test/source/css/screen.css
119
+ - test/source/index.html
120
+ - test/suite.rb
121
+ - test/test_generated_site.rb
122
+ - test/test_jekyll.rb
123
+ - test/test_post.rb
124
+ - test/test_site.rb
125
+ has_rdoc: true
126
+ homepage:
127
+ post_install_message:
128
+ rdoc_options:
129
+ - --main
130
+ - README.txt
131
+ require_paths:
132
+ - lib
133
+ required_ruby_version: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: "0"
138
+ version:
139
+ required_rubygems_version: !ruby/object:Gem::Requirement
140
+ requirements:
141
+ - - ">="
142
+ - !ruby/object:Gem::Version
143
+ version: "0"
144
+ version:
145
+ requirements: []
146
+
147
+ rubyforge_project: jekyll
148
+ rubygems_version: 1.2.0
149
+ signing_key:
150
+ specification_version: 2
151
+ summary: Jekyll is a simple, blog aware, static site generator.
152
+ test_files:
153
+ - test/test_generated_site.rb
154
+ - test/test_jekyll.rb
155
+ - test/test_post.rb
156
+ - test/test_site.rb