prosperity 0.0.2 → 0.0.3

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 (44) hide show
  1. checksums.yaml +4 -4
  2. data/app/controllers/prosperity/metrics_controller.rb +2 -1
  3. data/lib/prosperity/period.rb +10 -2
  4. data/lib/prosperity/version.rb +1 -1
  5. data/spec/controllers/prosperity/metrics_controller_spec.rb +8 -0
  6. data/spec/dummy/app/prosperity/ruby_users_metric.rb +5 -0
  7. data/spec/dummy/log/development.log +4759 -0
  8. data/spec/dummy/log/test.log +6803 -0
  9. data/spec/dummy/tmp/cache/assets/development/sass/34a577735054231563e7022ea73e1468db9203ba/application.css.scssc +0 -0
  10. data/spec/dummy/tmp/cache/assets/development/sprockets/07e8fb2db7d85e29590a6b05160ca825 +0 -0
  11. data/spec/dummy/tmp/cache/assets/development/sprockets/0a40fa5e0d6c0de40a8a698dcd697305 +0 -0
  12. data/spec/dummy/tmp/cache/assets/development/sprockets/1533bcf4a8f5a745dfda80cebd88d217 +0 -0
  13. data/spec/dummy/tmp/cache/assets/development/sprockets/1643e7f9f85637df140a850af6674f10 +0 -0
  14. data/spec/dummy/tmp/cache/assets/development/sprockets/197492ed379339e17a0f5d01d3b01b8c +0 -0
  15. data/spec/dummy/tmp/cache/assets/development/sprockets/1c55cf24465f311353197ce336df0178 +0 -0
  16. data/spec/dummy/tmp/cache/assets/development/sprockets/210050da208fb75a75b701bfa4e8470f +0 -0
  17. data/spec/dummy/tmp/cache/assets/development/sprockets/27a59e08207d3ae723f2b2b3d22264c3 +0 -0
  18. data/spec/dummy/tmp/cache/assets/development/sprockets/3e21790900d62ae3954585f08a1cb28a +0 -0
  19. data/spec/dummy/tmp/cache/assets/development/sprockets/3f76425644a701b85db3d385f077052d +0 -0
  20. data/spec/dummy/tmp/cache/assets/development/sprockets/441f922b26aae90d40e319b6ed0a3bc8 +0 -0
  21. data/spec/dummy/tmp/cache/assets/development/sprockets/448c1e44da04c20f27eaa31ad8c4391e +0 -0
  22. data/spec/dummy/tmp/cache/assets/development/sprockets/47cc93f04a83c418e8f544aeab9208d8 +0 -0
  23. data/spec/dummy/tmp/cache/assets/development/sprockets/47df4fdca8a2ff6a43c18d7aa1ffd9c5 +0 -0
  24. data/spec/dummy/tmp/cache/assets/development/sprockets/647038c58f26163a9217646e1e5f09ae +0 -0
  25. data/spec/dummy/tmp/cache/assets/development/sprockets/6882b260ae69f1594eff540d803e5ac3 +0 -0
  26. data/spec/dummy/tmp/cache/assets/development/sprockets/69f4b83d363269ee4122bbbaaa1325d1 +0 -0
  27. data/spec/dummy/tmp/cache/assets/development/sprockets/72c0d4a0eeedae5e79ae49abb24f6d32 +0 -0
  28. data/spec/dummy/tmp/cache/assets/development/sprockets/828a046f0e7dc2dad0eecfe49d31e14d +0 -0
  29. data/spec/dummy/tmp/cache/assets/development/sprockets/91ae0bd43f98b4f1f111e0bdc178302c +0 -0
  30. data/spec/dummy/tmp/cache/assets/development/sprockets/990cf740a7968767a327f6186313badb +0 -0
  31. data/spec/dummy/tmp/cache/assets/development/sprockets/9a690664139b0393787d6454b4697183 +0 -0
  32. data/spec/dummy/tmp/cache/assets/development/sprockets/a2b14d5c46db32da9183354fb3fcd0bf +0 -0
  33. data/spec/dummy/tmp/cache/assets/development/sprockets/a6d6196cfd275dea0718553a95f997a5 +0 -0
  34. data/spec/dummy/tmp/cache/assets/development/sprockets/b8a9886650603baf49c9a1e13f3fd7bf +0 -0
  35. data/spec/dummy/tmp/cache/assets/development/sprockets/bc83340720a76d8208112f6aecbff08e +0 -0
  36. data/spec/dummy/tmp/cache/assets/development/sprockets/df796f7ea525be06a82ebc3a4f97ffec +0 -0
  37. data/spec/dummy/tmp/cache/assets/development/sprockets/e02b5049cf477b43a72b4a00e2fceb46 +0 -0
  38. data/spec/dummy/tmp/cache/assets/development/sprockets/e2a9bdd87a2d19256837fce6544a122c +0 -0
  39. data/spec/dummy/tmp/cache/assets/development/sprockets/ee3031bd54230ddf2addb5fa5718c86b +0 -0
  40. data/spec/dummy/tmp/cache/assets/development/sprockets/f4648036e284d9aa3468f4f7b9bbb967 +0 -0
  41. data/spec/dummy/tmp/cache/assets/development/sprockets/f961f7434a28c0fe24bf4ffe6cba75fb +0 -0
  42. data/spec/dummy/tmp/cache/assets/development/sprockets/fb8d3825617fcc11dfa614a51effee0e +0 -0
  43. data/spec/lib/prosperity/periods_spec.rb +1 -1
  44. metadata +16 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 05c4975bfb8d25cc3a99a70c519d741a20409030
