class Axe::API::Rules
Public Class Methods
new()
click to toggle source
# File lib/axe/api/rules.rb, line 4 def initialize @tags = [] @included = [] @excluded = [] @exclusive = [] end
Public Instance Methods
according_to(*tags)
click to toggle source
# File lib/axe/api/rules.rb, line 11 def according_to(*tags) @tags.concat tags.flatten end
checking(*rules)
click to toggle source
# File lib/axe/api/rules.rb, line 15 def checking(*rules) @included.concat rules.flatten end
checking_only(*rules)
click to toggle source
# File lib/axe/api/rules.rb, line 19 def checking_only(*rules) @exclusive.concat rules.flatten end
skipping(*rules)
click to toggle source
# File lib/axe/api/rules.rb, line 23 def skipping(*rules) @excluded.concat rules.flatten end
to_hash()
click to toggle source
# File lib/axe/api/rules.rb, line 27 def to_hash {}.tap do |options| # TODO warn that tags + exclusive-rules are incompatible options.merge! runOnly: { type: :tag, values: @tags } unless @tags.empty? options.merge! runOnly: { type: :rule, values: @exclusive } unless @exclusive.empty? options.merge! rules: Hash[@included.product([enabled: true]) + @excluded.product([enabled: false])] unless @included.empty? && @excluded.empty? end end