def steps(self): strategies = [] for rule in self.rules(): converted_arguments = {} valid = True if rule.precondition is not None and not rule.precondition(self): continue for k, v in rule.arguments.items(): if isinstance(v, Bundle): bundle = self.bundle(v.name) if not bundle: valid = False break else: v = SimpleSampledFromStrategy(bundle) converted_arguments[k] = v if valid: strategies.append( TupleStrategy((JustStrategy(rule), FixedKeysDictStrategy(converted_arguments)), tuple)) if not strategies: raise InvalidDefinition(u'No progress can be made from state %r' % (self, )) return one_of_strategies(strategies)
def steps(self): strategies = [] for rule in self.rules(): converted_arguments = {} valid = True if rule.precondition is not None and not rule.precondition(self): continue for k, v in rule.arguments.items(): if isinstance(v, Bundle): bundle = self.bundle(v.name) if not bundle: valid = False break else: v = SimpleSampledFromStrategy(bundle) converted_arguments[k] = v if valid: strategies.append(TupleStrategy(( JustStrategy(rule), FixedKeysDictStrategy(converted_arguments) ), tuple)) if not strategies: raise InvalidDefinition( u'No progress can be made from state %r' % (self,) ) return one_of_strategies(strategies)
def __init__(self, strategies, average_length=50.0): SearchStrategy.__init__(self) self.average_length = average_length strategies = tuple(strategies) if strategies: self.element_strategy = one_of_strategies(strategies) else: self.element_strategy = None self.size_upper_bound = 1 self.size_lower_bound = 1
def __init__( self, strategies, average_length=50.0, min_size=0, max_size=float('inf') ): SearchStrategy.__init__(self) assert average_length > 0 self.average_length = average_length strategies = tuple(strategies) self.min_size = min_size or 0 self.max_size = max_size or float('inf') self.element_strategy = one_of_strategies(strategies)
def __init__(self, strategies, average_length=50.0, min_size=0, max_size=float("inf")): SearchStrategy.__init__(self) assert average_length > 0 self.average_length = average_length strategies = tuple(strategies) self.min_size = min_size or 0 self.max_size = max_size if strategies: self.element_strategy = one_of_strategies(strategies) else: self.element_strategy = None self.template_upper_bound = 1
def __init__( self, strategies, average_length=50.0, min_size=0, max_size=float(u'inf') ): SearchStrategy.__init__(self) assert average_length > 0 self.average_length = average_length strategies = tuple(strategies) self.min_size = min_size or 0 self.max_size = max_size if strategies: self.element_strategy = one_of_strategies(strategies) else: self.element_strategy = None self.template_upper_bound = 1
def __init__(self, strategies, average_length=50.0): strategies = list(strategies) if strategies: strategies.sort(key=show) self.element_strategy = one_of_strategies(strategies) if self.element_strategy.size_upper_bound < 32: self.size_lower_bound = ( 2 ** self.element_strategy.size_lower_bound) self.size_upper_bound = ( 2 ** self.element_strategy.size_upper_bound) else: self.size_upper_bound = float('inf') self.size_lower_bound = float('inf') else: self.element_strategy = None self.size_lower_bound = 1 self.size_upper_bound = 1 self.average_length = average_length
def __init__(self, strategies, average_length=50.0): strategies = list(strategies) if strategies: strategies.sort(key=show) self.element_strategy = one_of_strategies(strategies) if self.element_strategy.size_upper_bound < 32: self.size_lower_bound = ( 2**self.element_strategy.size_lower_bound) self.size_upper_bound = ( 2**self.element_strategy.size_upper_bound) else: self.size_upper_bound = float('inf') self.size_lower_bound = float('inf') else: self.element_strategy = None self.size_lower_bound = 1 self.size_upper_bound = 1 self.average_length = average_length
def test_joining_zero_strategies_fails(): with pytest.raises(ValueError): one_of_strategies(())