How to use clear_secondary_key method in hypothesis

Best Python code snippet using hypothesis

engine.py

Source:engine.py Github

copy

Full Screen

...670 data = self.new_conjecture_data_for_buffer(prev_data.buffer)671 self.test_function(data)672 if data.status != Status.INTERESTING:673 self.exit_with(ExitReason.flaky)674 self.clear_secondary_key()675 while len(self.shrunk_examples) < len(self.interesting_examples):676 target, example = min(677 [678 (k, v)679 for k, v in self.interesting_examples.items()680 if k not in self.shrunk_examples681 ],682 key=lambda kv: (sort_key(kv[1].buffer), sort_key(repr(kv[0]))),683 )684 self.debug("Shrinking %r" % (target,))685 if not self.settings.report_multiple_bugs:686 # If multi-bug reporting is disabled, we shrink our currently-minimal687 # failure, allowing 'slips' to any bug with a smaller minimal example.688 self.shrink(example, lambda d: d.status == Status.INTERESTING)689 return690 def predicate(d):691 if d.status < Status.INTERESTING:692 return False693 return d.interesting_origin == target694 self.shrink(example, predicate)695 self.shrunk_examples.add(target)696 def clear_secondary_key(self):697 if self.has_existing_examples():698 # If we have any smaller examples in the secondary corpus, now is699 # a good time to try them to see if they work as shrinks. They700 # probably won't, but it's worth a shot and gives us a good701 # opportunity to clear out the database.702 # It's not worth trying the primary corpus because we already703 # tried all of those in the initial phase.704 corpus = sorted(705 self.settings.database.fetch(self.secondary_key), key=sort_key706 )707 for c in corpus:708 primary = {v.buffer for v in self.interesting_examples.values()}709 cap = max(map(sort_key, primary))710 if sort_key(c) > cap:...

Full Screen

Full Screen

Automation Testing Tutorials

Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.

LambdaTest Learning Hubs:

YouTube

You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.

Run hypothesis automation tests on LambdaTest cloud grid

Perform automation testing on 3000+ real desktop and mobile devices online.

Try LambdaTest Now !!

Get 100 minutes of automation test minutes FREE!!

Next-Gen App & Browser Testing Cloud

Was this article helpful?

Helpful

NotHelpful