def test_init(self): """Test BeamImage creation.""" # test without file passed b = BeamImage() # test with file passed demo_file = osp.join(osp.dirname(osp.dirname(__file__)), 'pylinac', 'demo_files', 'flatsym', 'flatsym_demo.dcm') b = BeamImage(demo_file)
def test_plot_flatsym(self): """Test that plots work as expected.""" img = BeamImage() img.load_demo_image() img.plot_flatsym() img.plot_flatsym(plane='x') img.plot_flatsym(plane='in')
def AnalyseImage(self): Img=BeamImage(self.CurFile) self.CurFlatX=abs(Img.flatness(plane='both')[0]) self.CurFlatY=abs(Img.flatness(plane='both')[1]) self.CurSymX=abs(Img.symmetry(plane='both')[0]) self.CurSymY=abs(Img.symmetry(plane='both')[1]) self.CurOutput=1.0 self.ColorResults()
def test_symmetry(self): """Test symmetry values""" img = BeamImage() img.load_demo_image() self.assertAlmostEqual(img.symmetry('x'), 3.08, delta=0.05) self.assertAlmostEqual(img.symmetry('x', method='elekta'), 103.1, delta=0.5) self.assertAlmostEqual(img.symmetry('in'), 2.55, delta=0.02) self.assertAlmostEqual(img.symmetry('both')[0], 3.08, delta=0.05) self.assertAlmostEqual(img.symmetry('both')[1], 2.55, delta=0.02) self.assertRaises(ValueError, img.symmetry, method='varen')
def test_flatness(self): """Test flatness values""" img = BeamImage() img.load_demo_image() self.assertAlmostEqual(img.flatness('x'), 1.91, delta=0.03) self.assertAlmostEqual(img.flatness('in'), 1.60, delta=0.03) self.assertAlmostEqual(img.flatness('x', method='elekta'), 103.9, delta=0.1) self.assertAlmostEqual(img.flatness('both')[0], 1.91, delta=0.03) self.assertAlmostEqual(img.flatness('both')[1], 1.60, delta=0.03) self.assertRaises(ValueError, img.flatness, method='varen')
def test_get_profile(self): """Test various inputs for _get_profile().""" b = BeamImage() self.assertRaises(AttributeError, b._get_profile, 'x', 'auto') # test output type self.assertIsInstance(self.img._get_profile('x', 'auto'), SingleProfile) # test axes for axis in ('crossplane', 'cross', 'x', 'inplane', 'in'): self.img._get_profile(axis, 'auto') # self.assertRaises(ValueError, self.img._get_profile, 'notaplane', 'auto') # make sure extraction is along correct axis size_xplane = 1024 prof = self.img._get_profile('x', 'auto') self.assertEqual(prof.values.size, size_xplane) size_yplane = 768 prof = self.img._get_profile('in', 'auto') self.assertEqual(prof.values.size, size_yplane)
def setUp(self): self.img = BeamImage() self.img.load_demo_image()
def test_analyze_wo_img(self): b = BeamImage() self.assertRaises(AttributeError, b.flatness)
def test_run_demo(self): """Test that running the demo works without error.""" BeamImage().run_demo()
def test_img_is_loaded(self): """Test image is loaded property.""" b = BeamImage() self.assertFalse(b._img_is_loaded) b.load_demo_image() self.assertTrue(b._img_is_loaded)
def test_demo_loads_properly(self): """Loading the demo shouldn't raise an error""" b = BeamImage() b.load_demo_image()