def test_dot_keys_none(): save = OrderedDict([ ('a', OrderedDict([ ('b', OrderedDict([ ('c', OrderedDict([ ('e', None), ('f', 'bar'), ]), ), ('g', 'sna'), ]), ), ('h', None), ]), ), ('i', None), ]) save = mongo._dot_keys(save) expected = OrderedDict([ ('a.b.c.f', 'bar'), ('a.b.g', 'sna'), ]) eq(save, expected)
def test_dot_keys_multiple(): save = OrderedDict([ ('a', OrderedDict([ ('b', OrderedDict([ ('c', OrderedDict([ ('e', 'foo'), ('f', 'bar'), ]), ), ('g', 'sna'), ]), ), ('h', 'fi'), ]), ), ('i', 'foo'), ]) save = mongo._dot_keys(save) expected = OrderedDict([ ('a.b.c.e', 'foo'), ('a.b.c.f', 'bar'), ('a.b.g', 'sna'), ('a.h', 'fi'), ('i', 'foo'), ]) eq(save, expected)
def test_dot_keys_already_dotted(): save = OrderedDict([ ('a.x', OrderedDict([ ('b', 'foo'), ('c.y', 'bar'), ]), ), ('e', 'sna'), ]) save = mongo._dot_keys(save) expected = OrderedDict([ ('a.x.b', 'foo'), ('a.x.c.y', 'bar'), ('e', 'sna'), ]) eq(save, expected)
def test_dot_keys_simple(): save = OrderedDict([ ('a', OrderedDict([ ('b', 'foo'), ('c', 'bar'), ]), ), ('e', 'sna'), ]) save = mongo._dot_keys(save) expected = OrderedDict([ ('a.b', 'foo'), ('a.c', 'bar'), ('e', 'sna'), ]) eq(save, expected)