cinch-hangouts 1.0.4 → 1.0.5

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.
@@ -4,26 +4,27 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
  require 'cinch/plugins/hangouts/version'
5
5
 
6
6
  Gem::Specification.new do |gem|
7
- gem.name = "cinch-hangouts"
7
+ gem.name = 'cinch-hangouts'
8
8
  gem.version = Cinch::Plugins::Hangouts::VERSION
9
- gem.authors = ["Brian Haberer"]
10
- gem.email = ["bhaberer@gmail.com"]
9
+ gem.authors = ['Brian Haberer']
10
+ gem.email = ['bhaberer@gmail.com']
11
11
  gem.description = %q{Cinch Plugin to track any Google Hangouts that are linked into the channel}
12
12
  gem.summary = %q{Cinch Plugin for racking Google Hangouts}
13
- gem.homepage = "https://github.com/bhaberer/cinch-hangouts"
13
+ gem.homepage = 'https://github.com/bhaberer/cinch-hangouts'
14
+ gem.license = 'MIT'
14
15
 
15
16
  gem.files = `git ls-files`.split($/)
16
17
  gem.executables = gem.files.grep(%r{^bin/}).map{ |f| File.basename(f) }
17
18
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
- gem.require_paths = ["lib"]
19
+ gem.require_paths = ['lib']
19
20
 
20
- gem.add_development_dependency 'rake'
21
- gem.add_development_dependency 'rspec'
22
- gem.add_development_dependency 'coveralls'
23
- gem.add_development_dependency 'cinch-test'
21
+ gem.add_development_dependency 'rake'
22
+ gem.add_development_dependency 'rspec'
23
+ gem.add_development_dependency 'coveralls'
24
+ gem.add_development_dependency 'cinch-test'
24
25
 
25
- gem.add_dependency 'cinch', '~> 2.0.5'
26
- gem.add_dependency 'cinch-storage', '~> 1.0.3'
27
- gem.add_dependency 'cinch-toolbox', '~> 1.0.3'
28
- gem.add_dependency 'time-lord', '~> 1.0.1'
26
+ gem.add_dependency 'cinch', '~> 2.0.12'
27
+ gem.add_dependency 'cinch-storage', '~> 1.1.0'
28
+ gem.add_dependency 'cinch-toolbox', '~> 1.1.0'
29
+ gem.add_dependency 'time-lord', '~> 1.0.1'
29
30
  end
@@ -1,6 +1,6 @@
1
1
  # -*- coding: utf-8 -*-
2
2
  require 'cinch'
3
- require 'cinch-storage'
3
+ require 'cinch/storage'
4
4
  require 'cinch/toolbox'
5
5
  require 'time-lord'
6
6
 
@@ -95,12 +95,12 @@ module Cinch::Plugins
95
95
  end
96
96
  end
97
97
 
98
- def respond(m, message)
98
+ def respond(user, message)
99
99
  case @response_type
100
100
  when :notice
101
- m.user.notice message
101
+ user.notice message
102
102
  when :pm
103
- m.user.send message
103
+ user.send message
104
104
  end
105
105
  end
106
106
  end
@@ -10,16 +10,12 @@ class Hangout < Cinch::Plugins::Hangouts
10
10
  end
11
11
 
12
12
  def save
13
- storage = CinchStorage.new(@@hangout_filename)
13
+ storage = Cinch::Storage.new(@@hangout_filename)
14
14
  storage.data[:hangouts] ||= {}
15
15
  storage.data[:hangouts][id] = self
16
16
  storage.save
17
17
  end
18
18
 
19
- def to_yaml
20
- { nick: @nick, id: @id, time: @time }
21
- end
22
-
23
19
  def self.find_by_id(id)
24
20
  listing[id]
25
21
  end
@@ -52,7 +48,7 @@ class Hangout < Cinch::Plugins::Hangouts
52
48
  private
53
49
 
54
50
  def self.read_file
55
- storage = CinchStorage.new(@@hangout_filename)
51
+ storage = Cinch::Storage.new(@@hangout_filename)
56
52
  unless storage.data[:hangouts]
57
53
  storage.data[:hangouts] = {}
58
54
  storage.save
@@ -34,10 +34,11 @@ class Subscription < Cinch::Plugins::Hangouts
34
34
  nick = Hangout.find_by_id(hangout_id).nick
35
35
  list.each_value do |s|
36
36
  # Don't link the person who linked it.
37
- if nick != s.nick
37
+ unless nick == s.nick
38
38
  user = Cinch::User.new(s.nick, bot)
39
- user.msg("#{nick} just linked a new hangout at: " +
40
- Hangout.url(hangout_id))
39
+ message = "#{nick} just linked a new hangout at: " +
40
+ Hangout.url(hangout_id)
41
+ Hangout.respond(user, message)
41
42
  end
42
43
  end
43
44
  end
@@ -45,6 +46,6 @@ class Subscription < Cinch::Plugins::Hangouts
45
46
  private
46
47
 
47
48
  def self.storage
48
- CinchStorage.new(@@subscription_filename)
49
+ Cinch::Storage.new(@@subscription_filename)
49
50
  end
50
51
  end
@@ -3,7 +3,7 @@ module Cinch
3
3
  module Plugins
4
4
  # Versioning Info
5
5
  class Hangouts
6
- VERSION = '1.0.4'
6
+ VERSION = '1.0.5'
7
7
  end
8
8
  end
9
9
  end
@@ -57,6 +57,18 @@ describe Cinch::Plugins::Hangouts do
57
57
  reply.should match(/it was last linked \d seconds? ago/)
58
58
  end
59
59
 
60
+ it 'should recapture a legit Hangout link' do
61
+ id = random_hangout_id
62
+ msg = make_message(@bot, Hangout.url(id, false), { channel: '#foo' })
63
+ get_replies(msg)
64
+ sleep 1 # hack until 'time-lord' fix gets released
65
+ get_replies(msg)
66
+ sleep 1 # hack until 'time-lord' fix gets released
67
+ msg = make_message(@bot, '!hangouts')
68
+ reply = get_replies(msg).length
69
+ .should == 2
70
+ end
71
+
60
72
  it 'should capture a new short Hangout link and store it in @storage' do
61
73
  msg = make_message(@bot, Hangout.url('7acpjrpcmgl00u0b665mu25b1g', false), { :channel => '#foo' })
62
74
  get_replies(msg).should be_empty
@@ -76,9 +88,9 @@ describe Cinch::Plugins::Hangouts do
76
88
  end
77
89
 
78
90
  it 'should allow users to subscribe' do
79
- msg = make_message(@bot, '!hangouts subscribe')
80
- get_replies(msg).first.text.
81
- should include("You are now subscribed")
91
+ get_replies(make_message(@bot, '!hangouts subscribe'))
92
+ Cinch::Plugins::Hangouts::Subscription.list.length
93
+ .should == 1
82
94
  end
83
95
 
84
96
  it 'should inform users that they already subscribed' do
@@ -91,8 +103,8 @@ describe Cinch::Plugins::Hangouts do
91
103
  it 'should allow users to unsubscribe' do
92
104
  get_replies(make_message(@bot, '!hangouts subscribe'))
93
105
  msg = make_message(@bot, '!hangouts unsubscribe')
94
- get_replies(msg).first.text.
95
- should include("You are now unsubscribed")
106
+ Cinch::Plugins::Hangouts::Subscription.list.length
107
+ .should == 0
96
108
  end
97
109
 
98
110
  it 'should inform users that they are not subscribed on an unsubscribe' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cinch-hangouts
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.4
4
+ version: 1.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2014-02-12 00:00:00.000000000 Z
12
+ date: 2014-02-20 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rake
@@ -82,7 +82,7 @@ dependencies:
82
82
  requirements:
83
83
  - - ~>
84
84
  - !ruby/object:Gem::Version
85
- version: 2.0.5
85
+ version: 2.0.12
86
86
  type: :runtime
87
87
  prerelease: false
88
88
  version_requirements: !ruby/object:Gem::Requirement
@@ -90,7 +90,7 @@ dependencies:
90
90
  requirements:
91
91
  - - ~>
92
92
  - !ruby/object:Gem::Version
93
- version: 2.0.5
93
+ version: 2.0.12
94
94
  - !ruby/object:Gem::Dependency
95
95
  name: cinch-storage
96
96
  requirement: !ruby/object:Gem::Requirement
@@ -98,7 +98,7 @@ dependencies:
98
98
  requirements:
99
99
  - - ~>
100
100
  - !ruby/object:Gem::Version
101
- version: 1.0.3
101
+ version: 1.1.0
102
102
  type: :runtime
103
103
  prerelease: false
104
104
  version_requirements: !ruby/object:Gem::Requirement
@@ -106,7 +106,7 @@ dependencies:
106
106
  requirements:
107
107
  - - ~>
108
108
  - !ruby/object:Gem::Version
109
- version: 1.0.3
109
+ version: 1.1.0
110
110
  - !ruby/object:Gem::Dependency
111
111
  name: cinch-toolbox
112
112
  requirement: !ruby/object:Gem::Requirement
@@ -114,7 +114,7 @@ dependencies:
114
114
  requirements:
115
115
  - - ~>
116
116
  - !ruby/object:Gem::Version
117
- version: 1.0.3
117
+ version: 1.1.0
118
118
  type: :runtime
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
@@ -122,7 +122,7 @@ dependencies:
122
122
  requirements:
123
123
  - - ~>
124
124
  - !ruby/object:Gem::Version
125
- version: 1.0.3
125
+ version: 1.1.0
126
126
  - !ruby/object:Gem::Dependency
127
127
  name: time-lord
128
128
  requirement: !ruby/object:Gem::Requirement
@@ -161,7 +161,8 @@ files:
161
161
  - spec/cinch-hangouts_spec.rb
162
162
  - spec/spec_helper.rb
163
163
  homepage: https://github.com/bhaberer/cinch-hangouts
164
- licenses: []
164
+ licenses:
165
+ - MIT
165
166
  post_install_message:
166
167
  rdoc_options: []
167
168
  require_paths: