fails:IO.for_fd creates an IO instance from a Fixnum argument
fails:IO.for_fd calls #to_int on an object to convert to a Fixnum
fails:IO.for_fd accepts a :mode option
fails:IO.for_fd accepts a mode argument set to nil with a valid :mode option
fails:IO.for_fd accepts a mode argument with a :mode option set to nil
fails:IO.for_fd raises an error if passed modes two ways
fails:IO.for_fd uses the external encoding specified in the mode argument
fails:IO.for_fd uses the external and the internal encoding specified in the mode argument
fails:IO.for_fd uses the external encoding specified via the :external_encoding option
fails:IO.for_fd uses the internal encoding specified via the :internal_encoding option
fails:IO.for_fd uses the colon-separated encodings specified via the :encoding option
fails:IO.for_fd uses the :encoding option as the external encoding when only one is given
fails:IO.for_fd uses the :encoding options as the external encoding when it's an Encoding object
fails:IO.for_fd ingores the :encoding option when the :external_encoding option is present
fails:IO.for_fd ingores the :encoding option when the :internal_encoding option is present
fails:IO.for_fd uses the encoding specified via the :mode option hash
fails:IO.for_fd ignores the :internal_encoding option when the same as the external encoding
fails:IO.for_fd sets internal encoding to nil when passed '-'
fails:IO.for_fd raises an error if passed encodings two ways
fails:IO.for_fd sets binmode from mode string
fails:IO.for_fd does not set binmode without being asked
fails:IO.for_fd sets binmode from :binmode option
fails:IO.for_fd does not set binmode from false :binmode
fails:IO.for_fd raises an error if passed binary/text mode two ways
fails:IO.for_fd raises an error when trying to set both binmode and textmode
fails:IO.for_fd sets external encoding to binary with binmode in mode string
fails:IO.for_fd sets external encoding to binary with :binmode option
fails:IO.for_fd does not use binary encoding when mode encoding is specified
fails:IO.for_fd does not use binary encoding when :encoding option is specified
fails:IO.for_fd does not use binary encoding when :external_encoding option is specified
fails:IO.for_fd does not use binary encoding when :internal_encoding option is specified
fails:IO.for_fd accepts nil options
fails:IO.for_fd coerces mode with #to_str
fails:IO.for_fd coerces mode with #to_int
fails:IO.for_fd coerces mode with #to_str when passed in options
fails:IO.for_fd coerces mode with #to_int when passed in options
fails:IO.for_fd coerces :encoding option with #to_str
fails:IO.for_fd coerces :external_encoding option with #to_str
fails:IO.for_fd coerces :internal_encoding option with #to_str
fails:IO.for_fd coerces options as third argument with #to_hash
fails:IO.for_fd coerces options as second argument with #to_hash
fails:IO.for_fd raises ArgumentError if not passed a hash or nil for options
fails:IO.for_fd raises TypeError if passed a hash for mode and nil for options
fails:IO.for_fd accepts an :autoclose option
fails:IO.for_fd accepts any truthy option :autoclose
fails:IO.for_fd raises an Errno::EBADF if the file descriptor is not valid
fails:IO.for_fd raises an IOError if passed a closed stream
fails:IO.for_fd raises an Errno::EINVAL if the new mode is not compatible with the descriptor's current mode
fails:IO.for_fd raises ArgumentError if passed an empty mode string
fails:IO.for_fd creates an IO instance when STDOUT is closed
fails:IO.for_fd creates an IO instance when STDERR is closed
