def test_inner_merge_iter(self): inner = merge(iter(dogs), iter(cats), 'inner', 'name') assert len(inner) == 2 assert inner[0].name == 'gatsby' assert inner[0].meow == 'rowr' assert inner[0].weight == 16 assert inner[0].right.weight == 15
def test_merge_naming(self): inner = merge(dogs, cats, 'inner', 'name', left_as='dog', right_as='cat') assert inner[0].name == 'gatsby' assert inner[0].cat.name == 'gatsby' assert inner[0].dog.name == 'gatsby' assert inner[0].weight == 16 assert inner[0].cat.weight == 15 assert inner[0].dog.weight == 16
def test_outer_merge(self): outer = merge(dogs, cats, 'outer', 'name') assert len(outer) == len(dogs) + len(cats) - 1
def test_right_merge(self): right = merge(dogs, cats, 'right', 'name') assert len(right) == len(cats) assert right[-1].woof == 'Rruff!'
def test_left_merge(self): left = merge(dogs, cats, 'left', 'name') assert len(left) == len(dogs) + 1 assert left[0].meow == 'rowr'