Class: Crawlscope::Task
- Inherits:
-
Object
- Object
- Crawlscope::Task
- Defined in:
- lib/crawlscope/task.rb
Instance Method Summary collapse
-
#initialize(configuration: Crawlscope.configuration, reporter: Reporter.new(io: configuration.output)) ⇒ Task
constructor
A new instance of Task.
- #validate(base_url: nil, sitemap_path: nil, rule_names: nil) ⇒ Object
- #validate_ldjson(urls:, debug: false, renderer: @configuration.renderer, timeout_seconds: @configuration.timeout_seconds, report_path: nil, summary: false) ⇒ Object
Constructor Details
#initialize(configuration: Crawlscope.configuration, reporter: Reporter.new(io: configuration.output)) ⇒ Task
Returns a new instance of Task.
7 8 9 10 |
# File 'lib/crawlscope/task.rb', line 7 def initialize(configuration: Crawlscope.configuration, reporter: Reporter.new(io: configuration.output)) @configuration = configuration @reporter = reporter end |
Instance Method Details
#validate(base_url: nil, sitemap_path: nil, rule_names: nil) ⇒ Object
12 13 14 15 16 17 18 19 20 21 22 23 |
# File 'lib/crawlscope/task.rb', line 12 def validate(base_url: nil, sitemap_path: nil, rule_names: nil) resolved_base_url = base_url || default_base_url audit = @configuration.audit( base_url: resolved_base_url, sitemap_path: sitemap_path || default_sitemap_path(base_url: resolved_base_url), rule_names: rule_names ) result = audit.call @reporter.report(result) result end |
#validate_ldjson(urls:, debug: false, renderer: @configuration.renderer, timeout_seconds: @configuration.timeout_seconds, report_path: nil, summary: false) ⇒ Object
25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
# File 'lib/crawlscope/task.rb', line 25 def validate_ldjson(urls:, debug: false, renderer: @configuration.renderer, timeout_seconds: @configuration.timeout_seconds, report_path: nil, summary: false) audit = StructuredData::Audit.new( browser_factory: @configuration.browser_factory, network_idle_timeout_seconds: @configuration.network_idle_timeout_seconds, renderer: renderer, schema_registry: @configuration.schema_registry, scroll_page: @configuration.scroll_page?, timeout_seconds: timeout_seconds ) result = audit.call(urls: urls) report_ldjson_result(result, debug: debug, renderer: renderer) StructuredData::Writer.new(path: report_path).write(result) if report_path StructuredData::Reporter.new(io: @configuration.output, report_path: report_path).report(result) if summary result end |