Sha256: dcd518435b5459f3b320acee97502a1f4e5f2d7046c8a91f93911709ee88a88f
Contents?: true
Size: 1 KB
Versions: 2
Compression:
Stored size: 1 KB
Contents
# frozen_string_literal require 'active_support' require 'active_support/core_ext' module Dexcom module BloodGlucoseUtils module ClassMethods DEFAULT_NUMBER_OF_VALUES = 1 MINUTES_PER_DATAPOINT = 5 def last get_last(max_count: 1).first end def get_last(max_count: nil, minutes: nil) number_of_values = calculate_number_of_values(max_count, minutes) response = make_api_request(number_of_values) blood_glucose_values = process_api_response(response) if minutes.present? blood_glucose_values.select! { |bg| bg.timestamp >= minutes.minutes.ago } end blood_glucose_values end private def calculate_number_of_values(max_count, minutes) return DEFAULT_NUMBER_OF_VALUES if (minutes.nil? && max_count.nil?) return max_count if minutes.nil? return (minutes / MINUTES_PER_DATAPOINT) if max_count.nil? [max_count, minutes / MINUTES_PER_DATAPOINT].min end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
dexcom-0.3.1 | lib/dexcom/blood_glucose/class_methods.rb |
dexcom-0.3.0 | lib/dexcom/blood_glucose/class_methods.rb |