summaryrefslogtreecommitdiff
path: root/vendor/bandit/bandit/run_policies/bandit_run_policy.h
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/bandit/bandit/run_policies/bandit_run_policy.h')
-rw-r--r--vendor/bandit/bandit/run_policies/bandit_run_policy.h10
1 files changed, 8 insertions, 2 deletions
diff --git a/vendor/bandit/bandit/run_policies/bandit_run_policy.h b/vendor/bandit/bandit/run_policies/bandit_run_policy.h
index 6e150d8d..4a5c0808 100644
--- a/vendor/bandit/bandit/run_policies/bandit_run_policy.h
+++ b/vendor/bandit/bandit/run_policies/bandit_run_policy.h
@@ -5,12 +5,17 @@ namespace bandit { namespace detail {
struct bandit_run_policy : public run_policy
{
- bandit_run_policy(const char* skip_pattern, const char* only_pattern)
- : skip_pattern_(skip_pattern), only_pattern_(only_pattern)
+ bandit_run_policy(const char* skip_pattern, const char* only_pattern, bool break_on_failure)
+ : run_policy(), skip_pattern_(skip_pattern), only_pattern_(only_pattern), break_on_failure_(break_on_failure)
{}
bool should_run(const char* it_name, const contextstack_t& contexts) const
{
+ if(break_on_failure_ && has_encountered_failure())
+ {
+ return false;
+ }
+
//
// Never run if a context has been marked as skip
// using 'describe_skip'
@@ -148,6 +153,7 @@ namespace bandit { namespace detail {
private:
std::string skip_pattern_;
std::string only_pattern_;
+ bool break_on_failure_;
};
}}