Sha256: fe5b7247ecf76473aa5dc75e61f4d5a2b910c15ee8a436ebab5e443e2379ac38

Contents?: true

Size: 1.4 KB

Versions: 2

Compression:

Stored size: 1.4 KB

Contents

require 'helper'

class TestSimplecovConsole < MiniTest::Test

  # mock for SimpleCov::SourceFile::Line
  Line = Struct.new(:line_number)

  # mock for SimpleCov::SourceFile
  SourceFile = Struct.new(
    :filename,
    :lines_of_code,
    :covered_lines,
    :missed_lines,
    :covered_percent
  )

  def setup
    @console = SimpleCov::Formatter::Console.new
  end

  def test_defined
    assert defined?(SimpleCov::Formatter::Console)
    assert defined?(SimpleCov::Formatter::Console::VERSION)
  end

  def test_missed
    missed_lines = [Line.new(1), Line.new(2),
                    Line.new(3), Line.new(5)]
    expected_result = ["1-3", "5"]
    assert_equal @console.missed(missed_lines), expected_result
  end

  def test_table_output
    SimpleCov::Formatter::Console.output_style = 'table'
    files = [
      SourceFile.new('foo.rb',5,[2,3],[Line.new(1), Line.new(4), Line.new(5)],40.0)
    ]
    actual = @console.table_output(files,'/')
    assert actual.is_a? Terminal::Table
    assert_equal 1, actual.rows.count 
  end

  def test_block_output
    SimpleCov::Formatter::Console.use_colors = false
    SimpleCov::Formatter::Console.output_style = 'block'
    files = [
      SourceFile.new('foo.rb',5,[2,3],[Line.new(1), Line.new(4), Line.new(5)],40.0)
    ]
    expected = "\n    file: foo.rb\ncoverage: 40.00% (2/5 lines)\n  missed: 1, 4-5\n\n"
    assert_equal expected, @console.block_output(files,'/')
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
simplecov-console-0.7.1 test/test_simplecov-console.rb
simplecov-console-0.7.0 test/test_simplecov-console.rb