4
- data.tar.gz: 409c4ec232d033c74e29a07d067154a0fbc40054
3
+ metadata.gz: 008b05b3d6cff9ffbe1fa9e2f26bdea7ae259762
4
+ data.tar.gz: 54729633e2aa2675fca30a0dc3e793df28c62691
5
5
  SHA512:
6
- metadata.gz: 05440b2f94e46093d8737b05649c18a0b62679cdf0464306d0693eabb48b1da7bdacaaf2a1419350c0c278032a6a2d3c95d3a45c4eb4007152a693270c20c55b
7
- data.tar.gz: c2a87e6014004fbcb9b7982be91a60c7fa5f9e4709496de1e8b2c883e5a3911727da0dd2d6934f01e9ffadc9d970349b7e9607c6cb6403a4f4e55c1d3641526d
6
+ metadata.gz: 668d601aa27d60b1d8f61c3d12de2c0bc1e8ce7b70290504ba73832e130f6b7ccdd7caa25776aa38088504d7ab6ff3cd12c2934d8d0c16cfddb142d2265a246f
7
+ data.tar.gz: 9397bf4bce9520b944c6575565d98efb066932560784c4aa7f72c596b455ef3d5c7d042424bd04f116a3ee4a55e9d46dc6ff5a7b989e3524a91ab06820202fd0
@@ -45,7 +45,8 @@ module Prosperity
45
45
  data: ext.to_a,
46
46
  key: ext.key,
47
47
  label: ext.label,
48
- start_time: start_time.iso8601,
48
+ start_time: p.actual_start_time(start_time).iso8601,
49
+ end_time: p.actual_end_time(end_time).iso8601,
49
50
  period_milliseconds: p.duration * 1000
50
51
  }
51
52
  render json: json
@@ -1,12 +1,20 @@
1
1
  module Prosperity
2
2
  class Period < Struct.new(:db_strf_str, :ruby_strf_str, :duration, :floor_date, :ceil_date)
3
3
  def each_period(start_time, end_time)
4
- start_time = floor_date.call(start_time)
5
- end_time = ceil_date.call(end_time) + 1
4
+ start_time = actual_start_time(start_time)
5
+ end_time = actual_end_time(end_time) + 1
6
6
  while start_time <= end_time
7
7
  yield start_time
8
8
  start_time += duration
9
9
  end
10
10
  end
11
+
12
+ def actual_start_time(start_time)
13
+ floor_date.call(start_time)
14
+ end
15
+
16
+ def actual_end_time(end_time)
17
+ ceil_date.call(end_time) + 1
18
+ end
11
19
  end
12
20
  end
@@ -1,3 +1,3 @@
1
1
  module Prosperity
2
- VERSION = "0.0.2"
2
+ VERSION = "0.0.3"
3
3
  end
@@ -46,6 +46,14 @@ module Prosperity
46
46
  json['data'].should == [1,2,3]
47
47
  end
48
48
 
49
+ it "returns the actual start and end time" do
50
+ Extractors::Interval.any_instance.stub(to_a: [1,2,3])
51
+ get :data, id: metric.id, format: 'json'
52
+ response.should be_success
53
+ json['start_time'].should be_present
54
+ json['end_time'].should be_present
55
+ end
56
+
49
57
  it "lets you specify any extractor key" do
50
58
  Extractors::Total.any_instance.stub(to_a: [1,2,3])
51
59
 
@@ -0,0 +1,5 @@
1
+ class RubyUsersMetric < Prosperity::Metric
2
+ value_at do |time, period, *|
3
+ User.where("users.created_at < ?", time).count
4
+ end
5
+ end