summaryrefslogtreecommitdiff
path: root/ext/dl/test/test_base.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ext/dl/test/test_base.rb')
-rw-r--r--ext/dl/test/test_base.rb52
1 files changed, 52 insertions, 0 deletions
diff --git a/ext/dl/test/test_base.rb b/ext/dl/test/test_base.rb
new file mode 100644
index 0000000000..bf35d7a621
--- /dev/null
+++ b/ext/dl/test/test_base.rb
@@ -0,0 +1,52 @@
+require 'test/unit'
+require 'dl'
+
+case RUBY_PLATFORM
+when /cygwin/
+ LIBC_SO = "cygwin1.dll"
+ LIBM_SO = "cygwin1.dll"
+when /linux/
+ LIBC_SO = "/lib/libc.so.6"
+ LIBM_SO = "/lib/libm.so.6"
+when /mingw/, /msvcrt/
+ LIBC_SO = "C:\\WINDOWS\\system32\\msvcrt.dll"
+ LIBM_SO = "C:\\WINDOWS\\system32\\msvcrt.dll"
+else
+ LIBC_SO = ARGV[0]
+ LIBM_SO = ARGV[1]
+ if( !(LIBC_SO && LIBM_SO) )
+ $stderr.puts("#{$0} <libc> <libm>")
+ exit
+ end
+end
+
+module DL
+ class TestBase < Test::Unit::TestCase
+ include Math
+ include DL
+
+ def setup
+ @libc = dlopen(LIBC_SO)
+ @libm = dlopen(LIBM_SO)
+ end
+
+ def assert_match(expected, actual, message="")
+ assert(expected === actual, message)
+ end
+
+ def assert_positive(actual)
+ assert(actual > 0)
+ end
+
+ def assert_zero(actual)
+ assert(actual == 0)
+ end
+
+ def assert_negative(actual)
+ assert(actual < 0)
+ end
+
+ def test_empty()
+ end
+ end
+end