hubstats 0.0.22 → 0.0.23

Sign up to get free protection for your applications and to get access to all the features.
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