prosperity 0.0.1 → 0.0.2

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 (223) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/javascripts/prosperity/application.js.coffee +5 -24
  3. data/app/assets/javascripts/prosperity/dashboards.js.coffee +17 -0
  4. data/app/assets/javascripts/prosperity/graph.js.coffee +89 -0
  5. data/app/assets/stylesheets/prosperity/application.css.scss +1 -1
  6. data/app/assets/stylesheets/prosperity/dashboards.css +4 -0
  7. data/app/assets/stylesheets/prosperity/graph.css +4 -0
  8. data/app/controllers/prosperity/application_controller.rb +30 -0
  9. data/app/controllers/prosperity/dashboard_graphs_controller.rb +24 -0
  10. data/app/controllers/prosperity/dashboards_controller.rb +33 -0
  11. data/app/controllers/prosperity/graphs_controller.rb +72 -0
  12. data/app/controllers/prosperity/metrics_controller.rb +57 -0
  13. data/app/helpers/prosperity/application_helper.rb +4 -0
  14. data/app/helpers/prosperity/dashboard_graphs_helper.rb +4 -0
  15. data/app/helpers/prosperity/dashboards_helper.rb +4 -0
  16. data/app/helpers/prosperity/graph_helper.rb +7 -0
  17. data/app/models/prosperity/dashboard.rb +8 -0
  18. data/app/models/prosperity/dashboard_graph.rb +6 -0
  19. data/app/models/prosperity/graph.rb +20 -0
  20. data/app/models/prosperity/graph_line.rb +8 -0
  21. data/app/views/layouts/prosperity/application.html.erb +56 -0
  22. data/app/views/prosperity/dashboards/edit.html.erb +24 -0
  23. data/app/views/prosperity/dashboards/index.html.erb +15 -0
  24. data/app/views/prosperity/dashboards/new.html.erb +8 -0
  25. data/app/views/prosperity/dashboards/show.html.erb +14 -0
  26. data/app/views/prosperity/graphs/edit.html.erb +41 -0
  27. data/app/views/prosperity/graphs/new.html.erb +15 -0
  28. data/app/views/prosperity/metrics/index.html.erb +8 -0
  29. data/app/views/prosperity/metrics/show.html.erb +23 -0
  30. data/app/views/prosperity/shared/_date_range.html.erb +9 -0
  31. data/config/routes.rb +12 -2
  32. data/db/migrate/20131127042251_dashboards.rb +34 -0
  33. data/lib/generators/metric/USAGE +8 -0
  34. data/lib/generators/metric/metric_generator.rb +7 -0
  35. data/lib/generators/metric/templates/metric.rb.erb +3 -0
  36. data/lib/prosperity/aggregate/aggregate_builder.rb +42 -0
  37. data/lib/prosperity/aggregate/average.rb +12 -0
  38. data/lib/prosperity/aggregate/base.rb +5 -0
  39. data/lib/prosperity/aggregate/count.rb +12 -0
  40. data/lib/prosperity/aggregate/maximum.rb +12 -0
  41. data/lib/prosperity/aggregate/minimum.rb +12 -0
  42. data/lib/prosperity/aggregate/sql.rb +12 -0
  43. data/lib/prosperity/aggregate/sum.rb +12 -0
  44. data/lib/prosperity/aggregate/with_column.rb +10 -0
  45. data/lib/prosperity/aggregate.rb +5 -0
  46. data/lib/prosperity/engine.rb +14 -0
  47. data/lib/prosperity/exception.rb +19 -1
  48. data/lib/prosperity/extractors/base.rb +33 -5
  49. data/lib/prosperity/extractors/change.rb +35 -0
  50. data/lib/prosperity/extractors/interval.rb +51 -0
  51. data/lib/prosperity/extractors/total.rb +23 -0
  52. data/lib/prosperity/helpers/time.rb +12 -0
  53. data/lib/prosperity/metric.rb +90 -5
  54. data/lib/prosperity/metric_finder.rb +10 -0
  55. data/lib/prosperity/metrics/option.rb +2 -0
  56. data/lib/prosperity/period.rb +4 -3
  57. data/lib/prosperity/periods.rb +13 -2
  58. data/lib/prosperity/version.rb +1 -1
  59. data/spec/controllers/prosperity/dashboard_graphs_controller_spec.rb +45 -0
  60. data/spec/controllers/prosperity/dashboards_controller_spec.rb +54 -0
  61. data/spec/controllers/prosperity/graphs_controller_spec.rb +145 -0
  62. data/spec/controllers/prosperity/metrics_controller_spec.rb +78 -0
  63. data/spec/dummy/app/models/user.rb +1 -0
  64. data/spec/dummy/app/prosperity/user_value_sum_metric.rb +4 -0
  65. data/spec/dummy/app/prosperity/user_value_sum_sql_metric.rb +4 -0
  66. data/spec/dummy/app/prosperity/users_metric.rb +8 -0
  67. data/spec/dummy/app/prosperity/users_sql_metric.rb +4 -0
  68. data/spec/dummy/config/database.yml +0 -8
  69. data/spec/dummy/config/routes.rb +1 -1
  70. data/spec/dummy/db/migrate/20140217005117_add_value_to_users.rb +5 -0
  71. data/spec/dummy/db/schema.rb +37 -1
  72. data/spec/dummy/db/seeds.rb +3 -1
  73. data/spec/dummy/log/development.log +76950 -0
  74. data/spec/dummy/log/test.log +111316 -0
  75. data/spec/dummy/tmp/cache/assets/development/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc +0 -0
  76. data/spec/dummy/tmp/cache/assets/development/sprockets/07e8fb2db7d85e29590a6b05160ca825 +0 -0
  77. data/spec/dummy/tmp/cache/assets/development/sprockets/1533bcf4a8f5a745dfda80cebd88d217 +0 -0
  78. data/spec/dummy/tmp/cache/assets/development/sprockets/1643e7f9f85637df140a850af6674f10 +0 -0
  79. data/spec/dummy/tmp/cache/assets/development/sprockets/197492ed379339e17a0f5d01d3b01b8c +0 -0
  80. data/spec/dummy/tmp/cache/assets/development/sprockets/1c55cf24465f311353197ce336df0178 +0 -0
  81. data/spec/dummy/tmp/cache/assets/development/sprockets/210050da208fb75a75b701bfa4e8470f +0 -0
  82. data/spec/dummy/tmp/cache/assets/development/sprockets/2733033a48e2e8a6fdd6e4ab371689ee +0 -0
  83. data/spec/dummy/tmp/cache/assets/development/sprockets/27a59e08207d3ae723f2b2b3d22264c3 +0 -0
  84. data/spec/dummy/tmp/cache/assets/development/sprockets/3e21790900d62ae3954585f08a1cb28a +0 -0
  85. data/spec/dummy/tmp/cache/assets/development/sprockets/3f76425644a701b85db3d385f077052d +0 -0
  86. data/spec/dummy/tmp/cache/assets/development/sprockets/448c1e44da04c20f27eaa31ad8c4391e +0 -0
  87. data/spec/dummy/tmp/cache/assets/development/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5 +0 -0
  88. data/spec/dummy/tmp/cache/assets/development/sprockets/566fbede2036fd06a20e7e52e30ddc7d +0 -0
  89. data/spec/dummy/tmp/cache/assets/development/sprockets/5f1aaf22720701db690538726e896a39 +0 -0
  90. data/spec/dummy/tmp/cache/assets/development/sprockets/647038c58f26163a9217646e1e5f09ae +0 -0
  91. data/spec/dummy/tmp/cache/assets/development/sprockets/6882b260ae69f1594eff540d803e5ac3 +0 -0
  92. data/spec/dummy/tmp/cache/assets/development/sprockets/69f4b83d363269ee4122bbbaaa1325d1 +0 -0
  93. data/spec/dummy/tmp/cache/assets/development/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb +0 -0
  94. data/spec/dummy/tmp/cache/assets/development/sprockets/72c0d4a0eeedae5e79ae49abb24f6d32 +0 -0
  95. data/spec/dummy/tmp/cache/assets/development/sprockets/828a046f0e7dc2dad0eecfe49d31e14d +0 -0
  96. data/spec/dummy/tmp/cache/assets/development/sprockets/91ae0bd43f98b4f1f111e0bdc178302c +0 -0
  97. data/spec/dummy/tmp/cache/assets/development/sprockets/97d99b466bedb69706f4815fa26b69f3 +0 -0
  98. data/spec/dummy/tmp/cache/assets/development/sprockets/990cf740a7968767a327f6186313badb +0 -0
  99. data/spec/dummy/tmp/cache/assets/development/sprockets/a2b14d5c46db32da9183354fb3fcd0bf +0 -0
  100. data/spec/dummy/tmp/cache/assets/development/sprockets/a6d6196cfd275dea0718553a95f997a5 +0 -0
  101. data/spec/dummy/tmp/cache/assets/development/sprockets/bb1f5ffb0ccbeec2c6499044b356f7c6 +0 -0
  102. data/spec/dummy/tmp/cache/assets/development/sprockets/bc83340720a76d8208112f6aecbff08e +0 -0
  103. data/spec/dummy/tmp/cache/assets/development/sprockets/be67cef79122a71f7432c2f984f1f258 +0 -0
  104. data/spec/dummy/tmp/cache/assets/development/sprockets/c83e71ece967e80f8df838874c130431 +0 -0
  105. data/spec/dummy/tmp/cache/assets/development/sprockets/cad26971ff72bbf5aa5f4e6a469389eb +0 -0
  106. data/spec/dummy/tmp/cache/assets/development/sprockets/d0d5517256edcd1f83b11a13c6ca040f +0 -0
  107. data/spec/dummy/tmp/cache/assets/development/sprockets/d0f0c5e105bfb1d6e5cd7295fbd1f65d +0 -0
  108. data/spec/dummy/tmp/cache/assets/development/sprockets/d3087f7df919b7f0d8142ee163db6c79 +0 -0
  109. data/spec/dummy/tmp/cache/assets/development/sprockets/decc27a1fa9ea32fe0dcc18619e32587 +0 -0
  110. data/spec/dummy/tmp/cache/assets/development/sprockets/df796f7ea525be06a82ebc3a4f97ffec +0 -0
  111. data/spec/dummy/tmp/cache/assets/development/sprockets/e02b5049cf477b43a72b4a00e2fceb46 +0 -0
  112. data/spec/dummy/tmp/cache/assets/development/sprockets/e2a9bdd87a2d19256837fce6544a122c +0 -0
  113. data/spec/dummy/tmp/cache/assets/development/sprockets/e378dcebf3c529db0d6e57d0c8dc3904 +0 -0
  114. data/spec/dummy/tmp/cache/assets/development/sprockets/ee3031bd54230ddf2addb5fa5718c86b +0 -0
  115. data/spec/dummy/tmp/cache/assets/development/sprockets/f4648036e284d9aa3468f4f7b9bbb967 +0 -0
  116. data/spec/dummy/tmp/cache/assets/development/sprockets/f9bbf698d099ead559e5ba4a5a4c5538 +0 -0
  117. data/spec/dummy/tmp/cache/assets/development/sprockets/fb8d3825617fcc11dfa614a51effee0e +0 -0
  118. data/spec/dummy/tmp/cache/assets/test/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc +0 -0
  119. data/spec/dummy/tmp/cache/assets/test/sprockets/07e8fb2db7d85e29590a6b05160ca825 +0 -0
  120. data/spec/dummy/tmp/cache/assets/test/sprockets/0a40fa5e0d6c0de40a8a698dcd697305 +0 -0
  121. data/spec/dummy/tmp/cache/assets/test/sprockets/1533bcf4a8f5a745dfda80cebd88d217 +0 -0
  122. data/spec/dummy/tmp/cache/assets/test/sprockets/1643e7f9f85637df140a850af6674f10 +0 -0
  123. data/spec/dummy/tmp/cache/assets/test/sprockets/177ca1f3e92db4f8a8f6e7ad9786ebfc +0 -0
  124. data/spec/dummy/tmp/cache/assets/test/sprockets/197492ed379339e17a0f5d01d3b01b8c +0 -0
  125. data/spec/dummy/tmp/cache/assets/test/sprockets/1c55cf24465f311353197ce336df0178 +0 -0
  126. data/spec/dummy/tmp/cache/assets/test/sprockets/1cb94582c835e73b3fd3c276f9a7de56 +0 -0
  127. data/spec/dummy/tmp/cache/assets/test/sprockets/203047a4141cf08162077e7290421bbb +0 -0
  128. data/spec/dummy/tmp/cache/assets/test/sprockets/210050da208fb75a75b701bfa4e8470f +0 -0
  129. data/spec/dummy/tmp/cache/assets/test/sprockets/2733033a48e2e8a6fdd6e4ab371689ee +0 -0
  130. data/spec/dummy/tmp/cache/assets/test/sprockets/27a59e08207d3ae723f2b2b3d22264c3 +0 -0
  131. data/spec/dummy/tmp/cache/assets/test/sprockets/29a6c93aeb91d07a5533b3adba7697d0 +0 -0
  132. data/spec/dummy/tmp/cache/assets/test/sprockets/29ac2be474969468157245a7f8737fa4 +0 -0
  133. data/spec/dummy/tmp/cache/assets/test/sprockets/314e44d29ecc7449c9ca3b754329c245 +0 -0
  134. data/spec/dummy/tmp/cache/assets/test/sprockets/3162d1398d6940ee5e933b7ab4d2273d +0 -0
  135. data/spec/dummy/tmp/cache/assets/test/sprockets/3d80e2a5faaf2bd987d804c17aead745 +0 -0
  136. data/spec/dummy/tmp/cache/assets/test/sprockets/4155a156cc6ffb880b56dbc34346fbc0 +0 -0
  137. data/spec/dummy/tmp/cache/assets/test/sprockets/4166fe47cddf4ba18c53b843d69b4c5f +0 -0
  138. data/spec/dummy/tmp/cache/assets/test/sprockets/441f922b26aae90d40e319b6ed0a3bc8 +0 -0
  139. data/spec/dummy/tmp/cache/assets/test/sprockets/4432a4b71ce9551df8d4b3860f4b9be3 +0 -0
  140. data/spec/dummy/tmp/cache/assets/test/sprockets/448c1e44da04c20f27eaa31ad8c4391e +0 -0
  141. data/spec/dummy/tmp/cache/assets/test/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5 +0 -0
  142. data/spec/dummy/tmp/cache/assets/test/sprockets/5479c7b4fba9179d4d1dc59ae64964c1 +0 -0
  143. data/spec/dummy/tmp/cache/assets/test/sprockets/566fbede2036fd06a20e7e52e30ddc7d +0 -0
  144. data/spec/dummy/tmp/cache/assets/test/sprockets/5a3ab9afd151c265cf11c621c0ddbe00 +0 -0
  145. data/spec/dummy/tmp/cache/assets/test/sprockets/647038c58f26163a9217646e1e5f09ae +0 -0
  146. data/spec/dummy/tmp/cache/assets/test/sprockets/64e0150fafbd9aaa3822efa1abb0211d +0 -0
  147. data/spec/dummy/tmp/cache/assets/test/sprockets/65c2d908dbca1bc833ae0b552f6c27fa +0 -0
  148. data/spec/dummy/tmp/cache/assets/test/sprockets/6882b260ae69f1594eff540d803e5ac3 +0 -0
  149. data/spec/dummy/tmp/cache/assets/test/sprockets/69f4b83d363269ee4122bbbaaa1325d1 +0 -0
  150. data/spec/dummy/tmp/cache/assets/test/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb +0 -0
  151. data/spec/dummy/tmp/cache/assets/test/sprockets/726d3f6850549a59954f0bf5584cfd9f +0 -0
  152. data/spec/dummy/tmp/cache/assets/test/sprockets/7ab9ac7cc2529219a4c68fd7854d5c0f +0 -0
  153. data/spec/dummy/tmp/cache/assets/test/sprockets/7bac3aca131c870ad5b07d8ccdc86e06 +0 -0
  154. data/spec/dummy/tmp/cache/assets/test/sprockets/80392355fc6e00cf69b2cd46978ebcbe +0 -0
  155. data/spec/dummy/tmp/cache/assets/test/sprockets/874b42463fefbb0bce47775722ebb4ae +0 -0
  156. data/spec/dummy/tmp/cache/assets/test/sprockets/87ef8ddd2847d19f22a16d726b88b433 +0 -0
  157. data/spec/dummy/tmp/cache/assets/test/sprockets/91ae0bd43f98b4f1f111e0bdc178302c +0 -0
  158. data/spec/dummy/tmp/cache/assets/test/sprockets/97d99b466bedb69706f4815fa26b69f3 +0 -0
  159. data/spec/dummy/tmp/cache/assets/test/sprockets/990cf740a7968767a327f6186313badb +0 -0
  160. data/spec/dummy/tmp/cache/assets/test/sprockets/9a690664139b0393787d6454b4697183 +0 -0
  161. data/spec/dummy/tmp/cache/assets/test/sprockets/a2b14d5c46db32da9183354fb3fcd0bf +0 -0
  162. data/spec/dummy/tmp/cache/assets/test/sprockets/a6d6196cfd275dea0718553a95f997a5 +0 -0
  163. data/spec/dummy/tmp/cache/assets/test/sprockets/bc83340720a76d8208112f6aecbff08e +0 -0
  164. data/spec/dummy/tmp/cache/assets/test/sprockets/c29c465933e7e86d6f6224f5e78c5baf +0 -0
  165. data/spec/dummy/tmp/cache/assets/test/sprockets/c975834a35907ecd2d314bbd6844ee88 +0 -0
  166. data/spec/dummy/tmp/cache/assets/test/sprockets/cad26971ff72bbf5aa5f4e6a469389eb +0 -0
  167. data/spec/dummy/tmp/cache/assets/test/sprockets/cf4affc50c6303e717d6514380d1f417 +0 -0
  168. data/spec/dummy/tmp/cache/assets/test/sprockets/d0d5517256edcd1f83b11a13c6ca040f +0 -0
  169. data/spec/dummy/tmp/cache/assets/test/sprockets/d3087f7df919b7f0d8142ee163db6c79 +0 -0
  170. data/spec/dummy/tmp/cache/assets/test/sprockets/d8b357d5741711da2dd710af0e15d268 +0 -0
  171. data/spec/dummy/tmp/cache/assets/test/sprockets/decc27a1fa9ea32fe0dcc18619e32587 +0 -0
  172. data/spec/dummy/tmp/cache/assets/test/sprockets/df796f7ea525be06a82ebc3a4f97ffec +0 -0
  173. data/spec/dummy/tmp/cache/assets/test/sprockets/e22a1b318499e7f06ea9274e18ab004f +0 -0
  174. data/spec/dummy/tmp/cache/assets/test/sprockets/e298cc3a8203ab1fb6978a90254f8926 +0 -0
  175. data/spec/dummy/tmp/cache/assets/test/sprockets/e378dcebf3c529db0d6e57d0c8dc3904 +0 -0
  176. data/spec/dummy/tmp/cache/assets/test/sprockets/e868f358fe87542c483951a2d9f532b6 +0 -0
  177. data/spec/dummy/tmp/cache/assets/test/sprockets/e8a6adf580ebd1942f4aabe6738678c2 +0 -0
  178. data/spec/dummy/tmp/cache/assets/test/sprockets/ed71f99e0a9653296abd5d6f501dd898 +0 -0
  179. data/spec/dummy/tmp/cache/assets/test/sprockets/efe6f2d16d3a1819817efb8734daf8af +0 -0
  180. data/spec/dummy/tmp/cache/assets/test/sprockets/f03e99bdb4159ae3485ca2858716e19b +0 -0
  181. data/spec/dummy/tmp/cache/assets/test/sprockets/f4648036e284d9aa3468f4f7b9bbb967 +0 -0
  182. data/spec/dummy/tmp/cache/assets/test/sprockets/f961f7434a28c0fe24bf4ffe6cba75fb +0 -0
  183. data/spec/dummy/tmp/cache/assets/test/sprockets/f9bbf698d099ead559e5ba4a5a4c5538 +0 -0
  184. data/spec/dummy/tmp/cache/assets/test/sprockets/fb8d3825617fcc11dfa614a51effee0e +0 -0
  185. data/spec/helpers/prosperity/dashboard_graphs_helper_spec.rb +6 -0
  186. data/spec/helpers/prosperity/dashboards_helper_spec.rb +6 -0
  187. data/spec/helpers/prosperity/{metrics_helper_spec.rb → graph_helper_spec.rb} +1 -1
  188. data/spec/lib/prosperity/aggregate/aggregate_builder_spec.rb +65 -0
  189. data/spec/lib/prosperity/aggregate/average_spec.rb +7 -0
  190. data/spec/lib/prosperity/aggregate/base_spec.rb +7 -0
  191. data/spec/lib/prosperity/aggregate/count_spec.rb +7 -0
  192. data/spec/lib/prosperity/aggregate/maximum_spec.rb +7 -0
  193. data/spec/lib/prosperity/aggregate/minimum_spec.rb +7 -0
  194. data/spec/lib/prosperity/aggregate/sql_spec.rb +7 -0
  195. data/spec/lib/prosperity/aggregate/sum_spec.rb +7 -0
  196. data/spec/lib/prosperity/aggregate/with_column_spec.rb +7 -0
  197. data/spec/lib/prosperity/aggregate_spec.rb +7 -0
  198. data/spec/lib/prosperity/extractors/base_spec.rb +27 -2
  199. data/spec/lib/prosperity/extractors/change_spec.rb +72 -0
  200. data/spec/lib/prosperity/extractors/interval_spec.rb +153 -0
  201. data/spec/lib/prosperity/extractors/total_spec.rb +79 -0
  202. data/spec/lib/prosperity/helpers/time_spec.rb +7 -0
  203. data/spec/lib/prosperity/metric_finder_spec.rb +7 -0
  204. data/spec/lib/prosperity/metric_spec.rb +126 -1
  205. data/spec/lib/prosperity/periods_spec.rb +14 -0
  206. data/spec/models/prosperity/dashboard_graph_spec.rb +6 -0
  207. data/spec/models/prosperity/dashboard_spec.rb +6 -0
  208. data/spec/models/prosperity/graph_line_spec.rb +6 -0
  209. data/spec/models/prosperity/graph_spec.rb +6 -0
  210. data/spec/spec_helper.rb +5 -2
  211. data/spec/support/shared/extractors.rb +64 -0
  212. data/spec/support/test_database.rb +1 -0
  213. data/vendor/assets/javascripts/highcharts.js +285 -0
  214. metadata +317 -62
  215. data/app/helpers/prosperity/metrics_helper.rb +0 -11
  216. data/app/views/layouts/prosperity/application.html.haml +0 -37
  217. data/app/views/prosperity/metrics/index.html.haml +0 -7
  218. data/db/migrate/20131026214127_test.rb +0 -4
  219. data/lib/prosperity/extractors/count.rb +0 -18
  220. data/lib/prosperity/extractors/group.rb +0 -23
  221. data/spec/lib/prosperity/extractors/count_spec.rb +0 -35
  222. data/spec/lib/prosperity/extractors/group_spec.rb +0 -34
  223. data/vendor/assets/javascripts/chart.js +0 -1426
