hubstats 0.0.22 → 0.0.23

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.
Files changed (111) hide show
  1. checksums.yaml +8 -8
  2. data/.automation.yml +1 -0
  3. data/.gitignore +11 -0
  4. data/.rspec +2 -0
  5. data/.travis.yml +12 -0
  6. data/Gemfile +17 -0
  7. data/Gemfile.lock +144 -0
  8. data/hubstats.gemspec +28 -0
  9. data/lib/hubstats/version.rb +1 -1
  10. data/script/rails +8 -0
  11. data/spec/controllers/hubstats/events_controller_spec.rb +7 -0
  12. data/spec/controllers/hubstats/pull_requests_controller_spec.rb +7 -0
  13. data/spec/controllers/hubstats/repos_controller_spec.rb +7 -0
  14. data/spec/controllers/hubstats/users_controller_spec.rb +7 -0
  15. data/spec/factories/comment.rb +23 -0
  16. data/spec/factories/pull_requests.rb +26 -0
  17. data/spec/factories/repo.rb +16 -0
  18. data/spec/factories/users.rb +16 -0
  19. data/spec/helpers/hubstats/events_helper_spec.rb +17 -0
  20. data/spec/helpers/hubstats/pull_requests_helper_spec.rb +17 -0
  21. data/spec/helpers/hubstats/repos_helper_spec.rb +17 -0
  22. data/spec/helpers/hubstats/users_helper_spec.rb +17 -0
  23. data/spec/lib/hubstats/events_handler_spec.rb +51 -0
  24. data/spec/lib/hubstats/github_api_spec.rb +76 -0
  25. data/spec/models/hubstats/comment_spec.rb +38 -0
  26. data/spec/models/hubstats/label_spec.rb +7 -0
  27. data/spec/models/hubstats/pull_request_spec.rb +13 -0
  28. data/spec/models/hubstats/repo_spec.rb +7 -0
  29. data/spec/models/hubstats/user_spec.rb +23 -0
  30. data/spec/spec_helper.rb +55 -0
  31. metadata +52 -164
  32. data/test/dummy/config/octokit.yml +0 -11
  33. data/test/dummy/db/migrate/20140703201046_create_hubstats_pull_requests.hubstats.rb +0 -40
  34. data/test/dummy/db/migrate/20140703201047_create_hubstats_users.hubstats.rb +0 -26
  35. data/test/dummy/db/migrate/20140703201048_create_hubstats_comments.hubstats.rb +0 -30
  36. data/test/dummy/db/migrate/20140703201049_create_hubstats_repos.hubstats.rb +0 -48
  37. data/test/dummy/db/migrate/20140703201050_create_hubstats_labels.hubstats.rb +0 -10
  38. data/test/dummy/db/migrate/20140703201051_create_hubstats_labels_pull_requests.hubstats.rb +0 -9
  39. data/test/dummy/log/development.log +0 -0
  40. data/test/dummy/log/production.log +0 -5
  41. data/test/dummy/log/test.log +0 -19745
  42. data/test/dummy/tmp/cache/assets/C6A/070/sprockets%2F722061c11245ef57a10b2a8b249536a6 +0 -0
  43. data/test/dummy/tmp/cache/assets/C80/780/sprockets%2Fc1cf9f40564205993336f5119dc8301d +0 -0
  44. data/test/dummy/tmp/cache/assets/C86/E00/sprockets%2F652cdc396e5788a9241b9355e4c10640 +0 -0
  45. data/test/dummy/tmp/cache/assets/C97/B60/sprockets%2Faec576e1f9385471867ed31d55077188 +0 -0
  46. data/test/dummy/tmp/cache/assets/CA0/2B0/sprockets%2F00310502bf37155c1d795a84d46e1fa7 +0 -0
  47. data/test/dummy/tmp/cache/assets/CA2/FC0/sprockets%2Fc0a86d68e0c4a2374484370da89d1000 +0 -0
  48. data/test/dummy/tmp/cache/assets/CAC/770/sprockets%2F6f6eca43ba817098511ce082222681e7 +0 -0
  49. data/test/dummy/tmp/cache/assets/CAD/3D0/sprockets%2F781852b612e12270af6602bdb8f985a4 +0 -0
  50. data/test/dummy/tmp/cache/assets/CBC/4C0/sprockets%2F43796510bea9e088167ff07f3d0a8484 +0 -0
  51. data/test/dummy/tmp/cache/assets/CD1/790/sprockets%2F825aafb951c27a7ca74309144540cc51 +0 -0
  52. data/test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953 +0 -0
  53. data/test/dummy/tmp/cache/assets/CDA/040/sprockets%2Fb4d91e72711bf28f408e6501a40539bf +0 -0
  54. data/test/dummy/tmp/cache/assets/CDA/DA0/sprockets%2F14ee3d4688023382bc33a3bb149f3f75 +0 -0
  55. data/test/dummy/tmp/cache/assets/CDB/3F0/sprockets%2Fe3dd42740d72fd4147cc2bc430554858 +0 -0
  56. data/test/dummy/tmp/cache/assets/CE1/620/sprockets%2F2eaf40f9364d1a5fc929f615681430e2 +0 -0
  57. data/test/dummy/tmp/cache/assets/CE3/FF0/sprockets%2Fcef2250ca879df25864e46743811b34a +0 -0
  58. data/test/dummy/tmp/cache/assets/CE5/950/sprockets%2F6011591ca606d6465ffe00aa59798f4f +0 -0
  59. data/test/dummy/tmp/cache/assets/CED/160/sprockets%2Fd17778dcc64ba05d748e9596851b42b2 +0 -0
  60. data/test/dummy/tmp/cache/assets/D00/000/sprockets%2Fca55ed2e244f0ae2454363027cae0865 +0 -0
  61. data/test/dummy/tmp/cache/assets/D07/C60/sprockets%2Fad1ce92f0e63a75c63272177af6c0542 +0 -0
  62. data/test/dummy/tmp/cache/assets/D0D/BB0/sprockets%2F4b4c7844619dabbb1b0f7e2074492e84 +0 -0
  63. data/test/dummy/tmp/cache/assets/D1B/C20/sprockets%2F7246ab80e3a902497a99edde782139bd +0 -0
  64. data/test/dummy/tmp/cache/assets/D1E/160/sprockets%2F6b06e88c694fe253732afa662e4b83d8 +0 -0
  65. data/test/dummy/tmp/cache/assets/D1E/690/sprockets%2F87b902b589445ed855fa47700d19ddcd +0 -0
  66. data/test/dummy/tmp/cache/assets/D20/FF0/sprockets%2F941bab9382328e98fd569386d1ec0af5 +0 -0
  67. data/test/dummy/tmp/cache/assets/D21/C00/sprockets%2F8d98ccfd866c7b6d27c557031ed18173 +0 -0
  68. data/test/dummy/tmp/cache/assets/D29/830/sprockets%2Fd625d52591e79dd7ea694da983763e1f +0 -0
  69. data/test/dummy/tmp/cache/assets/D2F/DC0/sprockets%2Fdb2533855a0541d30ee3fb4c952a9ab3 +0 -0
  70. data/test/dummy/tmp/cache/assets/D32/070/sprockets%2F7e8b1f51c452335eaa6dc3ac440332f9 +0 -0
  71. data/test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705 +0 -0
  72. data/test/dummy/tmp/cache/assets/D36/3E0/sprockets%2Fe7b229d2e8b64144c71d471fa910a2dd +0 -0
  73. data/test/dummy/tmp/cache/assets/D36/A00/sprockets%2F75301ef3d29df5cff0d6594be00a2117 +0 -0
  74. data/test/dummy/tmp/cache/assets/D38/CB0/sprockets%2F29c1b9d8419784ce13da2b3f174ac2d1 +0 -0
  75. data/test/dummy/tmp/cache/assets/D3A/D50/sprockets%2Ff40159b97cbd42cd120ab6db69d67182 +0 -0
  76. data/test/dummy/tmp/cache/assets/D3C/190/sprockets%2F5fe63949cfff6024125e2c1ef0242cd3 +0 -0
  77. data/test/dummy/tmp/cache/assets/D3D/470/sprockets%2Ff6740e85131eb3c5c3836792c5db0ccd +0 -0
  78. data/test/dummy/tmp/cache/assets/D45/FE0/sprockets%2F71e7d22428abdfaf957abc097437178b +0 -0
  79. data/test/dummy/tmp/cache/assets/D46/F70/sprockets%2Ff8b0242cb6b63299e67b9356ed34e3bc +0 -0
  80. data/test/dummy/tmp/cache/assets/D47/F60/sprockets%2F275572ae8865ec1ffa9a17b4c658b0b6 +0 -0
  81. data/test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655 +0 -0
  82. data/test/dummy/tmp/cache/assets/D51/7F0/sprockets%2Fe483e54cab3b78e5959d5bc422692ff5 +0 -0
  83. data/test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6 +0 -0
  84. data/test/dummy/tmp/cache/assets/D5D/880/sprockets%2F49469a907bfe2696eb66b3d69d69cc6b +0 -0
  85. data/test/dummy/tmp/cache/assets/D62/F50/sprockets%2Fe4fa88230ba5d4b30cd36d170c2f57a8 +0 -0
  86. data/test/dummy/tmp/cache/assets/D68/7C0/sprockets%2F53c50d8f33708cb75b09c0d4c7d3caf3 +0 -0
  87. data/test/dummy/tmp/cache/assets/D6B/570/sprockets%2F70c5d0418ce288f30ad3d949fd31a0ef +0 -0
  88. data/test/dummy/tmp/cache/assets/D7E/2C0/sprockets%2Fe11fb7d12e6f167b56f4b939b65c97fb +0 -0
  89. data/test/dummy/tmp/cache/assets/D7F/5B0/sprockets%2F842879ad233dad55dc6c3f23eed939f6 +0 -0
  90. data/test/dummy/tmp/cache/assets/D81/B70/sprockets%2F7b0f8c0b8a0e320eaaa66e350144e3bb +0 -0
  91. data/test/dummy/tmp/cache/assets/D85/310/sprockets%2F5bfbaf42e04878ffee659890736e5ac4 +0 -0
  92. data/test/dummy/tmp/cache/assets/D95/E70/sprockets%2F71e192cc81e15e41babc78da4a549b5b +0 -0
  93. data/test/dummy/tmp/cache/assets/D9A/300/sprockets%2F044ebd5e75412ceead3574d6d3eed550 +0 -0
  94. data/test/dummy/tmp/cache/assets/D9E/0F0/sprockets%2Fddaeeb8234f096140f35c06ff538bbe6 +0 -0
  95. data/test/dummy/tmp/cache/assets/DAA/D80/sprockets%2Fe7bd68eb95e047454adfc49e5f0b8e11 +0 -0
  96. data/test/dummy/tmp/cache/assets/DC7/5C0/sprockets%2F4af3c5fb39b4b93a7fc1c5db2c05c583 +0 -0
  97. data/test/dummy/tmp/cache/assets/DC7/950/sprockets%2Fb2e4de5539bdbb6b902390acad4f384d +0 -0
  98. data/test/dummy/tmp/cache/assets/DD8/5A0/sprockets%2Fdc77251d6c233eeecb693ff083f35eee +0 -0
  99. data/test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994 +0 -0
  100. data/test/dummy/tmp/cache/assets/DDD/E60/sprockets%2Fe81c794a9e4d16cb9e35c8b8ee5b6b2c +0 -0
  101. data/test/dummy/tmp/cache/assets/DDE/160/sprockets%2Fad7ae04f67dc2e97b7956ea219e4bc8f +0 -0
  102. data/test/dummy/tmp/cache/assets/DDF/3E0/sprockets%2F59b0fb9e71148d95cf2e9e90c29cfacd +0 -0
  103. data/test/dummy/tmp/cache/assets/DF9/4E0/sprockets%2F79fba73941daca3fad36e2d68bf243aa +0 -0
  104. data/test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af +0 -0
  105. data/test/dummy/tmp/cache/assets/E06/450/sprockets%2Ffcd574cdf1957cd4acd029f0de961dd5 +0 -0
  106. data/test/dummy/tmp/cache/assets/E0B/7F0/sprockets%2Fec7ca66fae22eb868a78c2d97dd5c27a +0 -0
  107. data/test/dummy/tmp/cache/assets/E0F/CE0/sprockets%2F5c479ac6683cdd3e7ed01defd75e7be6 +0 -0
  108. data/test/dummy/tmp/cache/assets/E10/920/sprockets%2Fe2793fe8a9f6773e8d2d5bececb01b7f +0 -0
  109. data/test/dummy/tmp/cache/assets/E30/D10/sprockets%2F5be1e5ad45bde1dbd7fb9f8d720277ea +0 -0
  110. data/test/dummy/tmp/cache/assets/E41/A20/sprockets%2F23cef5db9fa9d95cf84a2c688b5fe6ab +0 -0
  111. data/test/dummy/tmp/cache/assets/E4E/EF0/sprockets%2F5783afe3d038c6cdce49c1cbdaa12acb +0 -0
