Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
CaosDB Crawler
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Iterations
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Locked files
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Code review analytics
Issue analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
caosdb
Software
CaosDB Crawler
Commits
1dc9c926
Commit
1dc9c926
authored
11 months ago
by
Alexander Schlemmer
Browse files
Options
Downloads
Patches
Plain Diff
TST: cleaned up one test in test_sync_graph
parent
f4369e4f
No related branches found
Branches containing commit
No related tags found
Tags containing commit
2 merge requests
!178
FIX: #96 Better error output for crawl.py script.
,
!167
Sync Graph
Pipeline
#51287
passed with warnings
11 months ago
Stage: info
Stage: setup
Stage: cert
Stage: style
Stage: test
Changes
1
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
unittests/test_sync_graph.py
+24
-29
24 additions, 29 deletions
unittests/test_sync_graph.py
with
24 additions
and
29 deletions
unittests/test_sync_graph.py
+
24
−
29
View file @
1dc9c926
...
...
@@ -23,13 +23,16 @@ from unittest.mock import MagicMock, Mock, patch
import
linkahead
as
db
import
pytest
from
caoscrawler.exceptions
import
ImpossibleMergeError
,
MissingIdentifyingProperty
from
test_crawler
import
basic_retrieve_by_name_mock_up
,
mock_get_entity_by
from
caoscrawler.exceptions
import
(
ImpossibleMergeError
,
MissingIdentifyingProperty
)
from
caoscrawler.identifiable
import
Identifiable
from
caoscrawler.identifiable_adapters
import
CaosDBIdentifiableAdapter
from
caoscrawler.sync_graph
import
SyncGraph
from
caoscrawler.sync_node
import
SyncNode
,
parent_in_list
,
property_in_list
from
te
st_crawler
import
basic_retrieve_by_name_mock_up
,
mock_get_entity_by
from
i
te
rtools
import
product
@pytest.fixture
...
...
@@ -66,7 +69,7 @@ def test_create_flat_list():
assert
b
in
flat
c
=
db
.
Record
()
c
.
add_property
(
name
=
"
a
"
,
value
=
a
)
# This would caus recursion if it is not dealt with properly.
# This would caus
e a
recursion
error
if it is not dealt with properly.
a
.
add_property
(
name
=
"
c
"
,
value
=
c
)
flat
=
SyncGraph
.
_create_flat_list
([
c
])
assert
len
(
flat
)
==
3
...
...
@@ -82,41 +85,33 @@ def test_create_reference_mapping():
db
.
RecordType
().
add_property
(
"
a
"
))
ses
=
[
a
,
b
]
mappings
=
SyncGraph
.
_create_reference_mapping
(
ses
)
# test initialization
for
index
,
mapping
in
product
((
0
,
1
),
mappings
):
assert
id
(
ses
[
index
])
in
mapping
(
forward_references
,
backward_references
,
forward_id_references
,
backward_id_references
,
forward_id_referenced_by
,
backward_id_referenced_by
)
=
SyncGraph
.
_create_reference_mapping
(
ses
)
# test initialization
assert
id
(
ses
[
0
])
in
forward_references
assert
id
(
ses
[
1
])
in
forward_references
assert
id
(
ses
[
0
])
in
backward_references
assert
id
(
ses
[
1
])
in
backward_references
assert
id
(
ses
[
0
])
in
forward_id_references
assert
id
(
ses
[
1
])
in
forward_id_references
assert
id
(
ses
[
0
])
in
backward_id_references
assert
id
(
ses
[
1
])
in
backward_id_references
assert
id
(
ses
[
0
])
in
forward_id_referenced_by
assert
id
(
ses
[
1
])
in
forward_id_referenced_by
assert
id
(
ses
[
0
])
in
backward_id_referenced_by
assert
id
(
ses
[
1
])
in
backward_id_referenced_by
backward_id_referenced_by
)
=
mappings
# a has no ref
assert
len
(
forward_references
[
id
(
ses
[
0
]
)])
==
0
assert
backward_references
[
id
(
ses
[
0
]
)]
==
set
([
ses
[
1
]
])
assert
len
(
forward_references
[
id
(
a
)])
==
0
assert
backward_references
[
id
(
a
)]
==
set
([
b
])
# b does
assert
forward_references
[
id
(
ses
[
1
]
)]
==
set
([
ses
[
0
]
])
assert
backward_references
[
id
(
ses
[
1
]
)]
==
set
()
assert
forward_references
[
id
(
b
)]
==
set
([
a
])
assert
backward_references
[
id
(
b
)]
==
set
()
# a has no identifying reference
assert
forward_id_references
[
id
(
ses
[
0
]
)]
==
set
()
assert
backward_references
[
id
(
ses
[
0
]
)]
==
set
([
ses
[
1
]
])
assert
forward_id_references
[
id
(
a
)]
==
set
()
assert
backward_
id_
references
[
id
(
a
)]
==
set
([
b
])
# b has an identifying reference
assert
forward_id_references
[
id
(
ses
[
1
]
)]
==
set
([
ses
[
0
]
])
assert
backward_references
[
id
(
ses
[
1
]
)]
==
set
()
assert
forward_id_references
[
id
(
b
)]
==
set
([
a
])
assert
backward_
id_
references
[
id
(
b
)]
==
set
()
# a has an identifying back reference
assert
forward_id_referenced_by
[
id
(
ses
[
0
]
)]
==
set
()
assert
backward_id_referenced_by
[
id
(
ses
[
0
]
)]
==
set
([
ses
[
1
]
])
assert
forward_id_referenced_by
[
id
(
a
)]
==
set
()
assert
backward_id_referenced_by
[
id
(
a
)]
==
set
([
b
])
# b does not
assert
forward_id_referenced_by
[
id
(
ses
[
1
]
)]
==
set
([
ses
[
0
]
])
assert
backward_id_referenced_by
[
id
(
ses
[
1
]
)]
==
set
()
assert
forward_id_referenced_by
[
id
(
b
)]
==
set
([
a
])
assert
backward_id_referenced_by
[
id
(
b
)]
==
set
()
@patch
(
"
caoscrawler.sync_graph.cached_get_entity_by
"
,
...
...
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment