Git Product home page Git Product logo

cql's People

Contributors

enkessler avatar jdfolino 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

Watchers

 avatar  avatar  avatar  avatar  avatar

cql's Issues

Flexibility of runtime dependencies

Hi Jarrod. Can you please update your runtime dependencies to include only the major and minor to allow revision updates, and release a new version of the gem? E.g.

From:
s.add_runtime_dependency 'gherkin', '~> 2.11.0'
s.add_runtime_dependency 'json', '>= 1.4.6'

To:
s.add_runtime_dependency 'gherkin', '> 2.11'
s.add_runtime_dependency 'json', '
> 1.4'

It should be safe based on the RubyGems versioning policy:
http://docs.rubygems.org/read/chapter/7

Can't filter by tags with tag inheritance

Thanks for the nice tool first. I had an issue filtering by tags that seems a bug to me.

As we can use the tag inheritance feature (https://cucumber.io/docs/cucumber/api/#tag-inheritance). Tags that are placed above a Feature will be inherited by Scenario, Scenario Outline, or Examples. Like below:

@tag_1
Feature: A test feature

        Scenario: Test 1
          * some steps
  
        @special_tag
        Scenario: Test 2
          * some other steps
          * some other steps
          * some other steps

In my query:

total_tests = cql_repo.query do
  select name
  from scenarios
  with tags '@tag_1'
end

it will get 0 scenarios. I expect it can get 2 scenarios.

License missing from gemspec

Some companies will only use gems with a certain license.
The canonical and easy way to check is via the gemspec
via e.g.

spec.license = 'MIT'
# or
spec.licenses = ['MIT', 'GPL-2']

Bundler now generates gems with a default 'MIT' license. There is even a License Finder
to help companies ensure all gems they use meet their licensing needs. This tool depends on license information being available in the gemspec.
Including a license in your gemspec is a good practice, in any case.

If you need help choosing a license, github has created a license picker tool

How did I find you?

I'm using a script to collect stats on gems, originally looking for download data, but decided to collect licenses too,
and make issues for gemspecs not specifying a license as a public service :)
So far it's going pretty well.
I've written a blog post about it

Great tool! Couple of points.

Hi,
First off. Thanks for doing this, it's a great tool!! A couple of minor points, really just to document them, rather than expecting a fix.

  1. The readme examples are incorrect - they refer to 'gs' rather than the CQL::Repository object
  2. I couldn't seem to get 'basic_tag' (found in the specs you have) to work. Does the test actually pass?

Once again. Many thanks, this should be shipped with all cucumber varieties!!

John

Error - No lexer found when building repository

Attempting to build repository and receiving an error

require 'cql'
require 'csv'
@myrepo=CQL::Repository.new 'C:/project/features'

Tried in Ruby 218 and 223.

From Gemlock file

    cql (1.1.0)
      cuke_modeler
    cucumber (1.3.20)
      builder (>= 2.1.2)
      diff-lcs (>= 1.1.3)
      gherkin (~> 2.12)
      multi_json (>= 1.7.5, < 2.0)
      multi_test (>= 0.1.2)
    cuke_modeler (0.4.0)
      gherkin (< 5.0)
      json (~> 1.0)
      multi_json (~> 1.0)

Error trace

C:/railsinstaller/ruby/2.1.0/i386-mingw32. Reverting to Ruby lexer.
C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/i18n.rb:108:in `rescue in lexer': No lexer was found for en (cannot load such file -- gherkin/lexer/en). Supported languages are listed in gherkin/i18n.json. (Gherkin::I18n::LexerNotFound)
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/i18n.rb:97:in `lexer'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:139:in `transition_table'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:128:in `build_transition_map'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:124:in `transition_map'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:91:in `initialize'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:68:in `new'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:68:in `push_machine'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/gherkin-2.12.2-x86-mingw32/lib/gherkin/parser/parser.rb:31:in `parse'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/parsing.rb:94:in `parse_text'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/feature_file.rb:67:in `parse_file'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/feature_file.rb:24:in `initialize'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/containing.rb:11:in `new'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/containing.rb:11:in `build_child_element'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/directory.rb:76:in `block in build_directory'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/directory.rb:69:in `each'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/directory.rb:69:in `build_directory'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cuke_modeler-0.4.0/lib/cuke_modeler/directory.rb:30:in `initialize'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cql-1.1.0/lib/cql.rb:152:in `new'
    from C:/railsinstaller/ruby/gems/2.1.0/gems/cql-1.1.0/lib/cql.rb:152:in `initialize'
    from C:/project/query_repo/query_repo.rb:3:in `new'
    from C:/project/query_repo/query_repo.rb:3:in `<top (required)>'
    from -e:1:in `load'
    from -e:1:in `<main>'

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.