@@ -0,0 +1,51 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ describe EventsHandler, :type => :model do
5
+ context "PullRequestEvent" do
6
+ let(:pull) {build(:pull_request)}
7
+ let(:repo) {build(:repo)}
8
+ let(:payload) {build(:pull_request_payload_hash)}
9
+
10
+ it 'successfully routes the event' do
11
+ ehandler = Hubstats::EventsHandler.new()
12
+ expect(ehandler).to receive(:pull_processor)
13
+ ehandler.route(payload,payload[:type])
14
+ end
15
+
16
+ it 'adds labels to pull request' do
17
+ ehandler = Hubstats::EventsHandler.new()
18
+ allow(Hubstats::PullRequest).to receive(:create_or_update) {pull}
19
+ allow(Hubstats::Repo).to receive(:where) {[repo,repo]}
20
+ allow(Hubstats::GithubAPI).to receive(:get_labels) {['low','high']}
21
+ expect(pull).to receive(:add_labels).with(['low','high'])
22
+ ehandler.route(payload,payload[:type])
23
+ end
24
+ end
25
+
26
+ context "CommentEvent" do
27
+ it 'successfully routes the event' do
28
+ ehandler = Hubstats::EventsHandler.new()
29
+ payload = build(:comment_payload_hash)
30
+ expect(ehandler).to receive(:comment_processor)
31
+
32
+ ehandler.route(payload,payload[:type])
33
+ end
34
+
35
+ it 'successfully processes the event' do
36
+ ehandler = Hubstats::EventsHandler.new()
37
+ payload = build(:comment_payload_hash)
38
+ expect(Hubstats::Comment).to receive(:create_or_update)
39
+
40
+ ehandler.route(payload,payload[:type])
41
+ end
42
+
43
+ it 'successfully creates_or_updates the event' do
44
+ ehandler = Hubstats::EventsHandler.new()
45
+ payload = build(:comment_payload_hash)
46
+ expect(ehandler.route(payload,payload[:type]).class).to eq(Hubstats::Comment)
47
+ end
48
+ end
49
+
50
+ end
51
+ end
@@ -0,0 +1,76 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ describe GithubAPI, :type => :model do
5
+ context ".configure" do
6
+ let(:access_token) { "access_token" }
7
+ let(:user) { double }
8
+ let(:client) { double(:user => user) }
9
+
10
+ before do
11
+ allow(client).to receive(:user).and_return( "user" )
12
+ end
13
+
14
+ after do
15
+ puts Hubstats::GithubAPI.class_variable_set(:@@auth_info, nil)
16
+ end
17
+
18
+ context "with configuration file" do
19
+ before do
20
+ allow(ENV).to receive(:[]).and_return(nil)
21
+ end
22
+
23
+ it 'initializes client with options param' do
24
+ Hubstats::GithubAPI.configure({"access_token" => access_token})
25
+ expect(Octokit::Client).to receive(:new).with(access_token: access_token).and_return(client)
26
+ expect(Hubstats::GithubAPI.client).to eq(client)
27
+ end
28
+ end
29
+
30
+ context "with environment variables" do
31
+ before do
32
+ allow(ENV).to receive(:[]).with("GITHUB_API_TOKEN").and_return("github_api_token")
33
+ end
34
+
35
+ it 'initializes client with environment variables' do
36
+ Hubstats::GithubAPI.configure({"access_token" => access_token})
37
+ expect(Octokit::Client).to receive(:new).with(access_token: "github_api_token").and_return(client)
38
+ expect(Hubstats::GithubAPI.client()).to eq(client)
39
+ end
40
+ end
41
+
42
+ context "with application authentication" do
43
+ before do
44
+ allow(ENV).to receive(:[]).and_return(nil)
45
+ allow(ENV).to receive(:[]).with("CLIENT_ID").and_return("client_id")
46
+ allow(ENV).to receive(:[]).with("CLIENT_SECRET").and_return("client_secret")
47
+ end
48
+
49
+ it 'intializes client with client-id environment variables' do
50
+ Hubstats::GithubAPI.configure()
51
+ expect(Octokit::Client).to receive(:new).with(client_id: "client_id", client_secret: "client_secret").and_return(client)
52
+ expect(Hubstats::GithubAPI.client).to eq(client)
53
+ end
54
+ end
55
+
56
+ context "with wrong credentials" do
57
+ before do
58
+ allow(client).to receive(:user).and_return( nil )
59
+ allow(ENV).to receive(:[]).and_return(nil)
60
+ end
61
+
62
+ it 'fails to initialize at all' do
63
+ Hubstats::GithubAPI.configure()
64
+ expect(lambda { Hubstats::GithubAPI.client}).to raise_error Octokit::Unauthorized
65
+ end
66
+ end
67
+ end
68
+
69
+ # context ".update_pulls" do
70
+
71
+ # it 'catches error and continues'
72
+ # Hubstats::GithubAPI.update_pulls
73
+ # end
74
+ # end
75
+ end
76
+ end
@@ -0,0 +1,38 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ describe Comment, :type => :model do
5
+ it 'creates and returns a comment and user' do
6
+ github_user = {
7
+ :login => "elliothursh",
8
+ :id => 10,
9
+ :type => "User"
10
+ }
11
+
12
+ github_comment = {
13
+ :user => github_user,
14
+ :pull_request_url => "www.pull.com",
15
+ :id => 100
16
+ }
17
+
18
+ github_repo = {
19
+ :id => 151,
20
+ :name => "HellWorld"
21
+ }
22
+
23
+ pull_request = {
24
+ :id => 1000,
25
+ :url => "www.pull.com",
26
+ :repository => github_repo,
27
+ :user => github_user
28
+ }
29
+
30
+ repo = Hubstats::Repo.create_or_update(github_repo)
31
+ pull = Hubstats::PullRequest.create_or_update(pull_request)
32
+ comment = Hubstats::Comment.create_or_update(github_comment)
33
+
34
+ expect(comment.id).to eq(github_comment[:id])
35
+ expect(comment.user_id).to eq(github_user[:id])
36
+ end
37
+ end
38
+ end
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ RSpec.describe Label, :type => :model do
5
+ pending "add some examples to (or delete) #{__FILE__}"
6
+ end
7
+ end
@@ -0,0 +1,13 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ describe PullRequest, :type => :model do
5
+ it 'creates and returns a PullRequest' do
6
+ pull = build(:pull_request_hash)
7
+ pull_request = Hubstats::PullRequest.create_or_update(pull)
8
+ expect(pull_request.id).to eq(pull[:id])
9
+ expect(pull_request.user_id).to eq(pull[:user][:id])
10
+ expect(pull_request.repo_id).to eq(pull[:repository][:id])
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ # describe Repo, :type => :model do
5
+ # pending "add some examples to (or delete) #{__FILE__}"
6
+ # end
7
+ end
@@ -0,0 +1,23 @@
1
+ require 'spec_helper'
2
+
3
+ module Hubstats
4
+ describe User, :type => :model do
5
+
6
+ before do
7
+ Hubstats::User.destroy_all()
8
+ end
9
+
10
+
11
+ it 'creates and returns a user' do
12
+ user = build(:user_hash, id: 10)
13
+ expect(Hubstats::User.create_or_update(user).id).to eq(10)
14
+ end
15
+
16
+ it 'it updates a user based off id' do
17
+ user1 = Hubstats::User.create_or_update(build(:user_hash, login: 'johnappleseed', id: 10))
18
+ user2 = Hubstats::User.create_or_update(build(:user_hash, login: 'elliothursh', id: 10))
19
+ expect(user1).to eq(user2)
20
+ end
21
+
22
+ end
23
+ end
@@ -0,0 +1,55 @@
1
+ # This file is copied to spec/ when you run 'rails generate rspec:install'
2
+ ENV["RAILS_ENV"] ||= 'test'
3
+ require File.expand_path("../../test/dummy/config/environment", __FILE__)
4
+ require 'rspec/rails'
5
+ require 'factory_girl_rails'
6
+ require 'faker'
7
+ # Requires supporting ruby files with custom matchers and macros, etc, in
8
+ # spec/support/ and its subdirectories. Files matching `spec/**/*_spec.rb` are
9
+ # run as spec files by default. This means that files in spec/support that end
10
+ # in _spec.rb will both be required and run as specs, causing the specs to be
11
+ # run twice. It is recommended that you do not name files matching this glob to
12
+ # end with _spec.rb. You can configure this pattern with with the --pattern
13
+ # option on the command line or in ~/.rspec, .rspec or `.rspec-local`.
14
+ Dir[Rails.root.join("spec/support/**/*.rb")].each { |f| require f }
15
+
16
+ RSpec.configure do |config|
17
+ # ## Mock Framework
18
+ #
19
+ # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
20
+ #
21
+ # config.mock_with :mocha
22
+ # config.mock_with :flexmock
23
+ # config.mock_with :rr
24
+
25
+ config.include FactoryGirl::Syntax::Methods
26
+
27
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
28
+ # config.fixture_path = "#{::Rails.root}/spec/fixtures"
29
+
30
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
31
+ # examples within a transaction, remove the following line or assign false
32
+ # instead of true.
33
+ config.use_transactional_fixtures = true
34
+
35
+ # Run specs in random order to surface order dependencies. If you find an
36
+ # order dependency and want to debug it, you can fix the order by providing
37
+ # the seed, which is printed after each run.
38
+ # --seed 1234
39
+ config.order = "random"
40
+
41
+ # RSpec Rails can automatically mix in different behaviours to your tests
42
+ # based on their file location, for example enabling you to call `get` and
43
+ # `post` in specs under `spec/controllers`.
44
+ #
45
+ # You can disable this behaviour by removing the line below, and instead
46
+ # explictly tag your specs with their type, e.g.:
47
+ #
48
+ # describe UsersController, :type => :controller do
49
+ # # ...
50
+ # end
51
+ #
52
+ # The different available types are documented in the features, such as in
53
+ # https://relishapp.com/rspec/rspec-rails/v/3-0/docs
54
+ config.infer_spec_type_from_file_location!
55
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hubstats
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.22
4
+ version: 0.0.23
5
5
  platform: ruby
