Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

IOError #41

Closed
tansaku opened this issue May 6, 2015 · 8 comments
Closed

IOError #41

tansaku opened this issue May 6, 2015 · 8 comments

Comments

@tansaku
Copy link

tansaku commented May 6, 2015

I'm getting an odd IOError when running simplecov with feature tests, but not just on specs:

/Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-html-0.9.0/lib/simplecov-html.rb:21:in `write': not opened for writing (IOError)
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-html-0.9.0/lib/simplecov-html.rb:21:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-html-0.9.0/lib/simplecov-html.rb:21:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-html-0.9.0/lib/simplecov-html.rb:21:in `format'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-0.9.2/lib/simplecov/result.rb:46:in `format!'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-0.9.2/lib/simplecov/configuration.rb:158:in `block in at_exit'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-0.9.2/lib/simplecov/defaults.rb:54:in `call'
    from /Users/tansaku/.rvm/gems/ruby-2.2.2/gems/simplecov-0.9.2/lib/simplecov/defaults.rb:54:in `block in <top (required)>'

Our project has features in a features directory, straight off the root, and specs in a spec directory also straight off root. I get the above running "rspec features" but don't get it when running "rspec" or "rspec spec".

Everything still seems to work in terms of the simplecov output, but gets this error thrown as well ...

@tansaku
Copy link
Author

tansaku commented May 6, 2015

I tried upgrading simplecov to the latest version, but same issue:

/Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `write': not opened for writing (IOError)
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `format'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/result.rb:46:in `format!'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/configuration.rb:159:in `block in at_exit'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/defaults.rb:60:in `call'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/defaults.rb:60:in `block in <top (required)>'

@tansaku
Copy link
Author

tansaku commented May 6, 2015

I also tried moving the feature folder into the spec folder, but again same error

@tansaku
Copy link
Author

tansaku commented May 6, 2015

and I still get it from running a single feature

→ rspec features/login_spec.rb 

Logging in and out
  logged in
  logout

Finished in 0.29282 seconds (files took 1 second to load)
2 examples, 0 failures
/Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `write': not opened for writing (IOError)
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `puts'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25:in `format'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/result.rb:46:in `format!'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/configuration.rb:159:in `block in at_exit'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/defaults.rb:60:in `call'
    from /Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-0.10.0/lib/simplecov/defaults.rb:60:in `block in <top (required)>'

@tansaku
Copy link
Author

tansaku commented May 6, 2015

I can totally imagine that this is due to something weird in our setup - just wondering if anyone else has ever seen the same ...

@colszowka
Copy link
Collaborator

This should not be related to the location of your spec/feature folders, it seems simplecov is failing to write it's coverage report. Can you try to delete the ./coverage directory and try again?

@tansaku
Copy link
Author

tansaku commented May 6, 2015

ah, I think we just worked out it is because we are using webmock with the features, which prevents simplecov from outputing the message to the console:

        puts output_message(result)
      end

      def output_message(result)
        "Coverage report generated for #{result.command_name} to #{output_path}. #{result.covered_lines} / #{result.total_lines} LOC (#{result.covered_percent.round(2)}%) covered."
      end

/Users/tansaku/.rvm/gems/ruby-2.0.0-p598/gems/simplecov-html-0.10.0/lib/simplecov-html.rb:25

@colszowka
Copy link
Collaborator

That is awkward, webmock should not be related to $stdout output and I have used it on many projects along simplecov without problems. But maybe you are somewhere else closing/redirecting $stdout/STDOUT?

@PragTob
Copy link
Collaborator

PragTob commented Feb 8, 2020

Closing due to inactivity and seemingly/hopefully not related to simplecov itself.

@PragTob PragTob closed this as completed Feb 8, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants