Sha256: d00d5e49b123bd0d1d1fca4caee2458cdaa1b23b2cf2b59933c5dd849095c735

Contents?: true

Size: 1.68 KB

Versions: 6

Compression:

Stored size: 1.68 KB

Contents

Feature: Reek reads from $stdin when no files are given
  In order to use reek with pipelines
  As a developer
  I want to pipe source code on stdin

  Scenario: return zero status with no smells
    When I pass "def simple() @fred = 3 end" to reek
    Then it succeeds
    And it reports nothing

  Scenario: outputs nothing on empty stdin
    When I pass "" to reek
    Then it succeeds
    And it reports nothing

  Scenario: outputs header only on empty stdin in verbose mode
    When I pass "" to reek -V
    Then it succeeds
    And it reports:
      """
      STDIN -- 0 warnings
      """

  Scenario: return non-zero status when there are smells
    When I pass "class Turn; def y() @x = 3; end end" to reek
    Then the exit status indicates smells
    And it reports:
      """
      STDIN -- 3 warnings:
        [1]:IrresponsibleModule: Turn has no descriptive comment [https://github.com/troessner/reek/blob/master/docs/Irresponsible-Module.md]
        [1]:UncommunicativeMethodName: Turn#y has the name 'y' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Method-Name.md]
        [1]:UncommunicativeVariableName: Turn has the variable name '@x' [https://github.com/troessner/reek/blob/master/docs/Uncommunicative-Variable-Name.md]
      """

  Scenario: syntax error causes the source to be ignored
    When I pass "= invalid syntax =" to reek
    Then the exit status indicates smells
    And it reports:
      """
      STDIN -- 2 warnings:
        [2]:Syntax: This file has unexpected token $end [https://github.com/troessner/reek/blob/master/docs/Syntax.md]
        [1]:Syntax: This file has unexpected token tEQL [https://github.com/troessner/reek/blob/master/docs/Syntax.md]
      """

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
reek-4.8.1 features/command_line_interface/stdin.feature
reek-4.8.0 features/command_line_interface/stdin.feature
reek-4.7.3 features/command_line_interface/stdin.feature
reek-4.7.2 features/command_line_interface/stdin.feature
reek-4.7.1 features/command_line_interface/stdin.feature
reek-4.7.0 features/command_line_interface/stdin.feature