Ejemplo n.º 1
0
    def test_array_getitem_a(self) -> None:

        a = np.array(('a', 'b', 'c', 'd'), object)
        a.flags.writeable = False

        ag1 = ArrayGO(a)
        # insure no copy for immutable
        self.assertEqual(mloc(ag1.values), mloc(a))

        ag1.append('b')

        post = ag1[ag1.values == 'b']

        self.assertEqual(post.tolist(), ['b', 'b'])
        self.assertEqual(ag1[[2,1,1,1]].tolist(),
                ['c', 'b', 'b', 'b'])
Ejemplo n.º 2
0
    def test_array_copy_a(self) -> None:

        ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), dtype=object))
        ag1.append('e')

        ag2 = ag1.copy()
        ag1.extend(('f', 'g'))

        self.assertEqual(ag1.values.tolist(),
                ['a', 'b', 'c', 'd', 'e', 'f', 'g'])

        self.assertEqual(ag2.values.tolist(),
                ['a', 'b', 'c', 'd', 'e'])
Ejemplo n.º 3
0
    def test_array_append_b(self) -> None:

        ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), object))

        self.assertEqual([x for x in ag1],
            ['a', 'b', 'c', 'd'])

        self.assertEqual(ag1.values.tolist(),
                ['a', 'b', 'c', 'd'])


        ag1.append('e')
        ag1.extend(('f', 'g'))

        self.assertEqual(ag1.values.tolist(),
            ['a', 'b', 'c', 'd', 'e', 'f', 'g'])

        self.assertEqual([x for x in ag1],
            ['a', 'b', 'c', 'd', 'e', 'f', 'g'])
Ejemplo n.º 4
0
    def test_array_len_a(self) -> None:

        ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), object))
        ag1.append('e')

        self.assertEqual(len(ag1), 5)
Ejemplo n.º 5
0
 def test_array_deepcopy_a(self) -> None:
     ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), dtype=object))
     ag1.append('e')
     ag1.extend(('f', 'g'))
     ag2 = copy.deepcopy(ag1)
     self.assertEqual(ag1.values.tolist(), ag2.values.tolist()) #type: ignore
Ejemplo n.º 6
0
 def test_array_init_a(self) -> None:
     with self.assertRaises(NotImplementedError):
         _ = ArrayGO(np.array((3, 4, 5)))
Ejemplo n.º 7
0
 def test_array_pickle_a(self) -> None:
     ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), object))
     msg = pickle.dumps(ag1)
     ag2 = pickle.loads(msg)
     self.assertEqual(ag1.values.tolist(), ag2.values.tolist())
Ejemplo n.º 8
0
 def test_array_getnewargs_a(self) -> None:
     ag1 = ArrayGO(np.array(('a', 'b', 'c', 'd'), object))
     self.assertEqual(
             ag1.__getnewargs__()[0].tolist(),
             ag1.values.tolist(),
             )