Giter Club home page Giter Club logo

pickles's Introduction

Pickles has moved!

Please watch this repository for changes and updates, as well as submitting Pull Requests.

https://github.com/picklesdoc/pickles

Thanks for all your support thus far.

pickles's People

Contributors

eduaquiles avatar haxen avatar hugohaggmark avatar marcusoftnet avatar nippe avatar x97mdr avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

pickles's Issues

NAnt support

There should be an NAnt task available to allow the user to integrate it into their build/CI scenario.

Add support for tags

In order to organize tests better and add metadata about the tests to the documentation As a Pickles user I want to see the tags associated with scenarios added to the generated documentation

Generate HTML for feature files

The program should be able to generate documentation in XHTML format (in case someone wants to read it and parse it later themselves) in a structured format.

There should be a Table of Contents on each page referring to the other pages to allow for easy navigation.

Render descriptions as Markdown

In order to provide formatting of Feature and Scenario descriptions As a pickles user I want to see the descriptions of features rendered as HTML based on markdown

Refactor FeatureCrawler code

The FeatureCrawler generates a tree of FeatureNode objects. I think it would be better to use sub-classes to represent the different type of nodes that one could encounter (Directory, Feature file, Markdown file, etc.) so that we can add support for other types of files if it becomes necessary. Would also clean up some of the feature crawling code.

Merge assemblies with ILMerge

It would be preferable to have the 3 major artifacts (the console application, the MSBuild task and the NAnt task) released as single assembles. We would need to use ILMerge to do this. Would also want to ensure to include the open source licenses of the merged assemblies.

Change default HTML extension from .xhtml to .html

The .xhtml extension will cause problems with older versions of IE (IE8 and lower) (the file will not open) so we should revert to the default .html extension. The file itself will still be produced in XHTML

Add better command-line argument support

In order to allow the user to customize various aspects of the application As a Pickles user I want to enter arguments on the command-line.

The arguments to implement for now are:

--feature-directory (-f) : root folder of the feature files to read in
--output-directory (-o) : folder where the output files will be written

MSBuild Support

An MSBuild task should be created to allow for the user to integrate pickles easily into their build/CI scenario

Add logging

In order to view the progress of the application and see some information (e.g. version) As a Pickles user I want to have information reported to the screen and a customisable logging location

Add documentation on using Pickles

The github wiki should be included to have documentation on

  • producing documentation using the CLI, NAnt and MSBuild
  • Examples of using Markdown in descriptions
  • contributing pull requests
  • future plans

Support all Gherkin languages

In order to see the steps in my native language as a Pickles user I want to have the rendered HTML (or other formats) support writing out the keywords in my native language.

Add support for Backgrounds

In order to view background information for a scenario As a Pickles user I want to see the background information for a feature rendered along with the scenarios in a collapsible section.

Note: the collapsible section is because the background might not be important to understand the scenarios all of the time. Allowing this section to collapse provides a way of reducing noise in the generated HTML.

Add results from NUnit to documentation

Feature:
In order to identify which features are working and implemented
As a pickles user
I want to label green/red/yellow the features in my living documentation tree based on the results from the unit testing framework

Scenario: NUnit Support
Given a set of features
And an NUnit result file in XML
When I generate documentation
Then I should see passing features in green
And failing feaures in red
And Ignored features in yellow

NuGet package

I think Pickles should be installed via NuGet - let's create a NuGet package.

What do you think about the following features for it:

  • Downloads all the executables (Console, MsTest, NAnt). We could also go with one package for each
  • Downloads example files for each of the runners
  • Creates an powershell script that you can run from the PowerShell console in Visual Studio to run the features

So - what do you think? One package or several?

Add dynamic HTML output

In order to distribute a single HTML file
As a pickles user
I want to have all f the features accessible from within a single HTML file.

The features would be stored as JSON and rendered by a framework like Knockout. We could add other cool AJAX features to make it easier to move among the features and perhaps other content as well.

Create example project

In order to show new users to see the capabilities of Pickles As a user I want to include an example project showing all of the things that Pickles is capable of rendering

Extra content included in rendered HTML

Empty directories and directories with no relevant files are being included in the tree of features that get rendered into HTML. We want to remove these files from the output.

Fix wikiword expansion

Wikiwords containing acronyms do not appear to be expanding properly. for example: CPU1 is expanding as C P U 1. I would like for these words to be kept together if possible.

Add a css stylesheet for printing

In order to allow for an easier to read printed version of the feature As a reader of Pickles features I want to see a special print only version of the HTML rendered feature that does not include the table of contents and possibly not the header or footer either.

