Skip to content

Instantly share code, notes, and snippets.

@valikos
Last active January 4, 2016 22:19
Show Gist options
  • Save valikos/8686797 to your computer and use it in GitHub Desktop.
Save valikos/8686797 to your computer and use it in GitHub Desktop.
Crazy counter
# before
# solution from member of team
if hash["#{PRODUCT_TYPEID_VDC}"].nil? && hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"].nil?
hash["#{PRODUCT_TYPEID_VDC}"] = hash["#{PRODUCT_TYPEID_CLOUD}"]
elsif hash["#{PRODUCT_TYPEID_VDC}"].nil? && hash["#{PRODUCT_TYPEID_CLOUD}"].nil?
hash["#{PRODUCT_TYPEID_VDC}"] = hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"]
elsif hash["#{PRODUCT_TYPEID_CLOUD}"].nil?
hash["#{PRODUCT_TYPEID_VDC}"] += hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"] unless hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"].nil?
elsif hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"].nil?
hash["#{PRODUCT_TYPEID_VDC}"] += hash["#{PRODUCT_TYPEID_CLOUD}"] unless hash["#{PRODUCT_TYPEID_CLOUD}"].nil?
else
hash["#{PRODUCT_TYPEID_VDC}"] += hash["#{PRODUCT_TYPEID_CLOUD}"] + hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"]
end
# after refactoring
# and it may be even more clear
pcloud_count = hash["#{PRODUCT_TYPEID_PRIVATECLOUD}"].to_i
ixcloud_count = hash["#{PRODUCT_TYPEID_CLOUD}"].to_i
if hash["#{PRODUCT_TYPEID_VDC}"].nil?
hash["#{PRODUCT_TYPEID_VDC}"] = pcloud_count + ixcloud_count
else
hash["#{PRODUCT_TYPEID_VDC}"] += pcloud_count + ixcloud_count
end
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment