Module: ArchUnit::Testing
- Defined in:
- lib/archunit/testing.rb,
lib/archunit/testing/color_utils.rb,
lib/archunit/testing/test_result.rb,
lib/archunit/testing/assert_passes.rb,
lib/archunit/testing/rspec_adapter.rb,
lib/archunit/testing/result_factory.rb,
lib/archunit/testing/test_violation.rb,
lib/archunit/testing/minitest_adapter.rb,
lib/archunit/testing/assertion_failure.rb,
lib/archunit/testing/violation_factory.rb,
lib/archunit/testing/layer_violation_formatter.rb,
lib/archunit/testing/slice_violation_formatter.rb,
lib/archunit/testing/metric_violation_formatter.rb
Overview
Violation presentation and test-framework integration.
Defined Under Namespace
Modules: LayerViolationFormatter, MetricViolationFormatter, MinitestAdapter, MinitestAssertions, RSpecAdapter, RSpecMatchers, SliceViolationFormatter
Classes: AssertionFailure, ColorUtils, RSpecPassMatcher, ResultFactory, TestResult, TestViolation, ViolationFactory
Class Method Summary
collapse
Class Method Details
.assert_passes(rule, options = nil) ⇒ Object
13
14
15
16
17
18
|
# File 'lib/archunit/testing/assert_passes.rb', line 13
def assert_passes(rule, options = nil)
result = result_for(rule, options)
return if result.passed?
raise AssertionFailure, result
end
|
17
18
19
|
# File 'lib/archunit/testing.rb', line 17
def format_violations(violations, color: nil)
ResultFactory.from_violations(violations, color:).message
end
|
.result_for(rule, options = nil, expected_to_pass: true) ⇒ Object
21
22
23
24
25
26
27
28
29
30
|
# File 'lib/archunit/testing.rb', line 21
def result_for(rule, options = nil, expected_to_pass: true)
unless rule.is_a?(Common::FluentApi::Checkable)
raise ArgumentError, 'rule must implement Checkable'
end
violations = rule.check(options)
return ResultFactory.from_violations(violations) if expected_to_pass
ResultFactory.from_violations(violations, expected_to_pass: false)
end
|