On parsing error, report file causing the error

As I am having some people not using Visual Studio writing Specs, they make syntactic mistakes which leads to parsing errors.

I am getting an unhandled exception and would like to know which feature file that caused the error. Or even better, the scenario.

This is the exception I'm getting:

Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object.
at Pickles.Parser.PicklesParser.CaptureAndStoreRemainingElements() in c:\dev\pickles\src\Pickles\Pickles\Parser\PicklesParser.cs:line 79
at Pickles.Parser.PicklesParser.scenario(String keyword, String name, String description, Int32 line) in c:\dev\pickles\src\Pickles\Pickles\Parser\PicklesParser.cs:line 140
at gherkin.lexer.i18n.EN.scan(String source)
at gherkin.lexer.I18nLexer.scan(String source)
at Pickles.FeatureParser.Parse(TextReader featureFileReader) in c:\dev\pickles\src\Pickles\Pickles\FeatureParser.cs:line 55
at Pickles.FeatureParser.Parse(String filename) in c:\dev\pickles\src\Pickles\Pickles\FeatureParser.cs:line 41
at Pickles.DirectoryCrawler.FeatureNodeFactory.Create(FileSystemInfo root, FileSystemInfo location) in c:\dev\pickles\src\Pickles\Pickles\DirectoryCrawler\FeatureNodeFactory.cs:line 57
at Pickles.DirectoryCrawler.DirectoryTreeCrawler.Crawl(DirectoryInfo directory, IDirectoryTreeNode rootNode) in c:\dev\pickles\src\Pickles\Pickles\DirectoryCrawler\DirectoryTreeCrawler.cs:line 70
at Pickles.DirectoryCrawler.DirectoryTreeCrawler.Crawl(DirectoryInfo directory, IDirectoryTreeNode rootNode) in c:\dev\pickles\src\Pickles\Pickles\DirectoryCrawler\DirectoryTreeCrawler.cs:line 77
at Pickles.Runner.Run(IKernel kernel) in c:\dev\pickles\src\Pickles\Pickles\Runner.cs:line 38
at Pickles.CommandLine.Program.Main(String[] args) in c:\dev\pickles\src\Pickles\Pickles.CommandLine\Program.cs:line 54

Thanks!

::m

Add results from MSTest to generated HTML

Feature:
In order to identify which features are working and implemented
As a pickles user
I want to label green/red/yellow the features in my living documentation tree based on the results from the unit testing framework

Scenario: MSTestSupport
Given a set of features
And an MSTest result file in XML
When I generate documentation
Then I should see passing features in green
And failing feaures in red
And Ignored features in yellow

Allow markdown files in feature tree

In order to provide supplementary information to the produc features As a pickles us I want to have markdown files (.md) appear as rendered HTML in the documentation tree

Allow rows of a table to be hidden

In order to concentrate on the language of the scenario As a reader of features generated by Pickles I want to be able to collapse hide/unhide the body of a table.

Build deployment package

In order to start using Pickles without having to download the source code As a Pickles user I want to be able to grab a download packaged as a .zip file with the version name in it from the github site (or some other suitable spot)

Add results from MBUnit to generated HTML

Feature:
In order to identify which features are working and implemented
As a pickles user
I want to label green/red/yellow the features in my living documentation tree based on the results from the unit testing framework

Scenario: MBUnitSupport
Given a set of features
And an MMBUnit result file in XML
When I generate documentation
Then I should see passing features in green
And failing feaures in red
And Ignored features in yellow

Add support for creating JVM based runners

In order to take advantage of using generating features in even more environments
As a Pickles developer
I want to use the open source tool called Grasshopper to generate binary equivalent Java .jars so we can develop Pickles Java plugins for other builds tools like Ant, Ivy and Maven.

Thoughts: Support other platforms through the Iron* tools like IronRuby and IronPython. Should add documentation on this. Also, what about supporting plain Ruby or Python?

Can also checkout a project called XMLVM to translate the code

http://dev.mainsoft.com/Default.aspx?tabid=130

Update references to use NuGet

The gherkin NuGet package is now available and the Should/Should.Fluent packages need to be added as NuGet references.

Add results from xUnit to generated HTML

Feature:
In order to identify which features are working and implemented
As a pickles user
I want to label green/red/yellow the features in my living documentation tree based on the results from the unit testing framework

Scenario: xUnit Support
Given a set of features
And an xUnit result file in XML
When I generate documentation
Then I should see passing features in green
And failing feaures in red
And Ignored features in yellow

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.