automatic 13.5.0 → 13.6.0
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +11 -5
- data/README.md +4 -6
- data/VERSION +1 -1
- data/automatic.gemspec +61 -18
- data/doc/ChangeLog +25 -0
- data/doc/PLUGINS +202 -12
- data/doc/PLUGINS.ja +221 -30
- data/doc/README +1 -1
- data/doc/README.ja +1 -1
- data/lib/automatic.rb +3 -3
- data/lib/automatic/feed_parser.rb +2 -2
- data/lib/automatic/log.rb +12 -2
- data/lib/automatic/pipeline.rb +1 -1
- data/lib/automatic/recipe.rb +5 -2
- data/plugins/custom_feed/svn_log.rb +3 -3
- data/plugins/filter/absolute_uri.rb +8 -4
- data/plugins/filter/accept.rb +61 -0
- data/plugins/filter/full_feed.rb +4 -5
- data/plugins/filter/github_feed.rb +36 -0
- data/plugins/filter/ignore.rb +1 -1
- data/plugins/filter/image.rb +1 -1
- data/plugins/filter/image_source.rb +34 -10
- data/plugins/filter/one.rb +1 -1
- data/plugins/filter/rand.rb +1 -1
- data/plugins/filter/sanitize.rb +50 -0
- data/plugins/filter/sort.rb +1 -1
- data/plugins/filter/tumblr_resize.rb +1 -1
- data/plugins/publish/console.rb +3 -3
- data/plugins/publish/console_link.rb +30 -0
- data/plugins/publish/eject.rb +42 -0
- data/plugins/publish/fluentd.rb +42 -0
- data/plugins/publish/google_calendar.rb +3 -3
- data/plugins/publish/hatena_bookmark.rb +1 -1
- data/plugins/publish/hipchat.rb +45 -0
- data/plugins/publish/instapaper.rb +2 -1
- data/plugins/publish/memcached.rb +44 -0
- data/plugins/publish/pocket.rb +1 -1
- data/plugins/publish/twitter.rb +1 -1
- data/plugins/store/database.rb +3 -3
- data/plugins/store/full_text.rb +2 -2
- data/plugins/store/permalink.rb +1 -1
- data/plugins/store/target_link.rb +3 -2
- data/plugins/subscription/chan_toru.rb +56 -0
- data/plugins/subscription/feed.rb +1 -1
- data/plugins/subscription/g_guide.rb +48 -0
- data/plugins/subscription/google_reader_star.rb +3 -3
- data/plugins/subscription/link.rb +2 -2
- data/plugins/subscription/pocket.rb +49 -0
- data/plugins/subscription/text.rb +3 -12
- data/plugins/subscription/tumblr.rb +7 -1
- data/plugins/subscription/twitter.rb +1 -1
- data/plugins/subscription/twitter_search.rb +50 -0
- data/plugins/subscription/weather.rb +7 -41
- data/script/build +3 -0
- data/spec/fixtures/sampleRecipe.yml +1 -1
- data/spec/lib/automatic/log_spec.rb +31 -0
- data/spec/lib/automatic/pipeline_spec.rb +1 -1
- data/spec/lib/automatic/recipe_spec.rb +1 -1
- data/spec/lib/automatic_spec.rb +3 -3
- data/spec/plugins/custom_feed/svn_log_spec.rb +1 -1
- data/spec/plugins/filter/absolute_uri_spec.rb +1 -1
- data/spec/plugins/filter/accept_spec.rb +331 -0
- data/spec/plugins/filter/full_feed_spec.rb +4 -6
- data/spec/plugins/filter/github_feed_spec.rb +54 -0
- data/spec/plugins/filter/ignore_spec.rb +1 -1
- data/spec/plugins/filter/image_source_spec.rb +17 -3
- data/spec/plugins/filter/image_spec.rb +1 -1
- data/spec/plugins/filter/one_spec.rb +1 -1
- data/spec/plugins/filter/rand_spec.rb +1 -1
- data/spec/plugins/filter/sanitize_spec.rb +153 -0
- data/spec/plugins/filter/sort_spec.rb +1 -1
- data/spec/plugins/filter/tumblr_resize_spec.rb +1 -1
- data/spec/plugins/notify/ikachan_spec.rb +1 -1
- data/spec/plugins/publish/console_spec.rb +1 -1
- data/spec/plugins/publish/eject_spec.rb +40 -0
- data/spec/plugins/publish/fluentd_spec.rb +39 -0
- data/spec/plugins/publish/google_calendar_spec.rb +1 -1
- data/spec/plugins/publish/hatena_bookmark_spec.rb +1 -1
- data/spec/plugins/publish/hipchat_spec.rb +69 -0
- data/spec/plugins/publish/instapaper_spec.rb +42 -28
- data/spec/plugins/publish/memcached_spec.rb +63 -0
- data/spec/plugins/publish/pocket_spec.rb +33 -33
- data/spec/plugins/publish/twitter_spec.rb +57 -19
- data/spec/plugins/store/full_text_spec.rb +6 -1
- data/spec/plugins/store/permalink_spec.rb +18 -19
- data/spec/plugins/store/target_link_spec.rb +1 -1
- data/spec/plugins/subscription/chan_toru_spec.rb +56 -0
- data/spec/plugins/subscription/feed_spec.rb +1 -1
- data/spec/plugins/subscription/g_guide_spec.rb +76 -0
- data/spec/plugins/subscription/google_reader_star_spec.rb +1 -1
- data/spec/plugins/subscription/link_spec.rb +1 -1
- data/spec/plugins/subscription/pocket_spec.rb +57 -0
- data/spec/plugins/subscription/text_spec.rb +1 -14
- data/spec/plugins/subscription/tumblr_spec.rb +3 -2
- data/spec/plugins/subscription/twitter_search_spec.rb +57 -0
- data/spec/plugins/subscription/twitter_spec.rb +3 -2
- data/spec/plugins/subscription/weather_spec.rb +2 -15
- data/spec/spec_helper.rb +1 -0
- data/test/integration/test_chan_toru.yml +19 -0
- data/test/integration/test_fluentd.yml +20 -0
- data/test/integration/test_pocket.yml +21 -0
- data/test/integration/test_sanitize.yml +22 -0
- data/test/integration/test_twitter_search.yml +21 -0
- metadata +145 -24
- data/plugins/publish/mail.rb +0 -64
- data/plugins/publish/smtp.rb +0 -48
- data/spec/plugins/publish/mail_spec.rb +0 -53
- data/spec/plugins/publish/smtp_spec.rb +0 -49
@@ -2,8 +2,8 @@
|
|
2
2
|
# Name:: Automatic::Plugin::Filter::FullFeed
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Created:: Jan 24, 2013
|
5
|
-
# Updated::
|
6
|
-
# Copyright::
|
5
|
+
# Updated:: May 23, 2013
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
8
|
|
9
9
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -38,9 +38,7 @@ describe Automatic::Plugin::FilterFullFeed do
|
|
38
38
|
subject.instance_variable_get(:@pipeline)[0].items[0].link.
|
39
39
|
should == "http://matome.naver.jp/odai/2129948007339738701/2129948085139809603"
|
40
40
|
subject.instance_variable_get(:@pipeline)[0].items[0].description.
|
41
|
-
should
|
42
|
-
"<div class=\"LyMain\" role=\"main\" data-na=\"NA:main\">\r\n\t<div class=\"ArMain02\" data-na=\"NA:comment\">\r\n\r\n\r\n<script>\r\nvar COMMENT_TARGET_ID = \"PSImipbkFp746BTYcGvB8iizlwODIqiioNZ\";\r\nvar COMMENT_TYPE_CODE = \"R\";\r\nvar COMMENT_ITEM_TOTAL = 0;\r\n</script><a name=\"comment\"></a>\r\n<div id=\"ancMTMComment\" class=\"MdMTMComment01\">\r\n\r\n\t<h2 class=\"mdMTMComment01Ttl\">このまとめへのコメント<span class=\"mdMTMComment01CounterWrap\">(<span class=\"mdMTMComment01Counter\">0</span>)</span>\n</h2>\r\n\r\n\t<div class=\"MdCommentForm01\">\r\n\t<p class=\"mdCommentForm01Input\"><textarea class=\"mdCommentForm01InputTxt\" placeholder=\"追加するコメントを入力\"></textarea></p>\r\n\t<p class=\"mdCommentForm01Btn\"><span class=\"MdBtn01Post01\"><input type=\"button\" value=\"書き込む\" class=\"mdBtn01Post01Btn\" data-na=\"NC:save\"></span></p>\r\n\t</div>\r\n\r\n\t<ul class=\"MdCommentList01\"><!-- /.MdCommentList01 --></ul>\n<div class=\"MdPagination04\" data-na=\"NA:pager\">\r\n\r\n\r\n\r\n\t\t<strong>1</strong>\r\n<!--/MdPagination04-->\n</div>\r\n\r\n<script type=\"text/javascript\">\r\n$(function() {\r\n nj.Bootloader.done(\"nj.matome.comment\", function() {\r\n var cl = $(\"ul.MdCommentList01\").mtmCommentSet({\"encryptId\" : COMMENT_TARGET_ID, \"typeCode\": COMMENT_TYPE_CODE});\r\n $(\".MdPagination04\").njPageNavi({\"item\":0,\"onClickEvent\" : function(e, n){cl.mtmCommentSet(\"setArgs\",{\"page\":n});cl.mtmCommentSet(\"getComment\");}});\r\n });\r\n});\r\n</script><!--/.MdMTMComment01-->\n</div>\r\n\t<!--/ArMain02-->\n</div>\r\n<!--/LyMain-->\n</div>"
|
43
|
-
|
41
|
+
should match(/このまとめを見る/)
|
44
42
|
}
|
45
43
|
end
|
46
44
|
end
|
@@ -95,7 +93,7 @@ describe Automatic::Plugin::FilterFullFeed do
|
|
95
93
|
root_dir = File.expand_path(File.join(File.dirname(__FILE__), "..", "..", ".."))
|
96
94
|
dir = (File.expand_path('~/.automatic/assets/siteinfo'))
|
97
95
|
if File.directory?(dir)
|
98
|
-
puts "Removing #{dir}"
|
96
|
+
Automatic::Log.puts(:info, "Removing #{dir}")
|
99
97
|
FileUtils.rm_r(dir)
|
100
98
|
end
|
101
99
|
return dir, root_dir
|
@@ -0,0 +1,54 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Name:: Automatic::Plugin::Filter::GithubFeed
|
3
|
+
# Author:: Kohei Hasegawa <http://github.com/banyan>
|
4
|
+
# Created:: Jun 6, 2013
|
5
|
+
# Updated:: Jun 6, 2013
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
|
+
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
|
+
|
9
|
+
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
10
|
+
|
11
|
+
require 'filter/github_feed'
|
12
|
+
|
13
|
+
describe Automatic::Plugin::FilterGithubFeed do
|
14
|
+
context "with description with filename of tumblr should be renamed 500 to 1280" do
|
15
|
+
subject {
|
16
|
+
described_class.new(
|
17
|
+
{},
|
18
|
+
AutomaticSpec.generate_pipeline {
|
19
|
+
feed {
|
20
|
+
2.times do |i|
|
21
|
+
@channel.items << Hashie::Mash.new(
|
22
|
+
:title => { :content => "title#{i}" },
|
23
|
+
:id => { :content => i.to_s },
|
24
|
+
:content => { :content => "description#{i}" }
|
25
|
+
)
|
26
|
+
end
|
27
|
+
}
|
28
|
+
}
|
29
|
+
)
|
30
|
+
}
|
31
|
+
|
32
|
+
describe "#run" do
|
33
|
+
its(:run) { should have(1).feeds }
|
34
|
+
|
35
|
+
specify {
|
36
|
+
subject.run
|
37
|
+
|
38
|
+
subject.instance_variable_get(:@pipeline)[0].items[0].link
|
39
|
+
.should == '1'
|
40
|
+
subject.instance_variable_get(:@pipeline)[0].items[0].title
|
41
|
+
.should == 'title1'
|
42
|
+
subject.instance_variable_get(:@pipeline)[0].items[0].description
|
43
|
+
.should == 'description1'
|
44
|
+
|
45
|
+
subject.instance_variable_get(:@pipeline)[0].items[1].link
|
46
|
+
.should == '0'
|
47
|
+
subject.instance_variable_get(:@pipeline)[0].items[1].title
|
48
|
+
.should == 'title0'
|
49
|
+
subject.instance_variable_get(:@pipeline)[0].items[1].description
|
50
|
+
.should == 'description0'
|
51
|
+
}
|
52
|
+
end
|
53
|
+
end
|
54
|
+
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
# Name:: Automatic::Plugin::Filter::Ignore
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Updated:: Jan 19, 2013
|
5
|
-
# Copyright::
|
5
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
6
6
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
7
7
|
|
8
8
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -4,7 +4,7 @@
|
|
4
4
|
# 774 <http://id774.net>
|
5
5
|
# Created:: Mar 1, 2012
|
6
6
|
# Updated:: Jun 14, 2012
|
7
|
-
# Copyright::
|
7
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
8
8
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
9
9
|
|
10
10
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -54,7 +54,7 @@ describe Automatic::Plugin::FilterImageSource do
|
|
54
54
|
end
|
55
55
|
|
56
56
|
describe Automatic::Plugin::FilterImageSource do
|
57
|
-
context "with
|
57
|
+
context "with link to tag image" do
|
58
58
|
subject {
|
59
59
|
Automatic::Plugin::FilterImageSource.new({},
|
60
60
|
AutomaticSpec.generate_pipeline {
|
@@ -64,12 +64,26 @@ describe Automatic::Plugin::FilterImageSource do
|
|
64
64
|
}})}
|
65
65
|
|
66
66
|
describe "#run" do
|
67
|
+
before do
|
68
|
+
subject.stub!(:rewrite_link).and_return(['http://huge.png'])
|
69
|
+
end
|
70
|
+
|
67
71
|
its(:run) { should have(1).feeds }
|
68
72
|
specify {
|
69
73
|
subject.run
|
70
74
|
subject.instance_variable_get(:@pipeline)[0].items[0].link.
|
71
|
-
should
|
75
|
+
should == 'http://huge.png'
|
72
76
|
}
|
73
77
|
end
|
78
|
+
|
79
|
+
describe "#imgs" do
|
80
|
+
before do
|
81
|
+
open = Hashie::Mash.new
|
82
|
+
open.read = '<img src="http://a.png"><br /><img src="http://b.png">'
|
83
|
+
subject.stub!(:open).and_return(open)
|
84
|
+
end
|
85
|
+
|
86
|
+
its(:run) { subject.run[0].items.length.should == 2 }
|
87
|
+
end
|
74
88
|
end
|
75
89
|
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Created:: Sep 18, 2012
|
5
5
|
# Updated:: Sep 18, 2012
|
6
|
-
# Copyright::
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
8
|
|
9
9
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# Author:: soramugi <http://soramugi.net>
|
4
4
|
# Created:: May 8, 2013
|
5
5
|
# Updated:: May 8, 2013
|
6
|
-
# Copyright::
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
8
|
|
9
9
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -4,7 +4,7 @@
|
|
4
4
|
# 774 <http://id774.net>
|
5
5
|
# Created:: May 6, 2013
|
6
6
|
# Updated:: Mar 7, 2013
|
7
|
-
# Copyright::
|
7
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
8
8
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
9
9
|
|
10
10
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -0,0 +1,153 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Name:: Automatic::Plugin::Filter::Sanitize
|
3
|
+
# Author:: 774 <http://id774.net>
|
4
|
+
# Created:: Jun 20, 2013
|
5
|
+
# Updated:: Jun 20, 2013
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
|
+
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
|
+
|
9
|
+
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
10
|
+
|
11
|
+
require 'filter/sanitize'
|
12
|
+
|
13
|
+
describe Automatic::Plugin::FilterSanitize do
|
14
|
+
context "It should be sanitized" do
|
15
|
+
subject {
|
16
|
+
Automatic::Plugin::FilterSanitize.new(
|
17
|
+
{},
|
18
|
+
AutomaticSpec.generate_pipeline {
|
19
|
+
feed {
|
20
|
+
item "http://testsite.org", "hoge",
|
21
|
+
"<a>fuga</a>",
|
22
|
+
"Mon, 07 Mar 2011 15:54:11 +0900"
|
23
|
+
}
|
24
|
+
}
|
25
|
+
)
|
26
|
+
}
|
27
|
+
|
28
|
+
describe "#run" do
|
29
|
+
its(:run) { should have(1).feeds }
|
30
|
+
|
31
|
+
specify {
|
32
|
+
subject.run
|
33
|
+
subject.instance_variable_get(:@return_feeds)[0].items.
|
34
|
+
count.should == 1
|
35
|
+
subject.instance_variable_get(:@return_feeds)[0].items[0].description.
|
36
|
+
should == 'fuga'
|
37
|
+
}
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
context "It should not be sanitized in basic mode" do
|
42
|
+
subject {
|
43
|
+
Automatic::Plugin::FilterSanitize.new(
|
44
|
+
{
|
45
|
+
'mode' => "basic"
|
46
|
+
},
|
47
|
+
AutomaticSpec.generate_pipeline {
|
48
|
+
feed {
|
49
|
+
item "http://testsite.org", "hoge",
|
50
|
+
"<a>fuga</a>",
|
51
|
+
"Mon, 07 Mar 2011 15:54:11 +0900"
|
52
|
+
}
|
53
|
+
}
|
54
|
+
)
|
55
|
+
}
|
56
|
+
|
57
|
+
describe "#run" do
|
58
|
+
its(:run) { should have(1).feeds }
|
59
|
+
|
60
|
+
specify {
|
61
|
+
subject.run
|
62
|
+
subject.instance_variable_get(:@return_feeds)[0].items.
|
63
|
+
count.should == 1
|
64
|
+
subject.instance_variable_get(:@return_feeds)[0].items[0].description.
|
65
|
+
should == '<a rel="nofollow">fuga</a>'
|
66
|
+
}
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
70
|
+
context "It should not be sanitized in restricted mode" do
|
71
|
+
subject {
|
72
|
+
Automatic::Plugin::FilterSanitize.new(
|
73
|
+
{
|
74
|
+
'mode' => "restricted"
|
75
|
+
},
|
76
|
+
AutomaticSpec.generate_pipeline {
|
77
|
+
feed {
|
78
|
+
item "http://testsite.org", "hoge",
|
79
|
+
"<a>fuga</a>",
|
80
|
+
"Mon, 07 Mar 2011 15:54:11 +0900"
|
81
|
+
}
|
82
|
+
}
|
83
|
+
)
|
84
|
+
}
|
85
|
+
|
86
|
+
describe "#run" do
|
87
|
+
its(:run) { should have(1).feeds }
|
88
|
+
|
89
|
+
specify {
|
90
|
+
subject.run
|
91
|
+
subject.instance_variable_get(:@return_feeds)[0].items.
|
92
|
+
count.should == 1
|
93
|
+
subject.instance_variable_get(:@return_feeds)[0].items[0].description.
|
94
|
+
should == 'fuga'
|
95
|
+
}
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
context "It should not be sanitized in relaxed mode" do
|
100
|
+
subject {
|
101
|
+
Automatic::Plugin::FilterSanitize.new(
|
102
|
+
{
|
103
|
+
'mode' => "relaxed"
|
104
|
+
},
|
105
|
+
AutomaticSpec.generate_pipeline {
|
106
|
+
feed {
|
107
|
+
item "http://testsite.org", "hoge",
|
108
|
+
"<a>fuga</a>",
|
109
|
+
"Mon, 07 Mar 2011 15:54:11 +0900"
|
110
|
+
}
|
111
|
+
}
|
112
|
+
)
|
113
|
+
}
|
114
|
+
|
115
|
+
describe "#run" do
|
116
|
+
its(:run) { should have(1).feeds }
|
117
|
+
|
118
|
+
specify {
|
119
|
+
subject.run
|
120
|
+
subject.instance_variable_get(:@return_feeds)[0].items.
|
121
|
+
count.should == 1
|
122
|
+
subject.instance_variable_get(:@return_feeds)[0].items[0].description.
|
123
|
+
should == '<a>fuga</a>'
|
124
|
+
}
|
125
|
+
end
|
126
|
+
end
|
127
|
+
|
128
|
+
context "It should be sanitized" do
|
129
|
+
subject {
|
130
|
+
Automatic::Plugin::FilterSanitize.new(
|
131
|
+
{},
|
132
|
+
AutomaticSpec.generate_pipeline {
|
133
|
+
feed {
|
134
|
+
item "http://testsite.org", "hoge"
|
135
|
+
}
|
136
|
+
}
|
137
|
+
)
|
138
|
+
}
|
139
|
+
|
140
|
+
describe "#run" do
|
141
|
+
its(:run) { should have(1).feeds }
|
142
|
+
|
143
|
+
specify {
|
144
|
+
subject.run
|
145
|
+
subject.instance_variable_get(:@return_feeds)[0].items.
|
146
|
+
count.should == 1
|
147
|
+
subject.instance_variable_get(:@return_feeds)[0].items[0].description.
|
148
|
+
should == ''
|
149
|
+
}
|
150
|
+
end
|
151
|
+
end
|
152
|
+
|
153
|
+
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Created:: Mar 23, 2012
|
5
5
|
# Updated:: Jan 23, 2013
|
6
|
-
# Copyright::
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
8
|
|
9
9
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -2,7 +2,7 @@
|
|
2
2
|
# Name:: Automatic::Plugin::Filter::TumblrResize
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Updated:: Jun 14, 2012
|
5
|
-
# Copyright::
|
5
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
6
6
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
7
7
|
|
8
8
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -30,7 +30,7 @@ end
|
|
30
30
|
describe Automatic::Plugin::Ikachan do
|
31
31
|
describe "#post" do
|
32
32
|
subject {
|
33
|
-
Automatic::Plugin::Ikachan.new.tap {
|
33
|
+
Automatic::Plugin::Ikachan.new.tap {|ikachan|
|
34
34
|
ikachan.params = {
|
35
35
|
"channels" => "#room",
|
36
36
|
"url" => "http://sample.com",
|
@@ -2,7 +2,7 @@
|
|
2
2
|
# Name:: Automatic::Plugin::Publish::Console
|
3
3
|
# Author:: 774 <http://id774.net>
|
4
4
|
# Updated:: Jun 14, 2012
|
5
|
-
# Copyright::
|
5
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
6
6
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
7
7
|
|
8
8
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
@@ -0,0 +1,40 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Name:: Automatic::Plugin::Publish::Eject
|
3
|
+
# Author:: soramugi <http://soramugi.net>
|
4
|
+
# Created:: Jun 9, 2013
|
5
|
+
# Updated:: Jun 9, 2013
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
|
+
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
|
+
|
9
|
+
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
10
|
+
|
11
|
+
require 'publish/eject'
|
12
|
+
|
13
|
+
describe Automatic::Plugin::PublishEject do
|
14
|
+
before do
|
15
|
+
@pipeline = AutomaticSpec.generate_pipeline {
|
16
|
+
feed { item "http://github.com" }}
|
17
|
+
end
|
18
|
+
|
19
|
+
subject {
|
20
|
+
Automatic::Plugin::PublishEject.new({}, @pipeline)
|
21
|
+
}
|
22
|
+
|
23
|
+
it "should eject of feeds" do
|
24
|
+
subject.stub(:eject_cmd).and_return('echo')
|
25
|
+
subject.run.should have(1).items
|
26
|
+
end
|
27
|
+
|
28
|
+
subject {
|
29
|
+
Automatic::Plugin::PublishEject.new({'interval' => 0}, @pipeline)
|
30
|
+
}
|
31
|
+
|
32
|
+
it "should eject of feeds" do
|
33
|
+
subject.stub(:eject_cmd).and_return('echo')
|
34
|
+
subject.run.should have(1).items
|
35
|
+
end
|
36
|
+
|
37
|
+
it "should eject_cmd" do
|
38
|
+
subject.eject_cmd.should_not == ''
|
39
|
+
end
|
40
|
+
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
# -*- coding: utf-8 -*-
|
2
|
+
# Name:: Automatic::Plugin::Publish::Fluentd
|
3
|
+
# Author:: 774 <http://id774.net>
|
4
|
+
# Created:: Jun 21, 2013
|
5
|
+
# Updated:: Jun 21, 2013
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
|
+
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
|
+
|
9
|
+
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|
10
|
+
|
11
|
+
require 'publish/fluentd'
|
12
|
+
|
13
|
+
describe Automatic::Plugin::PublishFluentd do
|
14
|
+
context 'when feed' do
|
15
|
+
describe 'should forward the feeds' do
|
16
|
+
subject {
|
17
|
+
Automatic::Plugin::PublishFluentd.new(
|
18
|
+
{
|
19
|
+
'host' => "localhost",
|
20
|
+
'port' => "9999",
|
21
|
+
'tag' => "debug.forward"
|
22
|
+
},
|
23
|
+
AutomaticSpec.generate_pipeline{
|
24
|
+
feed {
|
25
|
+
item "http://github.com", "hoge",
|
26
|
+
"<a>fuga</a>"
|
27
|
+
}
|
28
|
+
}
|
29
|
+
)
|
30
|
+
}
|
31
|
+
|
32
|
+
its (:run) {
|
33
|
+
fluentd = mock("fluentd")
|
34
|
+
subject.run.should have(1).feed
|
35
|
+
}
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# Author:: kzgs
|
4
4
|
# Created:: Feb 26, 2012
|
5
5
|
# Updated:: Mar 3, 2012
|
6
|
-
# Copyright::
|
6
|
+
# Copyright:: Copyright (c) 2012-2013 Automatic Ruby Developers.
|
7
7
|
# License:: Licensed under the GNU GENERAL PUBLIC LICENSE, Version 3.0.
|
8
8
|
|
9
9
|
require File.expand_path(File.dirname(__FILE__) + '../../../spec_helper')
|