rb/lib/selenium/webdriverrb/spec/unit/ and rb/spec/integration/rb/sig/bazel build //rb/...See rb/TESTING.md
WebDriver.logger.warn("actionable: something needs attention", id: :warning_id) WebDriver.logger.info("useful: driver started successfully") WebDriver.logger.debug("diagnostic: request details for debugging")
WebDriver.logger.deprecate( 'OldClass#old_method', 'NewClass#new_method', id: :old_method )
Mark internal APIs with @api private in YARD comments:
# @api private def internal_method end
When changing public API, update corresponding .rbs files in rb/sig/
Use YARD for public APIs:
# Brief description. # # @param name [Type] description # @return [Type] description # @raise [ErrorClass] when condition
Ruby files are formatted with RuboCop (target Ruby 3.2). Run ./go format after changes; it will auto-fix most violations (-a flag).
Key rules enforced (from rb/.rubocop.yml):
{key: val} not { key: val }rubocop-performance, rubocop-rake, rubocop-rspecFatal severity (--fail-level F) blocks CI