chromembed_rails 0.0.1 → 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.
data/Gemfile CHANGED
@@ -2,11 +2,14 @@ source "http://rubygems.org"
2
2
  # Add dependencies required to use your gem here.
3
3
  # Example:
4
4
  gem "crxmake", ">= 2.0.3"
5
+ gem "rails", ">= 3.0.0"
5
6
 
6
7
  # Add dependencies to develop your gem here.
7
8
  # Include everything needed to run rake, tests, features, etc.
8
9
  group :development do
9
10
  gem "bundler", "~> 1.0.0"
10
11
  gem "jeweler", "~> 1.5.2"
12
+ gem "mocha", ">= 0.9.12"
11
13
  gem "rcov", ">= 0"
14
+ gem "sqlite3", ">= 1.3.3"
12
15
  end
data/Gemfile.lock CHANGED
@@ -1,15 +1,78 @@
1
1
  GEM
2
2
  remote: http://rubygems.org/
3
3
  specs:
4
+ abstract (1.0.0)
5
+ actionmailer (3.0.5)
6
+ actionpack (= 3.0.5)
7
+ mail (~> 2.2.15)
8
+ actionpack (3.0.5)
9
+ activemodel (= 3.0.5)
10
+ activesupport (= 3.0.5)
11
+ builder (~> 2.1.2)
12
+ erubis (~> 2.6.6)
13
+ i18n (~> 0.4)
14
+ rack (~> 1.2.1)
15
+ rack-mount (~> 0.6.13)
16
+ rack-test (~> 0.5.7)
17
+ tzinfo (~> 0.3.23)
18
+ activemodel (3.0.5)
19
+ activesupport (= 3.0.5)
20
+ builder (~> 2.1.2)
21
+ i18n (~> 0.4)
22
+ activerecord (3.0.5)
23
+ activemodel (= 3.0.5)
24
+ activesupport (= 3.0.5)
25
+ arel (~> 2.0.2)
26
+ tzinfo (~> 0.3.23)
27
+ activeresource (3.0.5)
28
+ activemodel (= 3.0.5)
29
+ activesupport (= 3.0.5)
30
+ activesupport (3.0.5)
31
+ arel (2.0.9)
32
+ builder (2.1.2)
4
33
  crxmake (2.0.3)
5
34
  zipruby (>= 0.3.2)
35
+ erubis (2.6.6)
36
+ abstract (>= 1.0.0)
6
37
  git (1.2.5)
38
+ i18n (0.5.0)
7
39
  jeweler (1.5.2)
8
40
  bundler (~> 1.0.0)
9
41
  git (>= 1.2.5)
10
42
  rake
43
+ mail (2.2.15)
44
+ activesupport (>= 2.3.6)
45
+ i18n (>= 0.4.0)
46
+ mime-types (~> 1.16)
47
+ treetop (~> 1.4.8)
48
+ mime-types (1.16)
49
+ mocha (0.9.12)
50
+ polyglot (0.3.1)
51
+ rack (1.2.2)
52
+ rack-mount (0.6.14)
53
+ rack (>= 1.0.0)
54
+ rack-test (0.5.7)
55
+ rack (>= 1.0)
56
+ rails (3.0.5)
57
+ actionmailer (= 3.0.5)
58
+ actionpack (= 3.0.5)
59
+ activerecord (= 3.0.5)
60
+ activeresource (= 3.0.5)
61
+ activesupport (= 3.0.5)
62
+ bundler (~> 1.0)
63
+ railties (= 3.0.5)
64
+ railties (3.0.5)
65
+ actionpack (= 3.0.5)
66
+ activesupport (= 3.0.5)
67
+ rake (>= 0.8.7)
68
+ thor (~> 0.14.4)
11
69
  rake (0.8.7)
12
70
  rcov (0.9.9)
71
+ sqlite3 (1.3.3)
72
+ thor (0.14.6)
73
+ treetop (1.4.9)
74
+ polyglot (>= 0.3.1)
75
+ tzinfo (0.3.25)
13
76
  zipruby (0.3.6)
14
77
 
15
78
  PLATFORMS
@@ -19,4 +82,7 @@ DEPENDENCIES
19
82
  bundler (~> 1.0.0)
20
83
  crxmake (>= 2.0.3)
21
84
  jeweler (~> 1.5.2)
85
+ mocha (>= 0.9.12)
86
+ rails (>= 3.0.0)
22
87
  rcov
88
+ sqlite3 (>= 1.3.3)
data/Rakefile CHANGED
@@ -22,9 +22,12 @@ Jeweler::Tasks.new do |gem|
22
22
  # Include your dependencies below. Runtime dependencies are required when using your gem,
23
23
  # and development dependencies are only needed for development (ie running rake tasks, tests, etc)
24
24
  gem.add_runtime_dependency 'crxmake', '>= 2.0.3'
25
+ gem.add_runtime_dependency 'rails', '>= 3.0.0'
25
26
  gem.add_development_dependency 'bundler', '~> 1.0.0'
26
27
  gem.add_development_dependency 'jeweler', '~> 1.5.2'
28
+ gem.add_development_dependency 'mocha', '~> 0.9.12'
27
29
  gem.add_development_dependency 'rcov', '>= 0'
30
+ gem.add_development_dependency 'sqlite3', '>= 1.3.3'
28
31
  end
29
32
  Jeweler::RubygemsDotOrgTasks.new
30
33
 
@@ -42,7 +45,7 @@ Rake::RDocTask.new do |rdoc|
42
45
  version = File.exist?('VERSION') ? File.read('VERSION') : ""
43
46
 
44
47
  rdoc.rdoc_dir = 'rdoc'
45
- rdoc.title = "new #{version}"
48
+ rdoc.title = "chromembed_rails #{version}"
46
49
  rdoc.rdoc_files.include('README*')
47
50
  rdoc.rdoc_files.include('lib/**/*.rb')
48
51
  end
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.0.1
1
+ 0.1.0
@@ -5,7 +5,7 @@
5
5
 
6
6
  Gem::Specification.new do |s|
7
7
  s.name = %q{chromembed_rails}
8
- s.version = "0.0.1"
8
+ s.version = "0.1.0"
9
9
 
10
10
  s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
11
  s.authors = ["Victor Costan"]
@@ -41,45 +41,82 @@ Gem::Specification.new do |s|
41
41
  "lib/chromembed_rails/generators/templates/desktop/chrome_extension/images/ruby19.png",
42
42
  "lib/chromembed_rails/generators/templates/desktop/chrome_extension/manifest.json",
43
43
  "lib/chromembed_rails/model.rb",
44
- "lib/chromembed_rails/routes.rb"
44
+ "lib/chromembed_rails/routes.rb",
45
+ "test/chrome_extension_cache_test.rb",
46
+ "test/chrome_extension_controller_test.rb",
47
+ "test/helpers/application_controller.rb",
48
+ "test/helpers/chrome_extension.pem",
49
+ "test/helpers/db_setup.rb",
50
+ "test/helpers/initializers.rb",
51
+ "test/helpers/routes.rb",
52
+ "test/routes_test.rb",
53
+ "test/test_helper.rb"
45
54
  ]
46
55
  s.homepage = %q{http://github.com/pwnall/chromembed_rails}
47
56
  s.licenses = ["MIT"]
48
57
  s.require_paths = ["lib"]
49
58
  s.rubygems_version = %q{1.5.3}
50
59
  s.summary = %q{Serves a Chrome extension embedded in a Rails application}
60
+ s.test_files = [
61
+ "test/chrome_extension_cache_test.rb",
62
+ "test/chrome_extension_controller_test.rb",
63
+ "test/helpers/application_controller.rb",
64
+ "test/helpers/db_setup.rb",
65
+ "test/helpers/initializers.rb",
66
+ "test/helpers/routes.rb",
67
+ "test/routes_test.rb",
68
+ "test/test_helper.rb"
69
+ ]
51
70
 
52
71
  if s.respond_to? :specification_version then
53
72
  s.specification_version = 3
54
73
 
55
74
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
56
75
  s.add_runtime_dependency(%q<crxmake>, [">= 2.0.3"])
76
+ s.add_runtime_dependency(%q<rails>, [">= 3.0.0"])
57
77
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
58
78
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
79
+ s.add_development_dependency(%q<mocha>, [">= 0.9.12"])
59
80
  s.add_development_dependency(%q<rcov>, [">= 0"])
81
+ s.add_development_dependency(%q<sqlite3>, [">= 1.3.3"])
60
82
  s.add_runtime_dependency(%q<crxmake>, [">= 2.0.3"])
83
+ s.add_runtime_dependency(%q<rails>, [">= 3.0.0"])
61
84
  s.add_development_dependency(%q<bundler>, ["~> 1.0.0"])
62
85
  s.add_development_dependency(%q<jeweler>, ["~> 1.5.2"])
86
+ s.add_development_dependency(%q<mocha>, ["~> 0.9.12"])
63
87
  s.add_development_dependency(%q<rcov>, [">= 0"])
88
+ s.add_development_dependency(%q<sqlite3>, [">= 1.3.3"])
64
89
  else
65
90
  s.add_dependency(%q<crxmake>, [">= 2.0.3"])
91
+ s.add_dependency(%q<rails>, [">= 3.0.0"])
66
92
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
67
93
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
94
+ s.add_dependency(%q<mocha>, [">= 0.9.12"])
68
95
  s.add_dependency(%q<rcov>, [">= 0"])
96
+ s.add_dependency(%q<sqlite3>, [">= 1.3.3"])
69
97
  s.add_dependency(%q<crxmake>, [">= 2.0.3"])
98
+ s.add_dependency(%q<rails>, [">= 3.0.0"])
70
99
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
71
100
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
101
+ s.add_dependency(%q<mocha>, ["~> 0.9.12"])
72
102
  s.add_dependency(%q<rcov>, [">= 0"])
103
+ s.add_dependency(%q<sqlite3>, [">= 1.3.3"])
73
104
  end
74
105
  else
75
106
  s.add_dependency(%q<crxmake>, [">= 2.0.3"])
107
+ s.add_dependency(%q<rails>, [">= 3.0.0"])
76
108
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
77
109
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
110
+ s.add_dependency(%q<mocha>, [">= 0.9.12"])
78
111
  s.add_dependency(%q<rcov>, [">= 0"])
112
+ s.add_dependency(%q<sqlite3>, [">= 1.3.3"])
79
113
  s.add_dependency(%q<crxmake>, [">= 2.0.3"])
114
+ s.add_dependency(%q<rails>, [">= 3.0.0"])
80
115
  s.add_dependency(%q<bundler>, ["~> 1.0.0"])
81
116
  s.add_dependency(%q<jeweler>, ["~> 1.5.2"])
117
+ s.add_dependency(%q<mocha>, ["~> 0.9.12"])
82
118
  s.add_dependency(%q<rcov>, [">= 0"])
119
+ s.add_dependency(%q<sqlite3>, [">= 1.3.3"])
83
120
  end
84
121
  end
85
122
 
@@ -1,3 +0,0 @@
1
- app_uri:
2
- name: app_uri
3
- value: "http://localhost:3800/"
@@ -1,12 +1,13 @@
1
1
  require 'test_helper'
2
2
 
3
3
  class ChromeExtensionControllerTest < ActionController::TestCase
4
- setup do
5
- @config_var = config_vars(:app_uri)
4
+ test "should get the extension" do
5
+ get :show, :format => 'crx'
6
+ assert_response :success
6
7
  end
7
8
 
8
- test "cannot access config vars without authentication" do
9
- get :index
10
- assert_response :unauthorized
9
+ test "should get the update file" do
10
+ get :update, :format => 'xml'
11
+ assert_response :success
11
12
  end
12
13
  end
@@ -1 +1,5 @@
1
1
  # The path to your extension's embedded code.
2
+ ChromembedRails.extension_path = Rails.root.join 'desktop', 'chrome_extension'
3
+
4
+ # Path to the private key used to sign the extension.
5
+ ChromembedRails.key_path = Rails.root.join 'desktop', 'chrome_extension.pem'
@@ -26,6 +26,10 @@ module ModelClassMethods
26
26
 
27
27
  # The extension version listed in manifest.json.
28
28
  validates :version, :length => { :in => 0..64, :allow_nil => false }
29
+
30
+ # The CRX file contents.
31
+ validates :crx_bits,
32
+ :length => { :in => 0..(64.megabytes), :allow_nil => false }
29
33
 
30
34
  extend ModelMetaclassMethods
31
35
  include ModelInstanceMethods
@@ -40,16 +44,6 @@ module ModelMetaclassMethods
40
44
  self.new.update_with_current_bits(
41
45
  'update_url' => chrome_extension_update_url)
42
46
  end
43
-
44
- # Path to the extension files.
45
- def extension_path
46
- Rails.root.join 'desktop', 'chrome_extension'
47
- end
48
-
49
- # Path to the private key used to sign the extension.
50
- def key_path
51
- Rails.root.join 'desktop', 'chrome_extension.pem'
52
- end
53
47
  end # module ChromembedRails::Model::ModelMetaclassMethods
54
48
 
55
49
 
@@ -61,13 +55,13 @@ module ModelInstanceMethods
61
55
  # manifest_changes:: hash to be merged into the extension's manifest JSON;
62
56
  # 'update_url' and 'version' might be good keys to change
63
57
  def update_with_current_bits(manifest_changes)
64
- extension_path = self.class.extension_path
58
+ extension_path = ChromembedRails.extension_path
65
59
  manifest_path = File.join extension_path, 'manifest.json'
66
60
  manifest_json = ActiveSupport::JSON.decode File.read(manifest_path)
67
61
  manifest_json.merge! manifest_changes
68
62
  self.version = manifest_json['version']
69
63
 
70
- key_path = self.class.key_path
64
+ key_path = ChromembedRails.key_path
71
65
  key = OpenSSL::PKey::RSA.new File.read(key_path)
72
66
  # Source: http://supercollider.dk/2010/01/calculating-chrome-extension-id-from-your-private-key-233
73
67
  alg = ["30819F300D06092A864886F70D010101050003818D00"].pack('H*')
@@ -1,5 +1,16 @@
1
1
  # :nodoc: namespace
2
2
  module ChromembedRails
3
+ class <<self
4
+ # Path to the extension code.
5
+ #
6
+ # This should be set in an initializer.
7
+ attr_accessor :extension_path
8
+
9
+ # Path to the private key used to the sign the extension.
10
+ #
11
+ # This should be set in an initializer.
12
+ attr_accessor :key_path
13
+ end
3
14
  end
4
15
 
5
16
  require 'chromembed_rails/controller.rb'
@@ -0,0 +1,23 @@
1
+ require File.expand_path('../test_helper', __FILE__)
2
+
3
+ class ChromeExtensionCacheTest < ActiveSupport::TestCase
4
+ def setup
5
+ @entry = ChromeExtensionCache.new :appid => 'aabbcc', :version => '1.0.0',
6
+ :crx_bits => 'abcd' * 16
7
+ end
8
+
9
+ test "setup" do
10
+ assert @entry.valid?
11
+ end
12
+
13
+ test "update_with_current_bits" do
14
+ @entry.update_with_current_bits 'update_url' => 'http://url/update.xml'
15
+
16
+ assert_equal 'mmdhdbifokakcihplakafeifahobiijk', @entry.appid
17
+ assert_equal '1.0.0', @entry.version
18
+ assert_equal 'Cr24', @entry.crx_bits[0, 4]
19
+
20
+ assert @entry.crx_bits.include?("PK\x03\x04"), 'crx does not contain a ZIP'
21
+ assert @entry.crx_bits.length > 1.kilobyte, 'crx file is very small'
22
+ end
23
+ end
@@ -0,0 +1,28 @@
1
+ require File.expand_path('../test_helper', __FILE__)
2
+
3
+ require 'chromembed_rails/generators/templates/chrome_extension_controller.rb'
4
+
5
+ # Run the tests in the generator, to make sure they pass.
6
+ require 'chromembed_rails/generators/templates/chrome_extension_controller_test.rb'
7
+
8
+ # Tests the methods injected by config_vars_controller.
9
+ class ChromeExtensionControllerExtendedTest < ActionController::TestCase
10
+ tests ChromeExtensionController
11
+
12
+ test "should get the extension" do
13
+ get :show, :format => 'crx'
14
+ assert_response :success
15
+ assert_equal 'Cr24', response.body[0, 4]
16
+ assert response.body.include?("PK\x03\x04"), 'crx does not contain a ZIP'
17
+ end
18
+
19
+ test "should get the update file" do
20
+ get :update, :format => 'xml'
21
+ assert_response :success
22
+ assert_select 'gupdate' do
23
+ assert_select "app[appid=mmdhdbifokakcihplakafeifahobiijk]" do
24
+ assert_select 'updatecheck[codebase=http://test.host/chrome_extension.crx][version=1.0.0]'
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,4 @@
1
+ # :nodoc: stubbed, because controllers inherit from it
2
+ class ApplicationController < ActionController::Base
3
+
4
+ end
@@ -0,0 +1,15 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIICXgIBAAKBgQCt33m4n5e6IktFf+pchtvc5tX+WhzXUn2vwILZiY0Emy6LppzH
3
+ 60H8WRCvABvzQgz/CI6C24sWotnLWfwacdwHDfZ5qTvMLuBJlMCm5qkJJvi57g6g
4
+ RO3H5kKTCfiJtn+V65wyJOASB+Luh1TxYZWxLhvn6nah382+eSn6DJhcDwIDAQAB
5
+ AoGBAIR87vFBmonYq+aPa/OJR2tx8cnYvHVOhDsxxAMjDvNdlAARuxGTMDqrW00e
6
+ Fi4sPF7xFDaeN8PN34tWTAWSkQcET2Y2kNInK5uZnsmgAHwS/eQQb50AQXacofIH
7
+ yMqsZQ/UVaDGl5rGn0xD8OcRMQq/9nadgka09RngyQtpinJxAkEA5o9Sl9vl3dHC
8
+ CiwCqqypYRwDdan2N8U9WlM3tKhyl647HcsiqVWExvd/LUgWFUxrpWco9WQ3oeXY
9
+ o0o336wwCwJBAMEO56JvWMnIn1zCX1zgQCK93gDJZmo4SPBjYiHXC1/8QttSfsuP
10
+ y01GGFyD4A4FW6I6pLXj4HhD6V+K8nE3co0CQATdi2mm+0/WCFk8moXNhPmGpNAL
11
+ 2SVOJUBNt0Q5tclbpOW5Dq8yHc4xFN74wXaLmU3xQl0DU2U4O30eqNUwhgcCQQCA
12
+ 4NhVIYveOKXaII/UyodGKgXX9Jr/8c8PWukZuhsH2rku/KVUcwu+7Do7GHYsJfuE
13
+ Ey39lsA0yPE0LOeoGOHJAkEAg9rsC8SuTa5XI3AHeQJtfny2ttnR33An7nz9dPry
14
+ ZcEvB9KJQqMgvf97Tt/F7Cwx8Uf6x82bGCOTImOfw0VPiQ==
15
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,23 @@
1
+ ActiveRecord::Base.establish_connection :adapter => 'sqlite3',
2
+ :database => ':memory:'
3
+ ActiveRecord::Base.configurations = true
4
+
5
+ ActiveRecord::Migration.verbose = false
6
+ require 'chromembed_rails/generators/templates/001_create_chrome_extension_caches.rb'
7
+ CreateChromeExtensionCaches.up
8
+
9
+ require 'chromembed_rails/generators/templates/chrome_extension_cache.rb'
10
+
11
+ # :nodoc: open TestCase to setup fixtures
12
+ class ActiveSupport::TestCase
13
+ include ActiveRecord::TestFixtures
14
+
15
+ self.fixture_path =
16
+ File.expand_path '../../../lib/chromembed_rails/generators/templates',
17
+ __FILE__
18
+
19
+ self.use_transactional_fixtures = false
20
+ self.use_instantiated_fixtures = false
21
+ self.pre_loaded_fixtures = false
22
+ fixtures :all
23
+ end
@@ -0,0 +1,11 @@
1
+ # Mock Rails.root used in the chrome_extension initializer.
2
+ module Rails
3
+ def self.root
4
+ Pathname.new File.expand_path(
5
+ '../../../lib/chromembed_rails/generators/templates', __FILE__)
6
+ end
7
+ end
8
+ require 'chromembed_rails/generators/templates/chrome_extension_initializer.rb'
9
+
10
+ # Point to the testing key.
11
+ ChromembedRails.key_path = File.expand_path '../chrome_extension.pem', __FILE__
@@ -0,0 +1,13 @@
1
+ # :nodoc: the routes used in all tests
2
+ class ActionController::TestCase
3
+ def setup_routes
4
+ @routes = ActionController::Routing::RouteSet.new
5
+ @routes.draw do
6
+ # NOTE: this route should be kept in sync with the generator template.
7
+ chrome_extension
8
+ end
9
+ ApplicationController.send :include, @routes.url_helpers
10
+ end
11
+
12
+ setup :setup_routes
13
+ end
@@ -0,0 +1,15 @@
1
+ require File.expand_path('../test_helper', __FILE__)
2
+
3
+ require 'chromembed_rails/generators/templates/chrome_extension_controller.rb'
4
+
5
+
6
+ class RoutesTest < ActionController::TestCase
7
+ tests ChromeExtensionController
8
+
9
+ test "chrome_extension routes" do
10
+ assert_routing({:path => "/chrome_extension.crx", :method => :get},
11
+ {:controller => 'chrome_extension', :action => 'show'})
12
+ assert_routing({:path => "/chrome_extension/update.xml", :method => :get},
13
+ {:controller => 'chrome_extension', :action => 'update'})
14
+ end
15
+ end
@@ -0,0 +1,16 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+
4
+ require 'action_pack'
5
+ require 'active_record'
6
+ require 'active_support'
7
+ require 'active_support/core_ext'
8
+
9
+ require 'sqlite3'
10
+
11
+ require 'chromembed_rails'
12
+
13
+ require 'helpers/application_controller.rb'
14
+ require 'helpers/db_setup.rb'
15
+ require 'helpers/initializers.rb'
16
+ require 'helpers/routes.rb'
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: chromembed_rails
3
3
  version: !ruby/object:Gem::Version
4
- hash: 29
4
+ hash: 27
5
5
  prerelease:
6
6
  segments:
7
7
  - 0
8
- - 0
9
8
  - 1
10
- version: 0.0.1
9
+ - 0
10
+ version: 0.1.0
11
11
  platform: ruby
12
12
  authors:
13
13
  - Victor Costan
@@ -35,8 +35,24 @@ dependencies:
35
35
  type: :runtime
36
36
  requirement: *id001
37
37
  - !ruby/object:Gem::Dependency
38
- name: bundler
38
+ name: rails
39
39
  version_requirements: &id002 !ruby/object:Gem::Requirement
40
+ none: false
41
+ requirements:
42
+ - - ">="
43
+ - !ruby/object:Gem::Version
44
+ hash: 7
45
+ segments:
46
+ - 3
47
+ - 0
48
+ - 0
49
+ version: 3.0.0
50
+ prerelease: false
51
+ type: :runtime
52
+ requirement: *id002
53
+ - !ruby/object:Gem::Dependency
54
+ name: bundler
55
+ version_requirements: &id003 !ruby/object:Gem::Requirement
40
56
  none: false
41
57
  requirements:
42
58
  - - ~>
@@ -49,10 +65,10 @@ dependencies:
49
65
  version: 1.0.0
50
66
  prerelease: false
51
67
  type: :development
52
- requirement: *id002
68
+ requirement: *id003
53
69
  - !ruby/object:Gem::Dependency
54
70
  name: jeweler
55
- version_requirements: &id003 !ruby/object:Gem::Requirement
71
+ version_requirements: &id004 !ruby/object:Gem::Requirement
56
72
  none: false
57
73
  requirements:
58
74
  - - ~>
@@ -65,10 +81,26 @@ dependencies:
65
81
  version: 1.5.2
66
82
  prerelease: false
67
83
  type: :development
68
- requirement: *id003
84
+ requirement: *id004
85
+ - !ruby/object:Gem::Dependency
86
+ name: mocha
87
+ version_requirements: &id005 !ruby/object:Gem::Requirement
88
+ none: false
89
+ requirements:
90
+ - - ">="
91
+ - !ruby/object:Gem::Version
92
+ hash: 35
93
+ segments:
94
+ - 0
95
+ - 9
96
+ - 12
97
+ version: 0.9.12
98
+ prerelease: false
99
+ type: :development
100
+ requirement: *id005
69
101
  - !ruby/object:Gem::Dependency
70
102
  name: rcov
71
- version_requirements: &id004 !ruby/object:Gem::Requirement
103
+ version_requirements: &id006 !ruby/object:Gem::Requirement
72
104
  none: false
73
105
  requirements:
74
106
  - - ">="
@@ -79,10 +111,26 @@ dependencies:
79
111
  version: "0"
80
112
  prerelease: false
81
113
  type: :development
82
- requirement: *id004
114
+ requirement: *id006
115
+ - !ruby/object:Gem::Dependency
116
+ name: sqlite3
117
+ version_requirements: &id007 !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ">="
121
+ - !ruby/object:Gem::Version
122
+ hash: 29
123
+ segments:
124
+ - 1
125
+ - 3
126
+ - 3
127
+ version: 1.3.3
128
+ prerelease: false
129
+ type: :development
130
+ requirement: *id007
83
131
  - !ruby/object:Gem::Dependency
84
132
  name: crxmake
85
- version_requirements: &id005 !ruby/object:Gem::Requirement
133
+ version_requirements: &id008 !ruby/object:Gem::Requirement
86
134
  none: false
87
135
  requirements:
88
136
  - - ">="
@@ -95,10 +143,26 @@ dependencies:
95
143
  version: 2.0.3
96
144
  prerelease: false
97
145
  type: :runtime
98
- requirement: *id005
146
+ requirement: *id008
147
+ - !ruby/object:Gem::Dependency
148
+ name: rails
149
+ version_requirements: &id009 !ruby/object:Gem::Requirement
150
+ none: false
151
+ requirements:
152
+ - - ">="
153
+ - !ruby/object:Gem::Version
154
+ hash: 7
155
+ segments:
156
+ - 3
157
+ - 0
158
+ - 0
159
+ version: 3.0.0
160
+ prerelease: false
161
+ type: :runtime
162
+ requirement: *id009
99
163
  - !ruby/object:Gem::Dependency
100
164
  name: bundler
101
- version_requirements: &id006 !ruby/object:Gem::Requirement
165
+ version_requirements: &id010 !ruby/object:Gem::Requirement
102
166
  none: false
103
167
  requirements:
104
168
  - - ~>
@@ -111,10 +175,10 @@ dependencies:
111
175
  version: 1.0.0
112
176
  prerelease: false
113
177
  type: :development
114
- requirement: *id006
178
+ requirement: *id010
115
179
  - !ruby/object:Gem::Dependency
116
180
  name: jeweler
117
- version_requirements: &id007 !ruby/object:Gem::Requirement
181
+ version_requirements: &id011 !ruby/object:Gem::Requirement
118
182
  none: false
119
183
  requirements:
120
184
  - - ~>
@@ -127,10 +191,26 @@ dependencies:
127
191
  version: 1.5.2
128
192
  prerelease: false
129
193
  type: :development
130
- requirement: *id007
194
+ requirement: *id011
195
+ - !ruby/object:Gem::Dependency
196
+ name: mocha
197
+ version_requirements: &id012 !ruby/object:Gem::Requirement
198
+ none: false
199
+ requirements:
200
+ - - ~>
201
+ - !ruby/object:Gem::Version
202
+ hash: 35
203
+ segments:
204
+ - 0
205
+ - 9
206
+ - 12
207
+ version: 0.9.12
208
+ prerelease: false
209
+ type: :development
210
+ requirement: *id012
131
211
  - !ruby/object:Gem::Dependency
132
212
  name: rcov
133
- version_requirements: &id008 !ruby/object:Gem::Requirement
213
+ version_requirements: &id013 !ruby/object:Gem::Requirement
134
214
  none: false
135
215
  requirements:
136
216
  - - ">="
@@ -141,7 +221,23 @@ dependencies:
141
221
  version: "0"
142
222
  prerelease: false
143
223
  type: :development
144
- requirement: *id008
224
+ requirement: *id013
225
+ - !ruby/object:Gem::Dependency
226
+ name: sqlite3
227
+ version_requirements: &id014 !ruby/object:Gem::Requirement
228
+ none: false
229
+ requirements:
230
+ - - ">="
231
+ - !ruby/object:Gem::Version
232
+ hash: 29
233
+ segments:
234
+ - 1
235
+ - 3
236
+ - 3
237
+ version: 1.3.3
238
+ prerelease: false
239
+ type: :development
240
+ requirement: *id014
145
241
  description: Ruby on Rails engine for Web applications that are strongly coupled with Chrome extensions
146
242
  email: costan@gmail.com
147
243
  executables: []
@@ -177,6 +273,15 @@ files:
177
273
  - lib/chromembed_rails/generators/templates/desktop/chrome_extension/manifest.json
178
274
  - lib/chromembed_rails/model.rb
179
275
  - lib/chromembed_rails/routes.rb
276
+ - test/chrome_extension_cache_test.rb
277
+ - test/chrome_extension_controller_test.rb
278
+ - test/helpers/application_controller.rb
279
+ - test/helpers/chrome_extension.pem
280
+ - test/helpers/db_setup.rb
281
+ - test/helpers/initializers.rb
282
+ - test/helpers/routes.rb
283
+ - test/routes_test.rb
284
+ - test/test_helper.rb
180
285
  has_rdoc: true
181
286
  homepage: http://github.com/pwnall/chromembed_rails
182
287
  licenses:
@@ -211,5 +316,12 @@ rubygems_version: 1.5.3
211
316
  signing_key:
212
317
  specification_version: 3
213
318
  summary: Serves a Chrome extension embedded in a Rails application
214
- test_files: []
215
-
319
+ test_files:
320
+ - test/chrome_extension_cache_test.rb
321
+ - test/chrome_extension_controller_test.rb
322
+ - test/helpers/application_controller.rb
323
+ - test/helpers/db_setup.rb
324
+ - test/helpers/initializers.rb
325
+ - test/helpers/routes.rb
326
+ - test/routes_test.rb
327
+ - test/test_helper.rb