lita-team 0.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 +7 -0
- data/.gitignore +17 -0
- data/.rspec +1 -0
- data/.travis.yml +9 -0
- data/Gemfile +3 -0
- data/README.md +33 -0
- data/Rakefile +6 -0
- data/lib/lita/handlers/team.rb +119 -0
- data/lib/lita/team.rb +15 -0
- data/lib/lita-team.rb +13 -0
- data/lita-team.gemspec +26 -0
- data/locales/en.yml +19 -0
- data/spec/lita/handlers/team_spec.rb +220 -0
- data/spec/spec_helper.rb +14 -0
- data/templates/.gitkeep +0 -0
- data/templates/list_team.erb +9 -0
- data/templates/list_teams.erb +10 -0
- metadata +175 -0
checksums.yaml
ADDED
@@ -0,0 +1,7 @@
|
|
1
|
+
---
|
2
|
+
SHA1:
|
3
|
+
metadata.gz: 945a062a82c4db6d0ea8824c4ee928502a508384
|
4
|
+
data.tar.gz: 6414a2e1ae7767ef9ffab0efd839d922a7eb16f2
|
5
|
+
SHA512:
|
6
|
+
metadata.gz: 680f79f31744eaaf86e3e7c651c7e01fdb2e9c34f5a8499e4eaa384f08ac60cc36e8079a0fe8c4201b50a62cc452ff0df5470daf1af9e100c4e2094b5f588436
|
7
|
+
data.tar.gz: eada9f3670d8ccc07d56bce78e093dfa68a260824cdf10c4d8b1fdbe8a036989903bef727bca68b420c228ebd321d264d9b547b7d5bfb77f78e7d2567aea02f6
|
data/.gitignore
ADDED
data/.rspec
ADDED
@@ -0,0 +1 @@
|
|
1
|
+
--colour
|
data/.travis.yml
ADDED
data/Gemfile
ADDED
data/README.md
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
# lita-team
|
2
|
+
|
3
|
+
[](https://travis-ci.org/EdgarOrtegaRamirez/lita-team)
|
4
|
+
[](https://coveralls.io/r/EdgarOrtegaRamirez/lita-team?branch=master)
|
5
|
+
|
6
|
+
Create and manage the members of a team with Lita
|
7
|
+
|
8
|
+
## Installation
|
9
|
+
|
10
|
+
Add lita-team to your Lita instance's Gemfile:
|
11
|
+
|
12
|
+
``` ruby
|
13
|
+
gem "lita-team"
|
14
|
+
```
|
15
|
+
|
16
|
+
## Usage
|
17
|
+
|
18
|
+
```
|
19
|
+
Lita: create <name> team - create team called <name>
|
20
|
+
Lita: delete <name> team - delete team called <name>
|
21
|
+
Lita: remove <name> team - delete team called <name>
|
22
|
+
Lita: list teams - list all teams
|
23
|
+
Lita: <name> team +1 - add me to team
|
24
|
+
Lita: <name> team add me - add me to team
|
25
|
+
Lita: <name> team add <user> - add user to team
|
26
|
+
Lita: <name> team -1 - remove me from team
|
27
|
+
Lita: <name> team remove me - remove me from team
|
28
|
+
Lita: <name> team remove <user> - remove <user> from team
|
29
|
+
Lita: <name> team list - list the people in the team
|
30
|
+
Lita: <name> team show - list the people in the team
|
31
|
+
Lita: <name> team clear - clear team list
|
32
|
+
Lita: <name> team empty - clear team list
|
33
|
+
```
|
data/Rakefile
ADDED
@@ -0,0 +1,119 @@
|
|
1
|
+
module Lita
|
2
|
+
module Handlers
|
3
|
+
class Team < Handler
|
4
|
+
|
5
|
+
route(/create (\S*) team/i, :create_team, command: true, help: {
|
6
|
+
"create <name> team" => "create team called <name>"
|
7
|
+
})
|
8
|
+
route(/(delete|remove) (\S*) team/i, :delete_team, command: true, help: {
|
9
|
+
"delete <name> team" => "delete team called <name>",
|
10
|
+
"remove <name> team" => "delete team called <name>",
|
11
|
+
})
|
12
|
+
route(/list teams/i, :list_teams, command: true, help: {
|
13
|
+
"list teams" => "list all teams"
|
14
|
+
})
|
15
|
+
route(/(\S*)? team (\+1|add me|add (\S*))/i, :add_member_to_team, command: true, help: {
|
16
|
+
"<name> team +1" => "add me to team",
|
17
|
+
"<name> team add me" => "add me to team",
|
18
|
+
"<name> team add <user>" => "add user to team",
|
19
|
+
})
|
20
|
+
route(/(\S*)? team (-1|remove me|remove (\S*))/i, :remove_member_from_team, command: true, help: {
|
21
|
+
"<name> team -1" => "remove me from team",
|
22
|
+
"<name> team remove me" => "remove me from team",
|
23
|
+
"<name> team remove <user>" => "remove <user> from team",
|
24
|
+
})
|
25
|
+
route(/(\S*)? team (list|show)/i, :list_team, command: true, help: {
|
26
|
+
"<name> team list" => "list the people in the team",
|
27
|
+
"<name> team show" => "list the people in the team",
|
28
|
+
})
|
29
|
+
route(/(\S*)? team (clear|empty)/i, :clear_team, command: true, help: {
|
30
|
+
"<name> team clear" => "clear team list",
|
31
|
+
"<name> team empty" => "clear team list",
|
32
|
+
})
|
33
|
+
|
34
|
+
def create_team(response)
|
35
|
+
team = Lita::Team.new(response.match_data[1])
|
36
|
+
if redis.hsetnx(team.key, :name, team.name)
|
37
|
+
response.reply t(:team_created, name: team.display_name)
|
38
|
+
else
|
39
|
+
response.reply t(:team_already_exists, name: team.display_name)
|
40
|
+
end
|
41
|
+
end
|
42
|
+
|
43
|
+
def delete_team(response)
|
44
|
+
team = Lita::Team.new(response.match_data[2])
|
45
|
+
if redis.exists(team.key)
|
46
|
+
redis.del team.key
|
47
|
+
response.reply t(:team_deleted, name: team.display_name)
|
48
|
+
else
|
49
|
+
response.reply t(:team_not_found, name: team.display_name)
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
def list_teams(response)
|
54
|
+
keys = redis.keys "team*"
|
55
|
+
teams = keys.map do |key|
|
56
|
+
team_data = redis.hgetall(key)
|
57
|
+
Lita::Team.new(team_data["name"])
|
58
|
+
end
|
59
|
+
response.reply render_template(:list_teams, teams: teams)
|
60
|
+
end
|
61
|
+
|
62
|
+
def add_member_to_team(response)
|
63
|
+
team = Lita::Team.new(response.match_data[1])
|
64
|
+
if redis.exists(team.key)
|
65
|
+
user = response.match_data[3] ? response.match_data[3] : response.user.name
|
66
|
+
count_was = redis.scard(team.members_key)
|
67
|
+
if redis.sadd(team.members_key, user)
|
68
|
+
message = t(:member_added_to_team, user: user, team: team.display_name)
|
69
|
+
message << t(:members_in_team, count: count_was) if count_was > 0
|
70
|
+
response.reply message
|
71
|
+
else
|
72
|
+
response.reply t(:member_already_in_team, user: user, team: team.display_name)
|
73
|
+
end
|
74
|
+
else
|
75
|
+
response.reply t(:team_not_found, name: team.display_name)
|
76
|
+
end
|
77
|
+
end
|
78
|
+
|
79
|
+
def remove_member_from_team(response)
|
80
|
+
team = Lita::Team.new(response.match_data[1])
|
81
|
+
if redis.exists(team.key)
|
82
|
+
user = response.match_data[3] ? response.match_data[3] : response.user.name
|
83
|
+
if redis.srem(team.members_key, user)
|
84
|
+
remaining = redis.scard(team.members_key)
|
85
|
+
message = t(:member_removed_from_team, user: user, team: team.display_name)
|
86
|
+
message << t(:members_in_team, count: remaining) if remaining > 0
|
87
|
+
response.reply message
|
88
|
+
else
|
89
|
+
response.reply t(:member_already_out_of_team, user: user, team: team.display_name)
|
90
|
+
end
|
91
|
+
else
|
92
|
+
response.reply t(:team_not_found, name: team.display_name)
|
93
|
+
end
|
94
|
+
end
|
95
|
+
|
96
|
+
def list_team(response)
|
97
|
+
team = Lita::Team.new(response.match_data[1])
|
98
|
+
if redis.exists(team.key)
|
99
|
+
members = redis.smembers(team.members_key)
|
100
|
+
response.reply render_template(:list_team, team: team.display_name, members: members)
|
101
|
+
else
|
102
|
+
response.reply t(:team_not_found, name: team.display_name)
|
103
|
+
end
|
104
|
+
end
|
105
|
+
|
106
|
+
def clear_team(response)
|
107
|
+
team = Lita::Team.new(response.match_data[1])
|
108
|
+
if redis.exists(team.key)
|
109
|
+
redis.del(team.members_key)
|
110
|
+
response.reply t(:team_cleared, name: team.display_name)
|
111
|
+
else
|
112
|
+
response.reply t(:team_not_found, name: team.display_name)
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
Lita.register_handler(Team)
|
118
|
+
end
|
119
|
+
end
|
data/lib/lita/team.rb
ADDED
data/lib/lita-team.rb
ADDED
@@ -0,0 +1,13 @@
|
|
1
|
+
require "lita"
|
2
|
+
|
3
|
+
Lita.load_locales Dir[File.expand_path(
|
4
|
+
File.join("..", "..", "locales", "*.yml"), __FILE__
|
5
|
+
)]
|
6
|
+
|
7
|
+
require "lita/team"
|
8
|
+
require "lita/handlers/team"
|
9
|
+
|
10
|
+
Lita::Handlers::Team.template_root File.expand_path(
|
11
|
+
File.join("..", "..", "templates"),
|
12
|
+
__FILE__
|
13
|
+
)
|
data/lita-team.gemspec
ADDED
@@ -0,0 +1,26 @@
|
|
1
|
+
Gem::Specification.new do |spec|
|
2
|
+
spec.name = "lita-team"
|
3
|
+
spec.version = "0.1.0"
|
4
|
+
spec.authors = ["Edgar Ortega"]
|
5
|
+
spec.email = ["edgarortegaramirez@gmail.com"]
|
6
|
+
spec.description = "create and manage the members of a team with Lita"
|
7
|
+
spec.summary = "create and manage the members of a team with Lita"
|
8
|
+
spec.homepage = "https://github.com/EdgarOrtegaRamirez/lita-team"
|
9
|
+
spec.license = "MIT"
|
10
|
+
spec.metadata = { "lita_plugin_type" => "handler" }
|
11
|
+
|
12
|
+
spec.files = `git ls-files`.split($/)
|
13
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
14
|
+
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
15
|
+
spec.require_paths = ["lib"]
|
16
|
+
|
17
|
+
spec.add_runtime_dependency "lita", ">= 4.3"
|
18
|
+
|
19
|
+
spec.add_development_dependency "bundler", "~> 1.3"
|
20
|
+
spec.add_development_dependency "pry-byebug"
|
21
|
+
spec.add_development_dependency "rake"
|
22
|
+
spec.add_development_dependency "rack-test"
|
23
|
+
spec.add_development_dependency "rspec", ">= 3.0.0"
|
24
|
+
spec.add_development_dependency "simplecov"
|
25
|
+
spec.add_development_dependency "coveralls"
|
26
|
+
end
|
data/locales/en.yml
ADDED
@@ -0,0 +1,19 @@
|
|
1
|
+
en:
|
2
|
+
lita:
|
3
|
+
handlers:
|
4
|
+
team:
|
5
|
+
teams_title: "Teams:"
|
6
|
+
no_teams_has_been_created: "No team has been created so far"
|
7
|
+
team_not_found: "%{name} does not exist"
|
8
|
+
team_created: "%{name} created, add some people to it"
|
9
|
+
team_deleted: "%{name} deleted"
|
10
|
+
team_already_exists: "%{name} already exists"
|
11
|
+
member_already_in_team: "%{user} already in the %{team}"
|
12
|
+
member_added_to_team: "%{user} added to the %{team}"
|
13
|
+
members_in_team:
|
14
|
+
one: ", 1 other is in"
|
15
|
+
other: ", %{count} others are in"
|
16
|
+
member_already_out_of_team: "%{user} already out of the %{team}"
|
17
|
+
member_removed_from_team: "%{user} removed from the %{team}"
|
18
|
+
team_empty: "There is no one in the %{team} currently"
|
19
|
+
team_cleared: "%{name} cleared"
|
@@ -0,0 +1,220 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Lita::Handlers::Team, lita_handler: true do
|
4
|
+
describe "routes" do
|
5
|
+
it { is_expected.to route_command("create testing team").to(:create_team) }
|
6
|
+
it { is_expected.to route_command("delete testing team").to(:delete_team) }
|
7
|
+
it { is_expected.to route_command("remove testing team").to(:delete_team) }
|
8
|
+
it { is_expected.to route_command("list teams").to(:list_teams) }
|
9
|
+
it { is_expected.to route_command("testing team add person").to(:add_member_to_team) }
|
10
|
+
it { is_expected.to route_command("testing team add me").to(:add_member_to_team) }
|
11
|
+
it { is_expected.to route_command("testing team +1").to(:add_member_to_team) }
|
12
|
+
it { is_expected.to route_command("testing team remove person").to(:remove_member_from_team) }
|
13
|
+
it { is_expected.to route_command("testing team remove me").to(:remove_member_from_team) }
|
14
|
+
it { is_expected.to route_command("testing team -1").to(:remove_member_from_team) }
|
15
|
+
it { is_expected.to route_command("testing team list").to(:list_team) }
|
16
|
+
it { is_expected.to route_command("testing team show").to(:list_team) }
|
17
|
+
it { is_expected.to route_command("testing team clear").to(:clear_team) }
|
18
|
+
it { is_expected.to route_command("testing team empty").to(:clear_team) }
|
19
|
+
end
|
20
|
+
|
21
|
+
describe "create team" do
|
22
|
+
it "creates a new team" do
|
23
|
+
send_command "create testing team"
|
24
|
+
expect(replies.last).to eq("testing team created, add some people to it")
|
25
|
+
end
|
26
|
+
|
27
|
+
context "team already exists" do
|
28
|
+
it "does not create a new team" do
|
29
|
+
send_command "create testing team"
|
30
|
+
send_command "create testing team"
|
31
|
+
expect(replies.last).to eq("testing team already exists")
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
describe "delete team" do
|
37
|
+
it "deletes a team" do
|
38
|
+
send_command "create testing team"
|
39
|
+
send_command "delete testing team"
|
40
|
+
expect(replies.last).to eq("testing team deleted")
|
41
|
+
end
|
42
|
+
|
43
|
+
context "team does not exist" do
|
44
|
+
it "does not delete a team" do
|
45
|
+
send_command "delete testing team"
|
46
|
+
expect(replies.last).to eq("testing team does not exist")
|
47
|
+
end
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
describe "list teams" do
|
52
|
+
it "list all teams" do
|
53
|
+
send_command "create testing team"
|
54
|
+
send_command "create qa team"
|
55
|
+
send_command "list teams"
|
56
|
+
expect(replies.last).to eq("Teams:\nqa\ntesting\n")
|
57
|
+
end
|
58
|
+
|
59
|
+
context "without teams" do
|
60
|
+
it "shows a message" do
|
61
|
+
send_command "list teams"
|
62
|
+
expect(replies.last).to eq("No team has been created so far")
|
63
|
+
end
|
64
|
+
end
|
65
|
+
end
|
66
|
+
|
67
|
+
describe "add member to team" do
|
68
|
+
it "adds a member to the team" do
|
69
|
+
send_command "create testing team"
|
70
|
+
send_command "testing team add john"
|
71
|
+
expect(replies.last).to eq("john added to the testing team")
|
72
|
+
end
|
73
|
+
|
74
|
+
context "me" do
|
75
|
+
it "adds current user to the team" do
|
76
|
+
send_command "create testing team"
|
77
|
+
send_command "testing team add me"
|
78
|
+
expect(replies.last).to eq("#{user.name} added to the testing team")
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
context "+1" do
|
83
|
+
it "adds current user to the team" do
|
84
|
+
send_command "create testing team"
|
85
|
+
send_command "testing team +1"
|
86
|
+
expect(replies.last).to eq("#{user.name} added to the testing team")
|
87
|
+
end
|
88
|
+
end
|
89
|
+
|
90
|
+
context "there is a member in the team" do
|
91
|
+
it "adds the member and shows a message" do
|
92
|
+
send_command "create testing team"
|
93
|
+
send_command "testing team add john"
|
94
|
+
send_command "testing team add james"
|
95
|
+
expect(replies.last).to eq("james added to the testing team, 1 other is in")
|
96
|
+
end
|
97
|
+
end
|
98
|
+
|
99
|
+
context "there are two or more members in the team" do
|
100
|
+
it "adds the member and shows a message" do
|
101
|
+
send_command "create testing team"
|
102
|
+
send_command "testing team add john"
|
103
|
+
send_command "testing team add james"
|
104
|
+
send_command "testing team add robert"
|
105
|
+
expect(replies.last).to eq("robert added to the testing team, 2 others are in")
|
106
|
+
end
|
107
|
+
end
|
108
|
+
|
109
|
+
context "the member is already in the team" do
|
110
|
+
it "does not add the member to the team" do
|
111
|
+
send_command "create testing team"
|
112
|
+
send_command "testing team add john"
|
113
|
+
send_command "testing team add john"
|
114
|
+
expect(replies.last).to eq("john already in the testing team")
|
115
|
+
end
|
116
|
+
end
|
117
|
+
|
118
|
+
context "team does not exist" do
|
119
|
+
it "does not add the member" do
|
120
|
+
send_command "testing team add john"
|
121
|
+
expect(replies.last).to eq("testing team does not exist")
|
122
|
+
end
|
123
|
+
end
|
124
|
+
end
|
125
|
+
|
126
|
+
describe "remove member from team" do
|
127
|
+
it "removes a member from the team" do
|
128
|
+
send_command "create testing team"
|
129
|
+
send_command "testing team add john"
|
130
|
+
send_command "testing team remove john"
|
131
|
+
expect(replies.last).to eq("john removed from the testing team")
|
132
|
+
end
|
133
|
+
|
134
|
+
context "me" do
|
135
|
+
it "removes current user from the team" do
|
136
|
+
send_command "create testing team"
|
137
|
+
send_command "testing team add me"
|
138
|
+
send_command "testing team remove me"
|
139
|
+
expect(replies.last).to eq("#{user.name} removed from the testing team")
|
140
|
+
end
|
141
|
+
end
|
142
|
+
|
143
|
+
context "-1" do
|
144
|
+
it "removes current user from the team" do
|
145
|
+
send_command "create testing team"
|
146
|
+
send_command "testing team +1"
|
147
|
+
send_command "testing team -1"
|
148
|
+
expect(replies.last).to eq("#{user.name} removed from the testing team")
|
149
|
+
end
|
150
|
+
end
|
151
|
+
|
152
|
+
context "there are two or more members in the team" do
|
153
|
+
it "adds the member and shows a message" do
|
154
|
+
send_command "create testing team"
|
155
|
+
send_command "testing team add john"
|
156
|
+
send_command "testing team add james"
|
157
|
+
send_command "testing team remove john"
|
158
|
+
expect(replies.last).to eq("john removed from the testing team, 1 other is in")
|
159
|
+
end
|
160
|
+
end
|
161
|
+
|
162
|
+
context "the member is not in the team" do
|
163
|
+
it "does not removes the member from the team" do
|
164
|
+
send_command "create testing team"
|
165
|
+
send_command "testing team remove john"
|
166
|
+
expect(replies.last).to eq("john already out of the testing team")
|
167
|
+
end
|
168
|
+
end
|
169
|
+
|
170
|
+
context "team does not exist" do
|
171
|
+
it "does not add the member" do
|
172
|
+
send_command "testing team remove john"
|
173
|
+
expect(replies.last).to eq("testing team does not exist")
|
174
|
+
end
|
175
|
+
end
|
176
|
+
end
|
177
|
+
|
178
|
+
describe "list team" do
|
179
|
+
it "lists the members in the team" do
|
180
|
+
send_command "create testing team"
|
181
|
+
send_command "testing team add john"
|
182
|
+
send_command "testing team add james"
|
183
|
+
send_command "testing team list"
|
184
|
+
expect(replies.last).to eq("testing team (2 total):\n1. james\n2. john\n")
|
185
|
+
end
|
186
|
+
|
187
|
+
context "team is empty" do
|
188
|
+
it "shows a message" do
|
189
|
+
send_command "create testing team"
|
190
|
+
send_command "testing team list"
|
191
|
+
expect(replies.last).to eq("There is no one in the testing team currently")
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
context "team does not exist" do
|
196
|
+
it "shows a message" do
|
197
|
+
send_command "testing team list"
|
198
|
+
expect(replies.last).to eq("testing team does not exist")
|
199
|
+
end
|
200
|
+
end
|
201
|
+
end
|
202
|
+
|
203
|
+
describe "clear team" do
|
204
|
+
it "removes the members of a team" do
|
205
|
+
send_command "create testing team"
|
206
|
+
send_command "testing team add john"
|
207
|
+
send_command "testing team clear"
|
208
|
+
expect(replies.last).to eq("testing team cleared")
|
209
|
+
send_command "testing team list"
|
210
|
+
expect(replies.last).to eq("There is no one in the testing team currently")
|
211
|
+
end
|
212
|
+
|
213
|
+
context "team does not exist" do
|
214
|
+
it "shows a message" do
|
215
|
+
send_command "testing team clear"
|
216
|
+
expect(replies.last).to eq("testing team does not exist")
|
217
|
+
end
|
218
|
+
end
|
219
|
+
end
|
220
|
+
end
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
require "simplecov"
|
2
|
+
require "coveralls"
|
3
|
+
SimpleCov.formatter = SimpleCov::Formatter::MultiFormatter[
|
4
|
+
SimpleCov::Formatter::HTMLFormatter,
|
5
|
+
Coveralls::SimpleCov::Formatter
|
6
|
+
]
|
7
|
+
SimpleCov.start { add_filter "/spec/" }
|
8
|
+
|
9
|
+
require "lita-team"
|
10
|
+
require "lita/rspec"
|
11
|
+
|
12
|
+
# A compatibility mode is provided for older plugins upgrading from Lita 3. Since this plugin
|
13
|
+
# was generated with Lita 4, the compatibility mode should be left disabled.
|
14
|
+
Lita.version_3_compatibility_mode = false
|
data/templates/.gitkeep
ADDED
File without changes
|
metadata
ADDED
@@ -0,0 +1,175 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: lita-team
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Edgar Ortega
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-06-09 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: lita
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - ">="
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: '4.3'
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - ">="
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: '4.3'
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: bundler
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: '1.3'
|
34
|
+
type: :development
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: '1.3'
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: pry-byebug
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - ">="
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: '0'
|
48
|
+
type: :development
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - ">="
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: rake
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - ">="
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '0'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - ">="
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '0'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rack-test
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - ">="
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - ">="
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - ">="
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: 3.0.0
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - ">="
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: 3.0.0
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: simplecov
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - ">="
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - ">="
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: coveralls
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
description: create and manage the members of a team with Lita
|
126
|
+
email:
|
127
|
+
- edgarortegaramirez@gmail.com
|
128
|
+
executables: []
|
129
|
+
extensions: []
|
130
|
+
extra_rdoc_files: []
|
131
|
+
files:
|
132
|
+
- ".gitignore"
|
133
|
+
- ".rspec"
|
134
|
+
- ".travis.yml"
|
135
|
+
- Gemfile
|
136
|
+
- README.md
|
137
|
+
- Rakefile
|
138
|
+
- lib/lita-team.rb
|
139
|
+
- lib/lita/handlers/team.rb
|
140
|
+
- lib/lita/team.rb
|
141
|
+
- lita-team.gemspec
|
142
|
+
- locales/en.yml
|
143
|
+
- spec/lita/handlers/team_spec.rb
|
144
|
+
- spec/spec_helper.rb
|
145
|
+
- templates/.gitkeep
|
146
|
+
- templates/list_team.erb
|
147
|
+
- templates/list_teams.erb
|
148
|
+
homepage: https://github.com/EdgarOrtegaRamirez/lita-team
|
149
|
+
licenses:
|
150
|
+
- MIT
|
151
|
+
metadata:
|
152
|
+
lita_plugin_type: handler
|
153
|
+
post_install_message:
|
154
|
+
rdoc_options: []
|
155
|
+
require_paths:
|
156
|
+
- lib
|
157
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
158
|
+
requirements:
|
159
|
+
- - ">="
|
160
|
+
- !ruby/object:Gem::Version
|
161
|
+
version: '0'
|
162
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
requirements: []
|
168
|
+
rubyforge_project:
|
169
|
+
rubygems_version: 2.4.7
|
170
|
+
signing_key:
|
171
|
+
specification_version: 4
|
172
|
+
summary: create and manage the members of a team with Lita
|
173
|
+
test_files:
|
174
|
+
- spec/lita/handlers/team_spec.rb
|
175
|
+
- spec/spec_helper.rb
|