123456789101112131415161718192021222324252627282930313233343536373839404142434445464748 |
- require 'rails_helper'
- describe GemfileHelper do
- context 'parse_each_agent_gem' do
- VALID_STRINGS = [
- ['huginn_nlp_agents(~> 0.2.1)', [
- ['huginn_nlp_agents', '~> 0.2.1']
- ]],
- ['huginn_nlp_agents(~> 0.2.1, git: http://github.com/dsander/huginn.git, branch: agents_in_gems)',
- [['huginn_nlp_agents', '~> 0.2.1', git: 'http://github.com/dsander/huginn.git', branch: 'agents_in_gems']]
- ],
- ['huginn_nlp_agents(~> 0.2.1, git: http://github.com/dsander/huginn.git, ref: 2342asdab) , huginn_nlp_agents(~> 0.2.1)', [
- ['huginn_nlp_agents', '~> 0.2.1', git: 'http://github.com/dsander/huginn.git', ref: '2342asdab'],
- ['huginn_nlp_agents', '~> 0.2.1']
- ]],
- ['huginn_nlp_agents(~> 0.2.1, path: /tmp/test)', [
- ['huginn_nlp_agents', '~> 0.2.1', path: '/tmp/test']
- ]],
- ['huginn_nlp_agents', [
- ['huginn_nlp_agents']
- ]],
- ['huginn_nlp_agents, test(0.1), test2(github: test2/huginn_test)', [
- ['huginn_nlp_agents'],
- ['test', '0.1'],
- ['test2', github: 'test2/huginn_test']
- ]],
- ['huginn_nlp_agents(git: http://github.com/dsander/huginn.git, ref: 2342asdab)', [
- ['huginn_nlp_agents', git: 'http://github.com/dsander/huginn.git', ref: '2342asdab']
- ]],
- ]
- it 'parses valid gem strings correctly' do
- VALID_STRINGS.each do |string, outcomes|
- GemfileHelper.parse_each_agent_gem(string) do |args|
- expect(args).to eq(outcomes.shift)
- end
- end
- end
- it 'does nothing when nil is passed' do
- expect { |b| GemfileHelper.parse_each_agent_gem(nil, &b) }.not_to yield_control
- end
- it 'does nothing when an empty string is passed' do
- expect { |b| GemfileHelper.parse_each_agent_gem('', &b) }.not_to yield_control
- end
- end
- end
|