cocoapods-browser 0.0.3 → 0.0.4
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/.travis.yml +10 -0
- data/Gemfile +9 -1
- data/README.md +4 -4
- data/Rakefile +21 -0
- data/cocoapods-browser.gemspec +2 -2
- data/lib/cocoapods/browser/version.rb +1 -1
- data/lib/pod/command/browser.rb +38 -30
- data/spec/command/browser_spec.rb +31 -0
- data/spec/spec_helper.rb +44 -0
- metadata +20 -16
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 9745b0e108aa38280fd465c71ccf39af8bfcbccd
|
4
|
+
data.tar.gz: ff82d2040bf511284bbd194b22acb9ea1ed71b1f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 70811835dbf4a7d347e96fb96da5e29b97754f3ec712f93c9db6ac64e78153fa4c7aa44bac996b989810ad19fd28f4cea88f84993dc06da98a1110adb37f11b5
|
7
|
+
data.tar.gz: 72ffd1877ce2ccb773a1171813c44bee44b281215c6c8c1d743e7f888ad61d7f23909cd1c3577c3ae705cb7fc9ed4782e36dd68ca904f87204a751744d4c00ba
|
data/.travis.yml
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
language: objective-c
|
2
|
+
env:
|
3
|
+
# This is what 10.8.x comes with and we want to support that.
|
4
|
+
- RVM_RUBY_VERSION=system NOEXEC_DISABLE=1 RUBY_VERSION_SPECIFIC='sudo ln -s /usr/bin/llvm-gcc-4.2 /usr/bin/gcc-4.2' SSL_CERT_FILE=/usr/local/share/cacert.pem GIT_AUTHOR_NAME=dealforest GIT_AUTHOR_EMAIL=dealforest.net@gmail.com PYTHONPATH=/usr/local/lib/python2.7/site-packages
|
5
|
+
- RVM_RUBY_VERSION=2.0.0-p247 NOEXEC_DISABLE=1 RUBY_VERSION_SPECIFIC='sudo gem install bundler --no-ri --no-rdoc' GIT_AUTHOR_NAME=dealforest GIT_AUTHOR_EMAIL=dealforest@gmail.com PYTHONPATH=/usr/local/lib/python2.7/site-packages
|
6
|
+
before_install:
|
7
|
+
- curl http://curl.haxx.se/ca/cacert.pem -o /usr/local/share/cacert.pem
|
8
|
+
- source ~/.rvm/scripts/rvm && rvm use $RVM_RUBY_VERSION
|
9
|
+
install: eval $RUBY_VERSION_SPECIFIC && rake bootstrap[use_bundle_dir]
|
10
|
+
script: bundle exec rake spec:ci
|
data/Gemfile
CHANGED
@@ -1,4 +1,12 @@
|
|
1
1
|
source 'https://rubygems.org'
|
2
2
|
|
3
|
-
# Specify your gem's dependencies in cocoapods-browser.gemspec
|
4
3
|
gemspec
|
4
|
+
|
5
|
+
group :development do
|
6
|
+
gem 'cocoapods'
|
7
|
+
gem 'bacon'
|
8
|
+
gem 'mocha-on-bacon'
|
9
|
+
gem 'mocha', '~> 0.11.4'
|
10
|
+
gem 'rake'
|
11
|
+
gem 'prettybacon', :git => 'https://github.com/irrationalfab/PrettyBacon.git', :branch => 'master'
|
12
|
+
end
|
data/README.md
CHANGED
@@ -1,10 +1,10 @@
|
|
1
1
|
# Cocoapods::Browser
|
2
2
|
|
3
|
-
CocoaPods plugin to open a
|
3
|
+
CocoaPods plugin to open a pods homepage in the browser.
|
4
4
|
|
5
5
|
## Installation
|
6
6
|
|
7
|
-
Add this line to your
|
7
|
+
Add this line to your applications Gemfile:
|
8
8
|
|
9
9
|
gem 'cocoapods-browser'
|
10
10
|
|
@@ -12,13 +12,13 @@ And then execute:
|
|
12
12
|
|
13
13
|
$ bundle
|
14
14
|
|
15
|
-
Or install it yourself
|
15
|
+
Or install it yourself:
|
16
16
|
|
17
17
|
$ gem install cocoapods-browser
|
18
18
|
|
19
19
|
## Usage
|
20
20
|
|
21
|
-
Open the pod in browser
|
21
|
+
Open the pod website in a browser like this:
|
22
22
|
|
23
23
|
pod browser iOS-FakeWeb
|
24
24
|
|
data/Rakefile
CHANGED
@@ -1 +1,22 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
|
+
|
3
|
+
def specs(dir)
|
4
|
+
FileList["spec/#{dir}/*_spec.rb"].shuffle.join(' ')
|
5
|
+
end
|
6
|
+
|
7
|
+
task :bootstrap, :use_bundle_dir? do |t, args|
|
8
|
+
if args[:use_bundle_dir?]
|
9
|
+
sh "bundle install --path ./travis_bundle_dir"
|
10
|
+
else
|
11
|
+
sh "bundle install"
|
12
|
+
end
|
13
|
+
end
|
14
|
+
|
15
|
+
namespace :spec do
|
16
|
+
desc "Runs all the specs"
|
17
|
+
task :ci do
|
18
|
+
sh "bundle exec bacon #{specs('**')}"
|
19
|
+
end
|
20
|
+
end
|
21
|
+
|
22
|
+
task :default => "spec:ci"
|
data/cocoapods-browser.gemspec
CHANGED
@@ -8,8 +8,8 @@ Gem::Specification.new do |spec|
|
|
8
8
|
spec.version = Cocoapods::Browser::VERSION
|
9
9
|
spec.authors = ["Toshihiro Morimoto"]
|
10
10
|
spec.email = ["dealforest.net@gmail.com"]
|
11
|
-
spec.description = %q{CocoaPods plugin to open a pod
|
12
|
-
spec.summary = %q{Open a
|
11
|
+
spec.description = %q{CocoaPods plugin to open the homepage of a pod in the browser.}
|
12
|
+
spec.summary = %q{Open a pods homepage in the browser}
|
13
13
|
spec.homepage = "https://github.com/dealforest/cocoapods-browser"
|
14
14
|
spec.license = "MIT"
|
15
15
|
|
data/lib/pod/command/browser.rb
CHANGED
@@ -4,61 +4,69 @@ module Pod
|
|
4
4
|
self.summary = 'Open the homepage'
|
5
5
|
|
6
6
|
self.description = <<-DESC
|
7
|
-
Opens the homepage
|
7
|
+
Opens the homepage of a pod in the browser.
|
8
8
|
DESC
|
9
9
|
|
10
|
-
self.arguments = '[
|
10
|
+
self.arguments = '[NAME]'
|
11
11
|
|
12
12
|
def self.options
|
13
13
|
[
|
14
|
-
'--spec', 'Open the podspec
|
14
|
+
[ '--spec', 'Open the podspec in the browser. github.com/tree/master/[NAME].podspec' ],
|
15
15
|
].concat(super)
|
16
16
|
end
|
17
17
|
|
18
18
|
def initialize(argv)
|
19
19
|
@spec = argv.flag?('spec')
|
20
|
-
@
|
20
|
+
@names = argv.arguments! unless argv.arguments.empty?
|
21
21
|
super
|
22
22
|
end
|
23
23
|
|
24
24
|
def validate!
|
25
25
|
super
|
26
|
-
help!
|
26
|
+
help! 'A Pod name is required' unless @names
|
27
27
|
end
|
28
28
|
|
29
29
|
extend Executable
|
30
30
|
executable :open
|
31
31
|
|
32
32
|
def run
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
next if query != pod.name
|
41
|
-
|
42
|
-
if url = pod.homepage
|
43
|
-
if @spec && url =~ %r|^https?://github.com/|
|
44
|
-
url << "/tree/master/#{pod.name}.podspec"
|
45
|
-
else
|
46
|
-
UI.warn "Skipping `#{pod.name}` because the homgepage is only `github.com`."
|
47
|
-
next
|
48
|
-
end
|
49
|
-
UI.puts("Opening #{url}")
|
50
|
-
open!(url)
|
51
|
-
opened = true
|
52
|
-
else
|
53
|
-
UI.warn "Skipping `#{pod.name}` because the homepage not found."
|
54
|
-
end
|
55
|
-
rescue DSLError
|
56
|
-
UI.warn "Skipping `#{pod.name}` because the podspec contains errors."
|
33
|
+
# update_specs_repos
|
34
|
+
@names.each do |name|
|
35
|
+
if spec = spec_with_name(name)
|
36
|
+
UI.title "Opening #{spec.name}" do
|
37
|
+
url = pick_open_url(spec)
|
38
|
+
UI.puts(">>> #{url}")
|
39
|
+
open!(url)
|
57
40
|
end
|
58
41
|
end
|
59
|
-
UI.warn "The query(`#{query}`) not found pod." unless opened
|
60
42
|
end
|
61
43
|
end
|
44
|
+
|
45
|
+
def update_specs_repos
|
46
|
+
unless config.skip_repo_update?
|
47
|
+
UI.section 'Updating spec repositories' do
|
48
|
+
SourcesManager.update
|
49
|
+
end
|
50
|
+
end
|
51
|
+
end
|
52
|
+
|
53
|
+
def spec_with_name(name)
|
54
|
+
if set = SourcesManager.search(Dependency.new(name))
|
55
|
+
set.specification.root
|
56
|
+
else
|
57
|
+
raise Informative, "Unable to find a podspec named `#{name}`"
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
def pick_open_url(spec)
|
62
|
+
url = spec.homepage
|
63
|
+
if @spec && url =~ %r|^https?://github.com/|
|
64
|
+
"%s/tree/master/%s.podspec" % [ url, spec.name ]
|
65
|
+
else
|
66
|
+
url
|
67
|
+
end
|
68
|
+
end
|
69
|
+
|
62
70
|
end
|
63
71
|
end
|
64
72
|
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
require File.expand_path('../../spec_helper', __FILE__)
|
2
|
+
|
3
|
+
module Pod
|
4
|
+
|
5
|
+
describe Command::Browser do
|
6
|
+
|
7
|
+
describe "CLAide" do
|
8
|
+
it "registers it self" do
|
9
|
+
Command.parse(%w{ browser }).should.be.instance_of Command::Browser
|
10
|
+
end
|
11
|
+
|
12
|
+
it "presents the help if no name is provided" do
|
13
|
+
command = Pod::Command.parse(['browser'])
|
14
|
+
should.raise CLAide::Help do
|
15
|
+
command.validate!
|
16
|
+
end.message.should.match /A Pod name is required/
|
17
|
+
end
|
18
|
+
|
19
|
+
it "runs" do
|
20
|
+
Config.instance.skip_repo_update = false
|
21
|
+
command = Pod::Command.parse(['browser', 'iOS-FakeWeb'])
|
22
|
+
# command.expects(:update_specs_repos)
|
23
|
+
command.expects(:spec_with_name)
|
24
|
+
command.run
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
end
|
29
|
+
|
30
|
+
end
|
31
|
+
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,44 @@
|
|
1
|
+
ROOT = Pathname.new(File.expand_path('../../', __FILE__))
|
2
|
+
$:.unshift((ROOT + 'lib').to_s)
|
3
|
+
$:.unshift((ROOT + 'spec').to_s)
|
4
|
+
|
5
|
+
require 'bundler/setup'
|
6
|
+
require 'bacon'
|
7
|
+
require 'mocha-on-bacon'
|
8
|
+
require 'pretty_bacon'
|
9
|
+
require 'cocoapods'
|
10
|
+
|
11
|
+
require 'cocoapods_plugin'
|
12
|
+
|
13
|
+
#-----------------------------------------------------------------------------#
|
14
|
+
|
15
|
+
module Pod
|
16
|
+
|
17
|
+
# Disable the wrapping so the output is deterministic in the tests.
|
18
|
+
#
|
19
|
+
UI.disable_wrap = true
|
20
|
+
|
21
|
+
# Redirects the messages to an internal store.
|
22
|
+
#
|
23
|
+
module UI
|
24
|
+
@output = ''
|
25
|
+
@warnings = ''
|
26
|
+
|
27
|
+
class << self
|
28
|
+
attr_accessor :output
|
29
|
+
attr_accessor :warnings
|
30
|
+
|
31
|
+
def puts(message = '')
|
32
|
+
@output << "#{message}\n"
|
33
|
+
end
|
34
|
+
|
35
|
+
def warn(message = '', actions = [])
|
36
|
+
@warnings << "#{message}\n" end
|
37
|
+
def print(message)
|
38
|
+
@output << message
|
39
|
+
end
|
40
|
+
end
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
#-----------------------------------------------------------------------------#
|
metadata
CHANGED
@@ -1,65 +1,66 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: cocoapods-browser
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Toshihiro Morimoto
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-01-24 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: bundler
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - ~>
|
17
|
+
- - "~>"
|
18
18
|
- !ruby/object:Gem::Version
|
19
19
|
version: '1.3'
|
20
20
|
type: :development
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - ~>
|
24
|
+
- - "~>"
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '1.3'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: rake
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
30
30
|
requirements:
|
31
|
-
- -
|
31
|
+
- - ">="
|
32
32
|
- !ruby/object:Gem::Version
|
33
33
|
version: '0'
|
34
34
|
type: :development
|
35
35
|
prerelease: false
|
36
36
|
version_requirements: !ruby/object:Gem::Requirement
|
37
37
|
requirements:
|
38
|
-
- -
|
38
|
+
- - ">="
|
39
39
|
- !ruby/object:Gem::Version
|
40
40
|
version: '0'
|
41
41
|
- !ruby/object:Gem::Dependency
|
42
42
|
name: cocoapods
|
43
43
|
requirement: !ruby/object:Gem::Requirement
|
44
44
|
requirements:
|
45
|
-
- -
|
45
|
+
- - ">="
|
46
46
|
- !ruby/object:Gem::Version
|
47
47
|
version: '0'
|
48
48
|
type: :runtime
|
49
49
|
prerelease: false
|
50
50
|
version_requirements: !ruby/object:Gem::Requirement
|
51
51
|
requirements:
|
52
|
-
- -
|
52
|
+
- - ">="
|
53
53
|
- !ruby/object:Gem::Version
|
54
54
|
version: '0'
|
55
|
-
description: CocoaPods plugin to open a pod
|
55
|
+
description: CocoaPods plugin to open the homepage of a pod in the browser.
|
56
56
|
email:
|
57
57
|
- dealforest.net@gmail.com
|
58
58
|
executables: []
|
59
59
|
extensions: []
|
60
60
|
extra_rdoc_files: []
|
61
61
|
files:
|
62
|
-
- .gitignore
|
62
|
+
- ".gitignore"
|
63
|
+
- ".travis.yml"
|
63
64
|
- Gemfile
|
64
65
|
- LICENSE.txt
|
65
66
|
- README.md
|
@@ -69,6 +70,8 @@ files:
|
|
69
70
|
- lib/cocoapods/browser/version.rb
|
70
71
|
- lib/cocoapods_plugin.rb
|
71
72
|
- lib/pod/command/browser.rb
|
73
|
+
- spec/command/browser_spec.rb
|
74
|
+
- spec/spec_helper.rb
|
72
75
|
homepage: https://github.com/dealforest/cocoapods-browser
|
73
76
|
licenses:
|
74
77
|
- MIT
|
@@ -79,19 +82,20 @@ require_paths:
|
|
79
82
|
- lib
|
80
83
|
required_ruby_version: !ruby/object:Gem::Requirement
|
81
84
|
requirements:
|
82
|
-
- -
|
85
|
+
- - ">="
|
83
86
|
- !ruby/object:Gem::Version
|
84
87
|
version: '0'
|
85
88
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
86
89
|
requirements:
|
87
|
-
- -
|
90
|
+
- - ">="
|
88
91
|
- !ruby/object:Gem::Version
|
89
92
|
version: '0'
|
90
93
|
requirements: []
|
91
94
|
rubyforge_project:
|
92
|
-
rubygems_version: 2.0
|
95
|
+
rubygems_version: 2.2.0
|
93
96
|
signing_key:
|
94
97
|
specification_version: 4
|
95
|
-
summary: Open a
|
96
|
-
test_files:
|
97
|
-
|
98
|
+
summary: Open a pods homepage in the browser
|
99
|
+
test_files:
|
100
|
+
- spec/command/browser_spec.rb
|
101
|
+
- spec/spec_helper.rb
|