metadata CHANGED
@@ -1,83 +1,55 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: prosperity
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Simon Mathieu
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2013-11-12 00:00:00.000000000 Z
11
+ date: 2014-04-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - '>'
17
+ - - ">"
18
18
  - !ruby/object:Gem::Version
19
19
  version: 3.2.0
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - '>'
24
+ - - ">"
25
25
  - !ruby/object:Gem::Version
26
26
  version: 3.2.0
27
- - !ruby/object:Gem::Dependency
28
- name: haml-rails
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - '>='
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :runtime
35
- prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
38
- - - '>='
39
- - !ruby/object:Gem::Version
40
- version: '0'
41
27
  - !ruby/object:Gem::Dependency
42
28
  name: jquery-rails
43
29
  requirement: !ruby/object:Gem::Requirement
44
30
  requirements:
45
- - - '>='
31
+ - - ">="
46
32
  - !ruby/object:Gem::Version
47
33
  version: '0'
48
34
  type: :runtime
49
35
  prerelease: false
50
36
  version_requirements: !ruby/object:Gem::Requirement
51
37
  requirements:
52
- - - '>='
38
+ - - ">="
53
39
  - !ruby/object:Gem::Version
54
40
  version: '0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: pg
57
43
  requirement: !ruby/object:Gem::Requirement