6
6
  authors:
7
7
  - Elliot Hursh
@@ -129,6 +129,12 @@ executables: []
129
129
  extensions: []
130
130
  extra_rdoc_files: []
131
131
  files:
132
+ - .automation.yml
133
+ - .gitignore
134
+ - .rspec
135
+ - .travis.yml
136
+ - Gemfile
137
+ - Gemfile.lock
132
138
  - MIT-LICENSE
133
139
  - README.rdoc
134
140
  - Rakefile
@@ -198,6 +204,7 @@ files:
198
204
  - db/migrate/20140604130550_create_hubstats_repos.rb
199
205
  - db/migrate/20140703173123_create_hubstats_labels.rb
200
206
  - db/migrate/20140703200752_create_hubstats_labels_pull_requests.rb
207
+ - hubstats.gemspec
201
208
  - lib/generators/hubstats/install_generator.rb
202
209
  - lib/generators/hubstats/octokit.example.yml
203
210
  - lib/hub_helper.rb
@@ -209,6 +216,27 @@ files:
209
216
  - lib/hubstats/version.rb
210
217
  - lib/tasks/hubstats_tasks.rake
211
218
  - lib/tasks/populate_task.rake
219
+ - script/rails
220
+ - spec/controllers/hubstats/events_controller_spec.rb
221
+ - spec/controllers/hubstats/pull_requests_controller_spec.rb
222
+ - spec/controllers/hubstats/repos_controller_spec.rb
223
+ - spec/controllers/hubstats/users_controller_spec.rb
224
+ - spec/factories/comment.rb
225
+ - spec/factories/pull_requests.rb
226
+ - spec/factories/repo.rb
227
+ - spec/factories/users.rb
228
+ - spec/helpers/hubstats/events_helper_spec.rb
229
+ - spec/helpers/hubstats/pull_requests_helper_spec.rb
230
+ - spec/helpers/hubstats/repos_helper_spec.rb
231
+ - spec/helpers/hubstats/users_helper_spec.rb
232
+ - spec/lib/hubstats/events_handler_spec.rb
233
+ - spec/lib/hubstats/github_api_spec.rb
234
+ - spec/models/hubstats/comment_spec.rb
235
+ - spec/models/hubstats/label_spec.rb
236
+ - spec/models/hubstats/pull_request_spec.rb
237
+ - spec/models/hubstats/repo_spec.rb
238
+ - spec/models/hubstats/user_spec.rb
239
+ - spec/spec_helper.rb
212
240
  - test/dummy/README.rdoc
