Add koan addressing Hash#fetch.
authorDan Dorman <dan.dorman@gmail.com>
Thu, 8 Sep 2011 15:46:02 +0000 (09:46 -0600)
committerDan Dorman <dan.dorman@gmail.com>
Thu, 8 Sep 2011 15:46:02 +0000 (09:46 -0600)
koans/about_hashes.rb

index 2324b04..7662488 100644 (file)
@@ -20,6 +20,18 @@ class AboutHashes < EdgeCase::Koan
     assert_equal __, hash[:doesnt_exist]
   end
 
+  def test_accessing_hashes_with_fetch
+    hash = { :one => "uno" }
+    assert_equal "uno", hash.fetch(:one)
+    assert_raise(___) do
+      hash.fetch(:doesnt_exist)
+    end
+
+    # THINK ABOUT IT:
+    #
+    # Why might you want to use #fetch instead of #[] when accessing hash keys?
+  end
+
   def test_changing_hashes
     hash = { :one => "uno", :two => "dos" }
     hash[:one] = "eins"