58
44
  requirements:
59
- - - '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
62
- type: :development
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - '>='
67
- - !ruby/object:Gem::Version
68
- version: '0'
69
- - !ruby/object:Gem::Dependency
70
- name: pry-debugger
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - '>='
45
+ - - ">="
74
46
  - !ruby/object:Gem::Version
75
47
  version: '0'
76
48
  type: :development
77
49
  prerelease: false
78
50
  version_requirements: !ruby/object:Gem::Requirement
79
51
  requirements:
80
- - - '>='
52
+ - - ">="
81
53
  - !ruby/object:Gem::Version
82
54
  version: '0'
83
55
  description: Prosperity easily lets you add a dashboard of arbitrary time series data
@@ -88,36 +60,74 @@ executables: []
88
60
  extensions: []
89
61
  extra_rdoc_files: []
90
62
  files:
63
+ - MIT-LICENSE
64
+ - Rakefile
91
65
  - app/assets/javascripts/prosperity/application.js.coffee
66
+ - app/assets/javascripts/prosperity/dashboards.js.coffee
67
+ - app/assets/javascripts/prosperity/graph.js.coffee
92
68
  - app/assets/stylesheets/prosperity/application.css.scss
69
+ - app/assets/stylesheets/prosperity/dashboards.css
70
+ - app/assets/stylesheets/prosperity/graph.css
93
71
  - app/controllers/prosperity/application_controller.rb
72
+ - app/controllers/prosperity/dashboard_graphs_controller.rb
73
+ - app/controllers/prosperity/dashboards_controller.rb
74
+ - app/controllers/prosperity/graphs_controller.rb
94
75
  - app/controllers/prosperity/metrics_controller.rb
95
76
  - app/helpers/prosperity/application_helper.rb
96
- - app/helpers/prosperity/metrics_helper.rb
97
- - app/views/layouts/prosperity/application.html.haml
98
- - app/views/prosperity/metrics/index.html.haml
77
+ - app/helpers/prosperity/dashboard_graphs_helper.rb
78
+ - app/helpers/prosperity/dashboards_helper.rb
79
+ - app/helpers/prosperity/graph_helper.rb
80
+ - app/models/prosperity/dashboard.rb
81
+ - app/models/prosperity/dashboard_graph.rb
82
+ - app/models/prosperity/graph.rb
83
+ - app/models/prosperity/graph_line.rb
84
+ - app/views/layouts/prosperity/application.html.erb
85
+ - app/views/prosperity/dashboards/edit.html.erb
86
+ - app/views/prosperity/dashboards/index.html.erb
87
+ - app/views/prosperity/dashboards/new.html.erb
88
+ - app/views/prosperity/dashboards/show.html.erb
89
+ - app/views/prosperity/graphs/edit.html.erb
90
+ - app/views/prosperity/graphs/new.html.erb
91
+ - app/views/prosperity/metrics/index.html.erb
92
+ - app/views/prosperity/metrics/show.html.erb
93
+ - app/views/prosperity/shared/_date_range.html.erb
99
94
  - config/routes.rb
100
- - db/migrate/20131026214127_test.rb
95
+ - db/migrate/20131127042251_dashboards.rb
96
+ - lib/generators/metric/USAGE
97
+ - lib/generators/metric/metric_generator.rb
98
+ - lib/generators/metric/templates/metric.rb.erb
99
+ - lib/prosperity.rb
100
+ - lib/prosperity/aggregate.rb
101
+ - lib/prosperity/aggregate/aggregate_builder.rb
102
+ - lib/prosperity/aggregate/average.rb
103
+ - lib/prosperity/aggregate/base.rb
104
+ - lib/prosperity/aggregate/count.rb
105
+ - lib/prosperity/aggregate/maximum.rb
106
+ - lib/prosperity/aggregate/minimum.rb
107
+ - lib/prosperity/aggregate/sql.rb
108
+ - lib/prosperity/aggregate/sum.rb
109
+ - lib/prosperity/aggregate/with_column.rb
101
110
  - lib/prosperity/engine.rb
102
111
  - lib/prosperity/exception.rb
103
112
  - lib/prosperity/extractors/base.rb
104
- - lib/prosperity/extractors/count.rb
105
- - lib/prosperity/extractors/group.rb
113
+ - lib/prosperity/extractors/change.rb
114
+ - lib/prosperity/extractors/interval.rb
115
+ - lib/prosperity/extractors/total.rb
116
+ - lib/prosperity/helpers/time.rb
106
117
  - lib/prosperity/metric.rb
107
118
  - lib/prosperity/metric_finder.rb
108
- - lib/prosperity/metrics/option.rb
109
119
  - lib/prosperity/metrics.rb
120
+ - lib/prosperity/metrics/option.rb
110
121
  - lib/prosperity/period.rb
111
122
  - lib/prosperity/periods.rb
112
123
  - lib/prosperity/version.rb
113
- - lib/prosperity.rb
114
124
  - lib/tasks/prosperity_tasks.rake
115
- - vendor/assets/javascripts/chart.js
116
- - vendor/assets/stylesheets/bootstrap-theme.min.css
117
- - vendor/assets/stylesheets/bootstrap.min.css
118
- - MIT-LICENSE
119
- - Rakefile
125
+ - spec/controllers/prosperity/dashboard_graphs_controller_spec.rb
126
+ - spec/controllers/prosperity/dashboards_controller_spec.rb
127
+ - spec/controllers/prosperity/graphs_controller_spec.rb
120
128
  - spec/controllers/prosperity/metrics_controller_spec.rb
129
+ - spec/dummy/README.rdoc
130
+ - spec/dummy/Rakefile
121
131
  - spec/dummy/app/assets/javascripts/application.js
122
132
  - spec/dummy/app/assets/javascripts/users.js
123
133
  - spec/dummy/app/assets/stylesheets/application.css
@@ -128,7 +138,10 @@ files:
128
138
  - spec/dummy/app/helpers/application_helper.rb
129
139
  - spec/dummy/app/helpers/users_helper.rb
130
140
  - spec/dummy/app/models/user.rb
141
+ - spec/dummy/app/prosperity/user_value_sum_metric.rb
142
+ - spec/dummy/app/prosperity/user_value_sum_sql_metric.rb
131
143
  - spec/dummy/app/prosperity/users_metric.rb
144
+ - spec/dummy/app/prosperity/users_sql_metric.rb
132
145
  - spec/dummy/app/views/layouts/application.html.erb