213
241
  - test/dummy/Rakefile
214
242
  - test/dummy/app/assets/javascripts/application.js
@@ -231,95 +259,15 @@ files:
231
259
  - test/dummy/config/initializers/session_store.rb
232
260
  - test/dummy/config/initializers/wrap_parameters.rb
233
261
  - test/dummy/config/locales/en.yml
234
- - test/dummy/config/octokit.yml
235
262
  - test/dummy/config/routes.rb
236
263
  - test/dummy/db/development.sqlite3
237
- - test/dummy/db/migrate/20140703201046_create_hubstats_pull_requests.hubstats.rb
238
- - test/dummy/db/migrate/20140703201047_create_hubstats_users.hubstats.rb
239
- - test/dummy/db/migrate/20140703201048_create_hubstats_comments.hubstats.rb
240
- - test/dummy/db/migrate/20140703201049_create_hubstats_repos.hubstats.rb
241
- - test/dummy/db/migrate/20140703201050_create_hubstats_labels.hubstats.rb
242
- - test/dummy/db/migrate/20140703201051_create_hubstats_labels_pull_requests.hubstats.rb
243
264
  - test/dummy/db/schema.rb
244
265
  - test/dummy/db/test.sqlite3
245
- - test/dummy/log/development.log
246
- - test/dummy/log/production.log
247
- - test/dummy/log/test.log
248
266
  - test/dummy/public/404.html
