see_as_vee 0.2.4 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 529772ecb2b914387975a2eb9e3db531dc46fc94
4
- data.tar.gz: 48ea69cda5a0c08c466326fe91a8f9edbb4f4eb4
3
+ metadata.gz: 1029e8e97bc4e8812d7c19928722db03825a1122
4
+ data.tar.gz: 32200f35545b5a8f2ed9c64cc46c81dd0bc4c395
5
5
  SHA512:
6
- metadata.gz: c037c08d99e6bc9b1da15fd006ba53ff24671b3e6880e6abc66b8c12fd23bd1b2a16b6043e548d404d4df226f8df600bcf887ae1fdc75c3255036bdebaadaca1
7
- data.tar.gz: 6959cd72d7cc06590d5fd0d333255927507c106ef3c2bb712381a935e62ff4e51d01483c2c47f397bbb4c0e0530a7c9f44a7f080d07e699f634c86d40dfc1894
6
+ metadata.gz: 3cb227e8a1ca4d1eadff73ffbe8ef4fcd9c70575df8cc323926948c0019a206a2a4ed04d86dcdb477569596b2cba37d08ae12e58b7c2de2d45018f6c1489f73f
7
+ data.tar.gz: 578d65fcc74d7ae0db7cfff090301fd52bf87940ae5fe747396b384941c4237730679ba04ca4ed3c8f74188abdbd91500ae9223ef83c381418f86abcdd6502b2
data/.rubocop.yml CHANGED
@@ -9,7 +9,12 @@ Style/RaiseArgs:
9
9
  Exclude:
10
10
  - 'spec/**/*'
11
11
  - 'lib/**/*'
12
-
12
+
13
+ Style/AsciiComments:
14
+ Exclude:
15
+ - 'spec/**/*'
16
+ - 'lib/**/*'
17
+
13
18
  Style/MethodDefParentheses:
14
19
  EnforcedStyle: require_no_parentheses
15
20
 
data/.travis.yml CHANGED
@@ -1,9 +1,12 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.1.8
4
- - 2.2.0
3
+ - 2.2.2
4
+ - 2.3.1
5
5
  before_install: gem install bundler -v 1.10.6
6
6
 
7
7
  addons:
8
8
  code_climate:
9
9
  repo_token: 2e5471e8b02ecddecb5452adf02b990d8203698ab6ae919b40ce179f4a8a926a
10
+
11
+ after_script:
12
+ - codeclimate-test-reporter < lcov.info
data/Gemfile CHANGED
@@ -2,4 +2,8 @@ source 'https://rubygems.org'
2
2
 
3
3
  # Specify your gem's dependencies in see_as_vee.gemspec
4
4
  gemspec
5
- gem "codeclimate-test-reporter", group: :test, require: nil
5
+
6
+ group :test do
7
+ gem "simplecov"
8
+ gem "codeclimate-test-reporter", "~> 1.0.0"
9
+ end
data/README.md CHANGED
@@ -35,6 +35,8 @@ Or install it yourself as:
35
35
 
36
36
  ## Usage
37
37
 
38
+ ### Load and validate
39
+
38
40
  ```ruby
39
41
  sheet = SeeAsVee.harvest(
40
42
  'spec/fixtures/velocity.xlsx', # file exists ⇒ will be loaded
@@ -55,6 +57,25 @@ Or install it yourself as:
55
57
  expect(xlsx.length > 0).to eq true
56
58
  ```
57
59
 
60
+ ### Produce
61
+
62
+ ```ruby
63
+ ▶ require 'see_as_vee'
64
+ #⇒ true
65
+ ▶ SeeAsVee.csv(
66
+ ▷ [{name: 'Aleksei', value: 42}, {name: 'John', value: 3.14}], col_sep: "\t"
67
+ ▷ )
68
+ #⇒ #<File:/tmp/am/see_as_vee20161109-6031-6he5m7.csv>
69
+ # -rw------- 1 am am 32 nov 9 07:18 /tmp/am/see_as_vee20161109-6031-6he5m7.csv
70
+ ▶ .cat /tmp/am/see_as_vee20161109-6031-6he5m7.csv
71
+ #⇒ name value
72
+ # Aleksei 42
73
+ # John 3.14
74
+ ```
75
+
76
+ ## Changelog
77
+
78
+ ### `0.2.5` support for CSV options
58
79
 
59
80
  ## Development
60
81
 