133
146
  - spec/dummy/app/views/users/_form.html.erb
134
147
  - spec/dummy/app/views/users/edit.html.erb
@@ -138,6 +151,7 @@ files:
138
151
  - spec/dummy/bin/bundle
139
152
  - spec/dummy/bin/rails
140
153
  - spec/dummy/bin/rake
154
+ - spec/dummy/config.ru
141
155
  - spec/dummy/config/application.rb
142
156
  - spec/dummy/config/boot.rb
143
157
  - spec/dummy/config/database.yml
@@ -154,9 +168,9 @@ files:
154
168
  - spec/dummy/config/initializers/wrap_parameters.rb
155
169
  - spec/dummy/config/locales/en.yml
156
170
  - spec/dummy/config/routes.rb
157
- - spec/dummy/config.ru
158
171
  - spec/dummy/db/development.sqlite3
159
172
  - spec/dummy/db/migrate/20131026214807_create_users.rb
173
+ - spec/dummy/db/migrate/20140217005117_add_value_to_users.rb
160
174
  - spec/dummy/db/schema.rb
161
175
  - spec/dummy/db/seeds.rb
162
176
  - spec/dummy/db/test.sqlite3
@@ -166,8 +180,6 @@ files:
166
180
  - spec/dummy/public/422.html
167
181
  - spec/dummy/public/500.html
168
182
  - spec/dummy/public/favicon.ico
169
- - spec/dummy/Rakefile
170
- - spec/dummy/README.rdoc
171
183
  - spec/dummy/tmp/cache/assets/development/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc
172
184
  - spec/dummy/tmp/cache/assets/development/sass/994e9de37e7f58fef085c22ad997b3c9ce2a4b39/_alerts.scssc
173
185
  - spec/dummy/tmp/cache/assets/development/sass/994e9de37e7f58fef085c22ad997b3c9ce2a4b39/_badges.scssc
@@ -219,6 +231,7 @@ files:
219
231
  - spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
220
232
  - spec/dummy/tmp/cache/assets/development/sprockets/1502b34f91cda1f4222490f78c0fea39
221
233
  - spec/dummy/tmp/cache/assets/development/sprockets/1533bcf4a8f5a745dfda80cebd88d217
234
+ - spec/dummy/tmp/cache/assets/development/sprockets/1643e7f9f85637df140a850af6674f10
222
235
  - spec/dummy/tmp/cache/assets/development/sprockets/177ca1f3e92db4f8a8f6e7ad9786ebfc
223
236
  - spec/dummy/tmp/cache/assets/development/sprockets/18d7d771937643bc7e9210b1a80e5763
224
237
  - spec/dummy/tmp/cache/assets/development/sprockets/197492ed379339e17a0f5d01d3b01b8c
@@ -226,6 +239,8 @@ files:
226
239
  - spec/dummy/tmp/cache/assets/development/sprockets/1cb94582c835e73b3fd3c276f9a7de56
227
240
  - spec/dummy/tmp/cache/assets/development/sprockets/203047a4141cf08162077e7290421bbb
228
241
  - spec/dummy/tmp/cache/assets/development/sprockets/210050da208fb75a75b701bfa4e8470f
242
+ - spec/dummy/tmp/cache/assets/development/sprockets/2733033a48e2e8a6fdd6e4ab371689ee
243
+ - spec/dummy/tmp/cache/assets/development/sprockets/27a59e08207d3ae723f2b2b3d22264c3
229
244
  - spec/dummy/tmp/cache/assets/development/sprockets/29a6c93aeb91d07a5533b3adba7697d0
230
245
  - spec/dummy/tmp/cache/assets/development/sprockets/29ac2be474969468157245a7f8737fa4
231
246
  - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
@@ -234,21 +249,30 @@ files:
234
249
  - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
235
250
  - spec/dummy/tmp/cache/assets/development/sprockets/371bf96e99717688ed7313a0c53f4212
236
251
  - spec/dummy/tmp/cache/assets/development/sprockets/3d80e2a5faaf2bd987d804c17aead745
252
+ - spec/dummy/tmp/cache/assets/development/sprockets/3e21790900d62ae3954585f08a1cb28a
253
+ - spec/dummy/tmp/cache/assets/development/sprockets/3f76425644a701b85db3d385f077052d
237
254
  - spec/dummy/tmp/cache/assets/development/sprockets/4050a4e5062ab95c9f32e9b6940821ea
238
255
  - spec/dummy/tmp/cache/assets/development/sprockets/4155a156cc6ffb880b56dbc34346fbc0
239
256
  - spec/dummy/tmp/cache/assets/development/sprockets/4166fe47cddf4ba18c53b843d69b4c5f
240
257
  - spec/dummy/tmp/cache/assets/development/sprockets/4432a4b71ce9551df8d4b3860f4b9be3
258
+ - spec/dummy/tmp/cache/assets/development/sprockets/448c1e44da04c20f27eaa31ad8c4391e
259
+ - spec/dummy/tmp/cache/assets/development/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5
241
260
  - spec/dummy/tmp/cache/assets/development/sprockets/510da110ae528e2d22533be39ff696c5
242
261
  - spec/dummy/tmp/cache/assets/development/sprockets/5479c7b4fba9179d4d1dc59ae64964c1
262
+ - spec/dummy/tmp/cache/assets/development/sprockets/566fbede2036fd06a20e7e52e30ddc7d
243
263
  - spec/dummy/tmp/cache/assets/development/sprockets/5a3ab9afd151c265cf11c621c0ddbe00
244
264
  - spec/dummy/tmp/cache/assets/development/sprockets/5f1a0d05e77ca8b9a1fc2a47e17a8174
265
+ - spec/dummy/tmp/cache/assets/development/sprockets/5f1aaf22720701db690538726e896a39
245
266
  - spec/dummy/tmp/cache/assets/development/sprockets/647038c58f26163a9217646e1e5f09ae
246
267
  - spec/dummy/tmp/cache/assets/development/sprockets/64e0150fafbd9aaa3822efa1abb0211d
247
268
  - spec/dummy/tmp/cache/assets/development/sprockets/6536a3eb4b5d05368d260a46f2485ead
248
269
  - spec/dummy/tmp/cache/assets/development/sprockets/65c2d908dbca1bc833ae0b552f6c27fa
249
270
  - spec/dummy/tmp/cache/assets/development/sprockets/6882b260ae69f1594eff540d803e5ac3
271
+ - spec/dummy/tmp/cache/assets/development/sprockets/69f4b83d363269ee4122bbbaaa1325d1
272
+ - spec/dummy/tmp/cache/assets/development/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb
250
273
  - spec/dummy/tmp/cache/assets/development/sprockets/6fc757c2c8329244ca95d6909865bbc2
251
274
  - spec/dummy/tmp/cache/assets/development/sprockets/726d3f6850549a59954f0bf5584cfd9f
275
+ - spec/dummy/tmp/cache/assets/development/sprockets/72c0d4a0eeedae5e79ae49abb24f6d32
252
276
  - spec/dummy/tmp/cache/assets/development/sprockets/75f2f1e32219e0b89c069e43b49e0e49
253
277
  - spec/dummy/tmp/cache/assets/development/sprockets/7ab9ac7cc2529219a4c68fd7854d5c0f
254
278
  - spec/dummy/tmp/cache/assets/development/sprockets/7abbc975e6786a54d660e0cf19aab1f0
@@ -256,10 +280,13 @@ files:
256
280
  - spec/dummy/tmp/cache/assets/development/sprockets/7ffb7c821c008cd2a390dc7aba74361f
257
281
  - spec/dummy/tmp/cache/assets/development/sprockets/80392355fc6e00cf69b2cd46978ebcbe
258
282
  - spec/dummy/tmp/cache/assets/development/sprockets/8084620ce7f95d2b2aeb65c977c62af1
283
+ - spec/dummy/tmp/cache/assets/development/sprockets/828a046f0e7dc2dad0eecfe49d31e14d
259
284
  - spec/dummy/tmp/cache/assets/development/sprockets/874b42463fefbb0bce47775722ebb4ae
260
285
  - spec/dummy/tmp/cache/assets/development/sprockets/87b209c0c9da28094a8d5581a21262c6
261
286
  - spec/dummy/tmp/cache/assets/development/sprockets/87ef8ddd2847d19f22a16d726b88b433
262
287
  - spec/dummy/tmp/cache/assets/development/sprockets/91ae0bd43f98b4f1f111e0bdc178302c
288
+ - spec/dummy/tmp/cache/assets/development/sprockets/97d99b466bedb69706f4815fa26b69f3
289
+ - spec/dummy/tmp/cache/assets/development/sprockets/990cf740a7968767a327f6186313badb
263
290
  - spec/dummy/tmp/cache/assets/development/sprockets/9a7970620504bfe92af14fd57ee08365
264
291
  - spec/dummy/tmp/cache/assets/development/sprockets/9c8440c4efec99d4a380eeda42f089c7
265
292
  - spec/dummy/tmp/cache/assets/development/sprockets/9e4cf41800946fd32bcfa3591b304eb6
@@ -268,48 +295,153 @@ files:
268
295
  - spec/dummy/tmp/cache/assets/development/sprockets/a7a8652a3fb42ef81fac3ab77949f82d
269
296
  - spec/dummy/tmp/cache/assets/development/sprockets/a9d839f632f9ce73fc221b79b39b0924
270
297
  - spec/dummy/tmp/cache/assets/development/sprockets/bae0ea1201e2ec9420712ff54b3254aa
298
+ - spec/dummy/tmp/cache/assets/development/sprockets/bb1f5ffb0ccbeec2c6499044b356f7c6
299
+ - spec/dummy/tmp/cache/assets/development/sprockets/bc83340720a76d8208112f6aecbff08e
300
+ - spec/dummy/tmp/cache/assets/development/sprockets/be67cef79122a71f7432c2f984f1f258
271
301
  - spec/dummy/tmp/cache/assets/development/sprockets/c05c4a514cf0b61ad7b223ee732cd6df
272
302
  - spec/dummy/tmp/cache/assets/development/sprockets/c29c465933e7e86d6f6224f5e78c5baf
303
+ - spec/dummy/tmp/cache/assets/development/sprockets/c83e71ece967e80f8df838874c130431
273
304
  - spec/dummy/tmp/cache/assets/development/sprockets/c975834a35907ecd2d314bbd6844ee88
305
+ - spec/dummy/tmp/cache/assets/development/sprockets/cad26971ff72bbf5aa5f4e6a469389eb
274
306
  - spec/dummy/tmp/cache/assets/development/sprockets/cebc6db0bbb8120f430da3970b173d2f
275
307
  - spec/dummy/tmp/cache/assets/development/sprockets/cf4affc50c6303e717d6514380d1f417
276
308
  - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
277
309
  - spec/dummy/tmp/cache/assets/development/sprockets/d0194b0fba4290072cfff0be06b348fd
310
+ - spec/dummy/tmp/cache/assets/development/sprockets/d0d5517256edcd1f83b11a13c6ca040f
311
+ - spec/dummy/tmp/cache/assets/development/sprockets/d0f0c5e105bfb1d6e5cd7295fbd1f65d
312
+ - spec/dummy/tmp/cache/assets/development/sprockets/d3087f7df919b7f0d8142ee163db6c79
278
313
  - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
279
314
  - spec/dummy/tmp/cache/assets/development/sprockets/d8487b3a1dc72a1361b96fbbc93255c6
280
315
  - spec/dummy/tmp/cache/assets/development/sprockets/d8b357d5741711da2dd710af0e15d268
316
+ - spec/dummy/tmp/cache/assets/development/sprockets/decc27a1fa9ea32fe0dcc18619e32587
317
+ - spec/dummy/tmp/cache/assets/development/sprockets/df796f7ea525be06a82ebc3a4f97ffec
281
318
  - spec/dummy/tmp/cache/assets/development/sprockets/e02b5049cf477b43a72b4a00e2fceb46
282
319
  - spec/dummy/tmp/cache/assets/development/sprockets/e0be9bf6ab486a790bda60b51224b404
283
320
  - spec/dummy/tmp/cache/assets/development/sprockets/e22a1b318499e7f06ea9274e18ab004f
284
321
  - spec/dummy/tmp/cache/assets/development/sprockets/e298cc3a8203ab1fb6978a90254f8926
285
322
  - spec/dummy/tmp/cache/assets/development/sprockets/e2a9bdd87a2d19256837fce6544a122c
323
+ - spec/dummy/tmp/cache/assets/development/sprockets/e378dcebf3c529db0d6e57d0c8dc3904
286
324
  - spec/dummy/tmp/cache/assets/development/sprockets/e868f358fe87542c483951a2d9f532b6
287
325
  - spec/dummy/tmp/cache/assets/development/sprockets/e8a6adf580ebd1942f4aabe6738678c2
288
326
  - spec/dummy/tmp/cache/assets/development/sprockets/ea081ed20ad78a3e8f41a529b6baa2e1
289
327
  - spec/dummy/tmp/cache/assets/development/sprockets/ec956e1f28c818063bb61958fe5ae855
290
328
  - spec/dummy/tmp/cache/assets/development/sprockets/ed71f99e0a9653296abd5d6f501dd898
329
+ - spec/dummy/tmp/cache/assets/development/sprockets/ee3031bd54230ddf2addb5fa5718c86b
291
330
  - spec/dummy/tmp/cache/assets/development/sprockets/eee3cb53f216eaa12dd927f144640d0d
292
331
  - spec/dummy/tmp/cache/assets/development/sprockets/efe6f2d16d3a1819817efb8734daf8af
293
332
  - spec/dummy/tmp/cache/assets/development/sprockets/f03e99bdb4159ae3485ca2858716e19b
294
333
  - spec/dummy/tmp/cache/assets/development/sprockets/f29bc513eb7c7d4b79d53d51363f7f1f
334
+ - spec/dummy/tmp/cache/assets/development/sprockets/f4648036e284d9aa3468f4f7b9bbb967
295
335
  - spec/dummy/tmp/cache/assets/development/sprockets/f56253b5f374fff1a33fbbc9881c9124
296
336
  - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
337
+ - spec/dummy/tmp/cache/assets/development/sprockets/f9bbf698d099ead559e5ba4a5a4c5538
338
+ - spec/dummy/tmp/cache/assets/development/sprockets/fb8d3825617fcc11dfa614a51effee0e
297
339
  - spec/dummy/tmp/cache/assets/development/sprockets/fc2c22310cbb7abb26ae64d4aafa37cb
340
+ - spec/dummy/tmp/cache/assets/test/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc
341
+ - spec/dummy/tmp/cache/assets/test/sprockets/07e8fb2db7d85e29590a6b05160ca825
342
+ - spec/dummy/tmp/cache/assets/test/sprockets/0a40fa5e0d6c0de40a8a698dcd697305
343
+ - spec/dummy/tmp/cache/assets/test/sprockets/1533bcf4a8f5a745dfda80cebd88d217
344
+ - spec/dummy/tmp/cache/assets/test/sprockets/1643e7f9f85637df140a850af6674f10
345
+ - spec/dummy/tmp/cache/assets/test/sprockets/177ca1f3e92db4f8a8f6e7ad9786ebfc
346
+ - spec/dummy/tmp/cache/assets/test/sprockets/197492ed379339e17a0f5d01d3b01b8c
347
+ - spec/dummy/tmp/cache/assets/test/sprockets/1c55cf24465f311353197ce336df0178
348
+ - spec/dummy/tmp/cache/assets/test/sprockets/1cb94582c835e73b3fd3c276f9a7de56
349
+ - spec/dummy/tmp/cache/assets/test/sprockets/203047a4141cf08162077e7290421bbb
350
+ - spec/dummy/tmp/cache/assets/test/sprockets/210050da208fb75a75b701bfa4e8470f
351
+ - spec/dummy/tmp/cache/assets/test/sprockets/2733033a48e2e8a6fdd6e4ab371689ee
352
+ - spec/dummy/tmp/cache/assets/test/sprockets/27a59e08207d3ae723f2b2b3d22264c3
353
+ - spec/dummy/tmp/cache/assets/test/sprockets/29a6c93aeb91d07a5533b3adba7697d0
354
+ - spec/dummy/tmp/cache/assets/test/sprockets/29ac2be474969468157245a7f8737fa4
355
+ - spec/dummy/tmp/cache/assets/test/sprockets/314e44d29ecc7449c9ca3b754329c245
356
+ - spec/dummy/tmp/cache/assets/test/sprockets/3162d1398d6940ee5e933b7ab4d2273d
357
+ - spec/dummy/tmp/cache/assets/test/sprockets/3d80e2a5faaf2bd987d804c17aead745
358
+ - spec/dummy/tmp/cache/assets/test/sprockets/4155a156cc6ffb880b56dbc34346fbc0
359
+ - spec/dummy/tmp/cache/assets/test/sprockets/4166fe47cddf4ba18c53b843d69b4c5f
360
+ - spec/dummy/tmp/cache/assets/test/sprockets/441f922b26aae90d40e319b6ed0a3bc8
361
+ - spec/dummy/tmp/cache/assets/test/sprockets/4432a4b71ce9551df8d4b3860f4b9be3
362
+ - spec/dummy/tmp/cache/assets/test/sprockets/448c1e44da04c20f27eaa31ad8c4391e
363
+ - spec/dummy/tmp/cache/assets/test/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5
364
+ - spec/dummy/tmp/cache/assets/test/sprockets/5479c7b4fba9179d4d1dc59ae64964c1
365
+ - spec/dummy/tmp/cache/assets/test/sprockets/566fbede2036fd06a20e7e52e30ddc7d
366
+ - spec/dummy/tmp/cache/assets/test/sprockets/5a3ab9afd151c265cf11c621c0ddbe00
367
+ - spec/dummy/tmp/cache/assets/test/sprockets/647038c58f26163a9217646e1e5f09ae
368
+ - spec/dummy/tmp/cache/assets/test/sprockets/64e0150fafbd9aaa3822efa1abb0211d
369
+ - spec/dummy/tmp/cache/assets/test/sprockets/65c2d908dbca1bc833ae0b552f6c27fa
370
+ - spec/dummy/tmp/cache/assets/test/sprockets/6882b260ae69f1594eff540d803e5ac3
371
+ - spec/dummy/tmp/cache/assets/test/sprockets/69f4b83d363269ee4122bbbaaa1325d1
372
+ - spec/dummy/tmp/cache/assets/test/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb
373
+ - spec/dummy/tmp/cache/assets/test/sprockets/726d3f6850549a59954f0bf5584cfd9f
374
+ - spec/dummy/tmp/cache/assets/test/sprockets/7ab9ac7cc2529219a4c68fd7854d5c0f
375
+ - spec/dummy/tmp/cache/assets/test/sprockets/7bac3aca131c870ad5b07d8ccdc86e06
376
+ - spec/dummy/tmp/cache/assets/test/sprockets/80392355fc6e00cf69b2cd46978ebcbe
377
+ - spec/dummy/tmp/cache/assets/test/sprockets/874b42463fefbb0bce47775722ebb4ae
378
+ - spec/dummy/tmp/cache/assets/test/sprockets/87ef8ddd2847d19f22a16d726b88b433
379
+ - spec/dummy/tmp/cache/assets/test/sprockets/91ae0bd43f98b4f1f111e0bdc178302c
380
+ - spec/dummy/tmp/cache/assets/test/sprockets/97d99b466bedb69706f4815fa26b69f3
381
+ - spec/dummy/tmp/cache/assets/test/sprockets/990cf740a7968767a327f6186313badb
382
+ - spec/dummy/tmp/cache/assets/test/sprockets/9a690664139b0393787d6454b4697183
383
+ - spec/dummy/tmp/cache/assets/test/sprockets/a2b14d5c46db32da9183354fb3fcd0bf
384
+ - spec/dummy/tmp/cache/assets/test/sprockets/a6d6196cfd275dea0718553a95f997a5
385
+ - spec/dummy/tmp/cache/assets/test/sprockets/bc83340720a76d8208112f6aecbff08e
386
+ - spec/dummy/tmp/cache/assets/test/sprockets/c29c465933e7e86d6f6224f5e78c5baf
387
+ - spec/dummy/tmp/cache/assets/test/sprockets/c975834a35907ecd2d314bbd6844ee88
388
+ - spec/dummy/tmp/cache/assets/test/sprockets/cad26971ff72bbf5aa5f4e6a469389eb
389
+ - spec/dummy/tmp/cache/assets/test/sprockets/cf4affc50c6303e717d6514380d1f417
390
+ - spec/dummy/tmp/cache/assets/test/sprockets/d0d5517256edcd1f83b11a13c6ca040f
391
+ - spec/dummy/tmp/cache/assets/test/sprockets/d3087f7df919b7f0d8142ee163db6c79
392
+ - spec/dummy/tmp/cache/assets/test/sprockets/d8b357d5741711da2dd710af0e15d268
393
+ - spec/dummy/tmp/cache/assets/test/sprockets/decc27a1fa9ea32fe0dcc18619e32587
394
+ - spec/dummy/tmp/cache/assets/test/sprockets/df796f7ea525be06a82ebc3a4f97ffec
395
+ - spec/dummy/tmp/cache/assets/test/sprockets/e22a1b318499e7f06ea9274e18ab004f
396
+ - spec/dummy/tmp/cache/assets/test/sprockets/e298cc3a8203ab1fb6978a90254f8926
397
+ - spec/dummy/tmp/cache/assets/test/sprockets/e378dcebf3c529db0d6e57d0c8dc3904
398
+ - spec/dummy/tmp/cache/assets/test/sprockets/e868f358fe87542c483951a2d9f532b6
399
+ - spec/dummy/tmp/cache/assets/test/sprockets/e8a6adf580ebd1942f4aabe6738678c2
400
+ - spec/dummy/tmp/cache/assets/test/sprockets/ed71f99e0a9653296abd5d6f501dd898
401
+ - spec/dummy/tmp/cache/assets/test/sprockets/efe6f2d16d3a1819817efb8734daf8af
402
+ - spec/dummy/tmp/cache/assets/test/sprockets/f03e99bdb4159ae3485ca2858716e19b
403
+ - spec/dummy/tmp/cache/assets/test/sprockets/f4648036e284d9aa3468f4f7b9bbb967
404
+ - spec/dummy/tmp/cache/assets/test/sprockets/f961f7434a28c0fe24bf4ffe6cba75fb
405
+ - spec/dummy/tmp/cache/assets/test/sprockets/f9bbf698d099ead559e5ba4a5a4c5538
406
+ - spec/dummy/tmp/cache/assets/test/sprockets/fb8d3825617fcc11dfa614a51effee0e
298
407
  - spec/dummy/tmp/restart.txt