249
267
  - test/dummy/public/422.html
250
268
  - test/dummy/public/500.html
251
269
  - test/dummy/public/favicon.ico
252
270
  - test/dummy/script/rails
253
- - test/dummy/tmp/cache/assets/C6A/070/sprockets%2F722061c11245ef57a10b2a8b249536a6
254
- - test/dummy/tmp/cache/assets/C80/780/sprockets%2Fc1cf9f40564205993336f5119dc8301d
255
- - test/dummy/tmp/cache/assets/C86/E00/sprockets%2F652cdc396e5788a9241b9355e4c10640
256
- - test/dummy/tmp/cache/assets/C97/B60/sprockets%2Faec576e1f9385471867ed31d55077188
257
- - test/dummy/tmp/cache/assets/CA0/2B0/sprockets%2F00310502bf37155c1d795a84d46e1fa7
258
- - test/dummy/tmp/cache/assets/CA2/FC0/sprockets%2Fc0a86d68e0c4a2374484370da89d1000
259
- - test/dummy/tmp/cache/assets/CAC/770/sprockets%2F6f6eca43ba817098511ce082222681e7
260
- - test/dummy/tmp/cache/assets/CAD/3D0/sprockets%2F781852b612e12270af6602bdb8f985a4
261
- - test/dummy/tmp/cache/assets/CBC/4C0/sprockets%2F43796510bea9e088167ff07f3d0a8484
262
- - test/dummy/tmp/cache/assets/CD1/790/sprockets%2F825aafb951c27a7ca74309144540cc51
263
- - test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953
264
- - test/dummy/tmp/cache/assets/CDA/040/sprockets%2Fb4d91e72711bf28f408e6501a40539bf
265
- - test/dummy/tmp/cache/assets/CDA/DA0/sprockets%2F14ee3d4688023382bc33a3bb149f3f75
266
- - test/dummy/tmp/cache/assets/CDB/3F0/sprockets%2Fe3dd42740d72fd4147cc2bc430554858
267
- - test/dummy/tmp/cache/assets/CE1/620/sprockets%2F2eaf40f9364d1a5fc929f615681430e2
268
- - test/dummy/tmp/cache/assets/CE3/FF0/sprockets%2Fcef2250ca879df25864e46743811b34a
269
- - test/dummy/tmp/cache/assets/CE5/950/sprockets%2F6011591ca606d6465ffe00aa59798f4f
270
- - test/dummy/tmp/cache/assets/CED/160/sprockets%2Fd17778dcc64ba05d748e9596851b42b2
271
- - test/dummy/tmp/cache/assets/D00/000/sprockets%2Fca55ed2e244f0ae2454363027cae0865
272
- - test/dummy/tmp/cache/assets/D07/C60/sprockets%2Fad1ce92f0e63a75c63272177af6c0542
273
- - test/dummy/tmp/cache/assets/D0D/BB0/sprockets%2F4b4c7844619dabbb1b0f7e2074492e84
274
- - test/dummy/tmp/cache/assets/D1B/C20/sprockets%2F7246ab80e3a902497a99edde782139bd
275
- - test/dummy/tmp/cache/assets/D1E/160/sprockets%2F6b06e88c694fe253732afa662e4b83d8
276
- - test/dummy/tmp/cache/assets/D1E/690/sprockets%2F87b902b589445ed855fa47700d19ddcd
277
- - test/dummy/tmp/cache/assets/D20/FF0/sprockets%2F941bab9382328e98fd569386d1ec0af5
278
- - test/dummy/tmp/cache/assets/D21/C00/sprockets%2F8d98ccfd866c7b6d27c557031ed18173
279
- - test/dummy/tmp/cache/assets/D29/830/sprockets%2Fd625d52591e79dd7ea694da983763e1f
280
- - test/dummy/tmp/cache/assets/D2F/DC0/sprockets%2Fdb2533855a0541d30ee3fb4c952a9ab3
281
- - test/dummy/tmp/cache/assets/D32/070/sprockets%2F7e8b1f51c452335eaa6dc3ac440332f9
282
- - test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705
283
- - test/dummy/tmp/cache/assets/D36/3E0/sprockets%2Fe7b229d2e8b64144c71d471fa910a2dd
284
- - test/dummy/tmp/cache/assets/D36/A00/sprockets%2F75301ef3d29df5cff0d6594be00a2117
285
- - test/dummy/tmp/cache/assets/D38/CB0/sprockets%2F29c1b9d8419784ce13da2b3f174ac2d1
286
- - test/dummy/tmp/cache/assets/D3A/D50/sprockets%2Ff40159b97cbd42cd120ab6db69d67182
287
- - test/dummy/tmp/cache/assets/D3C/190/sprockets%2F5fe63949cfff6024125e2c1ef0242cd3
288
- - test/dummy/tmp/cache/assets/D3D/470/sprockets%2Ff6740e85131eb3c5c3836792c5db0ccd
289
- - test/dummy/tmp/cache/assets/D45/FE0/sprockets%2F71e7d22428abdfaf957abc097437178b
290
- - test/dummy/tmp/cache/assets/D46/F70/sprockets%2Ff8b0242cb6b63299e67b9356ed34e3bc
291
- - test/dummy/tmp/cache/assets/D47/F60/sprockets%2F275572ae8865ec1ffa9a17b4c658b0b6
292
- - test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655
293
- - test/dummy/tmp/cache/assets/D51/7F0/sprockets%2Fe483e54cab3b78e5959d5bc422692ff5
294
- - test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6
295
- - test/dummy/tmp/cache/assets/D5D/880/sprockets%2F49469a907bfe2696eb66b3d69d69cc6b
296
- - test/dummy/tmp/cache/assets/D62/F50/sprockets%2Fe4fa88230ba5d4b30cd36d170c2f57a8
297
- - test/dummy/tmp/cache/assets/D68/7C0/sprockets%2F53c50d8f33708cb75b09c0d4c7d3caf3
298
- - test/dummy/tmp/cache/assets/D6B/570/sprockets%2F70c5d0418ce288f30ad3d949fd31a0ef
299
- - test/dummy/tmp/cache/assets/D7E/2C0/sprockets%2Fe11fb7d12e6f167b56f4b939b65c97fb
300
- - test/dummy/tmp/cache/assets/D7F/5B0/sprockets%2F842879ad233dad55dc6c3f23eed939f6
301
- - test/dummy/tmp/cache/assets/D81/B70/sprockets%2F7b0f8c0b8a0e320eaaa66e350144e3bb
302
- - test/dummy/tmp/cache/assets/D85/310/sprockets%2F5bfbaf42e04878ffee659890736e5ac4
303
- - test/dummy/tmp/cache/assets/D95/E70/sprockets%2F71e192cc81e15e41babc78da4a549b5b
304
- - test/dummy/tmp/cache/assets/D9A/300/sprockets%2F044ebd5e75412ceead3574d6d3eed550
305
- - test/dummy/tmp/cache/assets/D9E/0F0/sprockets%2Fddaeeb8234f096140f35c06ff538bbe6
306
- - test/dummy/tmp/cache/assets/DAA/D80/sprockets%2Fe7bd68eb95e047454adfc49e5f0b8e11
307
- - test/dummy/tmp/cache/assets/DC7/5C0/sprockets%2F4af3c5fb39b4b93a7fc1c5db2c05c583
308
- - test/dummy/tmp/cache/assets/DC7/950/sprockets%2Fb2e4de5539bdbb6b902390acad4f384d
309
- - test/dummy/tmp/cache/assets/DD8/5A0/sprockets%2Fdc77251d6c233eeecb693ff083f35eee
310
- - test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
311
- - test/dummy/tmp/cache/assets/DDD/E60/sprockets%2Fe81c794a9e4d16cb9e35c8b8ee5b6b2c
312
- - test/dummy/tmp/cache/assets/DDE/160/sprockets%2Fad7ae04f67dc2e97b7956ea219e4bc8f
313
- - test/dummy/tmp/cache/assets/DDF/3E0/sprockets%2F59b0fb9e71148d95cf2e9e90c29cfacd
314
- - test/dummy/tmp/cache/assets/DF9/4E0/sprockets%2F79fba73941daca3fad36e2d68bf243aa
315
- - test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
316
- - test/dummy/tmp/cache/assets/E06/450/sprockets%2Ffcd574cdf1957cd4acd029f0de961dd5
317
- - test/dummy/tmp/cache/assets/E0B/7F0/sprockets%2Fec7ca66fae22eb868a78c2d97dd5c27a
318
- - test/dummy/tmp/cache/assets/E0F/CE0/sprockets%2F5c479ac6683cdd3e7ed01defd75e7be6
319
- - test/dummy/tmp/cache/assets/E10/920/sprockets%2Fe2793fe8a9f6773e8d2d5bececb01b7f
320
- - test/dummy/tmp/cache/assets/E30/D10/sprockets%2F5be1e5ad45bde1dbd7fb9f8d720277ea
321
- - test/dummy/tmp/cache/assets/E41/A20/sprockets%2F23cef5db9fa9d95cf84a2c688b5fe6ab
322
- - test/dummy/tmp/cache/assets/E4E/EF0/sprockets%2F5783afe3d038c6cdce49c1cbdaa12acb
323
271
  - test/functional/hubstats/splash_controller_test.rb
324
272
  - test/hubstats_test.rb
325
273
  - test/integration/navigation_test.rb
@@ -349,11 +297,34 @@ signing_key:
349
297
  specification_version: 4
350
298
  summary: Github Statistics
351
299
  test_files:
300
+ - spec/controllers/hubstats/events_controller_spec.rb
301
+ - spec/controllers/hubstats/pull_requests_controller_spec.rb
302
+ - spec/controllers/hubstats/repos_controller_spec.rb
303
+ - spec/controllers/hubstats/users_controller_spec.rb
304
+ - spec/factories/comment.rb
305
+ - spec/factories/pull_requests.rb
306
+ - spec/factories/repo.rb
307
+ - spec/factories/users.rb
308
+ - spec/helpers/hubstats/events_helper_spec.rb
309
+ - spec/helpers/hubstats/pull_requests_helper_spec.rb
310
+ - spec/helpers/hubstats/repos_helper_spec.rb
311
+ - spec/helpers/hubstats/users_helper_spec.rb
312
+ - spec/lib/hubstats/events_handler_spec.rb
313
+ - spec/lib/hubstats/github_api_spec.rb
314
+ - spec/models/hubstats/comment_spec.rb
315
+ - spec/models/hubstats/label_spec.rb
316
+ - spec/models/hubstats/pull_request_spec.rb
317
+ - spec/models/hubstats/repo_spec.rb
318
+ - spec/models/hubstats/user_spec.rb
319
+ - spec/spec_helper.rb
320
+ - test/dummy/README.rdoc
321
+ - test/dummy/Rakefile
352
322
  - test/dummy/app/assets/javascripts/application.js
353
323
  - test/dummy/app/assets/stylesheets/application.css
354
324
  - test/dummy/app/controllers/application_controller.rb
355
325
  - test/dummy/app/helpers/application_helper.rb
356
326
  - test/dummy/app/views/layouts/application.html.erb
327
+ - test/dummy/config.ru
357
328
  - test/dummy/config/application.rb
358
329
  - test/dummy/config/boot.rb
359
330
  - test/dummy/config/database.yml
@@ -368,98 +339,15 @@ test_files:
368
339
  - test/dummy/config/initializers/session_store.rb
369
340
  - test/dummy/config/initializers/wrap_parameters.rb
370
341
  - test/dummy/config/locales/en.yml
371
- - test/dummy/config/octokit.yml
372
342
  - test/dummy/config/routes.rb
373
- - test/dummy/config.ru
374
343
  - test/dummy/db/development.sqlite3
375
- - test/dummy/db/migrate/20140703201046_create_hubstats_pull_requests.hubstats.rb
376
- - test/dummy/db/migrate/20140703201047_create_hubstats_users.hubstats.rb
377
- - test/dummy/db/migrate/20140703201048_create_hubstats_comments.hubstats.rb
378
- - test/dummy/db/migrate/20140703201049_create_hubstats_repos.hubstats.rb
379
- - test/dummy/db/migrate/20140703201050_create_hubstats_labels.hubstats.rb
380
- - test/dummy/db/migrate/20140703201051_create_hubstats_labels_pull_requests.hubstats.rb
381
344
  - test/dummy/db/schema.rb
382
345
  - test/dummy/db/test.sqlite3
383
- - test/dummy/log/development.log
384
- - test/dummy/log/production.log
385
- - test/dummy/log/test.log
386
346
  - test/dummy/public/404.html
387
347
  - test/dummy/public/422.html
388
348
  - test/dummy/public/500.html
389
349
  - test/dummy/public/favicon.ico
390
- - test/dummy/Rakefile
391
- - test/dummy/README.rdoc
392
350
  - test/dummy/script/rails
