#50 - advanced tests (test 12)
authorFedor Yudanov <fedwiz@academ.org>
Thu, 4 Apr 2013 13:26:13 +0000 (20:26 +0700)
committerFedor Yudanov <fedwiz@academ.org>
Thu, 4 Apr 2013 13:26:13 +0000 (20:26 +0700)
rbejdb/src/rbejdb.c
rbejdb/test/t2.rb

index 00cf9e4..d70ab72 100644 (file)
@@ -467,6 +467,13 @@ VALUE EJDB_get_db_meta(VALUE self) {
     return res;
 }
 
+void EJDB_sync(VALUE self) {
+    EJDB* ejdb = getEJDB(self);
+    if (!ejdbsyncdb(ejdb)) {
+        raise_ejdb_error(ejdb);
+    }
+}
+
 
 void close_ejdb_results_internal(RBEJDB_RESULTS* rbres) {
     tclistdel(rbres->results);
@@ -600,6 +607,7 @@ Init_rbejdb() {
     rb_define_method(ejdbClass, "drop_array_index", RUBY_METHOD_FUNC(EJDB_drop_array_index), 2);
 
     rb_define_method(ejdbClass, "get_db_meta", RUBY_METHOD_FUNC(EJDB_get_db_meta), 0);
+    rb_define_method(ejdbClass, "sync", RUBY_METHOD_FUNC(EJDB_sync), 0);
 
 
     ejdbResultsClass = rb_define_class("EJDBResults", rb_cObject);
index f2d2379..0aa4a36 100644 (file)
@@ -334,4 +334,9 @@ class EJDBTestUnit < Test::Unit::TestCase
     puts "test_ejdbb_test_remove has passed successfull"
   end
 
+  def test_ejdbc_sync
+    assert_not_nil $jb
+    assert $jb.is_open?
+    $jb.sync
+  end
 end