/vendor/gems/facets-2.4.5/test/core/file/test_file.rb
Ruby | 85 lines | 37 code | 16 blank | 32 comment | 0 complexity | de1e6a2359c102707691343c2ca0b8e0 MD5 | raw file
Possible License(s): GPL-3.0, GPL-2.0, IPL-1.0, AGPL-1.0, LGPL-3.0
- require 'facets/file.rb'
- require 'test/unit'
- require 'tempfile'
- class TC_File_Sanitize < Test::Unit::TestCase
- # mock file
- class MockFile < File
- def self.open( fname, mode, &blk )
- blk.call(self)
- end
- def self.read( fname=nil )
- @mock_content.clone
- end
- def self.write( str )
- @mock_content = str
- end
- def self.<<( str )
- (@mock_content ||="") << str
- end
- end
- # TODO Write file identity tests.
- def test_sanitize_01
- assert_equal( "This_is_a_test", MockFile.sanitize('This is a test') )
- end
- def test_sanitize_02
- assert_equal( "test", MockFile.sanitize('This\is\test') )
- end
- def test_sanitize_03
- assert_equal( "test", MockFile.sanitize('This/is/test') )
- end
- def test_sanitize_04
- assert_equal( "te_____st", MockFile.sanitize('This/te#$#@!st') )
- end
- def test_sanitize_05
- assert_equal( "_.", MockFile.sanitize('.') )
- end
- def test_sanitize_06
- assert_equal( "_....", MockFile.sanitize('....') )
- end
- end
- # class TestFileRead < Test::Unit::TestCase
- #
- #
- # class MockFile < ::File
- # def open( fname, mode, &blk )
- # blk.call(self)
- # end
- # def read( fname=nil )
- # @mock_content.clone
- # end
- # def write( str )
- # @mock_content = str
- # end
- # def <<( str )
- # (@mock_content ||="") << str
- # end
- # end
- #
- # File = MockFile.new
- #
- # def test_read_list
- # f = File.write("A\nB\nC")
- # s = File.read_list( f )
- # r = ['A','B','C']
- # assert_equal( r, s )
- # end
- #
- # end
- # Test for facets/file/write.rb
- # TODO Needs a file mock.