393
- - test/dummy/tmp/cache/assets/C6A/070/sprockets%2F722061c11245ef57a10b2a8b249536a6
394
- - test/dummy/tmp/cache/assets/C80/780/sprockets%2Fc1cf9f40564205993336f5119dc8301d
395
- - test/dummy/tmp/cache/assets/C86/E00/sprockets%2F652cdc396e5788a9241b9355e4c10640
396
- - test/dummy/tmp/cache/assets/C97/B60/sprockets%2Faec576e1f9385471867ed31d55077188
397
- - test/dummy/tmp/cache/assets/CA0/2B0/sprockets%2F00310502bf37155c1d795a84d46e1fa7
398
- - test/dummy/tmp/cache/assets/CA2/FC0/sprockets%2Fc0a86d68e0c4a2374484370da89d1000
399
- - test/dummy/tmp/cache/assets/CAC/770/sprockets%2F6f6eca43ba817098511ce082222681e7
400
- - test/dummy/tmp/cache/assets/CAD/3D0/sprockets%2F781852b612e12270af6602bdb8f985a4
401
- - test/dummy/tmp/cache/assets/CBC/4C0/sprockets%2F43796510bea9e088167ff07f3d0a8484
402
- - test/dummy/tmp/cache/assets/CD1/790/sprockets%2F825aafb951c27a7ca74309144540cc51
403
- - test/dummy/tmp/cache/assets/CD8/370/sprockets%2F357970feca3ac29060c1e3861e2c0953
404
- - test/dummy/tmp/cache/assets/CDA/040/sprockets%2Fb4d91e72711bf28f408e6501a40539bf
405
- - test/dummy/tmp/cache/assets/CDA/DA0/sprockets%2F14ee3d4688023382bc33a3bb149f3f75
406
- - test/dummy/tmp/cache/assets/CDB/3F0/sprockets%2Fe3dd42740d72fd4147cc2bc430554858
407
- - test/dummy/tmp/cache/assets/CE1/620/sprockets%2F2eaf40f9364d1a5fc929f615681430e2
408
- - test/dummy/tmp/cache/assets/CE3/FF0/sprockets%2Fcef2250ca879df25864e46743811b34a
409
- - test/dummy/tmp/cache/assets/CE5/950/sprockets%2F6011591ca606d6465ffe00aa59798f4f
410
- - test/dummy/tmp/cache/assets/CED/160/sprockets%2Fd17778dcc64ba05d748e9596851b42b2
411
- - test/dummy/tmp/cache/assets/D00/000/sprockets%2Fca55ed2e244f0ae2454363027cae0865
412
- - test/dummy/tmp/cache/assets/D07/C60/sprockets%2Fad1ce92f0e63a75c63272177af6c0542
413
- - test/dummy/tmp/cache/assets/D0D/BB0/sprockets%2F4b4c7844619dabbb1b0f7e2074492e84
414
- - test/dummy/tmp/cache/assets/D1B/C20/sprockets%2F7246ab80e3a902497a99edde782139bd
415
- - test/dummy/tmp/cache/assets/D1E/160/sprockets%2F6b06e88c694fe253732afa662e4b83d8
416
- - test/dummy/tmp/cache/assets/D1E/690/sprockets%2F87b902b589445ed855fa47700d19ddcd
417
- - test/dummy/tmp/cache/assets/D20/FF0/sprockets%2F941bab9382328e98fd569386d1ec0af5
418
- - test/dummy/tmp/cache/assets/D21/C00/sprockets%2F8d98ccfd866c7b6d27c557031ed18173
419
- - test/dummy/tmp/cache/assets/D29/830/sprockets%2Fd625d52591e79dd7ea694da983763e1f
420
- - test/dummy/tmp/cache/assets/D2F/DC0/sprockets%2Fdb2533855a0541d30ee3fb4c952a9ab3
421
- - test/dummy/tmp/cache/assets/D32/070/sprockets%2F7e8b1f51c452335eaa6dc3ac440332f9
422
- - test/dummy/tmp/cache/assets/D32/A10/sprockets%2F13fe41fee1fe35b49d145bcc06610705
423
- - test/dummy/tmp/cache/assets/D36/3E0/sprockets%2Fe7b229d2e8b64144c71d471fa910a2dd
424
- - test/dummy/tmp/cache/assets/D36/A00/sprockets%2F75301ef3d29df5cff0d6594be00a2117
425
- - test/dummy/tmp/cache/assets/D38/CB0/sprockets%2F29c1b9d8419784ce13da2b3f174ac2d1
426
- - test/dummy/tmp/cache/assets/D3A/D50/sprockets%2Ff40159b97cbd42cd120ab6db69d67182
427
- - test/dummy/tmp/cache/assets/D3C/190/sprockets%2F5fe63949cfff6024125e2c1ef0242cd3
428
- - test/dummy/tmp/cache/assets/D3D/470/sprockets%2Ff6740e85131eb3c5c3836792c5db0ccd
429
- - test/dummy/tmp/cache/assets/D45/FE0/sprockets%2F71e7d22428abdfaf957abc097437178b
430
- - test/dummy/tmp/cache/assets/D46/F70/sprockets%2Ff8b0242cb6b63299e67b9356ed34e3bc
431
- - test/dummy/tmp/cache/assets/D47/F60/sprockets%2F275572ae8865ec1ffa9a17b4c658b0b6
432
- - test/dummy/tmp/cache/assets/D4E/1B0/sprockets%2Ff7cbd26ba1d28d48de824f0e94586655
433
- - test/dummy/tmp/cache/assets/D51/7F0/sprockets%2Fe483e54cab3b78e5959d5bc422692ff5
434
- - test/dummy/tmp/cache/assets/D5A/EA0/sprockets%2Fd771ace226fc8215a3572e0aa35bb0d6
435
- - test/dummy/tmp/cache/assets/D5D/880/sprockets%2F49469a907bfe2696eb66b3d69d69cc6b
436
- - test/dummy/tmp/cache/assets/D62/F50/sprockets%2Fe4fa88230ba5d4b30cd36d170c2f57a8
437
- - test/dummy/tmp/cache/assets/D68/7C0/sprockets%2F53c50d8f33708cb75b09c0d4c7d3caf3
438
- - test/dummy/tmp/cache/assets/D6B/570/sprockets%2F70c5d0418ce288f30ad3d949fd31a0ef
439
- - test/dummy/tmp/cache/assets/D7E/2C0/sprockets%2Fe11fb7d12e6f167b56f4b939b65c97fb
440
- - test/dummy/tmp/cache/assets/D7F/5B0/sprockets%2F842879ad233dad55dc6c3f23eed939f6
441
- - test/dummy/tmp/cache/assets/D81/B70/sprockets%2F7b0f8c0b8a0e320eaaa66e350144e3bb
442
- - test/dummy/tmp/cache/assets/D85/310/sprockets%2F5bfbaf42e04878ffee659890736e5ac4
443
- - test/dummy/tmp/cache/assets/D95/E70/sprockets%2F71e192cc81e15e41babc78da4a549b5b
444
- - test/dummy/tmp/cache/assets/D9A/300/sprockets%2F044ebd5e75412ceead3574d6d3eed550
445
- - test/dummy/tmp/cache/assets/D9E/0F0/sprockets%2Fddaeeb8234f096140f35c06ff538bbe6
446
- - test/dummy/tmp/cache/assets/DAA/D80/sprockets%2Fe7bd68eb95e047454adfc49e5f0b8e11
447
- - test/dummy/tmp/cache/assets/DC7/5C0/sprockets%2F4af3c5fb39b4b93a7fc1c5db2c05c583
448
- - test/dummy/tmp/cache/assets/DC7/950/sprockets%2Fb2e4de5539bdbb6b902390acad4f384d
449
- - test/dummy/tmp/cache/assets/DD8/5A0/sprockets%2Fdc77251d6c233eeecb693ff083f35eee
450
- - test/dummy/tmp/cache/assets/DDC/400/sprockets%2Fcffd775d018f68ce5dba1ee0d951a994
451
- - test/dummy/tmp/cache/assets/DDD/E60/sprockets%2Fe81c794a9e4d16cb9e35c8b8ee5b6b2c
452
- - test/dummy/tmp/cache/assets/DDE/160/sprockets%2Fad7ae04f67dc2e97b7956ea219e4bc8f
453
- - test/dummy/tmp/cache/assets/DDF/3E0/sprockets%2F59b0fb9e71148d95cf2e9e90c29cfacd
454
- - test/dummy/tmp/cache/assets/DF9/4E0/sprockets%2F79fba73941daca3fad36e2d68bf243aa
455
- - test/dummy/tmp/cache/assets/E04/890/sprockets%2F2f5173deea6c795b8fdde723bb4b63af
456
- - test/dummy/tmp/cache/assets/E06/450/sprockets%2Ffcd574cdf1957cd4acd029f0de961dd5
457
- - test/dummy/tmp/cache/assets/E0B/7F0/sprockets%2Fec7ca66fae22eb868a78c2d97dd5c27a
458
- - test/dummy/tmp/cache/assets/E0F/CE0/sprockets%2F5c479ac6683cdd3e7ed01defd75e7be6
459
- - test/dummy/tmp/cache/assets/E10/920/sprockets%2Fe2793fe8a9f6773e8d2d5bececb01b7f
460
- - test/dummy/tmp/cache/assets/E30/D10/sprockets%2F5be1e5ad45bde1dbd7fb9f8d720277ea
461
- - test/dummy/tmp/cache/assets/E41/A20/sprockets%2F23cef5db9fa9d95cf84a2c688b5fe6ab
462
- - test/dummy/tmp/cache/assets/E4E/EF0/sprockets%2F5783afe3d038c6cdce49c1cbdaa12acb
463
351
  - test/functional/hubstats/splash_controller_test.rb
464
352
  - test/hubstats_test.rb
465
353
  - test/integration/navigation_test.rb