Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
N
neo
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
2
Merge Requests
2
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Jobs
Commits
Open sidebar
Kirill Smelkov
neo
Commits
cd04979f
Commit
cd04979f
authored
Oct 04, 2021
by
Kirill Smelkov
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
.
parent
513ef608
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
60 additions
and
6 deletions
+60
-6
go/zodb/btree/testdata/gen-testdata
go/zodb/btree/testdata/gen-testdata
+45
-0
go/zodb/btree/ztestdata_expect_test.go
go/zodb/btree/ztestdata_expect_test.go
+15
-6
No files found.
go/zodb/btree/testdata/gen-testdata
View file @
cd04979f
...
@@ -22,6 +22,7 @@
...
@@ -22,6 +22,7 @@
from
ZODB.DB
import
DB
from
ZODB.DB
import
DB
from
BTrees.LOBTree
import
LOBucket
,
LOBTree
from
BTrees.LOBTree
import
LOBucket
,
LOBTree
from
BTrees.check
import
check
as
bcheck
from
ZODB.utils
import
u64
from
ZODB.utils
import
u64
from
zodbtools.test.gen_testdata
import
run_with_zodb4py2_compat
from
zodbtools.test.gen_testdata
import
run_with_zodb4py2_compat
import
os
,
os
.
path
,
transaction
import
os
,
os
.
path
,
transaction
...
@@ -52,8 +53,32 @@ def main2():
...
@@ -52,8 +53,32 @@ def main2():
root
[
'B3'
]
=
B3
=
LOBTree
(
dict
([(
_
,
_
)
for
_
in
range
(
10000
)]))
root
[
'B3'
]
=
B3
=
LOBTree
(
dict
([(
_
,
_
)
for
_
in
range
(
10000
)]))
# T4/T2-T/B1-B2-T7,9/B5-B8-B10
# TODO use xbtree.py when gimport works through modules
v1
=
LOBucket
([(
1
,
"a"
)])
v2
=
LOBucket
([(
2
,
"b"
)])
v5
=
LOBucket
([(
5
,
"c"
)])
v8
=
LOBucket
([(
8
,
"d"
)])
v9
=
LOBucket
([(
9
,
"e"
)])
T2
,
T79
,
T
,
T4
=
LOBTree
(),
LOBTree
(),
LOBTree
(),
LOBTree
()
T2
.
__setstate__
(((
v1
,
2
,
v2
),
v1
))
# (child, key, child, ...), firstbucket
T79
.
__setstate__
(((
v5
,
7
,
v8
,
9
,
v9
),
v5
))
T
.
__setstate__
(((
T79
,),
v5
))
T4
.
__setstate__
(((
T2
,
4
,
T
),
v1
))
root
[
'Bv'
]
=
Bv
=
T4
transaction
.
commit
()
transaction
.
commit
()
bcheck
(
Bv
)
assert
Bv
[
1
]
==
"a"
assert
Bv
[
2
]
==
"b"
assert
Bv
[
5
]
==
"c"
assert
Bv
[
8
]
==
"d"
assert
Bv
[
9
]
==
"e"
with
open
(
"ztestdata_expect_test.go"
,
"w"
)
as
f
:
with
open
(
"ztestdata_expect_test.go"
,
"w"
)
as
f
:
def
emit
(
v
):
def
emit
(
v
):
print
>>
f
,
v
print
>>
f
,
v
...
@@ -83,6 +108,26 @@ def main2():
...
@@ -83,6 +108,26 @@ def main2():
emit
(
"
\
n
const B3_oid = %s"
%
u64
(
B3
.
_p_oid
))
emit
(
"
\
n
const B3_oid = %s"
%
u64
(
B3
.
_p_oid
))
emit
(
"const B3_maxkey = %d"
%
B3
.
maxKey
())
emit
(
"const B3_maxkey = %d"
%
B3
.
maxKey
())
emit
(
"
\
n
const Bv_oid = %s"
%
u64
(
Bv
.
_p_oid
))
emit
(
"var Bvdict = map[int64][]tVisit{"
)
noo
=
"_LKeyMin"
oo
=
"_LKeyMax"
def
emitVisit
(
key
,
*
visitv
):
# visitv = [](node, lo,hi)
vstr
=
[]
for
node
,
lo
,
hi
in
visitv
:
if
isinstance
(
hi
,
str
):
hi_
=
hi
else
:
hi_
=
hi
-
1
vstr
.
append
(
"{%d, LKeyRange{%s, %s}}"
%
(
u64
(
node
.
_p_oid
),
lo
,
hi_
))
emit
(
"
\
t
%d: []tVisit{%s},"
%
(
key
,
", "
.
join
(
vstr
)))
emitVisit
(
1
,
(
T4
,
noo
,
oo
),
(
T2
,
noo
,
4
),
(
v1
,
noo
,
2
))
emitVisit
(
2
,
(
T4
,
noo
,
oo
),
(
T2
,
noo
,
4
),
(
v2
,
2
,
4
))
emitVisit
(
5
,
(
T4
,
noo
,
oo
),
(
T
,
4
,
oo
),
(
T79
,
4
,
oo
),
(
v5
,
4
,
7
))
emitVisit
(
8
,
(
T4
,
noo
,
oo
),
(
T
,
4
,
oo
),
(
T79
,
4
,
oo
),
(
v8
,
7
,
9
))
emitVisit
(
9
,
(
T4
,
noo
,
oo
),
(
T
,
4
,
oo
),
(
T79
,
4
,
oo
),
(
v9
,
9
,
oo
))
emit
(
"}"
)
conn
.
close
()
conn
.
close
()
db
.
close
()
db
.
close
()
...
...
go/zodb/btree/ztestdata_expect_test.go
View file @
cd04979f
...
@@ -3,13 +3,22 @@ package btree
...
@@ -3,13 +3,22 @@ package btree
var
smallTestv
=
[
...
]
testEntry
{
var
smallTestv
=
[
...
]
testEntry
{
testEntry
{
oid
:
6
,
kind
:
kindBucket
,
itemv
:
[]
kv
{}},
testEntry
{
oid
:
7
,
kind
:
kindBucket
,
itemv
:
[]
kv
{}},
testEntry
{
oid
:
3
,
kind
:
kindBucket
,
itemv
:
[]
kv
{{
10
,
int64
(
17
)},
}},
testEntry
{
oid
:
4
,
kind
:
kindBucket
,
itemv
:
[]
kv
{{
10
,
int64
(
17
)},
}},
testEntry
{
oid
:
1
,
kind
:
kindBucket
,
itemv
:
[]
kv
{{
15
,
int64
(
1
)},
{
23
,
"hello"
},
}},
testEntry
{
oid
:
1
,
kind
:
kindBucket
,
itemv
:
[]
kv
{{
15
,
int64
(
1
)},
{
23
,
"hello"
},
}},
testEntry
{
oid
:
2
,
kind
:
kindBTree
,
itemv
:
[]
kv
{}},
testEntry
{
oid
:
3
,
kind
:
kindBTree
,
itemv
:
[]
kv
{}},
testEntry
{
oid
:
7
,
kind
:
kindBTree
,
itemv
:
[]
kv
{{
5
,
int64
(
4
)},
}},
testEntry
{
oid
:
8
,
kind
:
kindBTree
,
itemv
:
[]
kv
{{
5
,
int64
(
4
)},
}},
testEntry
{
oid
:
4
,
kind
:
kindBTree
,
itemv
:
[]
kv
{{
7
,
int64
(
3
)},
{
9
,
"world"
},
}},
testEntry
{
oid
:
5
,
kind
:
kindBTree
,
itemv
:
[]
kv
{{
7
,
int64
(
3
)},
{
9
,
"world"
},
}},
}
}
const
B3_oid
=
5
const
B3_oid
=
6
const
B3_maxkey
=
9999
const
B3_maxkey
=
9999
const
Bv_oid
=
2
var
Bvdict
=
map
[
int64
][]
tVisit
{
1
:
[]
tVisit
{{
2
,
LKeyRange
{
_LKeyMin
,
_LKeyMax
}},
{
342
,
LKeyRange
{
_LKeyMin
,
3
}},
{
344
,
LKeyRange
{
_LKeyMin
,
1
}}},
2
:
[]
tVisit
{{
2
,
LKeyRange
{
_LKeyMin
,
_LKeyMax
}},
{
342
,
LKeyRange
{
_LKeyMin
,
3
}},
{
349
,
LKeyRange
{
2
,
3
}}},
5
:
[]
tVisit
{{
2
,
LKeyRange
{
_LKeyMin
,
_LKeyMax
}},
{
343
,
LKeyRange
{
4
,
_LKeyMax
}},
{
345
,
LKeyRange
{
4
,
_LKeyMax
}},
{
346
,
LKeyRange
{
4
,
6
}}},
8
:
[]
tVisit
{{
2
,
LKeyRange
{
_LKeyMin
,
_LKeyMax
}},
{
343
,
LKeyRange
{
4
,
_LKeyMax
}},
{
345
,
LKeyRange
{
4
,
_LKeyMax
}},
{
347
,
LKeyRange
{
7
,
8
}}},
9
:
[]
tVisit
{{
2
,
LKeyRange
{
_LKeyMin
,
_LKeyMax
}},
{
343
,
LKeyRange
{
4
,
_LKeyMax
}},
{
345
,
LKeyRange
{
4
,
_LKeyMax
}},
{
348
,
LKeyRange
{
9
,
_LKeyMax
}}},
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment