cinch-memo 0.1.0 → 0.1.1

Sign up to get free protection for your applications and to get access to all the features.
data/.gitignore CHANGED
@@ -1,3 +1,4 @@
1
1
  pkg/*
2
2
  *.gem
3
+ *.swp
3
4
  .bundle
data/Gemfile.lock ADDED
@@ -0,0 +1,35 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ cinch-memo (0.1.0)
5
+ cinch
6
+ json
7
+ redis
8
+
9
+ GEM
10
+ remote: http://rubygems.org/
11
+ specs:
12
+ cinch (1.1.1)
13
+ json (1.5.1)
14
+ mocha (0.9.10)
15
+ rake
16
+ rake (0.8.7)
17
+ redis (2.1.1)
18
+ riot (0.12.1)
19
+ rr
20
+ term-ansicolor
21
+ rr (1.0.2)
22
+ term-ansicolor (1.0.5)
23
+ timecop (0.3.5)
24
+
25
+ PLATFORMS
26
+ ruby
27
+
28
+ DEPENDENCIES
29
+ cinch
30
+ cinch-memo!
31
+ json
32
+ mocha
33
+ redis
34
+ riot (~> 0.12.0)
35
+ timecop
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (C) 2011 by Arthur Chiu
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining a copy
4
+ of this software and associated documentation files (the "Software"), to deal
5
+ in the Software without restriction, including without limitation the rights
6
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
7
+ copies of the Software, and to permit persons to whom the Software is
8
+ furnished to do so, subject to the following conditions:
9
+
10
+ The above copyright notice and this permission notice shall be included in
11
+ all copies or substantial portions of the Software.
12
+
13
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
14
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
15
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
16
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
17
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
18
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
19
+ THE SOFTWARE.
20
+
data/README.md CHANGED
@@ -42,7 +42,7 @@ It's simple. follow the guide on cinch or do something like:
42
42
 
43
43
  # mybot.rb
44
44
  require 'cinch'
45
- require 'cinch-memo'
45
+ require 'cinch/plugins/memo'
46
46
 
47
47
  Cinch::Plugins::Memo::Base.configure do |c|
48
48
  c.store = :redis # data store
@@ -75,4 +75,4 @@ TODO
75
75
  * add auto deliver message functionality when you sign on.
76
76
  * add rate limiting ability
77
77
  * add additional backend stores.
78
- * add some kind of auth mech
78
+ * add some kind of auth mech
data/cinch-memo.gemspec CHANGED
@@ -1,6 +1,6 @@
1
1
  # -*- encoding: utf-8 -*-
2
2
  $:.push File.expand_path("../lib", __FILE__)
3
- require "cinch-memo/version"
3
+ require "cinch/plugins/memo/version"
4
4
 
5
5
  Gem::Specification.new do |s|
6
6
  s.name = "cinch-memo"
@@ -8,7 +8,7 @@ Gem::Specification.new do |s|
8
8
  s.platform = Gem::Platform::RUBY
9
9
  s.authors = ["Arthur Chiu"]
10
10
  s.email = ["mr.arthur.chiu@gmail.com"]
11
- s.homepage = "http://rubygems.org/gems/cinch-memo"
11
+ s.homepage = "https://github.com/achiu/cinch-memo"
12
12
  s.summary = %q{Memo Plugin for Cinch}
13
13
  s.description = %q{Give your Cinch bot memo functionality!}
14
14
 
@@ -19,10 +19,10 @@ Gem::Specification.new do |s|
19
19
  s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
20
20
  s.require_paths = ["lib"]
21
21
 
22
- s.add_dependency 'cinch'
22
+ s.add_dependency 'cinch', '~>1.1.1'
23
23
  s.add_dependency 'json'
24
- s.add_dependency 'redis'
25
- s.add_development_dependency 'riot', '~>0.12.0'
26
- s.add_development_dependency 'mocha'
27
- s.add_development_dependency 'timecop'
24
+ s.add_dependency 'redis'
25
+ s.add_development_dependency 'riot', '~>0.12.0'
26
+ s.add_development_dependency 'mocha', '~>0.9.10'
27
+ s.add_development_dependency 'timecop', '~>0.3.5'
28
28
  end
@@ -6,7 +6,7 @@ module Cinch
6
6
  attr_accessor :backend
7
7
 
8
8
  class << self
9
- attr_accessor :store, :host, :port
9
+ attr_accessor :store, :host, :port, :db, :collection
10
10
 
11
11
  def configure(&block)
12
12
  yield self
@@ -18,6 +18,7 @@ module Cinch
18
18
  @backend =
19
19
  case self.class.store
20
20
  when :redis then Cinch::Plugins::Memo::Redis.new(self.class.host, self.class.port)
21
+ when :mongo then Cinch::Plugins::Memo::Mongo.new(self.class.host, self.class.port, :db => self.class.db, :collection => self.class.collection)
21
22
  else
22
23
  self.class.store
23
24
  end
@@ -31,7 +32,7 @@ module Cinch
31
32
  def listen(m)
32
33
  messages = @backend.retrieve(m.user.nick)
33
34
  if messages || !messages.empty?
34
- messages.each { |msg| User(m.user.nick).send(msg) }
35
+ messages.each { |msg| m.user.send(msg) }
35
36
  end
36
37
  end
37
38
 
@@ -1,7 +1,7 @@
1
1
  module Cinch
2
2
  module Plugins
3
3
  module Memo
4
- VERSION = "0.1.0"
4
+ VERSION = "0.1.1"
5
5
  end
6
6
  end
7
7
  end
@@ -0,0 +1,11 @@
1
+ require 'cinch'
2
+
3
+ module Cinch
4
+ module Plugins
5
+ module Memo
6
+ autoload :Base, File.expand_path('../memo/base',__FILE__)
7
+ autoload :Redis, File.expand_path('../memo/store/redis',__FILE__)
8
+ # autoload :Mongo, File.expand_path('../memo/store/mongo',__FILE__)
9
+ end
10
+ end
11
+ end
data/test/base_test.rb CHANGED
@@ -84,8 +84,7 @@ context "Base" do
84
84
  end
85
85
  context "with messages" do
86
86
  setup do
87
- @u = mock() ; @u.expects(:send).with('john')
88
- @base.expects(:User).with('chris').returns(@u)
87
+ @replier.expects(:send).with('john')
89
88
  @backend.expects(:retrieve).with('chris').returns(['john'])
90
89
  @base.backend = @backend
91
90
  end
@@ -95,7 +94,7 @@ context "Base" do
95
94
  context "without messages" do
96
95
  setup do
97
96
  @backend.expects(:retrieve).with('chris').returns([])
98
- @base.expects(:User).with('chris').never
97
+ @replier.expects(:send).with('john').never
99
98
  @base.backend = @backend
100
99
  end
101
100
  asserts("that it doesn't ping them") { @base.listen(@message) }
data/test/teststrap.rb CHANGED
@@ -3,7 +3,7 @@ require 'json'
3
3
  require 'riot'
4
4
  require 'mocha'
5
5
  require 'timecop'
6
- require File.expand_path('../../lib/cinch-memo',__FILE__)
6
+ require File.expand_path('../../lib/cinch/plugins/memo',__FILE__)
7
7
 
8
8
  class Riot::Situation
9
9
  include Mocha::API
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 1
8
- - 0
9
- version: 0.1.0
8
+ - 1
9
+ version: 0.1.1
10
10
  platform: ruby
11
11
  authors:
12
12
  - Arthur Chiu
@@ -14,7 +14,7 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-11-09 00:00:00 -08:00
17
+ date: 2011-01-29 00:00:00 -08:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
@@ -23,11 +23,13 @@ dependencies:
23
23
  requirement: &id001 !ruby/object:Gem::Requirement
24
24
  none: false
25
25
  requirements:
26
- - - ">="
26
+ - - ~>
27
27
  - !ruby/object:Gem::Version
28
28
  segments:
29
- - 0
30
- version: "0"
29
+ - 1
30
+ - 1
31
+ - 1
32
+ version: 1.1.1
31
33
  type: :runtime
32
34
  version_requirements: *id001
33
35
  - !ruby/object:Gem::Dependency
@@ -77,11 +79,13 @@ dependencies:
77
79
  requirement: &id005 !ruby/object:Gem::Requirement
78
80
  none: false
79
81
  requirements:
80
- - - ">="
82
+ - - ~>
81
83
  - !ruby/object:Gem::Version
82
84
  segments:
83
85
  - 0
84
- version: "0"
86
+ - 9
87
+ - 10
88
+ version: 0.9.10
85
89
  type: :development
86
90
  version_requirements: *id005
87
91
  - !ruby/object:Gem::Dependency
@@ -90,11 +94,13 @@ dependencies:
90
94
  requirement: &id006 !ruby/object:Gem::Requirement
91
95
  none: false
92
96
  requirements:
93
- - - ">="
97
+ - - ~>
94
98
  - !ruby/object:Gem::Version
95
99
  segments:
96
100
  - 0
97
- version: "0"
101
+ - 3
102
+ - 5
103
+ version: 0.3.5
98
104
  type: :development
99
105
  version_requirements: *id006
100
106
  description: Give your Cinch bot memo functionality!
@@ -109,19 +115,21 @@ extra_rdoc_files: []
109
115
  files:
110
116
  - .gitignore
111
117
  - Gemfile
118
+ - Gemfile.lock
119
+ - LICENSE
112
120
  - README.md
113
121
  - Rakefile
114
122
  - cinch-memo.gemspec
115
- - lib/cinch-memo.rb
116
- - lib/cinch-memo/base.rb
117
- - lib/cinch-memo/store/redis.rb
118
- - lib/cinch-memo/version.rb
123
+ - lib/cinch/plugins/memo.rb
124
+ - lib/cinch/plugins/memo/base.rb
125
+ - lib/cinch/plugins/memo/store/redis.rb
126
+ - lib/cinch/plugins/memo/version.rb
119
127
  - test.watchr
120
128
  - test/base_test.rb
121
129
  - test/store/redis_test.rb
122
130
  - test/teststrap.rb
123
131
  has_rdoc: true
124
- homepage: http://rubygems.org/gems/cinch-memo
132
+ homepage: https://github.com/achiu/cinch-memo
125
133
  licenses: []
126
134
 
127
135
  post_install_message:
data/lib/cinch-memo.rb DELETED
@@ -1,10 +0,0 @@
1
- require 'cinch'
2
-
3
- module Cinch
4
- module Plugins
5
- module Memo
6
- autoload :Base, 'cinch-memo/base'
7
- autoload :Redis, 'cinch-memo/store/redis'
8
- end
9
- end
10
- end