lita-karma 1.0.1 → 1.1.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.
- checksums.yaml +4 -4
- data/lib/lita/handlers/karma.rb +42 -12
- data/lita-karma.gemspec +2 -2
- data/spec/lita/handlers/karma_spec.rb +1 -0
- metadata +6 -6
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: eff0e837f671bde9d5e8aa0acb7fedb9cf5a399d
|
4
|
+
data.tar.gz: 8e2d58873e7e7d2da780193be606efc79c42f884
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 46c2b87191633815ab73907f2920e7d7e458a23f5bd7583320a030ddd0bcc31309eb116ab26526b4e452660986d913fd6b103a9be3bb189b9ebf5710f56bfb1f
|
7
|
+
data.tar.gz: a960284ee22b60b646f99cea70df8221fafeb0ffdff00a3725be167acabed0a701cb816da69a51303a1eed180c763b672af6e4c356864ae5f7b93d2b3a9bf905
|
data/lib/lita/handlers/karma.rb
CHANGED
@@ -3,25 +3,55 @@ require "lita"
|
|
3
3
|
module Lita
|
4
4
|
module Handlers
|
5
5
|
class Karma < Handler
|
6
|
-
|
7
|
-
|
8
|
-
route %r{(
|
6
|
+
TERM_REGEX = /[\[\]\w\._\-|\{\}]{2,}/
|
7
|
+
|
8
|
+
route %r{(#{TERM_REGEX.source})\+\+}, :increment, help: {
|
9
|
+
"TERM++" => "Increments TERM by one."
|
10
|
+
}
|
11
|
+
route %r{(#{TERM_REGEX.source})\-\-}, :decrement, help: {
|
12
|
+
"TERM--" => "Decrements TERM by one."
|
13
|
+
}
|
14
|
+
route %r{(#{TERM_REGEX.source})~~}, :check, help: {
|
15
|
+
"TERM~~" => "Shows the current karma of TERM."
|
16
|
+
}
|
9
17
|
route %r{^karma\s+worst}, :list_worst, command: true, help: {
|
10
|
-
"karma worst [N]" =>
|
18
|
+
"karma worst [N]" => <<-HELP.chomp
|
19
|
+
Lists the bottom N terms by karma. N defaults to 5.
|
20
|
+
HELP
|
11
21
|
}
|
12
22
|
route %r{^karma\s+best}, :list_best, command: true, help: {
|
13
|
-
"karma best [N]" =>
|
23
|
+
"karma best [N]" => <<-HELP.chomp
|
24
|
+
Lists the top N terms by karma. N defaults to 5.
|
25
|
+
HELP
|
14
26
|
}
|
15
27
|
route %r{^karma\s+modified}, :modified, command: true, help: {
|
16
|
-
"karma modified TERM" =>
|
28
|
+
"karma modified TERM" => <<-HELP.chomp
|
29
|
+
Lists the names of users who have upvoted or downvoted TERM.
|
30
|
+
HELP
|
17
31
|
}
|
18
32
|
route %r{^karma\s*$}, :list_best, command: true
|
19
|
-
route
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
|
24
|
-
|
33
|
+
route(
|
34
|
+
%r{^(#{TERM_REGEX.source})\s*\+=\s*(#{TERM_REGEX.source})},
|
35
|
+
:link,
|
36
|
+
command: true,
|
37
|
+
help: {
|
38
|
+
"TERM1 += TERM2" => <<-HELP.chomp
|
39
|
+
Links TERM2 to TERM1. TERM1's karma will then be displayed as the sum of its \
|
40
|
+
own and TERM2's karma.
|
41
|
+
HELP
|
42
|
+
}
|
43
|
+
)
|
44
|
+
route(
|
45
|
+
%r{^(#{TERM_REGEX.source})\s*-=\s*(#{TERM_REGEX.source})},
|
46
|
+
:unlink,
|
47
|
+
command: true,
|
48
|
+
help: {
|
49
|
+
"TERM1 -= TERM2" => <<-HELP.chomp
|
50
|
+
Unlinks TERM2 from TERM1. TERM1's karma will no longer be displayed as the sum \
|
51
|
+
of its own and TERM2's karma.
|
52
|
+
HELP
|
53
|
+
}
|
54
|
+
)
|
25
55
|
|
26
56
|
def self.default_config(config)
|
27
57
|
config.cooldown = 300
|
data/lita-karma.gemspec
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
Gem::Specification.new do |spec|
|
2
2
|
spec.name = "lita-karma"
|
3
|
-
spec.version = "1.0
|
3
|
+
spec.version = "1.1.0"
|
4
4
|
spec.authors = ["Jimmy Cuadra"]
|
5
5
|
spec.email = ["jimmy@jimmycuadra.com"]
|
6
6
|
spec.description = %q{A Lita handler for tracking karma points for arbitrary terms.}
|
@@ -17,7 +17,7 @@ Gem::Specification.new do |spec|
|
|
17
17
|
|
18
18
|
spec.add_development_dependency "bundler", "~> 1.3"
|
19
19
|
spec.add_development_dependency "rake"
|
20
|
-
spec.add_development_dependency "rspec", "
|
20
|
+
spec.add_development_dependency "rspec", "~> 2.14"
|
21
21
|
spec.add_development_dependency "simplecov"
|
22
22
|
spec.add_development_dependency "coveralls"
|
23
23
|
end
|
@@ -12,6 +12,7 @@ describe Lita::Handlers::Karma, lita_handler: true do
|
|
12
12
|
it { routes_command("karma").to(:list_best) }
|
13
13
|
it { routes_command("foo += bar").to(:link) }
|
14
14
|
it { routes_command("foo -= bar").to(:unlink) }
|
15
|
+
it { doesnt_route("+++++").to(:increment) }
|
15
16
|
|
16
17
|
describe "#increment" do
|
17
18
|
it "increases the term's score by one and says the new score" do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: lita-karma
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Jimmy Cuadra
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-07-
|
11
|
+
date: 2013-07-11 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: lita
|
@@ -56,16 +56,16 @@ dependencies:
|
|
56
56
|
name: rspec
|
57
57
|
requirement: !ruby/object:Gem::Requirement
|
58
58
|
requirements:
|
59
|
-
- -
|
59
|
+
- - ~>
|
60
60
|
- !ruby/object:Gem::Version
|
61
|
-
version: 2.14
|
61
|
+
version: '2.14'
|
62
62
|
type: :development
|
63
63
|
prerelease: false
|
64
64
|
version_requirements: !ruby/object:Gem::Requirement
|
65
65
|
requirements:
|
66
|
-
- -
|
66
|
+
- - ~>
|
67
67
|
- !ruby/object:Gem::Version
|
68
|
-
version: 2.14
|
68
|
+
version: '2.14'
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: simplecov
|
71
71
|
requirement: !ruby/object:Gem::Requirement
|