bollettino-cli 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 76525e02435e2e3f7194173f7a11cc9c3c91ae14
4
+ data.tar.gz: 7b1025e967bed4bd3644148f4ed386924360d5c8
5
+ SHA512:
6
+ metadata.gz: 76a04da1c5df32ed234d687443bd7f8ff643aa3304866c330c06b258f16bf4bc8594e9ae44e07d584b5f23d86cfd583ed9d3d799a038e23203a4e71d6eb346e7
7
+ data.tar.gz: 3739bfb1a5fbffe2bd4fc483b9c2c67863ff851bd9c9712ba5f90e7bb615ccb12fba3cc983bbadbbd11a933a56593d67658995458472c93395416c12b22f25a8
data/.gitignore ADDED
@@ -0,0 +1,15 @@
1
+ /.bundle/
2
+ /.yardoc
3
+ /Gemfile.lock
4
+ /_yardoc/
5
+ /coverage/
6
+ /doc/
7
+ /pkg/
8
+ /spec/reports/
9
+ /tmp/*
10
+ !/tmp/.keep
11
+ *.bundle
12
+ *.so
13
+ *.o
14
+ *.a
15
+ mkmf.log
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --color
2
+ --require spec_helper
data/.travis.yml ADDED
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 2.1.5
4
+ - 2.0.0
5
+ - 1.9.3
data/CHANGELOG.md ADDED
@@ -0,0 +1,3 @@
1
+ 0.1.0 (November 23rd, 2014)
2
+ ===========================
3
+ - First working version
data/Gemfile ADDED
@@ -0,0 +1,2 @@
1
+ source 'https://rubygems.org'
2
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,58 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ bollettino-cli (0.1.0)
5
+ bollettino (~> 0.1)
6
+ gli (~> 2.12)
7
+
8
+ GEM
9
+ remote: https://rubygems.org/
10
+ specs:
11
+ axiom-types (0.1.1)
12
+ descendants_tracker (~> 0.0.4)
13
+ ice_nine (~> 0.11.0)
14
+ thread_safe (~> 0.3, >= 0.3.1)
15
+ bollettino (0.1.0)
16
+ mini_magick (~> 4.0)
17
+ virtus (~> 1.0)
18
+ coercible (1.0.0)
19
+ descendants_tracker (~> 0.0.1)
20
+ descendants_tracker (0.0.4)
21
+ thread_safe (~> 0.3, >= 0.3.1)
22
+ diff-lcs (1.2.5)
23
+ equalizer (0.0.9)
24
+ gli (2.12.2)
25
+ ice_nine (0.11.0)
26
+ metaclass (0.0.4)
27
+ mini_magick (4.0.0)
28
+ mocha (1.1.0)
29
+ metaclass (~> 0.0.1)
30
+ rake (10.3.2)
31
+ rspec (3.1.0)
32
+ rspec-core (~> 3.1.0)
33
+ rspec-expectations (~> 3.1.0)
34
+ rspec-mocks (~> 3.1.0)
35
+ rspec-core (3.1.7)
36
+ rspec-support (~> 3.1.0)
37
+ rspec-expectations (3.1.2)
38
+ diff-lcs (>= 1.2.0, < 2.0)
39
+ rspec-support (~> 3.1.0)
40
+ rspec-mocks (3.1.3)
41
+ rspec-support (~> 3.1.0)
42
+ rspec-support (3.1.2)
43
+ thread_safe (0.3.4)
44
+ virtus (1.0.3)
45
+ axiom-types (~> 0.1)
46
+ coercible (~> 1.0)
47
+ descendants_tracker (~> 0.0, >= 0.0.3)
48
+ equalizer (~> 0.0, >= 0.0.9)
49
+
50
+ PLATFORMS
51
+ ruby
52
+
53
+ DEPENDENCIES
54
+ bollettino-cli!
55
+ bundler (~> 1.7)
56
+ mocha (~> 1.1)
57
+ rake (~> 10.3)
58
+ rspec (~> 3.1)
data/README.md ADDED
@@ -0,0 +1,54 @@
1
+ # bollettino-cli
2
+
3
+ [![Build Status](https://travis-ci.org/interconn-isp/bollettino-cli.svg?branch=master)](https://travis-ci.org/interconn-isp/bollettino-cli)
4
+ [![Dependency Status](https://gemnasium.com/interconn-isp/bollettino-cli.svg)](https://gemnasium.com/interconn-isp/bollettino-cli)
5
+ [![Code Climate](https://codeclimate.com/github/interconn-isp/bollettino-cli/badges/gpa.svg)](https://codeclimate.com/github/interconn-isp/bollettino-cli)
6
+
7
+ bollettino-cli is a command line interface for [Bollettino](https://github.com/interconn-isp/bollettino-cli).
8
+
9
+ It supports generation of postal payment slips from the command line as well as
10
+ from CSV files.
11
+
12
+ ## Installation
13
+
14
+ Install the gem as:
15
+
16
+ ```console
17
+ $ gem install bollettino-cli
18
+ ```
19
+
20
+ ## Usage
21
+
22
+ ```console
23
+ $ bollettino-cli generate --payee-account=[PAYEE_ACCOUNT] --payee-name=[PAYEE_NAME] --payer-name=[PAYER_NAME] --payer-street=[PAYER_STREET] --payer-zip=[PAYER_ZIP] --payer-location=[PAYER_LOCATION] --order-numamount=[ORDER_NUMAMOUNT] --order-textamount=[ORDER_TEXTAMOUNT] --order-reason=[ORDER_REASON] [OUTPUT_PATH]
24
+ ```
25
+
26
+ Or, to generate slips from a CSV file:
27
+
28
+ ```console
29
+ $ bollettino-cli csv-generate --source=[CSV_PATH] [OUTPUT_DIR]
30
+ ```
31
+
32
+ For the documentation run:
33
+
34
+ ```console
35
+ $ bollettino-cli help
36
+ ```
37
+
38
+ ## Contributing
39
+
40
+ 1. Fork it (https://github.com/interconn-isp/bollettino-cli/fork)
41
+ 2. Create your feature branch (`git checkout -b my-new-feature`)
42
+ 3. Commit your changes (`git commit -am 'Add some feature'`)
43
+ 4. Push to the branch (`git push origin my-new-feature`)
44
+ 5. Create a new Pull Request
45
+
46
+ ## Maintainers
47
+
48
+ bollettino-cli is developed and maintained by [Alessandro Desantis](https://github.com/alessandro1997).
49
+
50
+ ## License
51
+
52
+ bollettino-cli is released under the MIT license.
53
+
54
+ [![InterConn](http://www.gravatar.com/avatar/b3f5893b97323096977545477e0066c5.jpg?s=100)](http://www.interconn.it)
data/Rakefile ADDED
@@ -0,0 +1,6 @@
1
+ require 'bundler/gem_tasks'
2
+ require 'rspec/core/rake_task'
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
@@ -0,0 +1,124 @@
1
+ #!/usr/bin/env ruby
2
+ require 'gli'
3
+ require 'bollettino/cli'
4
+
5
+ include GLI::App
6
+
7
+ program_desc 'A CLI for the Bollettino library'
8
+
9
+ version Bollettino::CLI::VERSION
10
+
11
+ subcommand_option_handling :normal
12
+ arguments :strict
13
+
14
+ desc 'Generates a new slip'
15
+ arg_name '[PATH]'
16
+ command :generate do |c|
17
+ c.desc "The payee's account number"
18
+ c.flag 'payee-account', required: true
19
+
20
+ c.desc "The payee's name"
21
+ c.flag 'payee-name', required: true
22
+
23
+ c.desc "The payer's name"
24
+ c.flag 'payer-name', required: true
25
+
26
+ c.desc "The payer's address' street"
27
+ c.flag 'payer-street', required: true
28
+
29
+ c.desc "The payer's address' ZIP"
30
+ c.flag 'payer-zip', required: true
31
+
32
+ c.desc "The payer's address' location"
33
+ c.flag 'payer-location', required: true
34
+
35
+ c.desc "The payment order's numeric amount"
36
+ c.flag 'order-numamount', required: true
37
+
38
+ c.desc "The payment order's text amount"
39
+ c.flag 'order-textamount', required: true
40
+
41
+ c.desc "The payment order's reason"
42
+ c.flag 'order-reason', required: true
43
+
44
+ c.action do |global_options, options, args|
45
+ raise 'You must specify a path for the slip!' if args.length < 1
46
+
47
+ payee = Bollettino::Payee.new(
48
+ account_number: options['payee-account'],
49
+ name: options['payee-name']
50
+ )
51
+
52
+ payer = Bollettino::Payer.new(
53
+ name: options['payer-name'],
54
+ address: Bollettino::Address.new(
55
+ street: options['payer-street'],
56
+ zip: options['payer-zip'],
57
+ location: options['payer-location']
58
+ )
59
+ )
60
+
61
+ payment_order = Bollettino::PaymentOrder.new(
62
+ numeric_amount: options['order-numamount'],
63
+ text_amount: options['order-textamount'],
64
+ reason: options['order-reason']
65
+ )
66
+
67
+ slip = Bollettino::Slip.new(
68
+ payee: payee,
69
+ payer: payer,
70
+ payment_order: payment_order
71
+ )
72
+
73
+ Bollettino::Generator.new.generate!(slip, args[0])
74
+ end
75
+ end
76
+
77
+ desc 'Generates slips from a CSV file'
78
+ arg_name '[DIR]'
79
+ command 'csv-generate' do |c|
80
+ c.desc "The CSV file's path"
81
+ c.flag 'source', required: true
82
+
83
+ c.action do |global_options, options, args|
84
+ raise 'You must specify a directory for the slips!' if args.length < 1
85
+
86
+ generator = Bollettino::Generator.new
87
+
88
+ CSV.new(open(options[:source]), headers: :first_row).each_with_index do |line, index|
89
+ %w(payee-account payee-name payer-name payer-street payer-zip payer-location order-numamount order-textamount order-reason).each do |header|
90
+ raise "#{header} header is required on line #{index + 1}" unless line.header?(header)
91
+ end
92
+
93
+ payee = Bollettino::Payee.new(
94
+ account_number: line['payee-account'],
95
+ name: line['payee-name']
96
+ )
97
+
98
+ payer = Bollettino::Payer.new(
99
+ name: line['payer-name'],
100
+ address: Bollettino::Address.new(
101
+ street: line['payer-street'],
102
+ zip: line['payer-zip'],
103
+ location: line['payer-location']
104
+ )
105
+ )
106
+
107
+ payment_order = Bollettino::PaymentOrder.new(
108
+ numeric_amount: line['order-numamount'],
109
+ text_amount: line['order-textamount'],
110
+ reason: line['order-reason']
111
+ )
112
+
113
+ slip = Bollettino::Slip.new(
114
+ payee: payee,
115
+ payer: payer,
116
+ payment_order: payment_order
117
+ )
118
+
119
+ generator.generate!(slip, "#{args[0]}/#{index + 1}.png")
120
+ end
121
+ end
122
+ end
123
+
124
+ exit run(ARGV)
@@ -0,0 +1,31 @@
1
+ # coding: utf-8
2
+ lib = File.expand_path('../lib', __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require 'bollettino/cli/version'
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = 'bollettino-cli'
8
+ spec.version = Bollettino::CLI::VERSION
9
+ spec.authors = ['Alessandro Desantis']
10
+ spec.email = ['desa.alessandro@gmail.com']
11
+ spec.summary = 'A CLI for the Bollettino library.'
12
+ spec.description = 'bollettino-cli is a CLI for the Bollettino library. It supports generation from CSV files as well.'
13
+ spec.homepage = 'https://github.com/interconn-isp/bollettino-cli'
14
+ spec.license = 'MIT'
15
+
16
+ spec.files = `git ls-files -z`.split("\x0")
17
+ spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
18
+ spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
+ spec.require_paths = ['lib']
20
+
21
+ spec.bindir = 'bin'
22
+ spec.executables << 'bollettino-cli'
23
+
24
+ spec.add_development_dependency 'bundler', '~> 1.7'
25
+ spec.add_development_dependency 'rake', '~> 10.3'
26
+ spec.add_development_dependency 'rspec', '~> 3.1'
27
+ spec.add_development_dependency 'mocha', '~> 1.1'
28
+
29
+ spec.add_runtime_dependency 'bollettino', '~> 0.1'
30
+ spec.add_runtime_dependency 'gli', '~> 2.12'
31
+ end
@@ -0,0 +1,5 @@
1
+ module Bollettino
2
+ module CLI
3
+ VERSION = '0.1.0'
4
+ end
5
+ end
@@ -0,0 +1,9 @@
1
+ require 'bollettino'
2
+ require 'csv'
3
+
4
+ require 'bollettino/cli/version'
5
+
6
+ module Bollettino
7
+ module CLI
8
+ end
9
+ end
@@ -0,0 +1,2 @@
1
+ "payee-account","payee-name","payer-name","payer-street","payer-zip","payer-location","order-numamount","order-textamount","order-reason"
2
+ "0123456789","Acme Inc.","John Doe","1600 Pennsylvania Ave","2500","Washington,D.C.","12.54","Dodidici/54","Invoice INV-123"
@@ -0,0 +1,24 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe 'The csv-generate command' do
4
+ let(:options) do
5
+ options = ''
6
+ options += "--source='#{source_path}'"
7
+ options
8
+ end
9
+
10
+ let(:source_path) { File.expand_path('../../fixtures/slips.csv', __FILE__) }
11
+ let(:slips_path) { File.expand_path('../../../tmp', __FILE__) }
12
+ let(:slip_path) { "#{slips_path}/1.png" }
13
+ let(:bin_path) { File.expand_path('../../../bin/bollettino-cli', __FILE__) }
14
+
15
+ before(:each) do
16
+ FileUtils.rm(slip_path) if File.exist?(slip_path)
17
+ end
18
+
19
+ it 'generates the slip' do
20
+ expect {
21
+ `#{bin_path} csv-generate #{options} #{slips_path}`
22
+ }.to change{ File.exist?(slip_path) }.from(false).to(true)
23
+ end
24
+ end
@@ -0,0 +1,32 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe 'The generate command' do
4
+ let(:options) do
5
+ options = ''
6
+
7
+ options += "--payee-account='0123456789'"
8
+ options += " --payee-name='Acme Inc.'"
9
+ options += " --payer-name='John Doe'"
10
+ options += " --payer-street='1600 Pennsylvania Ave'"
11
+ options += " --payer-zip='20500'"
12
+ options += " --payer-location='Washington D.C.'"
13
+ options += " --order-numamount='12.35'"
14
+ options += " --order-textamount='Dodici/35'"
15
+ options += " --order-reason='Invoice INV-123'"
16
+
17
+ options
18
+ end
19
+
20
+ let(:slip_path) { File.expand_path('../../../tmp/slip.png', __FILE__) }
21
+ let(:bin_path) { File.expand_path('../../../bin/bollettino-cli', __FILE__) }
22
+
23
+ before(:each) do
24
+ FileUtils.rm(slip_path) if File.exist?(slip_path)
25
+ end
26
+
27
+ it 'generates the slip' do
28
+ expect {
29
+ `#{bin_path} generate #{options} #{slip_path}`
30
+ }.to change{ File.exist?(slip_path) }.from(false).to(true)
31
+ end
32
+ end
@@ -0,0 +1,84 @@
1
+ require 'bollettino/cli'
2
+
3
+ # This file was generated by the `rspec --init` command. Conventionally, all
4
+ # specs live under a `spec` directory, which RSpec adds to the `$LOAD_PATH`.
5
+ # The generated `.rspec` file contains `--require spec_helper` which will cause this
6
+ # file to always be loaded, without a need to explicitly require it in any files.
7
+ #
8
+ # Given that it is always loaded, you are encouraged to keep this file as
9
+ # light-weight as possible. Requiring heavyweight dependencies from this file
10
+ # will add to the boot time of your test suite on EVERY test run, even for an
11
+ # individual file that may not need all of that loaded. Instead, consider making
12
+ # a separate helper file that requires the additional dependencies and performs
13
+ # the additional setup, and require it from the spec files that actually need it.
14
+ #
15
+ # The `.rspec` file also contains a few flags that are not defaults but that
16
+ # users commonly want.
17
+ #
18
+ # See http://rubydoc.info/gems/rspec-core/RSpec/Core/Configuration
19
+ RSpec.configure do |config|
20
+ # rspec-expectations config goes here. You can use an alternate
21
+ # assertion/expectation library such as wrong or the stdlib/minitest
22
+ # assertions if you prefer.
23
+ config.expect_with :rspec do |expectations|
24
+ # This option will default to `true` in RSpec 4. It makes the `description`
25
+ # and `failure_message` of custom matchers include text for helper methods
26
+ # defined using `chain`, e.g.:
27
+ # be_bigger_than(2).and_smaller_than(4).description
28
+ # # => "be bigger than 2 and smaller than 4"
29
+ # ...rather than:
30
+ # # => "be bigger than 2"
31
+ expectations.include_chain_clauses_in_custom_matcher_descriptions = true
32
+ end
33
+
34
+ # rspec-mocks config goes here. You can use an alternate test double
35
+ # library (such as bogus or mocha) by changing the `mock_with` option here.
36
+ config.mock_with :mocha
37
+
38
+ # The settings below are suggested to provide a good initial experience
39
+ # with RSpec, but feel free to customize to your heart's content.
40
+ # These two settings work together to allow you to limit a spec run
41
+ # to individual examples or groups you care about by tagging them with
42
+ # `:focus` metadata. When nothing is tagged with `:focus`, all examples
43
+ # get run.
44
+ config.filter_run :focus
45
+ config.run_all_when_everything_filtered = true
46
+
47
+ # Limits the available syntax to the non-monkey patched syntax that is recommended.
48
+ # For more details, see:
49
+ # - http://myronmars.to/n/dev-blog/2012/06/rspecs-new-expectation-syntax
50
+ # - http://teaisaweso.me/blog/2013/05/27/rspecs-new-message-expectation-syntax/
51
+ # - http://myronmars.to/n/dev-blog/2014/05/notable-changes-in-rspec-3#new__config_option_to_disable_rspeccore_monkey_patching
52
+ config.disable_monkey_patching!
53
+
54
+ # This setting enables warnings. It's recommended, but in some cases may
55
+ # be too noisy due to issues in dependencies.
56
+ config.warnings = false
57
+
58
+ # Many RSpec users commonly either run the entire suite or an individual
59
+ # file, and it's useful to allow more verbose output when running an
60
+ # individual spec file.
61
+ if config.files_to_run.one?
62
+ # Use the documentation formatter for detailed output,
63
+ # unless a formatter has already been configured
64
+ # (e.g. via a command-line flag).
65
+ config.default_formatter = 'doc'
66
+ end
67
+
68
+ # Print the 10 slowest examples and example groups at the
69
+ # end of the spec run, to help surface which specs are running
70
+ # particularly slow.
71
+ config.profile_examples = false
72
+
73
+ # Run specs in random order to surface order dependencies. If you find an
74
+ # order dependency and want to debug it, you can fix the order by providing
75
+ # the seed, which is printed after each run.
76
+ # --seed 1234
77
+ config.order = :random
78
+
79
+ # Seed global randomization in this process using the `--seed` CLI option.
80
+ # Setting this allows you to use `--seed` to deterministically reproduce
81
+ # test failures related to randomization by passing the same `--seed` value
82
+ # as the one that triggered the failure.
83
+ Kernel.srand config.seed
84
+ end
@@ -0,0 +1,4 @@
1
+ require 'spec_helper'
2
+
3
+ RSpec.describe Bollettino::CLI do
4
+ end
data/tmp/.keep ADDED
File without changes
metadata ADDED
@@ -0,0 +1,153 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bollettino-cli
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.1.0
5
+ platform: ruby
6
+ authors:
7
+ - Alessandro Desantis
8
+ autorequire:
9
+ bindir: bin
10
+ cert_chain: []
11
+ date: 2014-11-23 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: bundler
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
19
+ version: '1.7'
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: '1.7'
27
+ - !ruby/object:Gem::Dependency
28
+ name: rake
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - "~>"
32
+ - !ruby/object:Gem::Version
33
+ version: '10.3'
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - "~>"
39
+ - !ruby/object:Gem::Version
40
+ version: '10.3'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rspec
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '3.1'
48
+ type: :development
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '3.1'
55
+ - !ruby/object:Gem::Dependency
56
+ name: mocha
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '1.1'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '1.1'
69
+ - !ruby/object:Gem::Dependency
70
+ name: bollettino
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - "~>"
74
+ - !ruby/object:Gem::Version
75
+ version: '0.1'
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - "~>"
81
+ - !ruby/object:Gem::Version
82
+ version: '0.1'
83
+ - !ruby/object:Gem::Dependency
84
+ name: gli
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - "~>"
88
+ - !ruby/object:Gem::Version
89
+ version: '2.12'
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - "~>"
95
+ - !ruby/object:Gem::Version
96
+ version: '2.12'
97
+ description: bollettino-cli is a CLI for the Bollettino library. It supports generation
98
+ from CSV files as well.
99
+ email:
100
+ - desa.alessandro@gmail.com
101
+ executables:
102
+ - bollettino-cli
103
+ extensions: []
104
+ extra_rdoc_files: []
105
+ files:
106
+ - ".gitignore"
107
+ - ".rspec"
108
+ - ".travis.yml"
109
+ - CHANGELOG.md
110
+ - Gemfile
111
+ - Gemfile.lock
112
+ - README.md
113
+ - Rakefile
114
+ - bin/bollettino-cli
115
+ - bollettino-cli.gemspec
116
+ - lib/bollettino/cli.rb
117
+ - lib/bollettino/cli/version.rb
118
+ - spec/fixtures/slips.csv
119
+ - spec/integration/csv_generate_spec.rb
120
+ - spec/integration/generate_spec.rb
121
+ - spec/spec_helper.rb
122
+ - spec/unit/bollettino/cli.rb
123
+ - tmp/.keep
124
+ homepage: https://github.com/interconn-isp/bollettino-cli
125
+ licenses:
126
+ - MIT
127
+ metadata: {}
128
+ post_install_message:
129
+ rdoc_options: []
130
+ require_paths:
131
+ - lib
132
+ required_ruby_version: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - ">="
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
137
+ required_rubygems_version: !ruby/object:Gem::Requirement
138
+ requirements:
139
+ - - ">="
140
+ - !ruby/object:Gem::Version
141
+ version: '0'
142
+ requirements: []
143
+ rubyforge_project:
144
+ rubygems_version: 2.4.3
145
+ signing_key:
146
+ specification_version: 4
147
+ summary: A CLI for the Bollettino library.
148
+ test_files:
149
+ - spec/fixtures/slips.csv
150
+ - spec/integration/csv_generate_spec.rb
151
+ - spec/integration/generate_spec.rb
152
+ - spec/spec_helper.rb
153
+ - spec/unit/bollettino/cli.rb