fails:Enumerator#initialize is a private method
fails:Enumerator#initialize returns self when given an object
fails:Enumerator#initialize returns self when given a block
fails:Enumerator#initialize accepts a block
fails:Enumerator#initialize sets size to nil if size is not given
fails:Enumerator#initialize sets size to nil if the given size is nil
fails:Enumerator#initialize sets size to the given size if the given size is Float::INFINITY
fails:Enumerator#initialize sets size to the given size if the given size is a Fixnum
fails:Enumerator#initialize sets size to the given size if the given size is a Proc
fails:Enumerator#initialize on frozen instance raises a RuntimeError
