Code Duplication    Length = 21-21 lines in 2 locations

tests/test_keypath_dict.py 2 locations

@@ 781-801 (lines=21) @@
778
        val = b.pop(['a', 'b'])
779
        self.assertEqual(val, 1)
780
781
    def test_pop_with_keys_list_and_no_keypath_separator(self):
782
        d = {
783
            'a': {
784
                'b': 1,
785
            }
786
        }
787
        b = KeypathDict(d, keypath_separator=None)
788
789
        val = b.pop(['a', 'c'], 2)
790
        self.assertEqual(val, 2)
791
        with self.assertRaises(KeyError):
792
            val = b.pop(['a', 'c'])
793
        self.assertEqual(b.get('a'), { 'b': 1 })
794
795
        val = b.pop(['x', 'y'], 1)
796
        self.assertEqual(val, 1)
797
        with self.assertRaises(KeyError):
798
            val = b.pop(['x', 'y'])
799
800
        val = b.pop(['a', 'b'])
801
        self.assertEqual(val, 1)
802
803
    def test_setdefault_with_1_key(self):
804
        d = {
@@ 759-779 (lines=21) @@
756
        with self.assertRaises(KeyError):
757
            val = b.pop('x.y')
758
759
    def test_pop_with_keys_list(self):
760
        d = {
761
            'a': {
762
                'b': 1,
763
            }
764
        }
765
        b = KeypathDict(d)
766
767
        val = b.pop(['a', 'c'], 2)
768
        self.assertEqual(val, 2)
769
        with self.assertRaises(KeyError):
770
            val = b.pop(['a', 'c'])
771
        self.assertEqual(b.get('a'), { 'b': 1 })
772
773
        val = b.pop(['x', 'y'], 1)
774
        self.assertEqual(val, 1)
775
        with self.assertRaises(KeyError):
776
            val = b.pop(['x', 'y'])
777
778
        val = b.pop(['a', 'b'])
779
        self.assertEqual(val, 1)
780
781
    def test_pop_with_keys_list_and_no_keypath_separator(self):
782
        d = {