mingle_cli 0.0.2 → 0.0.3
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/README.md +14 -3
- data/lib/mingle_cli.rb +5 -4
- data/lib/models/card.rb +1 -0
- data/lib/modules/formattable.rb +12 -0
- data/lib/modules/mingle_unpagerizer.rb +20 -0
- data/lib/version.rb +1 -1
- data/mingle_cli.gemspec +1 -2
- data/spec/unit/{services → modules}/formattable_spec.rb +1 -1
- data/spec/unit/modules/mingle_unpagerizer_spec.rb +40 -0
- metadata +8 -5
- data/lib/services/formattable.rb +0 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: f825aa204a8f15f8e777f5f997613e582fb8a9c5
|
|
4
|
+
data.tar.gz: ba61176ea553e68e52f34fd5ce6fd4a83cc13140
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 97b7f737b43bc6d6138339fea42061bc61a813af855be7c0bc639e1fcb11ef8d2824afe9972744273bac2b4545e264ecb84e0a8436332e0f8c9d3d0322cb8521
|
|
7
|
+
data.tar.gz: bdf533d6deb8b6216712f155247e71dba3ce6c4ec2b5e2c14e60ce290f50c085617a5251e39290a832ff7afd2d478735b960b406e201508db512edbcd9f257f0
|
data/README.md
CHANGED
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
[](https://gemnasium.com/ike18t/mingle_cli)
|
|
6
6
|
|
|
7
7
|
## MingleCLI
|
|
8
|
-
MingleCLI is a command line interface to the Mingle API.
|
|
8
|
+
MingleCLI is a command line interface to the Mingle API.
|
|
9
9
|
|
|
10
10
|
#Configuring
|
|
11
11
|
```
|
|
@@ -23,6 +23,10 @@ mingle_cli.rb card [number] [format]
|
|
|
23
23
|
mingle_cli.rb cards [filter] [format]
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
+
```
|
|
27
|
+
mingle_cli.rb comment [number] [comment]
|
|
28
|
+
```
|
|
29
|
+
|
|
26
30
|
```
|
|
27
31
|
mingle_cli.rb comments [number]
|
|
28
32
|
```
|
|
@@ -30,6 +34,7 @@ mingle_cli.rb comments [number]
|
|
|
30
34
|
###Argument Definitions:###
|
|
31
35
|
* __Number__: The card number.
|
|
32
36
|
* __Format__: The format of the result of the command. Formats can contain property names nested in brackets which will then be replaced with the value of the property.
|
|
37
|
+
* __Comment__: The message to leave in the comment.
|
|
33
38
|
* __Filter__: Mingle's MQL syntax.
|
|
34
39
|
|
|
35
40
|
|
|
@@ -58,6 +63,12 @@ mingle_cli.rb cards 'status is ["in development"]' 'Number: [number] Pair: [dev
|
|
|
58
63
|
Number: 19480 Pair: Homer/Bart
|
|
59
64
|
Number: 19495 Pair: Marge/Lisa
|
|
60
65
|
```
|
|
66
|
+
####Adding a card comment:####
|
|
67
|
+
|
|
68
|
+
```
|
|
69
|
+
mingle_cli.rb comment 19480 'Doh!'
|
|
70
|
+
```
|
|
71
|
+
|
|
61
72
|
####Viewing card comments:####
|
|
62
73
|
|
|
63
74
|
```
|
|
@@ -65,5 +76,5 @@ mingle_cli.rb comments 19480
|
|
|
65
76
|
```
|
|
66
77
|
|
|
67
78
|
```
|
|
68
|
-
2014-01-30 12:57:46 -0500
|
|
69
|
-
```
|
|
79
|
+
2014-01-30 12:57:46 -0500 Homer Simpson: Doh!
|
|
80
|
+
```
|
data/lib/mingle_cli.rb
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
require 'active_resource'
|
|
2
2
|
autoload :AppConfig, 'models/app_config'
|
|
3
|
-
autoload :ConfigService, 'services/config_service'
|
|
4
|
-
autoload :UrlGenerator, 'services/url_generator'
|
|
5
3
|
autoload :MingleModel, 'models/mingle_model'
|
|
6
|
-
autoload :Formattable, 'services/formattable'
|
|
7
|
-
autoload :Comment, 'models/comment'
|
|
8
4
|
autoload :Card, 'models/card'
|
|
5
|
+
autoload :Comment, 'models/comment'
|
|
6
|
+
autoload :ConfigService, 'services/config_service'
|
|
7
|
+
autoload :UrlGenerator, 'services/url_generator'
|
|
8
|
+
autoload :Formattable, 'modules/formattable'
|
|
9
|
+
autoload :MingleUnpagerizer, 'modules/mingle_unpagerizer'
|
data/lib/models/card.rb
CHANGED
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
module MingleUnpagerizer
|
|
2
|
+
MINGLE_ITEMS_PER_PAGE = 25
|
|
3
|
+
|
|
4
|
+
def find_every options
|
|
5
|
+
cards = []
|
|
6
|
+
the_end = false
|
|
7
|
+
page = 1
|
|
8
|
+
while not the_end do
|
|
9
|
+
before_size = cards.size
|
|
10
|
+
options[:params].merge!({ :page => page })
|
|
11
|
+
cards += super(options).to_a
|
|
12
|
+
cards.uniq!
|
|
13
|
+
nothing_added = cards.size == before_size
|
|
14
|
+
if cards.size < MINGLE_ITEMS_PER_PAGE or nothing_added then the_end = true end
|
|
15
|
+
page += 1
|
|
16
|
+
end
|
|
17
|
+
cards
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
|
data/lib/version.rb
CHANGED
data/mingle_cli.gemspec
CHANGED
|
@@ -1,5 +1,4 @@
|
|
|
1
1
|
$LOAD_PATH.unshift(File.expand_path('../lib', __FILE__))
|
|
2
|
-
|
|
3
2
|
require 'version'
|
|
4
3
|
|
|
5
4
|
Gem::Specification.new do |spec|
|
|
@@ -17,7 +16,7 @@ Gem::Specification.new do |spec|
|
|
|
17
16
|
|
|
18
17
|
spec.files = `git ls-files`.split($/)
|
|
19
18
|
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
|
|
20
|
-
spec.executables = spec.files.grep(
|
|
19
|
+
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
|
|
21
20
|
spec.extra_rdoc_files = ['LICENSE.txt', 'README.md']
|
|
22
21
|
spec.require_paths = ['lib']
|
|
23
22
|
|
|
@@ -12,7 +12,7 @@ describe Formattable do
|
|
|
12
12
|
|
|
13
13
|
it { @card.format('name is [name], status is [status]').should eq("name is #{@card.name}, status is #{@card.status}") }
|
|
14
14
|
|
|
15
|
-
it {
|
|
15
|
+
it { @card.format('[not invalid] is invalid').should eq(' is invalid') }
|
|
16
16
|
|
|
17
17
|
it { @card.format('').should be_empty }
|
|
18
18
|
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
require 'spec_helper'
|
|
2
|
+
|
|
3
|
+
describe MingleUnpagerizer do
|
|
4
|
+
class MockMingleModel
|
|
5
|
+
attr_reader :call_count
|
|
6
|
+
|
|
7
|
+
def initialize
|
|
8
|
+
@call_count = 0
|
|
9
|
+
end
|
|
10
|
+
|
|
11
|
+
def find_every options
|
|
12
|
+
@call_count += 1
|
|
13
|
+
case options[:params][:page]
|
|
14
|
+
when 1
|
|
15
|
+
[:a, :b, :c]
|
|
16
|
+
when 2
|
|
17
|
+
[:d, :e, :f]
|
|
18
|
+
when 3..100
|
|
19
|
+
[:d, :e, :f]
|
|
20
|
+
end
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
|
|
24
|
+
context 'find_every' do
|
|
25
|
+
it 'should return unique data when hitting a duplicate page' do
|
|
26
|
+
stub_const 'MingleUnpagerizer::MINGLE_ITEMS_PER_PAGE', 3
|
|
27
|
+
m = MockMingleModel.new
|
|
28
|
+
m.extend MingleUnpagerizer
|
|
29
|
+
m.find_every({:params => {}}).should eq([:a, :b, :c, :d, :e, :f])
|
|
30
|
+
m.call_count.should eq(3)
|
|
31
|
+
end
|
|
32
|
+
|
|
33
|
+
it 'should not try for another page if count is less than the items per page' do
|
|
34
|
+
stub_const 'MingleUnpagerizer::MINGLE_ITEMS_PER_PAGE', 4
|
|
35
|
+
m = MockMingleModel.new
|
|
36
|
+
m.extend MingleUnpagerizer
|
|
37
|
+
m.find_every({:params => {}}).should eq([:a, :b, :c])
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: mingle_cli
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.0.
|
|
4
|
+
version: 0.0.3
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Isaac Datlof
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2014-02-
|
|
11
|
+
date: 2014-02-10 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: activeresource
|
|
@@ -133,8 +133,9 @@ files:
|
|
|
133
133
|
- lib/models/card.rb
|
|
134
134
|
- lib/models/comment.rb
|
|
135
135
|
- lib/models/mingle_model.rb
|
|
136
|
+
- lib/modules/formattable.rb
|
|
137
|
+
- lib/modules/mingle_unpagerizer.rb
|
|
136
138
|
- lib/services/config_service.rb
|
|
137
|
-
- lib/services/formattable.rb
|
|
138
139
|
- lib/services/url_generator.rb
|
|
139
140
|
- lib/version.rb
|
|
140
141
|
- mingle_cli.gemspec
|
|
@@ -146,8 +147,9 @@ files:
|
|
|
146
147
|
- spec/unit/models/card_spec.rb
|
|
147
148
|
- spec/unit/models/comment_spec.rb
|
|
148
149
|
- spec/unit/models/mingle_model_spec.rb
|
|
150
|
+
- spec/unit/modules/formattable_spec.rb
|
|
151
|
+
- spec/unit/modules/mingle_unpagerizer_spec.rb
|
|
149
152
|
- spec/unit/services/config_service_spec.rb
|
|
150
|
-
- spec/unit/services/formattable_spec.rb
|
|
151
153
|
- spec/unit/services/url_generator_spec.rb
|
|
152
154
|
homepage: http://github.com/ike18t/mingle_cli
|
|
153
155
|
licenses:
|
|
@@ -182,6 +184,7 @@ test_files:
|
|
|
182
184
|
- spec/unit/models/card_spec.rb
|
|
183
185
|
- spec/unit/models/comment_spec.rb
|
|
184
186
|
- spec/unit/models/mingle_model_spec.rb
|
|
187
|
+
- spec/unit/modules/formattable_spec.rb
|
|
188
|
+
- spec/unit/modules/mingle_unpagerizer_spec.rb
|
|
185
189
|
- spec/unit/services/config_service_spec.rb
|
|
186
|
-
- spec/unit/services/formattable_spec.rb
|
|
187
190
|
- spec/unit/services/url_generator_spec.rb
|