about summary refs log tree commit homepage
diff options
context:
space:
mode:
authorEric Wong <normalperson@yhbt.net>2011-03-10 02:12:46 +0000
committerEric Wong <normalperson@yhbt.net>2011-03-10 02:12:46 +0000
commit601e98fa2f89b99c7349b5c010850dd6f4efba0b (patch)
treecc6cf0ae84f5ded806037b0b764ddcd1d83e6a2e
parent89986c2df21b94fec21e516c0f51f3e3584f5b2e (diff)
downloadsleepy_penguin-601e98fa2f89b99c7349b5c010850dd6f4efba0b.tar.gz
Oops, it was never wired up.
-rw-r--r--ext/sleepy_penguin/timerfd.c1
-rw-r--r--test/test_timerfd.rb9
2 files changed, 10 insertions, 0 deletions
diff --git a/ext/sleepy_penguin/timerfd.c b/ext/sleepy_penguin/timerfd.c
index edfb629..3305c24 100644
--- a/ext/sleepy_penguin/timerfd.c
+++ b/ext/sleepy_penguin/timerfd.c
@@ -170,6 +170,7 @@ void sleepy_penguin_init_timerfd(void)
 #endif
 
         rb_define_method(cTimerFD, "settime", settime, 3);
+        rb_define_method(cTimerFD, "gettime", gettime, 0);
         rb_define_method(cTimerFD, "expirations", expirations, 0);
         id_for_fd = rb_intern("for_fd");
 }
diff --git a/test/test_timerfd.rb b/test/test_timerfd.rb
index 225a933..1b181da 100644
--- a/test/test_timerfd.rb
+++ b/test/test_timerfd.rb
@@ -48,4 +48,13 @@ class TestTimerFD < Test::Unit::TestCase
     sleep 0.01
     assert_equal 1, tfd.expirations
   end
+
+  def test_gettime
+    tfd = TimerFD.new :REALTIME
+    now = Time.now.to_i
+    assert_equal([0, 0], tfd.settime(nil, 0, now + 5))
+    interval, value = tfd.gettime
+    assert_equal 0, interval
+    assert_in_delta now + 5, value, 0.01
+  end
 end if defined?(SleepyPenguin::TimerFD)