Skip to content

Can't recognize lines in block #53

Description

@luikore

Especially for sinatra applications. Here's a minimal example demonstrating the problem:

app.rb

require "sinatra"

class App < Sinatra::Base
  get '/' do
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    i = 1
    'hi'
  end
end

test.rb

require "test/unit"
require "rack/test"
require "cover_me"
require_relative "app"

CoverMe.config do |c|
  c.project.root = File.expand_path File.dirname(__FILE__)
  c.file_pattern = /app\.rb/
end
at_exit &(CoverMe.method :complete!)

class TestApp < Test::Unit::TestCase
  include Rack::Test::Methods

  def app
    App
  end

  def test_1
    get '/'
    assert_equal 'hi', last_response.body
  end
end

The result shows only 3 lines are covered, all lines in the block are not covered.

Environment:

  • ruby 1.9.2p180 (2011-02-18 revision 30909) [x86_64-darwin10.7.1]
  • sinatra (1.2.6)
  • rack-test (0.6.0)
  • cover_me (1.0.0)

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions