示例#1
0
 def test_get_indexer_at_least_n_items(self):
     cases = [
         ((20, ), (slice(10), ), (slice(-10, None), )),
         ((
             3,
             20,
         ), (0, slice(10)), (-1, slice(-10, None))),
         ((
             2,
             10,
         ), (0, slice(10)), (-1, slice(-10, None))),
         ((
             2,
             5,
         ), (slice(2), slice(None)), (slice(-2, None), slice(None))),
         ((
             1,
             2,
             5,
         ), (0, slice(2), slice(None)), (-1, slice(-2, None), slice(None))),
         ((
             2,
             3,
             5,
         ), (0, slice(2), slice(None)), (-1, slice(-2, None), slice(None))),
         ((
             1,
             10,
             1,
         ), (0, slice(10), slice(None)), (-1, slice(-10,
                                                    None), slice(None))),
         ((
             2,
             5,
             1,
         ), (slice(2), slice(None), slice(None)), (slice(-2,
                                                         None), slice(None),
                                                   slice(None))),
         ((
             2,
             5,
             3,
         ), (0, slice(4), slice(None)), (-1, slice(-4, None), slice(None))),
         ((
             2,
             3,
             3,
         ), (slice(2), slice(None), slice(None)), (slice(-2,
                                                         None), slice(None),
                                                   slice(None))),
     ]
     for shape, start_expected, end_expected in cases:
         actual = formatting._get_indexer_at_least_n_items(shape,
                                                           10,
                                                           from_end=False)
         assert start_expected == actual
         actual = formatting._get_indexer_at_least_n_items(shape,
                                                           10,
                                                           from_end=True)
         assert end_expected == actual
示例#2
0
 def test_get_indexer_at_least_n_items(self):
     cases = [
         ((20,), (slice(10),), (slice(-10, None),)),
         ((3, 20,), (0, slice(10)), (-1, slice(-10, None))),
         ((2, 10,), (0, slice(10)), (-1, slice(-10, None))),
         ((2, 5,), (slice(2), slice(None)),
          (slice(-2, None), slice(None))),
         ((1, 2, 5,), (0, slice(2), slice(None)),
          (-1, slice(-2, None), slice(None))),
         ((2, 3, 5,), (0, slice(2), slice(None)),
          (-1, slice(-2, None), slice(None))),
         ((1, 10, 1,), (0, slice(10), slice(None)),
          (-1, slice(-10, None), slice(None))),
         ((2, 5, 1,), (slice(2), slice(None), slice(None)),
          (slice(-2, None), slice(None), slice(None))),
         ((2, 5, 3,), (0, slice(4), slice(None)),
          (-1, slice(-4, None), slice(None))),
         ((2, 3, 3,), (slice(2), slice(None), slice(None)),
          (slice(-2, None), slice(None), slice(None))),
     ]
     for shape, start_expected, end_expected in cases:
         actual = formatting._get_indexer_at_least_n_items(shape, 10,
                                                           from_end=False)
         assert start_expected == actual
         actual = formatting._get_indexer_at_least_n_items(shape, 10,
                                                           from_end=True)
         assert end_expected == actual
示例#3
0
 def test_get_indexer_at_least_n_items(self):
     cases = [
         ((20, ), (slice(10), )),
         ((
             3,
             20,
         ), (0, slice(10))),
         ((
             2,
             10,
         ), (0, slice(10))),
         ((
             2,
             5,
         ), (slice(2), slice(None))),
         ((
             1,
             2,
             5,
         ), (0, slice(2), slice(None))),
         ((
             2,
             3,
             5,
         ), (0, slice(2), slice(None))),
         ((
             1,
             10,
             1,
         ), (0, slice(10), slice(None))),
         ((
             2,
             5,
             1,
         ), (slice(2), slice(None), slice(None))),
         ((
             2,
             5,
             3,
         ), (0, slice(4), slice(None))),
         ((
             2,
             3,
             3,
         ), (slice(2), slice(None), slice(None))),
     ]
     for shape, expected in cases:
         actual = formatting._get_indexer_at_least_n_items(shape, 10)
         self.assertEqual(expected, actual)
示例#4
0
 def test_get_indexer_at_least_n_items(self):
     cases = [
         ((20,), (slice(10),)),
         ((3, 20,), (0, slice(10))),
         ((2, 10,), (0, slice(10))),
         ((2, 5,), (slice(2), slice(None))),
         ((1, 2, 5,), (0, slice(2), slice(None))),
         ((2, 3, 5,), (0, slice(2), slice(None))),
         ((1, 10, 1,), (0, slice(10), slice(None))),
         ((2, 5, 1,), (slice(2), slice(None), slice(None))),
         ((2, 5, 3,), (0, slice(4), slice(None))),
         ((2, 3, 3,), (slice(2), slice(None), slice(None))),
         ]
     for shape, expected in cases:
         actual = formatting._get_indexer_at_least_n_items(shape, 10)
         self.assertEqual(expected, actual)