def setUp(self): GenericArraySourceTest.setUp(self) a = np.zeros((5, 1, 1, 1, 1), dtype=np.uint32) #the data contained in a ranges from [1,5] a[:, 0, 0, 0, 0] = np.arange(0, 5) self.source = RelabelingArraySource(a) #we apply the relabeling i -> i+1 relabeling = np.arange(1, a.max() + 2, dtype=np.uint32) self.source.setRelabeling(relabeling) self.samesource = RelabelingArraySource(a) self.othersource = RelabelingArraySource(np.array(a))
def setUp( self ): a = np.zeros((5,1,1,1,1), dtype=np.uint32) #the data contained in a ranges from [1,5] a[:,0,0,0,0] = np.arange(0,5) self.source = RelabelingArraySource(a) #we apply the relabeling i -> i+1 relabeling = np.arange(1,a.max()+2, dtype=np.uint32) self.source.setRelabeling(relabeling)
class RelabelingArraySourceTest(ut.TestCase, GenericArraySourceTest): def setUp(self): GenericArraySourceTest.setUp(self) a = np.zeros((5, 1, 1, 1, 1), dtype=np.uint32) #the data contained in a ranges from [1,5] a[:, 0, 0, 0, 0] = np.arange(0, 5) self.source = RelabelingArraySource(a) #we apply the relabeling i -> i+1 relabeling = np.arange(1, a.max() + 2, dtype=np.uint32) self.source.setRelabeling(relabeling) self.samesource = RelabelingArraySource(a) self.othersource = RelabelingArraySource(np.array(a)) def testRequestWait(self): slicing = (slice(0, 5), slice(None), slice(None), slice(None), slice(None)) requested = self.source.request(slicing).wait() assert requested.ndim == 5 self.assertTrue( np.all(requested.flatten() == np.arange(1, 6, dtype=np.uint32))) def testSetDirty(self): self.signal_emitted = False self.slicing = (slice(0, 5), slice(None), slice(None), slice(None), slice(None)) def slot(sl): self.signal_emitted = True self.assertTrue(sl == self.slicing) self.source.isDirty.connect(slot) self.source.setDirty(self.slicing) self.source.isDirty.disconnect(slot) self.assertTrue(self.signal_emitted) del self.signal_emitted del self.slicing
class RelabelingArraySourceTest( ut.TestCase, GenericArraySourceTest ): def setUp( self ): GenericArraySourceTest.setUp(self) a = np.zeros((5,1,1,1,1), dtype=np.uint32) #the data contained in a ranges from [1,5] a[:,0,0,0,0] = np.arange(0,5) self.source = RelabelingArraySource(a) #we apply the relabeling i -> i+1 relabeling = np.arange(1,a.max()+2, dtype=np.uint32) self.source.setRelabeling(relabeling) self.samesource = RelabelingArraySource(a) self.othersource = RelabelingArraySource( np.array(a) ) def testRequestWait( self ): slicing = (slice(0,5),slice(None), slice(None), slice(None), slice(None)) requested = self.source.request(slicing).wait() assert requested.ndim == 5 self.assertTrue(np.all(requested.flatten() == np.arange(1,6, dtype=np.uint32))) def testSetDirty( self ): self.signal_emitted = False self.slicing = (slice(0,5),slice(None), slice(None), slice(None), slice(None)) def slot( sl ): self.signal_emitted = True self.assertTrue( sl == self.slicing ) self.source.isDirty.connect(slot) self.source.setDirty( self.slicing ) self.source.isDirty.disconnect(slot) self.assertTrue( self.signal_emitted ) del self.signal_emitted del self.slicing
class RelabelingArraySourceTest( ut.TestCase, GenericArraySourceTest ): def setUp( self ): a = np.zeros((5,1,1,1,1), dtype=np.uint32) #the data contained in a ranges from [1,5] a[:,0,0,0,0] = np.arange(0,5) self.source = RelabelingArraySource(a) #we apply the relabeling i -> i+1 relabeling = np.arange(1,a.max()+2, dtype=np.uint32) self.source.setRelabeling(relabeling) def testRequestWait( self ): slicing = (slice(0,5),slice(None), slice(None), slice(None), slice(None)) requested = self.source.request(slicing).wait() assert requested.ndim == 5 self.assertTrue(np.all(requested.flatten() == np.arange(1,6, dtype=np.uint32))) def testRequestNotify( self ): slicing = (slice(0,5),slice(None), slice(None), slice(None), slice(None)) request = self.source.request(slicing) def check(result, codon): self.assertTrue(np.all(result.flatten() == np.arange(1,6, dtype=np.uint32))) self.assertEqual(codon, "unique") request.notify(check, codon="unique") def testSetDirty( self ): self.signal_emitted = False self.slicing = (slice(0,5),slice(None), slice(None), slice(None), slice(None)) def slot( sl ): self.signal_emitted = True self.assertTrue( sl == self.slicing ) self.source.isDirty.connect(slot) self.source.setDirty( self.slicing ) self.source.isDirty.disconnect(slot) self.assertTrue( self.signal_emitted ) del self.signal_emitted del self.slicing if has_lazyflow: class LazyflowSourceTest( ut.TestCase, GenericArraySourceTest ): def setUp( self ): self.lena = np.load(os.path.join(volumina._testing.__path__[0], 'lena.npy')) self.raw = np.zeros((1,512,512,1,1), dtype=np.uint8) self.raw[0,:,:,0,0] = self.lena g = Graph() op = OpDataProvider(g, self.raw) self.source = LazyflowSource(op.Data, "Data")