299
- - spec/helpers/prosperity/metrics_helper_spec.rb
408
+ - spec/helpers/prosperity/dashboard_graphs_helper_spec.rb
409
+ - spec/helpers/prosperity/dashboards_helper_spec.rb
410
+ - spec/helpers/prosperity/graph_helper_spec.rb
411
+ - spec/lib/prosperity/aggregate/aggregate_builder_spec.rb
412
+ - spec/lib/prosperity/aggregate/average_spec.rb
413
+ - spec/lib/prosperity/aggregate/base_spec.rb
414
+ - spec/lib/prosperity/aggregate/count_spec.rb
415
+ - spec/lib/prosperity/aggregate/maximum_spec.rb
416
+ - spec/lib/prosperity/aggregate/minimum_spec.rb
417
+ - spec/lib/prosperity/aggregate/sql_spec.rb
418
+ - spec/lib/prosperity/aggregate/sum_spec.rb
419
+ - spec/lib/prosperity/aggregate/with_column_spec.rb
420
+ - spec/lib/prosperity/aggregate_spec.rb
300
421
  - spec/lib/prosperity/extractors/base_spec.rb
301
- - spec/lib/prosperity/extractors/count_spec.rb
302
- - spec/lib/prosperity/extractors/group_spec.rb
422
+ - spec/lib/prosperity/extractors/change_spec.rb
423
+ - spec/lib/prosperity/extractors/interval_spec.rb
424
+ - spec/lib/prosperity/extractors/total_spec.rb
425
+ - spec/lib/prosperity/helpers/time_spec.rb
303
426
  - spec/lib/prosperity/metric_finder_spec.rb
304
427
  - spec/lib/prosperity/metric_spec.rb
305
428
  - spec/lib/prosperity/metrics/option_spec.rb
306
429
  - spec/lib/prosperity/period_spec.rb
307
430
  - spec/lib/prosperity/periods_spec.rb
431
+ - spec/models/prosperity/dashboard_graph_spec.rb
432
+ - spec/models/prosperity/dashboard_spec.rb
433
+ - spec/models/prosperity/graph_line_spec.rb
434
+ - spec/models/prosperity/graph_spec.rb
308
435
  - spec/spec_helper.rb
436
+ - spec/support/shared/extractors.rb
309
437
  - spec/support/test_database.rb
310
438
  - spec/test_files/metrics/users_metric.rb
439
+ - vendor/assets/javascripts/highcharts.js
440
+ - vendor/assets/stylesheets/bootstrap-theme.min.css
441
+ - vendor/assets/stylesheets/bootstrap.min.css
311
442
  homepage: https://github.com/smathieu/prosperity
312
- licenses: []
443
+ licenses:
444
+ - MIT
313
445
  metadata: {}
314
446
  post_install_message:
315
447
  rdoc_options: []
@@ -317,22 +449,25 @@ require_paths:
317
449
  - lib
318
450
  required_ruby_version: !ruby/object:Gem::Requirement
319
451
  requirements:
320
- - - '>='
452
+ - - ">="
321
453
  - !ruby/object:Gem::Version
322
454
  version: '0'
323
455
  required_rubygems_version: !ruby/object:Gem::Requirement
324
456
  requirements:
325
- - - '>='
457
+ - - ">="
326
458
  - !ruby/object:Gem::Version
327
459
  version: '0'
328
460
  requirements: []
329
461
  rubyforge_project:
330
- rubygems_version: 2.0.4
462
+ rubygems_version: 2.2.2
331
463
  signing_key:
332
464
  specification_version: 4
333
465
  summary: Prosperity easily lets you add a dashboard of arbitrary time series data
334
466
  to your rails app.
335
467
  test_files:
468
+ - spec/controllers/prosperity/dashboard_graphs_controller_spec.rb
469
+ - spec/controllers/prosperity/dashboards_controller_spec.rb
470
+ - spec/controllers/prosperity/graphs_controller_spec.rb
336
471
  - spec/controllers/prosperity/metrics_controller_spec.rb
337
472
  - spec/dummy/app/assets/javascripts/application.js
338
473
  - spec/dummy/app/assets/javascripts/users.js
@@ -344,7 +479,10 @@ test_files:
344
479
  - spec/dummy/app/helpers/application_helper.rb
345
480
  - spec/dummy/app/helpers/users_helper.rb
346
481
  - spec/dummy/app/models/user.rb
482
+ - spec/dummy/app/prosperity/user_value_sum_metric.rb
483
+ - spec/dummy/app/prosperity/user_value_sum_sql_metric.rb
347
484
  - spec/dummy/app/prosperity/users_metric.rb
485
+ - spec/dummy/app/prosperity/users_sql_metric.rb
348
486
  - spec/dummy/app/views/layouts/application.html.erb
349
487
  - spec/dummy/app/views/users/_form.html.erb
350
488
  - spec/dummy/app/views/users/edit.html.erb
@@ -373,6 +511,7 @@ test_files:
373
511
  - spec/dummy/config.ru
374
512
  - spec/dummy/db/development.sqlite3
375
513
  - spec/dummy/db/migrate/20131026214807_create_users.rb
514
+ - spec/dummy/db/migrate/20140217005117_add_value_to_users.rb
376
515
  - spec/dummy/db/schema.rb
377
516
  - spec/dummy/db/seeds.rb
378
517
  - spec/dummy/db/test.sqlite3
@@ -435,6 +574,7 @@ test_files:
435
574
  - spec/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705
436
575
  - spec/dummy/tmp/cache/assets/development/sprockets/1502b34f91cda1f4222490f78c0fea39
437
576
  - spec/dummy/tmp/cache/assets/development/sprockets/1533bcf4a8f5a745dfda80cebd88d217
577
+ - spec/dummy/tmp/cache/assets/development/sprockets/1643e7f9f85637df140a850af6674f10
438
578
  - spec/dummy/tmp/cache/assets/development/sprockets/177ca1f3e92db4f8a8f6e7ad9786ebfc
439
579
  - spec/dummy/tmp/cache/assets/development/sprockets/18d7d771937643bc7e9210b1a80e5763
440
580
  - spec/dummy/tmp/cache/assets/development/sprockets/197492ed379339e17a0f5d01d3b01b8c
@@ -442,6 +582,8 @@ test_files:
442
582
  - spec/dummy/tmp/cache/assets/development/sprockets/1cb94582c835e73b3fd3c276f9a7de56
443
583
  - spec/dummy/tmp/cache/assets/development/sprockets/203047a4141cf08162077e7290421bbb
444
584
  - spec/dummy/tmp/cache/assets/development/sprockets/210050da208fb75a75b701bfa4e8470f
585
+ - spec/dummy/tmp/cache/assets/development/sprockets/2733033a48e2e8a6fdd6e4ab371689ee
586
+ - spec/dummy/tmp/cache/assets/development/sprockets/27a59e08207d3ae723f2b2b3d22264c3
445
587
  - spec/dummy/tmp/cache/assets/development/sprockets/29a6c93aeb91d07a5533b3adba7697d0
446
588
  - spec/dummy/tmp/cache/assets/development/sprockets/29ac2be474969468157245a7f8737fa4
447
589
  - spec/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af
@@ -450,21 +592,30 @@ test_files:
450
592
  - spec/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953
451
593
  - spec/dummy/tmp/cache/assets/development/sprockets/371bf96e99717688ed7313a0c53f4212
452
594
  - spec/dummy/tmp/cache/assets/development/sprockets/3d80e2a5faaf2bd987d804c17aead745
595
+ - spec/dummy/tmp/cache/assets/development/sprockets/3e21790900d62ae3954585f08a1cb28a
596
+ - spec/dummy/tmp/cache/assets/development/sprockets/3f76425644a701b85db3d385f077052d
453
597
  - spec/dummy/tmp/cache/assets/development/sprockets/4050a4e5062ab95c9f32e9b6940821ea
454
598
  - spec/dummy/tmp/cache/assets/development/sprockets/4155a156cc6ffb880b56dbc34346fbc0
455
599
  - spec/dummy/tmp/cache/assets/development/sprockets/4166fe47cddf4ba18c53b843d69b4c5f
