# Test Report

## Document meta information

Key | Value
Hostname | affenschaukel
Time | Fri Feb 5 10:30:55 2016
Command | /usr/local/bin/pherkin -o Html features/

## Summary

Status | Count
Passed | 72
Failed | 1
Pending | 2
Skipped | 0

## Table of Content

- Basic Calculator Functions

- First Key Press on the Display
- Several Key Presses on the Display
- Pressing Clear Wipes the Display
- Add as you go
- Basic arithmetic
- Basic arithmetic
- Basic arithmetic
- Basic arithmetic
- Separation of calculations
- Ticker Tape
- Enter number using text
- Enter numbers using text

## Basic Calculator Functions (features/basic.feature)

    In order to check I've written the Calculator class correctly
    As a developer I want to check some basic operations
    So that I can have confidence in my Calculator class.

### First Key Press on the Display

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 7)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having pressed 1
(line: 8)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed 1
    1..1

Then the display should show 1
(line: 9)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 1
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Several Key Presses on the Display

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 12)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having pressed 1 and 2 and 3 and . and 5 and 0
(line: 13)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed 1 and 2 and 3 and . and 5 and 0
    1..1

Then the display should show 123.50
(line: 14)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 123.50
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Pressing Clear Wipes the Display

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 17)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having pressed 1 and 2 and 3
(line: 18)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed 1 and 2 and 3
    1..1

And having pressed C
(line: 19)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed C
    1..1

Then the display should show 0
(line: 20)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 0
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Add as you go

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 23)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having pressed 1 and 2 and 3 and + and 4 and 5 and 6 and +
(line: 24)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed 1 and 2 and 3 and + and 4 and 5 and 6 and +
    1..1

Then the display should show 579
(line: 25)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 579
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Basic arithmetic

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 28)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having keyed 5.0
(line: 29)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 5.0
    1..1

And having keyed +
(line: 30)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed +
    1..1

And having keyed 5.0
(line: 31)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 5.0
    1..1

And having pressed =
(line: 32)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed =
    1..1

Then the display should show 10
(line: 33)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 10
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Basic arithmetic

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 28)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having keyed 6
(line: 29)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 6
    1..1

And having keyed /
(line: 30)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed /
    1..1

And having keyed 3
(line: 31)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 3
    1..1

And having pressed =
(line: 32)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed =
    1..1

Then the display should show 2
(line: 33)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 2
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Basic arithmetic

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 28)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having keyed 10
(line: 29)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 10
    1..1

And having keyed *
(line: 30)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed *
    1..1

And having keyed 7.550
(line: 31)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 7.550
    1..1

And having pressed =
(line: 32)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed =
    1..1

Then the display should show 75.5
(line: 33)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 75.5
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Basic arithmetic

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 28)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having keyed 3
(line: 29)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 3
    1..1

And having keyed -
(line: 30)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed -
    1..1

And having keyed 10
(line: 31)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed 10
    1..1

And having pressed =
(line: 32)
passed

#### Test Output:

    ok 1 - Starting to execute step: having pressed =
    1..1

Then the display should show -7
(line: 33)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show -7
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Separation of calculations

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 42)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having successfully performed the following calculations
(line: 43)
failed

#### Test Output:

    ok 1 - Starting to execute step: having successfully performed the following calculations
    not ok 2 - Test compiled
    #   Failed test 'Test compiled'
    #   at /usr/share/perl5/Test/BDD/Cucumber/Executor.pm line 338.
    # Can't locate object method "dispatch" via package "Test::BDD::Cucumber::StepContext" at features/step_definitions/calculator_steps.pl line 69.
    1..2

And having pressed 3
(line: 48)
pending

#### Test Output:

    1..0 # SKIP Short-circuited from previous tests

Then the display should show 3
(line: 49)
pending

#### Test Output:

    1..0 # SKIP Short-circuited from previous tests

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Ticker Tape

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 52)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having entered the following sequence
(line: 53)
passed

#### Test Output:

    ok 1 - Starting to execute step: having entered the following sequence
    1..1

#### Example Data:

    1 + 2 + 3 + 4 + 5 + 6 -
    100
    * 13 === + 2 =

Then the display should show -1025
(line: 59)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show -1025
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Enter number using text

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 62)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having keyed __THE_NUMBER_FIVE__
(line: 63)
passed

#### Test Output:

    ok 1 - Starting to execute step: having keyed __THE_NUMBER_FIVE__
    ok 2 - Passed in a word to map [__THE_NUMBER_FIVE__]
    ok 3 - Mapping found
    1..3

Then the display should show 5
(line: 64)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 5
    ok 2 - Calculator display as expected
    1..2

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2

### Enter numbers using text

before
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - use Calculator;
    1..2

Given a new Calculator object
(line: 67)
passed

#### Test Output:

    ok 1 - Starting to execute step: a new Calculator object
    1..1

And having added these numbers
(line: 68)
passed

#### Test Output:

    ok 1 - Starting to execute step: having added these numbers
    ok 2 - Passed in a word to map [__THE_NUMBER_FOUR__]
    ok 3 - Mapping found
    ok 4 - Passed in a word to map [__THE_NUMBER_FIVE__]
    ok 5 - Mapping found
    ok 6 - Passed in a word to map [__THE_NUMBER_ONE__]
    ok 7 - Mapping found
    1..7

Then the display should show 10
(line: 73)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show 10
    ok 2 - Calculator display as expected
    1..2

And the display should show __THE_NUMBER_TEN__
(line: 74)
passed

#### Test Output:

    ok 1 - Starting to execute step: the display should show __THE_NUMBER_TEN__
    ok 2 - Passed in a word to map [__THE_NUMBER_TEN__]
    ok 3 - Mapping found
    ok 4 - Calculator display as expected
    1..4

after
(line: 0)
passed

#### Test Output:

    ok 1 - Starting to execute step:
    ok 2 - Calculator cleaned up
    1..2