This commit was manufactured by cvs2svn to create branch 'ruby_1_8'.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/branches/ruby_1_8@9786 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
(no author) 2006-01-01 08:12:39 +00:00
parent f9c6aa9f11
commit aa9b7a644a
2 changed files with 75 additions and 0 deletions

33
ia64.s Normal file
View file

@ -0,0 +1,33 @@
// rb_ia64_flushrs and rb_ia64_bsp is written in IA64 assembly language
// because Intel Compiler for IA64 doesn't support inline assembly.
//
// This file is based on following C program compiled by gcc.
//
// void rb_ia64_flushrs(void) { __builtin_ia64_flushrs(); }
// void *rb_ia64_bsp(void) { return __builtin_ia64_bsp(); }
//
.file "ia64.c"
.text
.align 16
.global rb_ia64_flushrs#
.proc rb_ia64_flushrs#
rb_ia64_flushrs:
.prologue
.body
flushrs
;;
nop.i 0
br.ret.sptk.many b0
.endp rb_ia64_flushrs#
.align 16
.global rb_ia64_bsp#
.proc rb_ia64_bsp#
rb_ia64_bsp:
.prologue
.body
nop.m 0
;;
mov r8 = ar.bsp
br.ret.sptk.many b0
.endp rb_ia64_bsp#
.ident "GCC: (GNU) 3.3.5 (Debian 1:3.3.5-13)"

42
test/ruby/test_dir.rb Normal file
View file

@ -0,0 +1,42 @@
require 'test/unit'
require 'tmpdir'
require 'fileutils'
class TestDir < Test::Unit::TestCase
ROOT = File.join(Dir.tmpdir, "__test_dir__#{$$}")
def setup
Dir.mkdir(ROOT)
for i in ?a..?z
if i % 2 == 0
FileUtils.touch(File.join(ROOT, i.chr))
else
FileUtils.mkdir(File.join(ROOT, i.chr))
end
end
end
def teardown
FileUtils.rm_rf ROOT if File.directory?(ROOT)
end
def test_seek
dir = Dir.open(ROOT)
begin
cache = []
loop do
pos = dir.tell
break unless name = dir.read
cache << [pos, name]
end
for x in cache.sort_by {|x| x[0] % 3 } # shuffle
dir.seek(x[0])
assert_equal(x[1], dir.read)
end
ensure
dir.close
end
end
end