forked from sanikoyes/skynet
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathtestdatasheet.lua
48 lines (38 loc) · 918 Bytes
/
testdatasheet.lua
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
local skynet = require "skynet"
local mode = ...
local function dump(t, prefix)
for k,v in pairs(t) do
print(prefix, k, v)
if type(v) == "table" then
dump(v, prefix .. "." .. k)
end
end
end
if mode == "child" then
local datasheet = require "skynet.datasheet"
skynet.start(function()
local t = datasheet.query("foobar")
dump(t, "[CHILD]")
skynet.sleep(100)
skynet.exit()
end)
else
local builder = require "skynet.datasheet.builder"
local datasheet = require "skynet.datasheet"
skynet.start(function()
builder.new("foobar", {a = 1, b = 2 , c = {3} })
skynet.newservice(SERVICE_NAME, "child")
local t = datasheet.query "foobar"
local c = t.c
dump(t, "[1]")
builder.update("foobar", { b = 4, c = { 5 } })
print("sleep")
skynet.sleep(100)
dump(t, "[2]")
dump(c, "[2.c]")
builder.update("foobar", { a = 6, c = 7, d = 8 })
print("sleep")
skynet.sleep(100)
dump(t, "[3]")
end)
end