GithubHelp home page GithubHelp logo

lucid's People

Contributors

jeffnyman avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

lucid's Issues

Stack Trace When Firefox is Not Installed

If you run Lucid with the Symbiont project and Firefox is not available on the machine, you get this:

Could not find Firefox binary (os=windows).
Make sure Firefox is installed or set the path manually with
Selenium::WebDriver::Firefox::Binary.path= (Selenium::WebDriver::Error::WebDriverError)

And then a huge stack trace. Is it possible to capture that and not make it look so horrendously scary?

External Project Generator Mechanism

Should lucid-gen be able to refer to an external template that can be updated independently of the lucid gem? Right now if a project template needs to be updated it requires a full gem release. It feels like there should be a smarter way to do this.

Extraneous "No File or Directory" Messages

If you run Lucid and there is no valid directory -- either by default or by specifying one -- you get an extra "No such file or directory" bit of text before the officially generated Lucid text. It would be nice to get rid of this extra message.

Provide a Capybara Project Generator

Right now the generator defaults to using the Symbiont gem, which is based on Watir and Selenium. Might be nice to work on a Capybara solution.

Using "strict" Does Not Return Errors

The idea behind using the --strict tag is that it supposed to return an error code if any steps are found to be pending or undefined. Currently that is not happening. There is a slightly different set of result output in these cases, but it seems to violate the whole idea of being "strict" -- which should mean errors on anything not capable of being used.

Matchers In Different Languages?

Currently, if no test definitions are provided, you will get the message "If you want matchers in a different programming language ..." which is something that Cucumber itself did away with. Lucid should probably do something similar for the reason that it is very difficult to support this reliably.

Displaying Stack Trace When Tag Excess Occurs

When you do a command like this:

lucid --tags @bad:1

You get a stack track type output like this:

@bad occurred 2 times, but the limit was set to 1
   specs/triangle.spec:44
   specs/triangle.spec:50 (Lucid::TagExcess)

Then there's a stack trace. That seems really, really ugly. It would be nice to give a more formatted message.

Better Command Line Interface

Since Lucid has a lot of command line options, it might be good to consider how to better provide a command suite set of tools. Or, at the very least, use a mechanism similar to what I use in lucid-gen, where I can allow people to get help on specific command line options.

This would be a fairly substantial change to the Options module and would require a good amount of testing.

Spec Type Specified in Profile Not Recognized

If you have a lucid.yml file and the following is in it:

default: --spec-type feature features

and if you run that against a directory like this:

root
    features
        triangle.feature

you will find that the feature file is not read. Contrast that with simply running this command:

$ lucid --spec-type feature features

In that case, everything works. So it looks like the inclusion of this option in the profile is not being recognized.

Extraneous "No File or Directory" Messages

If you run Lucid and there is no valid directory -- either by default or by specifying one -- you get an extra "No such file or directory" bit of text before the officially generated Lucid text. It would be nice to get rid of this extra message.

Stack Trace When Symbiont Not Installed

If someone has not run bundle update on the Gemfile or does not have Symbiont installed, an ugly stack trace is generated by Lucid. It would be nice to catch this and present a nicer message.

Invalid Command Line Options Needs Better Handling

Currently when an invalid option is specified at the command line, the invalid option logic form optparse is called. But it looks horrible when it displays. The InvalidOption exception needs to be treated as part of a rescue clause.

Allow Multiple Spec Files

Right now Lucid defaults to *.spec. It can be set to use *.feature. It would be nice to allow a set of spec types.

Allow Configuration for Driver File

Currently the driver file is hard-coded as driver.rb. However, if someone wants to use a Cucumber-like structure, they will be using an env.rb file. It would be nice to allow users an option.

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.