Skip to content

Commit

Permalink
The syntax construction now is created by a separate method. This mak…
Browse files Browse the repository at this point in the history
…es things easier to test.
  • Loading branch information
johngeorgewright committed Sep 11, 2012
1 parent 705aca4 commit aead79d
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 7 deletions.
10 changes: 6 additions & 4 deletions lib/cucumber/listener/summary_formatter.js
@@ -1,9 +1,6 @@
var SummaryFormatter = function (options) {
var Cucumber = require('../../cucumber');

var options = options || {};
options.coffee = options.coffee || false;

var failedScenarioLogBuffer = "";
var undefinedStepLogBuffer = "";
var failedStepResults = Cucumber.Type.Collection();
Expand Down Expand Up @@ -62,11 +59,16 @@ var SummaryFormatter = function (options) {
};

self.storeUndefinedStep = function storeUndefinedStep(step) {
var snippetBuilder = Cucumber.SupportCode.StepDefinitionSnippetBuilder(step, options.coffee);
var snippetBuilder = Cucumber.SupportCode.StepDefinitionSnippetBuilder(step, self.getStepDefinitionSyntax());
var snippet = snippetBuilder.buildSnippet();
self.appendStringToUndefinedStepLogBuffer(snippet);
};

self.getStepDefinitionSyntax = function getStepDefinitionSyntax() {
var syntax = options.coffee ? 'CoffeeScript' : 'JavaScript';
return new Cucumber.SupportCode.StepDefinitionSnippetBuilderSyntax[syntax]();
};

self.appendStringToFailedScenarioLogBuffer = function appendStringToFailedScenarioLogBuffer(string) {
failedScenarioLogBuffer += string + "\n";
};
Expand Down
1 change: 1 addition & 0 deletions lib/cucumber/support_code.js
Expand Up @@ -3,5 +3,6 @@ SupportCode.Hook = require('./support_code/hook');
SupportCode.Library = require('./support_code/library');
SupportCode.StepDefinition = require('./support_code/step_definition');
SupportCode.StepDefinitionSnippetBuilder = require('./support_code/step_definition_snippet_builder');
SupportCode.StepDefinitionSnippetBuilderSyntax = require('./support_code/step_definition_snippet_builder_syntax');
SupportCode.WorldConstructor = require('./support_code/world_constructor');
module.exports = SupportCode;
4 changes: 1 addition & 3 deletions lib/cucumber/support_code/step_definition_snippet_builder.js
@@ -1,11 +1,9 @@
var _ = require('underscore'),
stepDefinitionSnippetBuilderSyntax = require ('./step_definition_snippet_builder_syntax');

var StepDefinitionSnippetBuilder = function(step, coffeeSyntax) {
var StepDefinitionSnippetBuilder = function(step, syntax) {
var Cucumber = require('../../cucumber');

var syntax = coffeeSyntax ? new stepDefinitionSnippetBuilderSyntax.CoffeeScript() : new stepDefinitionSnippetBuilderSyntax.JavaScript();

var self = {
buildSnippet: function buildSnippet() {
var functionName = self.buildStepDefinitionFunctionName();
Expand Down

0 comments on commit aead79d

Please sign in to comment.