From a740f5fc1214f051c039ccc3881259450e8ba5dc Mon Sep 17 00:00:00 2001
From: Sulverus <sulverus@gmail.com>
Date: Mon, 6 Jul 2015 19:34:34 +0300
Subject: [PATCH] gh-809 replication rw/ro test case

---
 test/replication/catch.result   | 77 +++++++++++++++++++++++++++++++++
 test/replication/catch.test.lua | 45 +++++++++++++++++++
 2 files changed, 122 insertions(+)
 create mode 100644 test/replication/catch.result
 create mode 100644 test/replication/catch.test.lua

diff --git a/test/replication/catch.result b/test/replication/catch.result
new file mode 100644
index 0000000000..05f896e9c1
--- /dev/null
+++ b/test/replication/catch.result
@@ -0,0 +1,77 @@
+net_box = require('net.box')
+---
+...
+box.schema.user.grant('guest', 'replication')
+---
+...
+--# create server replica with rpl_master=default, script='replication/replica.lua'
+--# start server replica
+--# set connection replica
+box.schema.user.grant('guest', 'read,write,execute', 'universe')
+---
+...
+--# set connection default
+--# stop server replica
+s = box.schema.space.create('test');
+---
+...
+index = s:create_index('primary', {type = 'hash'})
+---
+...
+-- insert values
+for i=1,100000 do s:insert{i, 'this is test message12345'} end
+---
+...
+--# start server replica
+--# set connection replica
+fiber = require('fiber')
+---
+...
+while box.space.test == nil do fiber.sleep(0.01) end
+---
+...
+-- try to delete localy
+box.space.test:len() > 0
+---
+- true
+...
+box.space.test:len() < 100000
+---
+- true
+...
+d = box.space.test:delete{1}
+---
+...
+box.space.test:get(1) ~= nil
+---
+- true
+...
+-- try to delete by net.box
+--# set connection default
+--# set variable r_uri to 'replica.listen'
+c = net_box:new(r_uri)
+---
+...
+d = c.space.test:delete{1}
+---
+...
+c.space.test:get(1) ~= nil
+---
+- true
+...
+-- check sync
+--# set connection replica
+box.space.test:len() < 100000
+---
+- true
+...
+-- cleanup
+--# stop server replica
+--# cleanup server replica
+--# set connection default
+box.space.test:drop()
+---
+...
+box.schema.user.revoke('guest', 'replication')
+---
+...
diff --git a/test/replication/catch.test.lua b/test/replication/catch.test.lua
new file mode 100644
index 0000000000..2046447003
--- /dev/null
+++ b/test/replication/catch.test.lua
@@ -0,0 +1,45 @@
+net_box = require('net.box')
+box.schema.user.grant('guest', 'replication')
+--# create server replica with rpl_master=default, script='replication/replica.lua'
+--# start server replica
+--# set connection replica
+box.schema.user.grant('guest', 'read,write,execute', 'universe')
+
+--# set connection default
+--# stop server replica
+
+s = box.schema.space.create('test');
+index = s:create_index('primary', {type = 'hash'})
+
+-- insert values
+for i=1,100000 do s:insert{i, 'this is test message12345'} end
+
+--# start server replica
+--# set connection replica
+fiber = require('fiber')
+while box.space.test == nil do fiber.sleep(0.01) end
+
+-- try to delete localy
+box.space.test:len() > 0
+box.space.test:len() < 100000
+d = box.space.test:delete{1}
+box.space.test:get(1) ~= nil
+
+-- try to delete by net.box
+--# set connection default
+--# set variable r_uri to 'replica.listen'
+c = net_box:new(r_uri)
+d = c.space.test:delete{1}
+c.space.test:get(1) ~= nil
+
+-- check sync
+--# set connection replica
+box.space.test:len() < 100000
+
+-- cleanup
+--# stop server replica
+--# cleanup server replica
+--# set connection default
+box.space.test:drop()
+box.schema.user.revoke('guest', 'replication')
+
-- 
GitLab