def cloneamount(self, cloneamount): params = pm.check_parameters(icount=self._icount, clones=self._clones, cloneamount=cloneamount, siderange=self._siderange, radrange=self._radrange, sig=self._sig) self._icount = params[0] self._clones = params[1] self._cloneamount = params[2] self._siderange = params[3] self._radrange = params[4] self._sig = params[5] self._finalcount = (self._icount - self._clones) + (self._clones * self._cloneamount) # if self._finalcount <= self._clones * self._cloneamount and all(x >= 0 for x in (self._icount, self._clones, # self._cloneamount)): # raise ValueError('Error: Total Output Polgyons < Total Desired Clones!') self.polynames = '{0}, Generate Polygons with nrfinal method'.format(None)
def __init__(self, icount=10, clones=2, cloneamount=2, siderange=(3, 10), radrange=(1, 5), sig=1): params = pm.check_parameters(icount, clones, cloneamount, siderange, radrange, sig) self._icount = params[0] self._clones = params[1] self._cloneamount = params[2] self._siderange = params[3] self._radrange = params[4] self._sig = params[5] self._finalcount = (self._icount - self._clones) + (self._clones * self._cloneamount) if self._finalcount <= clones * cloneamount and all(x >= 0 for x in (icount, clones, cloneamount)): raise ValueError('Error: Total Output Polgyons < Total Desired Clones!') self.polynames = '{0}, Generate Polygons with nrfinal method'.format(None)
def test_check_parameter_self_correction(): assert pm.check_parameters(sig=0) == (10, 2, 2, (3, 13), (1, 5), 1)
def test_check_parameters_side_range_integer_exception(): with raises(Exception): pm.check_parameters(siderange=(4.0, 10.0))
def test_check_paramters_icount_clones_cloneamount_integer_exception(): with raises(Exception): pm.check_parameters(icount=4.3, clones=2.2, cloneamount=4.5)
def test_check_parameters_positive_radius_range_start_exception(): with raises(Exception): pm.check_parameters(radrange=(-1, 1))
def test_check_parameters_3_side_range_start_exception(): with raises(Exception): pm.check_parameters(siderange=(1, 10))
def test_check_parameters_sig_adjusted_radius_range_exception(): with raises(Exception): pm.check_parameters(radrange=(2, 1), sig=0)
def test_check_parameters_negative_radius_exception(): with raises(Exception): pm.check_parameters(radrange=(10, 1))
def test_check_parameters_sig_float_exception(): with raises(Exception): pm.check_parameters(sig=.1)
def test_check_parameters_default_finalcount(): returnvalues = pm.check_parameters() finalcount = (returnvalues[0] - returnvalues[1]) + (returnvalues[1] * returnvalues[2]) assert finalcount == 12
def test_check_parameters_callable(): assert (pm.check_parameters())