admin-vmc-plugin 0.0.5 → 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -17,7 +17,7 @@ module VMCAdmin
17
17
  input :body, :alias => "-b",
18
18
  :desc => "Request body"
19
19
  def curl
20
- mode = input[:mode].capitalize.to_sym
20
+ mode = input[:mode].upcase
21
21
  path = input[:path]
22
22
  body = input[:body]
23
23
 
@@ -31,12 +31,12 @@ module VMCAdmin
31
31
  accept = headers["accept"]
32
32
 
33
33
  content ||= :json if body
34
- accept ||= :json unless [:Delete, :Head].include?(mode)
34
+ accept ||= :json unless %w(DELETE HEAD).include?(mode)
35
35
 
36
- res =
37
- client.base.request_path(
38
- Net::HTTP.const_get(mode),
39
- path.split("/"),
36
+ req, res =
37
+ client.base.request_raw(
38
+ mode,
39
+ remove_leading_slash(path),
40
40
  :headers => headers,
41
41
  :accept => accept,
42
42
  :payload => body,
@@ -48,5 +48,9 @@ module VMCAdmin
48
48
  puts res
49
49
  end
50
50
  end
51
+
52
+ def remove_leading_slash(path)
53
+ path.sub(%r{^/}, '')
54
+ end
51
55
  end
52
56
  end
@@ -1,3 +1,3 @@
1
1
  module VMCAdmin
2
- VERSION = "0.0.5"
2
+ VERSION = "0.1.0".freeze
3
3
  end
@@ -0,0 +1,25 @@
1
+ require "spec_helper"
2
+
3
+ describe VMCAdmin::Curl do
4
+ use_fake_home_dir { "#{SPEC_ROOT}/fixtures/fake_home_dir" }
5
+
6
+ subject { vmc ["curl", "--mode", "GET", "--path", "apps/5/instances"] }
7
+
8
+ before do
9
+ any_instance_of(CFoundry::Client) do |client|
10
+ stub(client).info { { :version => 2 } }
11
+ end
12
+ end
13
+
14
+ it "makes a request to the current target" do
15
+ stub_request(:get, "https://api.some-target-for-vmc-curl.com/apps/5/instances").to_return(
16
+ :status => 200,
17
+ :body => 'some-body'
18
+ )
19
+
20
+ subject
21
+
22
+ expect(stdout.string).to include('"status": "200"')
23
+ expect(stdout.string).to include('"body": "some-body"')
24
+ end
25
+ end
@@ -0,0 +1,18 @@
1
+ SPEC_ROOT = File.dirname(__FILE__).freeze
2
+
3
+ require "rspec"
4
+ require "vmc"
5
+ require "cfoundry"
6
+ require "cfoundry/test_support"
7
+ require "webmock/rspec"
8
+ require "vmc/test_support"
9
+
10
+ require "#{SPEC_ROOT}/../lib/admin-vmc-plugin/plugin"
11
+
12
+ RSpec.configure do |c|
13
+ c.include Fake::FakeMethods
14
+ c.mock_with :rr
15
+
16
+ c.include VMC::TestSupport::FakeHomeDir
17
+ c.include VMC::TestSupport::CommandHelper
18
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: admin-vmc-plugin
3
3
  version: !ruby/object:Gem::Version
4
- hash: 21
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
+ - 1
8
9
  - 0
9
- - 5
10
- version: 0.0.5
10
+ version: 0.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Alex Suraci
@@ -15,8 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2012-11-20 00:00:00 -08:00
19
- default_executable:
18
+ date: 2013-02-06 00:00:00 Z
20
19
  dependencies:
21
20
  - !ruby/object:Gem::Dependency
22
21
  name: cfoundry
@@ -26,12 +25,12 @@ dependencies:
26
25
  requirements:
27
26
  - - ~>
28
27
  - !ruby/object:Gem::Version
29
- hash: 15
28
+ hash: 11
30
29
  segments:
31
30
  - 0
32
- - 4
31
+ - 5
33
32
  - 0
34
- version: 0.4.0
33
+ version: 0.5.0
35
34
  type: :runtime
36
35
  version_requirements: *id001
37
36
  description:
@@ -45,11 +44,12 @@ extra_rdoc_files: []
45
44
 
46
45
  files:
47
46
  - Rakefile
48
- - lib/admin-vmc-plugin/version.rb
47
+ - lib/admin-vmc-plugin/curl.rb
49
48
  - lib/admin-vmc-plugin/plugin.rb
50
49
  - lib/admin-vmc-plugin/service_auth_token.rb
51
- - lib/admin-vmc-plugin/curl.rb
52
- has_rdoc: true
50
+ - lib/admin-vmc-plugin/version.rb
51
+ - spec/curl_spec.rb
52
+ - spec/spec_helper.rb
53
53
  homepage: http://cloudfoundry.com/
54
54
  licenses: []
55
55
 
@@ -79,9 +79,10 @@ required_rubygems_version: !ruby/object:Gem::Requirement
79
79
  requirements: []
80
80
 
81
81
  rubyforge_project: admin-vmc-plugin
82
- rubygems_version: 1.6.2
82
+ rubygems_version: 1.8.24
83
83
  signing_key:
84
84
  specification_version: 3
85
85
  summary: Cloud Foundry administration commands.
86
- test_files: []
87
-
86
+ test_files:
87
+ - spec/curl_spec.rb
88
+ - spec/spec_helper.rb