456
600
  - spec/dummy/tmp/cache/assets/development/sprockets/4432a4b71ce9551df8d4b3860f4b9be3
601
+ - spec/dummy/tmp/cache/assets/development/sprockets/448c1e44da04c20f27eaa31ad8c4391e
602
+ - spec/dummy/tmp/cache/assets/development/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5
457
603
  - spec/dummy/tmp/cache/assets/development/sprockets/510da110ae528e2d22533be39ff696c5
458
604
  - spec/dummy/tmp/cache/assets/development/sprockets/5479c7b4fba9179d4d1dc59ae64964c1
605
+ - spec/dummy/tmp/cache/assets/development/sprockets/566fbede2036fd06a20e7e52e30ddc7d
459
606
  - spec/dummy/tmp/cache/assets/development/sprockets/5a3ab9afd151c265cf11c621c0ddbe00
460
607
  - spec/dummy/tmp/cache/assets/development/sprockets/5f1a0d05e77ca8b9a1fc2a47e17a8174
608
+ - spec/dummy/tmp/cache/assets/development/sprockets/5f1aaf22720701db690538726e896a39
461
609
  - spec/dummy/tmp/cache/assets/development/sprockets/647038c58f26163a9217646e1e5f09ae
462
610
  - spec/dummy/tmp/cache/assets/development/sprockets/64e0150fafbd9aaa3822efa1abb0211d
463
611
  - spec/dummy/tmp/cache/assets/development/sprockets/6536a3eb4b5d05368d260a46f2485ead
464
612
  - spec/dummy/tmp/cache/assets/development/sprockets/65c2d908dbca1bc833ae0b552f6c27fa
465
613
  - spec/dummy/tmp/cache/assets/development/sprockets/6882b260ae69f1594eff540d803e5ac3
614
+ - spec/dummy/tmp/cache/assets/development/sprockets/69f4b83d363269ee4122bbbaaa1325d1
615
+ - spec/dummy/tmp/cache/assets/development/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb
466
616
  - spec/dummy/tmp/cache/assets/development/sprockets/6fc757c2c8329244ca95d6909865bbc2
467
617
  - spec/dummy/tmp/cache/assets/development/sprockets/726d3f6850549a59954f0bf5584cfd9f
618
+ - spec/dummy/tmp/cache/assets/development/sprockets/72c0d4a0eeedae5e79ae49abb24f6d32
468
619
  - spec/dummy/tmp/cache/assets/development/sprockets/75f2f1e32219e0b89c069e43b49e0e49
469
620
  - spec/dummy/tmp/cache/assets/development/sprockets/7ab9ac7cc2529219a4c68fd7854d5c0f
470
621
  - spec/dummy/tmp/cache/assets/development/sprockets/7abbc975e6786a54d660e0cf19aab1f0
@@ -472,10 +623,13 @@ test_files:
472
623
  - spec/dummy/tmp/cache/assets/development/sprockets/7ffb7c821c008cd2a390dc7aba74361f
473
624
  - spec/dummy/tmp/cache/assets/development/sprockets/80392355fc6e00cf69b2cd46978ebcbe
474
625
  - spec/dummy/tmp/cache/assets/development/sprockets/8084620ce7f95d2b2aeb65c977c62af1
626
+ - spec/dummy/tmp/cache/assets/development/sprockets/828a046f0e7dc2dad0eecfe49d31e14d
475
627
  - spec/dummy/tmp/cache/assets/development/sprockets/874b42463fefbb0bce47775722ebb4ae
476
628
  - spec/dummy/tmp/cache/assets/development/sprockets/87b209c0c9da28094a8d5581a21262c6
477
629
  - spec/dummy/tmp/cache/assets/development/sprockets/87ef8ddd2847d19f22a16d726b88b433
478
630
  - spec/dummy/tmp/cache/assets/development/sprockets/91ae0bd43f98b4f1f111e0bdc178302c
631
+ - spec/dummy/tmp/cache/assets/development/sprockets/97d99b466bedb69706f4815fa26b69f3
632
+ - spec/dummy/tmp/cache/assets/development/sprockets/990cf740a7968767a327f6186313badb
479
633
  - spec/dummy/tmp/cache/assets/development/sprockets/9a7970620504bfe92af14fd57ee08365
480
634
  - spec/dummy/tmp/cache/assets/development/sprockets/9c8440c4efec99d4a380eeda42f089c7
481
635
  - spec/dummy/tmp/cache/assets/development/sprockets/9e4cf41800946fd32bcfa3591b304eb6
@@ -484,43 +638,144 @@ test_files:
484
638
  - spec/dummy/tmp/cache/assets/development/sprockets/a7a8652a3fb42ef81fac3ab77949f82d
485
639
  - spec/dummy/tmp/cache/assets/development/sprockets/a9d839f632f9ce73fc221b79b39b0924
486
640
  - spec/dummy/tmp/cache/assets/development/sprockets/bae0ea1201e2ec9420712ff54b3254aa
641
+ - spec/dummy/tmp/cache/assets/development/sprockets/bb1f5ffb0ccbeec2c6499044b356f7c6
642
+ - spec/dummy/tmp/cache/assets/development/sprockets/bc83340720a76d8208112f6aecbff08e
643
+ - spec/dummy/tmp/cache/assets/development/sprockets/be67cef79122a71f7432c2f984f1f258
487
644
  - spec/dummy/tmp/cache/assets/development/sprockets/c05c4a514cf0b61ad7b223ee732cd6df
488
645
  - spec/dummy/tmp/cache/assets/development/sprockets/c29c465933e7e86d6f6224f5e78c5baf
646
+ - spec/dummy/tmp/cache/assets/development/sprockets/c83e71ece967e80f8df838874c130431
489
647
  - spec/dummy/tmp/cache/assets/development/sprockets/c975834a35907ecd2d314bbd6844ee88
648
+ - spec/dummy/tmp/cache/assets/development/sprockets/cad26971ff72bbf5aa5f4e6a469389eb
490
649
  - spec/dummy/tmp/cache/assets/development/sprockets/cebc6db0bbb8120f430da3970b173d2f
491
650
  - spec/dummy/tmp/cache/assets/development/sprockets/cf4affc50c6303e717d6514380d1f417
492
651
  - spec/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994
493
652
  - spec/dummy/tmp/cache/assets/development/sprockets/d0194b0fba4290072cfff0be06b348fd
653
+ - spec/dummy/tmp/cache/assets/development/sprockets/d0d5517256edcd1f83b11a13c6ca040f
654
+ - spec/dummy/tmp/cache/assets/development/sprockets/d0f0c5e105bfb1d6e5cd7295fbd1f65d
655
+ - spec/dummy/tmp/cache/assets/development/sprockets/d3087f7df919b7f0d8142ee163db6c79
494
656
  - spec/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6
495
657
  - spec/dummy/tmp/cache/assets/development/sprockets/d8487b3a1dc72a1361b96fbbc93255c6
496
658
  - spec/dummy/tmp/cache/assets/development/sprockets/d8b357d5741711da2dd710af0e15d268
659
+ - spec/dummy/tmp/cache/assets/development/sprockets/decc27a1fa9ea32fe0dcc18619e32587
660
+ - spec/dummy/tmp/cache/assets/development/sprockets/df796f7ea525be06a82ebc3a4f97ffec
497
661
  - spec/dummy/tmp/cache/assets/development/sprockets/e02b5049cf477b43a72b4a00e2fceb46
498
662
  - spec/dummy/tmp/cache/assets/development/sprockets/e0be9bf6ab486a790bda60b51224b404
499
663
  - spec/dummy/tmp/cache/assets/development/sprockets/e22a1b318499e7f06ea9274e18ab004f
500
664
  - spec/dummy/tmp/cache/assets/development/sprockets/e298cc3a8203ab1fb6978a90254f8926
501
665
  - spec/dummy/tmp/cache/assets/development/sprockets/e2a9bdd87a2d19256837fce6544a122c
666
+ - spec/dummy/tmp/cache/assets/development/sprockets/e378dcebf3c529db0d6e57d0c8dc3904
502
667
  - spec/dummy/tmp/cache/assets/development/sprockets/e868f358fe87542c483951a2d9f532b6
503
668
  - spec/dummy/tmp/cache/assets/development/sprockets/e8a6adf580ebd1942f4aabe6738678c2
504
669
  - spec/dummy/tmp/cache/assets/development/sprockets/ea081ed20ad78a3e8f41a529b6baa2e1
505
670
  - spec/dummy/tmp/cache/assets/development/sprockets/ec956e1f28c818063bb61958fe5ae855
506
671
  - spec/dummy/tmp/cache/assets/development/sprockets/ed71f99e0a9653296abd5d6f501dd898
672
+ - spec/dummy/tmp/cache/assets/development/sprockets/ee3031bd54230ddf2addb5fa5718c86b
507
673
  - spec/dummy/tmp/cache/assets/development/sprockets/eee3cb53f216eaa12dd927f144640d0d
508
674
  - spec/dummy/tmp/cache/assets/development/sprockets/efe6f2d16d3a1819817efb8734daf8af
509
675
  - spec/dummy/tmp/cache/assets/development/sprockets/f03e99bdb4159ae3485ca2858716e19b
510
676
  - spec/dummy/tmp/cache/assets/development/sprockets/f29bc513eb7c7d4b79d53d51363f7f1f
677
+ - spec/dummy/tmp/cache/assets/development/sprockets/f4648036e284d9aa3468f4f7b9bbb967
511
678
  - spec/dummy/tmp/cache/assets/development/sprockets/f56253b5f374fff1a33fbbc9881c9124
512
679
  - spec/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655
680
+ - spec/dummy/tmp/cache/assets/development/sprockets/f9bbf698d099ead559e5ba4a5a4c5538
681
+ - spec/dummy/tmp/cache/assets/development/sprockets/fb8d3825617fcc11dfa614a51effee0e
513
682
  - spec/dummy/tmp/cache/assets/development/sprockets/fc2c22310cbb7abb26ae64d4aafa37cb