@@ -64,13 +64,13 @@ module SeeAsVee
64
64
  end
65
65
  end
66
66
 
67
- def csv *args
68
- result, = Hashes.new(*args).to_sheet.produce
67
+ def csv *args, **params
68
+ result, = Hashes.new(*args).to_sheet.produce csv: true, xlsx: false, **params
69
69
  result
70
70
  end
71
71
 
72
- def xlsx *args
73
- _, result = Hashes.new(*args).to_sheet.produce csv: false, xlsx: true
72
+ def xlsx *args, **params
73
+ _, result = Hashes.new(*args).to_sheet.produce csv: false, xlsx: true, **params
74
74
  result
75
75
  end
76
76
  end
@@ -8,7 +8,7 @@ module SeeAsVee
8
8
  fg_color: "FFFFFFFF",
9
9
  sz: 14,
10
10
  border: { style: :thin, color: "FFFF0000" }
11
- } # don’t .freeze because asxlx wants to modify it
11
+ }.freeze
12
12
 
13
13
  attr_reader :rows, :formatters, :checkers
14
14
  def initialize whatever, formatters: {}, checkers: {}
@@ -43,8 +43,8 @@ module SeeAsVee
43
43
  end
44
44
  end
45
45
 
46
- def produce csv: true, xlsx: nil
47
- [csv && produce_csv, xlsx && produce_xlsx]
46
+ def produce csv: true, xlsx: nil, **params
47
+ [csv && produce_csv(**params), xlsx && produce_xlsx(**params)]
48
48
  end
49
49
 
50
50
  private
@@ -53,18 +53,18 @@ module SeeAsVee
53
53
  str.to_s =~ /\A#{CELL_ERROR_MARKER}/
54
54
  end
55
55
 
56
- def produce_csv
56
+ def produce_csv **params
57
57
  Tempfile.new(['see_as_vee', '.csv']).tap do |f|
58
- CSV.open(f.path, "wb") do |content|
58
+ CSV.open(f.path, "wb", params) do |content|
59
59
  @rows.each { |row| content << row }
60
60
  end unless @rows.empty?
61
61
  end
62
62
  end
63
63
 
64
- def produce_xlsx
64
+ def produce_xlsx **_params
65
65
  Tempfile.new(['see_as_vee', '.xlsx']).tap do |f|
66
66
  Axlsx::Package.new do |p|
67
- red = p.workbook.styles.add_style(**CELL_ERROR_STYLE)
67
+ red = p.workbook.styles.add_style(**CELL_ERROR_STYLE.dup)
68
68
  p.workbook.add_worksheet(name: 'Processing errors shown in red') do |sheet|
69
69
  @rows.each { |row| sheet.add_row row, style: row.map { |cell| malformed?(cell) ? red : nil } }
70
70
  end
@@ -1,3 +1,3 @@
1
1
  module SeeAsVee
2
- VERSION = "0.2.4".freeze
2
+ VERSION = '0.2.5'.freeze
3
3
  end
data/lib/see_as_vee.rb CHANGED
@@ -26,13 +26,13 @@ module SeeAsVee
26
26
  end
27
27
  module_function :harvest
28
28
 
29
- def csv *args
30
- SeeAsVee::Producers::Hashes.csv(*args)
29
+ def csv *args, **params
30
+ SeeAsVee::Producers::Hashes.csv(*args, **params)
31
31
  end
32
32
  module_function :csv
33
33
 
34
- def xlsx *args
35
- SeeAsVee::Producers::Hashes.xlsx(*args)
34
+ def xlsx *args, **params
35
+ SeeAsVee::Producers::Hashes.xlsx(*args, **params)
36
36
  end
37
37
  module_function :xlsx
38
38
  end
data/see_as_vee.gemspec CHANGED
@@ -35,4 +35,7 @@ Gem::Specification.new do |spec|
35
35
  spec.add_development_dependency 'rspec'
36
36
  spec.add_development_dependency 'pry'
37
37
  spec.add_development_dependency 'awesome_print'
38
+
39
+ # spec.add_development_dependency 'codeclimate-test-reporter'
40
+ # spec.add_development_dependency 'simplecov', '~> 0.12.0'
38
41
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: see_as_vee
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.4
4
+ version: 0.2.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Aleksei Matiushkin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2016-11-08 00:00:00.000000000 Z
11
+ date: 2016-11-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: simple_xlsx_reader