x97mdr / pickles Goto Github PK
View Code? Open in Web Editor NEWA documentation generator for features written in the Gherkin language
License: Apache License 2.0
A documentation generator for features written in the Gherkin language
License: Apache License 2.0
Generated from this discussion on the pickles-dev group: https://groups.google.com/d/msg/pickles-dev/oK_x1PKrYwI/wTSvX_9_oL4J
In order to leverage the wide variety of output formats supported by the Darwin Information Typed Architecture (DITA) As a pickles user I want to see the features written out in DITA format
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.
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.
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.
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.
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)
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.
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
We should rely on the generic Gherkin parser in the x97mdr/gherkin repository. Any references to the SpecFlow parser should be removed
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
The teamcity build has been setup but there have been some errors with the builds
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
In order to run pickles from Powershell scripts (like psake)
As a Pickles user
I want to have a powershell module with a cmdlet that I can import and use to generate documentation.
A good reference on making a Powershell module from a C# assembly is here: http://blogs.msdn.com/b/saveenr/archive/2010/03/08/how-to-create-a-powershell-2-0-module-and-cmdlet-with-visual-studio-2010-screencast-included.aspx
In order to make the generated documentation more official As a Pickles user I want to add my company logo to the generated files.
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.
Only the first scenario is showing up in the generated HTML files. As well, it looks like the Steps are getting mixed up.
The github wiki should be included to have documentation on
There is no h2 heading for backgrounds at all, neither the name nor the description is printed out.
It was suggested here (https://groups.google.com/d/msg/specflow/daTXE7cxK_Y/xPFVdHazczcJ) to use the DataTables library to organize the tables so that if there are more columns than can be comfortably displayed then a horizontal scroll bar should appear.
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.
In order to view a scenario with a large table comfortably on one screen As a reader of features generated by Pickles I want to be able to paginate the table data.
Currently only .md files are allowed as Markdown files. A list of recommended file extensions is here:
http://superuser.com/questions/249436/file-extension-for-markdown-files
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
In order to support writing out features in a book like format
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
The Scenarios and Scenario Outlines are being printed out of order, it would be better if they matched the order from the feature file as this probably had some meaning to the user.
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
There should be an NAnt task available to allow the user to integrate it into their build/CI scenario.
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
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
In order to support writing out features in a book like format
As a Pickles user
I want to generated the features in DocBook format
We should allow users to generate documentation in other formats besides HTML (like PDF, RTF, Word, etc.)
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
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
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.
An MSBuild task should be created to allow for the user to integrate pickles easily into their build/CI scenario
In order to ensure that the source code in the repository is working and passes all unit tests
As a Pickles developer
I want to use setup a continuous integration build on the http://teamcity.codebetter.com build server.
In order to view Scenario Outlines as a Pickles user I want to see the scenario outlines rendered in the generated documentation
In order to distribute the features to business analysts who use Excel or who want to manipulate the tabular data
As a Pickles user
I want to generate the features inn Excel 2007+ format (.xlsx)
The gherkin NuGet package is now available and the Should/Should.Fluent packages need to be added as NuGet references.
Add a build script to let developers easily package Pickles
Even though the DataTable plugin is in there and activated the table elements are still not being properly formatted.
I think Pickles should be installed via NuGet - let's create a NuGet package.
What do you think about the following features for it:
So - what do you think? One package or several?
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
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.
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
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
In order to distribute the features to business analysts who use Word
As a Pickles user
I want to generate the features inn Word 2007+ format (.docx)
We should allow the user to add their own css stylesheet(s) to format the content of the generated files.
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.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.