683
+ - spec/dummy/tmp/cache/assets/test/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc
684
+ - spec/dummy/tmp/cache/assets/test/sprockets/07e8fb2db7d85e29590a6b05160ca825
685
+ - spec/dummy/tmp/cache/assets/test/sprockets/0a40fa5e0d6c0de40a8a698dcd697305
686
+ - spec/dummy/tmp/cache/assets/test/sprockets/1533bcf4a8f5a745dfda80cebd88d217
687
+ - spec/dummy/tmp/cache/assets/test/sprockets/1643e7f9f85637df140a850af6674f10
688
+ - spec/dummy/tmp/cache/assets/test/sprockets/177ca1f3e92db4f8a8f6e7ad9786ebfc
689
+ - spec/dummy/tmp/cache/assets/test/sprockets/197492ed379339e17a0f5d01d3b01b8c
690
+ - spec/dummy/tmp/cache/assets/test/sprockets/1c55cf24465f311353197ce336df0178
691
+ - spec/dummy/tmp/cache/assets/test/sprockets/1cb94582c835e73b3fd3c276f9a7de56
692
+ - spec/dummy/tmp/cache/assets/test/sprockets/203047a4141cf08162077e7290421bbb
693
+ - spec/dummy/tmp/cache/assets/test/sprockets/210050da208fb75a75b701bfa4e8470f
694
+ - spec/dummy/tmp/cache/assets/test/sprockets/2733033a48e2e8a6fdd6e4ab371689ee
695
+ - spec/dummy/tmp/cache/assets/test/sprockets/27a59e08207d3ae723f2b2b3d22264c3
696
+ - spec/dummy/tmp/cache/assets/test/sprockets/29a6c93aeb91d07a5533b3adba7697d0
697
+ - spec/dummy/tmp/cache/assets/test/sprockets/29ac2be474969468157245a7f8737fa4
698
+ - spec/dummy/tmp/cache/assets/test/sprockets/314e44d29ecc7449c9ca3b754329c245
699
+ - spec/dummy/tmp/cache/assets/test/sprockets/3162d1398d6940ee5e933b7ab4d2273d
700
+ - spec/dummy/tmp/cache/assets/test/sprockets/3d80e2a5faaf2bd987d804c17aead745
701
+ - spec/dummy/tmp/cache/assets/test/sprockets/4155a156cc6ffb880b56dbc34346fbc0
702
+ - spec/dummy/tmp/cache/assets/test/sprockets/4166fe47cddf4ba18c53b843d69b4c5f
703
+ - spec/dummy/tmp/cache/assets/test/sprockets/441f922b26aae90d40e319b6ed0a3bc8
704
+ - spec/dummy/tmp/cache/assets/test/sprockets/4432a4b71ce9551df8d4b3860f4b9be3
705
+ - spec/dummy/tmp/cache/assets/test/sprockets/448c1e44da04c20f27eaa31ad8c4391e
706
+ - spec/dummy/tmp/cache/assets/test/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5
707
+ - spec/dummy/tmp/cache/assets/test/sprockets/5479c7b4fba9179d4d1dc59ae64964c1
708
+ - spec/dummy/tmp/cache/assets/test/sprockets/566fbede2036fd06a20e7e52e30ddc7d
709
+ - spec/dummy/tmp/cache/assets/test/sprockets/5a3ab9afd151c265cf11c621c0ddbe00
710
+ - spec/dummy/tmp/cache/assets/test/sprockets/647038c58f26163a9217646e1e5f09ae
711
+ - spec/dummy/tmp/cache/assets/test/sprockets/64e0150fafbd9aaa3822efa1abb0211d
712
+ - spec/dummy/tmp/cache/assets/test/sprockets/65c2d908dbca1bc833ae0b552f6c27fa
713
+ - spec/dummy/tmp/cache/assets/test/sprockets/6882b260ae69f1594eff540d803e5ac3
714
+ - spec/dummy/tmp/cache/assets/test/sprockets/69f4b83d363269ee4122bbbaaa1325d1
715
+ - spec/dummy/tmp/cache/assets/test/sprockets/6e1aee34907ba1ccdbfca2deb18a5adb
716
+ - spec/dummy/tmp/cache/assets/test/sprockets/726d3f6850549a59954f0bf5584cfd9f
717
+ - spec/dummy/tmp/cache/assets/test/sprockets/7ab9ac7cc2529219a4c68fd7854d5c0f
718
+ - spec/dummy/tmp/cache/assets/test/sprockets/7bac3aca131c870ad5b07d8ccdc86e06
719
+ - spec/dummy/tmp/cache/assets/test/sprockets/80392355fc6e00cf69b2cd46978ebcbe
720
+ - spec/dummy/tmp/cache/assets/test/sprockets/874b42463fefbb0bce47775722ebb4ae
721
+ - spec/dummy/tmp/cache/assets/test/sprockets/87ef8ddd2847d19f22a16d726b88b433
722
+ - spec/dummy/tmp/cache/assets/test/sprockets/91ae0bd43f98b4f1f111e0bdc178302c
723
+ - spec/dummy/tmp/cache/assets/test/sprockets/97d99b466bedb69706f4815fa26b69f3
724
+ - spec/dummy/tmp/cache/assets/test/sprockets/990cf740a7968767a327f6186313badb
725
+ - spec/dummy/tmp/cache/assets/test/sprockets/9a690664139b0393787d6454b4697183
726
+ - spec/dummy/tmp/cache/assets/test/sprockets/a2b14d5c46db32da9183354fb3fcd0bf
727
+ - spec/dummy/tmp/cache/assets/test/sprockets/a6d6196cfd275dea0718553a95f997a5
728
+ - spec/dummy/tmp/cache/assets/test/sprockets/bc83340720a76d8208112f6aecbff08e
729
+ - spec/dummy/tmp/cache/assets/test/sprockets/c29c465933e7e86d6f6224f5e78c5baf
730
+ - spec/dummy/tmp/cache/assets/test/sprockets/c975834a35907ecd2d314bbd6844ee88
731
+ - spec/dummy/tmp/cache/assets/test/sprockets/cad26971ff72bbf5aa5f4e6a469389eb
732
+ - spec/dummy/tmp/cache/assets/test/sprockets/cf4affc50c6303e717d6514380d1f417
733
+ - spec/dummy/tmp/cache/assets/test/sprockets/d0d5517256edcd1f83b11a13c6ca040f
734
+ - spec/dummy/tmp/cache/assets/test/sprockets/d3087f7df919b7f0d8142ee163db6c79
735
+ - spec/dummy/tmp/cache/assets/test/sprockets/d8b357d5741711da2dd710af0e15d268
736
+ - spec/dummy/tmp/cache/assets/test/sprockets/decc27a1fa9ea32fe0dcc18619e32587
737
+ - spec/dummy/tmp/cache/assets/test/sprockets/df796f7ea525be06a82ebc3a4f97ffec
738
+ - spec/dummy/tmp/cache/assets/test/sprockets/e22a1b318499e7f06ea9274e18ab004f
739
+ - spec/dummy/tmp/cache/assets/test/sprockets/e298cc3a8203ab1fb6978a90254f8926
740
+ - spec/dummy/tmp/cache/assets/test/sprockets/e378dcebf3c529db0d6e57d0c8dc3904
741
+ - spec/dummy/tmp/cache/assets/test/sprockets/e868f358fe87542c483951a2d9f532b6
742
+ - spec/dummy/tmp/cache/assets/test/sprockets/e8a6adf580ebd1942f4aabe6738678c2
743
+ - spec/dummy/tmp/cache/assets/test/sprockets/ed71f99e0a9653296abd5d6f501dd898
744
+ - spec/dummy/tmp/cache/assets/test/sprockets/efe6f2d16d3a1819817efb8734daf8af
745
+ - spec/dummy/tmp/cache/assets/test/sprockets/f03e99bdb4159ae3485ca2858716e19b
746
+ - spec/dummy/tmp/cache/assets/test/sprockets/f4648036e284d9aa3468f4f7b9bbb967
747
+ - spec/dummy/tmp/cache/assets/test/sprockets/f961f7434a28c0fe24bf4ffe6cba75fb
748
+ - spec/dummy/tmp/cache/assets/test/sprockets/f9bbf698d099ead559e5ba4a5a4c5538
749
+ - spec/dummy/tmp/cache/assets/test/sprockets/fb8d3825617fcc11dfa614a51effee0e
514
750
  - spec/dummy/tmp/restart.txt
515
- - spec/helpers/prosperity/metrics_helper_spec.rb
751
+ - spec/helpers/prosperity/dashboard_graphs_helper_spec.rb
752
+ - spec/helpers/prosperity/dashboards_helper_spec.rb
753
+ - spec/helpers/prosperity/graph_helper_spec.rb
754
+ - spec/lib/prosperity/aggregate/aggregate_builder_spec.rb
755
+ - spec/lib/prosperity/aggregate/average_spec.rb
756
+ - spec/lib/prosperity/aggregate/base_spec.rb
757
+ - spec/lib/prosperity/aggregate/count_spec.rb
758
+ - spec/lib/prosperity/aggregate/maximum_spec.rb
759
+ - spec/lib/prosperity/aggregate/minimum_spec.rb
760
+ - spec/lib/prosperity/aggregate/sql_spec.rb
761
+ - spec/lib/prosperity/aggregate/sum_spec.rb
762
+ - spec/lib/prosperity/aggregate/with_column_spec.rb
763
+ - spec/lib/prosperity/aggregate_spec.rb
516
764
  - spec/lib/prosperity/extractors/base_spec.rb
517
- - spec/lib/prosperity/extractors/count_spec.rb
518
- - spec/lib/prosperity/extractors/group_spec.rb
765
+ - spec/lib/prosperity/extractors/change_spec.rb
766
+ - spec/lib/prosperity/extractors/interval_spec.rb
767
+ - spec/lib/prosperity/extractors/total_spec.rb
768
+ - spec/lib/prosperity/helpers/time_spec.rb
519
769
  - spec/lib/prosperity/metric_finder_spec.rb
520
770
  - spec/lib/prosperity/metric_spec.rb
521
771
  - spec/lib/prosperity/metrics/option_spec.rb
522
772
  - spec/lib/prosperity/period_spec.rb
523
773
  - spec/lib/prosperity/periods_spec.rb
774
+ - spec/models/prosperity/dashboard_graph_spec.rb
775
+ - spec/models/prosperity/dashboard_spec.rb
776
+ - spec/models/prosperity/graph_line_spec.rb
777
+ - spec/models/prosperity/graph_spec.rb
524
778
  - spec/spec_helper.rb
779
+ - spec/support/shared/extractors.rb
525
780
  - spec/support/test_database.rb
526
781
  - spec/test_files/metrics/users_metric.rb