File: test_core_DataChunk.py

package info (click to toggle)
hdmf 3.14.5-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid
  • size: 19,372 kB
  • sloc: python: 34,738; makefile: 303; sh: 35
file content (35 lines) | stat: -rw-r--r-- 1,154 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
from copy import copy, deepcopy

import numpy as np
from hdmf.data_utils import DataChunk
from hdmf.testing import TestCase


class DataChunkTests(TestCase):

    def setUp(self):
        pass

    def tearDown(self):
        pass

    def test_datachunk_copy(self):
        obj = DataChunk(data=np.arange(3), selection=np.s_[0:3])
        obj_copy = copy(obj)
        self.assertNotEqual(id(obj), id(obj_copy))
        self.assertEqual(id(obj.data), id(obj_copy.data))
        self.assertEqual(id(obj.selection), id(obj_copy.selection))

    def test_datachunk_deepcopy(self):
        obj = DataChunk(data=np.arange(3), selection=np.s_[0:3])
        obj_copy = deepcopy(obj)
        self.assertNotEqual(id(obj), id(obj_copy))
        self.assertNotEqual(id(obj.data), id(obj_copy.data))
        self.assertNotEqual(id(obj.selection), id(obj_copy.selection))

    def test_datachunk_astype(self):
        obj = DataChunk(data=np.arange(3), selection=np.s_[0:3])
        newtype = np.dtype('int16')
        obj_astype = obj.astype(newtype)
        self.assertNotEqual(id(obj), id(obj_astype))
        self.assertEqual(obj_astype.dtype, np.dtype(newtype))