cinch-simplecalc 0.0.1 → 1.0.0

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.
data/.travis.yml ADDED
@@ -0,0 +1,4 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.2
4
+ - 1.9.3
data/README.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Cinch::Plugins::SimpleCalc
2
2
 
3
+ [![Gem Version](https://badge.fury.io/rb/cinch-simplecalc.png)](http://badge.fury.io/rb/cinch-simplecalc)
4
+ [![Dependency Status](https://gemnasium.com/bhaberer/cinch-simplecalc.png)](https://gemnasium.com/bhaberer/cinch-simplecalc)
5
+ [![Build Status](https://travis-ci.org/bhaberer/cinch-simplecalc.png?branch=master)](https://travis-ci.org/bhaberer/cinch-simplecalc)
6
+ [![Coverage Status](https://coveralls.io/repos/bhaberer/cinch-simplecalc/badge.png?branch=master)](https://coveralls.io/r/bhaberer/cinch-simplecalc?branch=master)
7
+ [![Code Climate](https://codeclimate.com/github/bhaberer/cinch-simplecalc.png)](https://codeclimate.com/github/bhaberer/cinch-simplecalc)
8
+
3
9
  Cinch plugin to allow channel users to do basic math
4
10
 
5
11
  ## Installation
@@ -32,6 +38,11 @@ Then in channel use:
32
38
 
33
39
  .math 4 ** 4
34
40
 
41
+ Note: this will only do BASIC math, and will strip all letters or complex
42
+ characters. If you want something more complex please see my other cinch plugin:
43
+
44
+ https://github.com/canonical-hackers/cinch-calculate
45
+
35
46
  ## Contributing
36
47
 
37
48
  1. Fork it
data/Rakefile CHANGED
@@ -1 +1,7 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new
5
+
6
+ task :default => :spec
7
+ task :test => :spec
@@ -17,6 +17,13 @@ Gem::Specification.new do |gem|
17
17
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
18
18
  gem.require_paths = ["lib"]
19
19
 
20
- gem.add_dependency 'calc'
21
- gem.add_dependency 'cinch-cooldown'
20
+ gem.add_development_dependency 'rake'
21
+ gem.add_development_dependency 'rspec'
22
+ gem.add_development_dependency 'coveralls'
23
+
24
+ gem.add_dependency 'cinch', '~> 2.0.5'
25
+ gem.add_dependency 'cinch-test', '~> 0.0.3'
26
+ gem.add_dependency 'cinch-toolbox', '~> 1.0.0'
27
+ gem.add_dependency 'cinch-cooldown', '~> 1.0.0'
28
+ gem.add_dependency 'calc', '~> 1.0.0'
22
29
  end
@@ -1,4 +1,5 @@
1
1
  require 'calc'
2
+ require 'cinch'
2
3
  require 'cinch-cooldown'
3
4
 
4
5
  module Cinch::Plugins
@@ -12,15 +13,16 @@ module Cinch::Plugins
12
13
  match /math (.+)/
13
14
 
14
15
  def execute(m, problem)
15
- begin
16
- answer = Calc.evaluate(problem)
16
+ m.reply calc(problem), true
17
+ end
18
+
19
+ private
17
20
 
18
- unless answer == problem
19
- m.reply "#{Calc.evaluate(problem)}", true
20
- end
21
- rescue ZeroDivisionError
22
- m.reply "Fuck you.", true
23
- end
21
+ def calc(problem)
22
+ answer = Calc.evaluate(problem)
23
+ return "#{Calc.evaluate(problem)}" unless answer == problem
24
+ rescue ZeroDivisionError
25
+ return "Fuck you."
24
26
  end
25
27
  end
26
28
  end
@@ -1,7 +1,7 @@
1
1
  module Cinch
2
2
  module Plugins
3
3
  class Simplecalc
4
- VERSION = "0.0.1"
4
+ VERSION = "1.0.0"
5
5
  end
6
6
  end
7
7
  end
@@ -0,0 +1,28 @@
1
+ require 'spec_helper'
2
+
3
+ describe Cinch::Plugins::SimpleCalc do
4
+
5
+ include Cinch::Test
6
+
7
+ before(:each) do
8
+ @bot = make_bot(Cinch::Plugins::SimpleCalc)
9
+ end
10
+
11
+ it 'should allow users to perform simple math' do
12
+ msg = make_message(@bot, '!math 2 + 2')
13
+ get_replies(msg).last.
14
+ should == 'test: 4'
15
+ end
16
+
17
+ it 'should strip all non numeric information from the string' do
18
+ msg = make_message(@bot, '!math cos 2')
19
+ get_replies(msg).last.
20
+ should == 'test: 2'
21
+ end
22
+
23
+ it 'should crack wise if asked to do the impossible' do
24
+ msg = make_message(@bot, '!math 1 / 0')
25
+ get_replies(msg).last.
26
+ should == 'test: Fuck you.'
27
+ end
28
+ end
@@ -0,0 +1,5 @@
1
+ require 'coveralls'
2
+ Coveralls.wear!
3
+ require 'cinch-simplecalc'
4
+ require 'cinch/test'
5
+
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: cinch-simplecalc
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 1.0.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,17 +9,17 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-05-08 00:00:00.000000000 Z
12
+ date: 2013-07-01 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
- name: calc
15
+ name: rake
16
16
  requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
21
  version: '0'
22
- type: :runtime
22
+ type: :development
23
23
  prerelease: false
24
24
  version_requirements: !ruby/object:Gem::Requirement
25
25
  none: false
@@ -28,14 +28,14 @@ dependencies:
28
28
  - !ruby/object:Gem::Version
29
29
  version: '0'
30
30
  - !ruby/object:Gem::Dependency
31
- name: cinch-cooldown
31
+ name: rspec
32
32
  requirement: !ruby/object:Gem::Requirement
33
33
  none: false
34
34
  requirements:
35
35
  - - ! '>='
36
36
  - !ruby/object:Gem::Version
37
37
  version: '0'
38
- type: :runtime
38
+ type: :development
39
39
  prerelease: false
40
40
  version_requirements: !ruby/object:Gem::Requirement
41
41
  none: false
@@ -43,6 +43,102 @@ dependencies:
43
43
  - - ! '>='
44
44
  - !ruby/object:Gem::Version
45
45
  version: '0'
46
+ - !ruby/object:Gem::Dependency
47
+ name: coveralls
48
+ requirement: !ruby/object:Gem::Requirement
49
+ none: false
50
+ requirements:
51
+ - - ! '>='
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ type: :development
55
+ prerelease: false
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ - !ruby/object:Gem::Dependency
63
+ name: cinch
64
+ requirement: !ruby/object:Gem::Requirement
65
+ none: false
66
+ requirements:
67
+ - - ~>
68
+ - !ruby/object:Gem::Version
69
+ version: 2.0.5
70
+ type: :runtime
71
+ prerelease: false
72
+ version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
74
+ requirements:
75
+ - - ~>
76
+ - !ruby/object:Gem::Version
77
+ version: 2.0.5
78
+ - !ruby/object:Gem::Dependency
79
+ name: cinch-test
80
+ requirement: !ruby/object:Gem::Requirement
81
+ none: false
82
+ requirements:
83
+ - - ~>
84
+ - !ruby/object:Gem::Version
85
+ version: 0.0.3
86
+ type: :runtime
87
+ prerelease: false
88
+ version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
90
+ requirements:
91
+ - - ~>
92
+ - !ruby/object:Gem::Version
93
+ version: 0.0.3
94
+ - !ruby/object:Gem::Dependency
95
+ name: cinch-toolbox
96
+ requirement: !ruby/object:Gem::Requirement
97
+ none: false
98
+ requirements:
99
+ - - ~>
100
+ - !ruby/object:Gem::Version
101
+ version: 1.0.0
102
+ type: :runtime
103
+ prerelease: false
104
+ version_requirements: !ruby/object:Gem::Requirement
105
+ none: false
106
+ requirements:
107
+ - - ~>
108
+ - !ruby/object:Gem::Version
109
+ version: 1.0.0
110
+ - !ruby/object:Gem::Dependency
111
+ name: cinch-cooldown
112
+ requirement: !ruby/object:Gem::Requirement
113
+ none: false
114
+ requirements:
115
+ - - ~>
116
+ - !ruby/object:Gem::Version
117
+ version: 1.0.0
118
+ type: :runtime
119
+ prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ none: false
122
+ requirements:
123
+ - - ~>
124
+ - !ruby/object:Gem::Version
125
+ version: 1.0.0
126
+ - !ruby/object:Gem::Dependency
127
+ name: calc
128
+ requirement: !ruby/object:Gem::Requirement
129
+ none: false
130
+ requirements:
131
+ - - ~>
132
+ - !ruby/object:Gem::Version
133
+ version: 1.0.0
134
+ type: :runtime
135
+ prerelease: false
136
+ version_requirements: !ruby/object:Gem::Requirement
137
+ none: false
138
+ requirements:
139
+ - - ~>
140
+ - !ruby/object:Gem::Version
141
+ version: 1.0.0
46
142
  description: Cinch Plugin that passes simple numeric math propblems to the Calc gem
47
143
  email:
48
144
  - bhaberer@gmail.com
@@ -51,6 +147,7 @@ extensions: []
51
147
  extra_rdoc_files: []
52
148
  files:
53
149
  - .gitignore
150
+ - .travis.yml
54
151
  - Gemfile
55
152
  - LICENSE.txt
56
153
  - README.md
@@ -59,6 +156,8 @@ files:
59
156
  - lib/cinch-simplecalc.rb
60
157
  - lib/cinch/plugins/simplecalc/simplecalc.rb
61
158
  - lib/cinch/plugins/simplecalc/version.rb
159
+ - spec/cinch-simplecalc_spec.rb
160
+ - spec/spec_helper.rb
62
161
  homepage: https://github.com/bhaberer/cinch-simplecalc
63
162
  licenses: []
64
163
  post_install_message:
@@ -83,4 +182,7 @@ rubygems_version: 1.8.24
83
182
  signing_key:
84
183
  specification_version: 3
85
184
  summary: Cinch Plugin to do simple math
86
- test_files: []
185
+ test_files:
186
+ - spec/cinch-simplecalc_spec.rb
187
+ - spec/spec_helper.rb
188
+ has_rdoc: