winnie 0.0.6 → 0.0.7
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/.gitignore +1 -0
- data/lib/winnie/commands/auth.rb +6 -7
- data/lib/winnie/commands/base.rb +8 -5
- data/lib/winnie/commands/help.rb +1 -1
- data/lib/winnie/version.rb +1 -1
- data/spec/client_spec.rb +5 -5
- data/spec/command_spec.rb +1 -1
- data/spec/commands/app_spec.rb +1 -1
- data/spec/commands/auth_spec.rb +29 -2
- data/spec/commands/base_spec.rb +1 -1
- data/spec/winnie_spec.rb +1 -1
- metadata +7 -14
- data/Gemfile.lock +0 -34
data/.gitignore
CHANGED
data/lib/winnie/commands/auth.rb
CHANGED
@@ -3,16 +3,15 @@ require 'fileutils'
|
|
3
3
|
module Winnie
|
4
4
|
module Commands
|
5
5
|
class Auth < Base
|
6
|
-
attr_accessor :api_key
|
7
6
|
|
8
7
|
def initialize(*args)
|
9
8
|
super(args)
|
10
|
-
load_api_key if api_key_exists?
|
9
|
+
load_api_key if (api_key.nil? and api_key_exists?)
|
11
10
|
end
|
12
11
|
|
13
12
|
def run
|
14
|
-
confirm('Do you want to change your API key?') if api_key_exists?
|
15
|
-
ask_for_api_key
|
13
|
+
confirm('Do you want to change your API key?') if (api_key.nil? and api_key_exists?)
|
14
|
+
ask_for_api_key if api_key.nil?
|
16
15
|
save_api_key
|
17
16
|
validate_api_key
|
18
17
|
end
|
@@ -20,7 +19,7 @@ module Winnie
|
|
20
19
|
def ask_for_api_key
|
21
20
|
display "Type your Winnie API key"
|
22
21
|
display "Key: ", false
|
23
|
-
|
22
|
+
@api_key = ask
|
24
23
|
end
|
25
24
|
|
26
25
|
def save_api_key
|
@@ -30,11 +29,11 @@ module Winnie
|
|
30
29
|
end
|
31
30
|
|
32
31
|
def load_api_key
|
33
|
-
|
32
|
+
@api_key = File.read(api_key_path)
|
34
33
|
end
|
35
34
|
|
36
35
|
def validate_api_key
|
37
|
-
winnie.account
|
36
|
+
winnie.account # If it's not correct, Winnie::Client::UnauthorizedException will be raised
|
38
37
|
display 'Your winnie API key is OK!'
|
39
38
|
end
|
40
39
|
|
data/lib/winnie/commands/base.rb
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
module Winnie
|
2
2
|
module Commands
|
3
3
|
class Base
|
4
|
-
attr_reader :winnie, :args
|
4
|
+
attr_reader :winnie, :args, :api_key
|
5
5
|
|
6
6
|
include Winnie::Helpers
|
7
7
|
|
@@ -17,17 +17,20 @@ module Winnie
|
|
17
17
|
opts.on("-a", "--app [CODE_NAME]", :text, "Run for given application") do |a|
|
18
18
|
@code_name = a
|
19
19
|
end
|
20
|
+
|
21
|
+
opts.on("-k", "--api-key [API KEY]", :text, "Authorize command for given api key") do |k|
|
22
|
+
@api_key = k
|
23
|
+
end
|
20
24
|
end.parse!(@args)
|
21
25
|
end
|
22
26
|
|
23
27
|
def code_name
|
24
|
-
raise
|
25
|
-
@code_name
|
28
|
+
@code_name || raise(ApplicationNotSpecyfiedException.new)
|
26
29
|
end
|
27
30
|
|
28
31
|
def winnie
|
29
|
-
|
30
|
-
@winnie ||= Winnie::Client.new(
|
32
|
+
@api_key ||= Winnie::Commands::Auth.new.api_key
|
33
|
+
@winnie ||= Winnie::Client.new(api_key)
|
31
34
|
end
|
32
35
|
|
33
36
|
def config_path
|
data/lib/winnie/commands/help.rb
CHANGED
@@ -2,7 +2,7 @@ module Winnie
|
|
2
2
|
module Commands
|
3
3
|
class Help < Base
|
4
4
|
def run
|
5
|
-
display_columns 'auth', 'Configure your winnie
|
5
|
+
display_columns 'auth', 'Configure your winnie api key'
|
6
6
|
display_columns 'command <command or file>', 'Run ruby command, a file with commands can be given'
|
7
7
|
display_columns 'list', 'List your applications'
|
8
8
|
display_columns 'help', 'Show this information'
|
data/lib/winnie/version.rb
CHANGED
data/spec/client_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
3
|
describe Winnie::Client do
|
4
4
|
before do
|
@@ -40,10 +40,10 @@ describe Winnie::Client do
|
|
40
40
|
end
|
41
41
|
|
42
42
|
def request_parameters(path, method, payload = {})
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
43
|
+
{:method => method,
|
44
|
+
:url => "https://admin.winniecloud.com#{path}",
|
45
|
+
:headers => {:accept => :json, :content_type => :json},
|
46
|
+
:payload => ({:api_key => 'secret_one'}.merge(payload)).to_json
|
47
47
|
}
|
48
48
|
end
|
49
49
|
end
|
data/spec/command_spec.rb
CHANGED
data/spec/commands/app_spec.rb
CHANGED
data/spec/commands/auth_spec.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
2
2
|
|
3
3
|
describe Winnie::Commands::Auth do
|
4
4
|
include FakeFS::SpecHelpers
|
@@ -23,6 +23,14 @@ describe Winnie::Commands::Auth do
|
|
23
23
|
auth.api_key.should == 'NobodyKnowsIt'
|
24
24
|
end
|
25
25
|
end
|
26
|
+
|
27
|
+
describe "when API key is passed as an option" do
|
28
|
+
before { @auth = Winnie::Commands::Auth.new("--api-key", "secret") }
|
29
|
+
|
30
|
+
it "should be set" do
|
31
|
+
@auth.api_key.should == "secret"
|
32
|
+
end
|
33
|
+
end
|
26
34
|
end
|
27
35
|
|
28
36
|
describe "run" do
|
@@ -56,11 +64,30 @@ describe Winnie::Commands::Auth do
|
|
56
64
|
@auth.run
|
57
65
|
end
|
58
66
|
end
|
67
|
+
|
68
|
+
describe "when API key is passed as an option" do
|
69
|
+
before do
|
70
|
+
@auth = Winnie::Commands::Auth.new("--api-key", "secret")
|
71
|
+
@auth.stub(:save_api_key)
|
72
|
+
@auth.stub(:validate_api_key)
|
73
|
+
end
|
74
|
+
|
75
|
+
it "should not ask for API key" do
|
76
|
+
@auth.should_not_receive(:ask_for_api_key)
|
77
|
+
@auth.run
|
78
|
+
end
|
79
|
+
|
80
|
+
it "should not prompt confirm" do
|
81
|
+
@auth.stub(:api_key_exists? => true)
|
82
|
+
@auth.should_not_receive(:confirm)
|
83
|
+
@auth.run
|
84
|
+
end
|
85
|
+
end
|
59
86
|
end
|
60
87
|
|
61
88
|
describe "save_api_key" do
|
62
89
|
before do
|
63
|
-
@auth.api_key
|
90
|
+
@auth.instance_variable_set("@api_key", 'secret_api_key')
|
64
91
|
@auth.stub(:set_credentials_permissions => true)
|
65
92
|
end
|
66
93
|
|
data/spec/commands/base_spec.rb
CHANGED
data/spec/winnie_spec.rb
CHANGED
@@ -1 +1 @@
|
|
1
|
-
require
|
1
|
+
require "spec_helper"
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: winnie
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 17
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 0
|
8
8
|
- 0
|
9
|
-
-
|
10
|
-
version: 0.0.
|
9
|
+
- 7
|
10
|
+
version: 0.0.7
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- winnie
|
@@ -15,7 +15,7 @@ autorequire:
|
|
15
15
|
bindir: bin
|
16
16
|
cert_chain: []
|
17
17
|
|
18
|
-
date: 2011-
|
18
|
+
date: 2011-03-28 00:00:00 +02:00
|
19
19
|
default_executable:
|
20
20
|
dependencies:
|
21
21
|
- !ruby/object:Gem::Dependency
|
@@ -102,7 +102,6 @@ extra_rdoc_files: []
|
|
102
102
|
files:
|
103
103
|
- .gitignore
|
104
104
|
- Gemfile
|
105
|
-
- Gemfile.lock
|
106
105
|
- LICENSE
|
107
106
|
- README.rdoc
|
108
107
|
- Rakefile
|
@@ -154,15 +153,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
154
153
|
requirements: []
|
155
154
|
|
156
155
|
rubyforge_project: winnie
|
157
|
-
rubygems_version: 1.
|
156
|
+
rubygems_version: 1.6.2
|
158
157
|
signing_key:
|
159
158
|
specification_version: 3
|
160
159
|
summary: Winnie command line tool
|
161
|
-
test_files:
|
162
|
-
|
163
|
-
- spec/command_spec.rb
|
164
|
-
- spec/commands/app_spec.rb
|
165
|
-
- spec/commands/auth_spec.rb
|
166
|
-
- spec/commands/base_spec.rb
|
167
|
-
- spec/spec_helper.rb
|
168
|
-
- spec/winnie_spec.rb
|
160
|
+
test_files: []
|
161
|
+
|
data/Gemfile.lock
DELETED
@@ -1,34 +0,0 @@
|
|
1
|
-
PATH
|
2
|
-
remote: .
|
3
|
-
specs:
|
4
|
-
winnie (0.0.6)
|
5
|
-
json
|
6
|
-
rest-client
|
7
|
-
|
8
|
-
GEM
|
9
|
-
remote: http://rubygems.org/
|
10
|
-
specs:
|
11
|
-
ZenTest (4.5.0)
|
12
|
-
diff-lcs (1.1.2)
|
13
|
-
fakefs (0.2.1)
|
14
|
-
json (1.5.1)
|
15
|
-
mime-types (1.16)
|
16
|
-
rest-client (1.6.1)
|
17
|
-
mime-types (>= 1.16)
|
18
|
-
rspec (2.2.0)
|
19
|
-
rspec-core (~> 2.2)
|
20
|
-
rspec-expectations (~> 2.2)
|
21
|
-
rspec-mocks (~> 2.2)
|
22
|
-
rspec-core (2.2.1)
|
23
|
-
rspec-expectations (2.2.0)
|
24
|
-
diff-lcs (~> 1.1.2)
|
25
|
-
rspec-mocks (2.2.0)
|
26
|
-
|
27
|
-
PLATFORMS
|
28
|
-
ruby
|
29
|
-
|
30
|
-
DEPENDENCIES
|
31
|
-
ZenTest
|
32
|
-
fakefs
|
33
|
-
rspec (~> 2.2.0)
|
34
|
-
winnie!
|