 
 This page contains automated test results for code from O'Reilly's Ruby Cookbook. If this code looks interesting or useful, you might want to buy the whole book.
| Declaring Constants | ||
|---|---|---|
| Code | Expected | Actual | 
| not_a_constant = 3 not_a_constant = 10 A_CONSTANT = 3 A_CONSTANT = 10 | warning: already initialized constant A_CONSTANT | |
| CONST = 4
module ConstModule
  CONST = 6
end
class ConstHolder
  CONST = 8
  def my_const
    return CONST
  end
end
CONST | 4 | 4 | 
| ConstModule::CONST | 6 | 6 | 
| ConstHolder::CONST | 8 | 8 | 
| ConstHolder.new.my_const | 8 | 8 | 
| E = 2.718281828 | 2.718281828 | 2.718281828 | 
| E = 6 | warning: already initialized constant E | |
| E | 6 | 6 | 
| module Math remove_const(:PI) PI = 3 end Math::PI | 3 | 3 | 
| RGB_COLORS = [:red, :green, :blue] | [:red, :green, :blue] | [:red, :green, :blue] | 
| RGB_COLORS << :purple | [:red, :green, :blue, :purple] | [:red, :green, :blue, :purple] | 
| RGB_COLORS = [:red, :green, :blue] | warning: already initialized constant RGB_GOLORS | |
| RGB_COLORS | [:red, :green, :blue] | [:red, :green, :blue] | 
| RGB_COLORS.freeze RGB_COLORS << :purple | TypeError: can't modify frozen array ... | TypeError: can't modify frozen array from (irb):32:in `<<' from (irb):32 | 
| HOURS_PER_DAY = 24 HOURS_PER_DAY.freeze # This does nothing since Fixnums are already immutable. HOURS_PER_DAY = 26 | warning: already initialized constant HOURS_PER_DAY | |
| HOURS_PER_DAY | 26 | 26 |