bbc / wraith

Wraith — A responsive screenshot comparison tool

Home Page:http://bbc-news.github.io/wraith/

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

C:\Wraith>wraith info Invalid drive specification.

incedo-mob-preetisolanki opened this issue · comments


Reporting a problem? Please describe the issue above, and complete the following checklist so that we can help you more quickly.

Issue checklist:

  • I have validated my config file against YAML Validator to make sure it is valid YAML.

  • I have run the wraith info command and pasted the output below:

Invalid drive specification.
C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:56:in run_command_safely': undefined method chomp' for nil:NilClass (NoMethodError)
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:37:in list_debug_information' from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/wraith-4.0.1/lib/wraith/cli.rb:169:in info'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/thor-0.19.4/lib/thor/command.rb:27:in run' from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/thor-0.19.4/lib/thor/invocation.rb:126:in invoke_command'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/thor-0.19.4/lib/thor.rb:369:in dispatch' from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/thor-0.19.4/lib/thor/base.rb:444:in start'
from C:/Ruby24-x64/lib/ruby/gems/2.4.0/gems/wraith-4.0.1/bin/wraith:5:in <top (required)>' from C:/Ruby24-x64/bin/wraith:22:in load'
from C:/Ruby24-x64/bin/wraith:22:in `

'

  • I have run the command in verbose mode (by adding verbose: true to my config) and pasted the output below:

  • I have pasted the contents of my config file below:

browser: "phantomjs"

# (required) The domains to take screenshots of.
domains:
  current:  "https://incedoinc.com"
  new:      "http://14.141.217.200"

# (required) The paths to capture. All paths should exist for both of the domains specified above.
paths:
  incedoinc.com:     /
  workatincedo:    /workatincedo
  

# (required) Screen widths (and optional height) to resize the browser to before taking the screenshot.
screen_widths:
  - 320
  - 600x768
  - 768
  - 1024
  - 1280

# (optional) JavaScript file to execute before taking screenshot of every path. Default: nil
before_capture: 'javascript/wait--phantom.js'

# (required) The directory that your screenshots will be stored in
directory: 'shots'

# (required) Amount of fuzz ImageMagick will use when comparing images. A higher fuzz makes the comparison less strict.
fuzz: '20%'

# (optional) The maximum acceptable level of difference (in %) between two images before Wraith reports a failure. Default: 0
threshold: 5

# (optional) Specify the template (and generated thumbnail sizes) for the gallery output.
gallery:
  template: 'slideshow_template' # Examples: 'basic_template' (default), 'slideshow_template'
  thumb_width:  200
  thumb_height: 200

# (optional) Choose which results are displayed in the gallery, and in what order. Default: alphanumeric
# Options:
#   alphanumeric - all paths (with or without a difference) are shown, sorted by path
#   diffs_first - all paths (with or without a difference) are shown, sorted by difference size (largest first)
#   diffs_only - only paths with a difference are shown, sorted by difference size (largest first)
# Note: different screen widths are always grouped together.
mode: diffs_first

commented

I'm also having this issue.

I'm using:

  • Windows 7
  • Wraith v. 4.0.1
  • Phantomjs v. 1.9.8

I think my output is the same, but in case it helps, here it is:

  • I have validated my config file against YAML Validator to make sure it is valid YAML.
  • I have run the wraith info command and pasted the output below:
Invalid drive specification.
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:56:in `run_command_safely': undefined method `chomp' for nil:NilClass (NoMethodError)
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:37:in `list_debug_information'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/cli.rb:169:in `info'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/bin/wraith:5:in `<top (required)>'
        from C:/Ruby23-x64/bin/wraith:23:in `load'
        from C:/Ruby23-x64/bin/wraith:23:in `<main>'
  • I have run the command in verbose mode (by adding verbose: true to my config) and pasted the output below:
Invalid drive specification.
C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:56:in `run_command_safely': undefined method `chomp' for nil:NilClass (NoMethodError)
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:37:in `list_debug_information'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/validate.rb:14:in `validate'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/cli.rb:145:in `block in history'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/helpers/utilities.rb:4:in `within_acceptable_limits'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/lib/wraith/cli.rb:144:in `history'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/command.rb:27:in `run'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/invocation.rb:126:in `invoke_command'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor.rb:359:in `dispatch'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/thor-0.19.1/lib/thor/base.rb:440:in `start'
        from C:/Ruby23-x64/lib/ruby/gems/2.3.0/gems/wraith-4.0.1/bin/wraith:5:in `<top (required)>'
        from C:/Ruby23-x64/bin/wraith:23:in `load'
        from C:/Ruby23-x64/bin/wraith:23:in `<main>'
  • I have pasted the contents of my config file below:
browser: "phantomjs"

domains:
  mypath: "https://www.google.com/"

paths:
  home: /

before_capture: 'javascript/wait--phantom.js'

screen_widths:
  - 360
  - 480
  - 768
  - 992
  - 1200

resize_or_reload: 'resize'

history_dir: 'shots_base'

directory: 'shots'

fuzz: '20%'

threshold: 5

gallery:
  template: 'slideshow_template' # Examples: 'basic_template' (default), 'slideshow_template'
  thumb_width:  200
  thumb_height: 200

mode: diffs_first

verbose: true

highlight_color: red

phantomjs_options: ''
commented

If I set verbose: false, I am able to execute wraith history configs\history.yaml

I guess there's a problem in the code that prints the debug info?