Skip to content
Snippets Groups Projects
Commit da39a316 authored by Piotr Maślanka's avatar Piotr Maślanka
Browse files

bugfix release

parent 9e524cfc
No related branches found
No related tags found
No related merge requests found
# v2.3.11
* _TBA_
* a bugfix release - update wouldn't
# v2.3.10
......
__version__ = '2.3.11rc1'
__version__ = '2.3.11'
......@@ -2,23 +2,13 @@ import logging
import io
import copy
from satella.coding import for_argument
from satella.instrumentation.metrics.json import get_labels_for_node
from ..json import is_leaf_node
logger = logging.getLogger(__name__)
def get_labels_for_node(tree):
output = {}
for k, v in tree.items():
if k in ('_', '_timestamp'):
continue
if not isinstance(v, (list, dict, tuple)):
output[k] = v
return output
class RendererObject(io.StringIO):
@for_argument(None, copy.copy, None, copy.copy)
......
......@@ -14,6 +14,9 @@ def are_equal(tree1, tree2) -> bool:
tree2.pop('_', None)
tree1.pop('_timestamp', None)
tree2.pop('_timestamp', None)
tree1 = get_labels_for_node(tree1)
tree2 = get_labels_for_node(tree2)
return tree1 == tree2
......@@ -91,3 +94,12 @@ def update(tree1, tree2):
return return_tree
def get_labels_for_node(tree):
output = {}
for k, v in tree.items():
if k in ('_', '_timestamp'):
continue
if not isinstance(v, (list, dict, tuple)):
output[k] = v
return output
\ No newline at end of file
import unittest
import typing as tp
import logging
from satella.instrumentation.metrics.json import update, annotate_every_leaf_node_with_labels
from satella.instrumentation.metrics.json import update, annotate_every_leaf_node_with_labels, \
are_equal
logger = logging.getLogger(__name__)
......@@ -14,6 +15,11 @@ class TestJson(unittest.TestCase):
a4 = {'root': {'metric': [{'period': 1, '_': 20.0}, {'period': 2, '_': 50.0}]}}
self.assertEqual(a3, a4)
def test_are_equal(self):
a = {'root': {'_': {'_': 5, 'sum': {'_': 5}}}}
b = {'root': {'_': {'_': 6, 'sum': {'_': 7}}}}
self.assertEqual({'root': {'_': {'_': 6, 'sum': {'_': 7}}}}, update(a, b))
def test_update_2(self):
a = {'root': {'_': [{'a': 5, "_": 3}], 'sum': [{"a": 5, "_": 3}]}}
b = {'root': {'_': [{'a': 5, "_": 7}], 'sum': [{"a": 3, "_": 8}]}}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment