Skip to content

Commit ed94512

Browse files
authored
Merge pull request #211 from rubycdp/cliver-master
Use cliver from github for tests
2 parents c0a8176 + bbe2fad commit ed94512

6 files changed

Lines changed: 21 additions & 23 deletions

File tree

.github/gemfiles/websocket-driver-0.6.x.gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
source "https://rubygems.org"
44

55
gem "websocket-driver", "~> 0.6.5"
6+
gem "cliver", github: "route/cliver", branch: "develop"
67

78
gemspec path: "../../"

.github/gemfiles/websocket-driver-0.7.x.gemfile

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,6 @@
33
source "https://rubygems.org"
44

55
gem "websocket-driver", "~> 0.7.1"
6+
gem "cliver", github: "route/cliver", branch: "develop"
67

78
gemspec path: "../../"

.github/workflows/tests.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,11 @@ jobs:
3030
ruby-version: ${{ matrix.ruby }}
3131
bundler-cache: true
3232

33+
- name: Setup Chrome
34+
uses: browser-actions/setup-chrome@latest
35+
with:
36+
chrome-version: stable
37+
3338
- run: mkdir -p /tmp/ferrum
3439

3540
- name: Run tests

lib/ferrum/browser/options/chrome.rb

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,15 +43,14 @@ class Chrome < Base
4343
}.freeze
4444

4545
MAC_BIN_PATH = [
46-
"/Applications/Chromium.app/Contents/MacOS/Chromium",
47-
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome"
46+
"/Applications/Google Chrome.app/Contents/MacOS/Google Chrome",
47+
"/Applications/Chromium.app/Contents/MacOS/Chromium"
4848
].freeze
49-
LINUX_BIN_PATH = %w[chromium google-chrome-unstable google-chrome-beta
50-
google-chrome chrome chromium-browser
51-
google-chrome-stable].freeze
49+
LINUX_BIN_PATH = %w[chrome google-chrome google-chrome-stable google-chrome-beta
50+
chromium chromium-browser google-chrome-unstable].freeze
5251
WINDOWS_BIN_PATH = [
53-
"C:/Program Files/Google/Chrome Dev/Application/chrome.exe",
54-
"C:/Program Files/Google/Chrome/Application/chrome.exe"
52+
"C:/Program Files/Google/Chrome/Application/chrome.exe",
53+
"C:/Program Files/Google/Chrome Dev/Application/chrome.exe"
5554
].freeze
5655

5756
def merge_required(flags, options, user_data_dir)

lib/ferrum/browser/process.rb

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,8 @@ def self.directory_remover(path)
6161
end
6262

6363
def initialize(options)
64+
@pid = @xvfb = @user_data_dir = nil
65+
6466
if options[:url]
6567
url = URI.join(options[:url].to_s, "/json/version")
6668
response = JSON.parse(::Net::HTTP.get(url))
@@ -69,7 +71,6 @@ def initialize(options)
6971
return
7072
end
7173

72-
@pid = @xvfb = @user_data_dir = nil
7374
@logger = options[:logger]
7475
@process_timeout = options.fetch(:process_timeout, PROCESS_TIMEOUT)
7576

spec/spec_helper.rb

Lines changed: 6 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -18,20 +18,11 @@
1818
puts ""
1919

2020
RSpec.configure do |config|
21+
ferrum_logger = nil
2122
config.include_context "Global helpers"
2223

2324
config.before(:suite) do
2425
@server = Ferrum::Server.boot
25-
26-
begin
27-
browser = Ferrum::Browser.new
28-
puts "Browser: #{browser.process.browser_version}"
29-
puts "Protocol: #{browser.process.protocol_version}"
30-
puts "V8: #{browser.process.v8_version}"
31-
puts "Webkit: #{browser.process.webkit_version}"
32-
ensure
33-
browser&.quit
34-
end
3526
end
3627

3728
config.before(:all) do
@@ -40,8 +31,8 @@
4031
options.merge!(headless: false) if ENV["HEADLESS"] == "false"
4132

4233
if ENV["CI"]
43-
FERRUM_LOGGER = StringIO.new
44-
options.merge!(logger: FERRUM_LOGGER)
34+
ferrum_logger = StringIO.new
35+
options.merge!(logger: ferrum_logger)
4536
end
4637

4738
@browser = Ferrum::Browser.new(**options)
@@ -55,8 +46,8 @@
5546
server&.wait_for_pending_requests
5647

5748
if ENV["CI"]
58-
FERRUM_LOGGER.truncate(0)
59-
FERRUM_LOGGER.rewind
49+
ferrum_logger.truncate(0)
50+
ferrum_logger.rewind
6051
end
6152
end
6253

@@ -86,7 +77,7 @@ def save_exception_screenshot(browser, filename, line_number, timestamp)
8677

8778
def save_exception_log(_browser, filename, line_number, timestamp)
8879
log_name = "logfile-#{filename}-#{line_number}-#{timestamp}.txt"
89-
File.open("/tmp/ferrum/#{log_name}", "wb") { |file| file.write(FERRUM_LOGGER.string) }
80+
File.open("/tmp/ferrum/#{log_name}", "wb") { |file| file.write(ferrum_logger.string) }
9081
rescue StandardError => e
9182
puts "#{e.class}: #{e.message}"
9283
end

0 commit comments

Comments
 (0)