simple_spreadsheets 0.0.1 → 0.0.2

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,15 +1,7 @@
1
1
  ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- MzRlYzFkMzk2MjA4MDVlYjJiZmZlN2RkMDc5YTU3YTgzZTRkNTNkNQ==
5
- data.tar.gz: !binary |-
6
- Nzg3Mzk5YTkzNWY1ZGEzMThkY2I4ZmNmNTQxZTFmOGQ1ZGY4M2FjNw==
2
+ SHA1:
3
+ metadata.gz: ae902fd8c1aa3b752ad60d822d1b9c6280aae802
4
+ data.tar.gz: 53619c18c3659bf16ca7012430983b364bcb534b
7
5
  SHA512:
8
- metadata.gz: !binary |-
9
- N2U1YjVmNTcxOTIwNDg4ZTdlY2Y0NGYxZTlkMmE0YmI3ZWYxMjc4MzBmZWQ2
10
- MTI4YTFmOWI4ZGRiYjBhMGIwMzJkMDdlMjAzY2M5ZTE1NWE1YjM1NzdiMjI5
11
- NGIwZDc4N2MzZDg4NTgwNDU2MjdmYjhkMjFlMThiMDAyMjM3Y2E=
12
- data.tar.gz: !binary |-
13
- MjI1NjMzMWU4MGE5NWVjMTUyYjY3NWVmYjY4YjlmY2IxOGNlYmE2NzFiZDcx
14
- MWRmNDAwNzZlZjU2YTY1YjExY2RjM2JiNWYzZTFhYTJhMTE2MmY5NDlmMmRk
15
- ZTI4YWY4OTkxODQ2NDI1NzkyYWFiM2Y0NmY0YWNjZWJlOGE4Yjk=
6
+ metadata.gz: f6554a3858f63ab6a8e5c4905d773c9c58db330de95aea2f36a52d1bcad448e090289d61ac996a063c778dedee32ea41dba6511bd74172f0b8df264f40e3fa87
7
+ data.tar.gz: 905a3a2c211ef9b8d18ad47d6f376d8b1f70c5a866a5dd1142a00a8e25dc9e8ccd0a273a101826b922e2e4d7ba3eb0482f85263afcc74bab30ef62d6a3101c10
data/.rspec ADDED
@@ -0,0 +1,2 @@
1
+ --format documentation
2
+ --color
data/README.md CHANGED
@@ -101,8 +101,8 @@ Or install it yourself as:
101
101
 
102
102
  ## About Foraker Labs
103
103
 
104
- <img src="http://assets.foraker.com/foraker_logo.png" width="400" height="62">
104
+ ![Foraker Logo](http://assets.foraker.com/attribution_logo.png)
105
105
 
106
- This project is maintained by Foraker Labs. The names and logos of Foraker Labs are fully owned and copyright Foraker Design, LLC.
106
+ Foraker Labs builds exciting web and mobile apps in Boulder, CO. Our work powers a wide variety of businesses with many different needs. We love open source software, and we're proud to contribute where we can. Interested to learn more? [Contact us today](https://www.foraker.com/contact-us).
107
107
 
108
- Foraker Labs is a Boulder-based Ruby on Rails and iOS development shop. Please reach out if we can [help build your product](http://www.foraker.com).
108
+ This project is maintained by Foraker Labs. The names and logos of Foraker Labs are fully owned and copyright Foraker Design, LLC.
@@ -1,6 +1,7 @@
1
1
  require "simple_spreadsheets/version"
2
2
  require "simple_spreadsheets/rendering"
3
3
  require "simple_spreadsheets/document"
4
+ require "active_support/dependencies/autoload"
4
5
  require "active_support/core_ext"
5
6
 
6
7
  module SimpleSpreadsheets
@@ -2,6 +2,8 @@ module SimpleSpreadsheets
2
2
  class Document
3
3
  include Rendering
4
4
 
5
+ attr_reader :title
6
+
5
7
  def self.render(title)
6
8
  instance = new(title)
7
9
  yield instance
@@ -4,7 +4,7 @@
4
4
  xmlns:x="urn:schemas-microsoft-com:office:excel"
5
5
  xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
6
6
  xmlns:html="http://www.w3.org/TR/REC-html40">
7
- <ss:Worksheet ss:Name="Acceptances">
7
+ <ss:Worksheet ss:Name="<%= title %>">
8
8
  <ss:Table>
9
9
  <%= render_rows %>
10
10
  </ss:Table>
@@ -1,3 +1,3 @@
1
1
  module SimpleSpreadsheets
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -6,6 +6,7 @@ require 'simple_spreadsheets/version'
6
6
  Gem::Specification.new do |spec|
7
7
  spec.name = "simple_spreadsheets"
8
8
  spec.version = SimpleSpreadsheets::VERSION
9
+ spec.date = '2016-03-23'
9
10
  spec.authors = ["Foraker Labs"]
10
11
  spec.email = ["llc@foraker.com"]
11
12
  spec.summary = %q{Easily render Excel-friendly spreadsheets.}
@@ -18,6 +19,10 @@ Gem::Specification.new do |spec|
18
19
  spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
19
20
  spec.require_paths = ["lib"]
20
21
 
22
+ spec.add_dependency "activesupport"
23
+
21
24
  spec.add_development_dependency "bundler", "~> 1.9"
22
25
  spec.add_development_dependency "rake", "~> 10.0"
26
+ spec.add_development_dependency "rspec", "~> 3"
27
+ spec.add_development_dependency "nokogiri"
23
28
  end
@@ -0,0 +1,21 @@
1
+ <?xml version="1.0"?>
2
+ <ss:Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
3
+ xmlns:o="urn:schemas-microsoft-com:office:office"
4
+ xmlns:x="urn:schemas-microsoft-com:office:excel"
5
+ xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
6
+ xmlns:html="http://www.w3.org/TR/REC-html40">
7
+ <ss:Worksheet ss:Name="Title">
8
+ <ss:Table>
9
+ <ss:Row>
10
+ <ss:Cell><ss:Data ss:Type="String">Row 1 title</ss:Data></ss:Cell>
11
+ <ss:Cell><ss:Data ss:Type="String">Row 2 title</ss:Data></ss:Cell>
12
+ <ss:Cell><ss:Data ss:Type="String">Row 3 title</ss:Data></ss:Cell>
13
+ </ss:Row>
14
+ <ss:Row>
15
+ <ss:Cell><ss:Data ss:Type="String">Row 1 value</ss:Data></ss:Cell>
16
+ <ss:Cell><ss:Data ss:Type="String">Row 2 value</ss:Data></ss:Cell>
17
+ <ss:Cell><ss:Data ss:Type="Number">10</ss:Data></ss:Cell>
18
+ </ss:Row>
19
+ </ss:Table>
20
+ </ss:Worksheet>
21
+ </ss:Workbook>
@@ -0,0 +1,30 @@
1
+ require "spec_helper"
2
+ require "nokogiri"
3
+
4
+ describe SimpleSpreadsheets do
5
+ describe "#render" do
6
+ let(:expected) { File.read(File.expand_path("../fixtures/spreadsheet.xls", __FILE__)) }
7
+ let(:actual) do
8
+ described_class.render("Title") do |xls|
9
+ xls.row do |row|
10
+ row.string "Row 1 title"
11
+ row.string "Row 2 title"
12
+ row.string "Row 3 title"
13
+ end
14
+ xls.row do |row|
15
+ row.string "Row 1 value"
16
+ row.string "Row 2 value"
17
+ row.number 10
18
+ end
19
+ end
20
+ end
21
+
22
+ it "builds a valid XLS file" do
23
+ expect(normalize(actual)).to eq normalize(expected)
24
+ end
25
+
26
+ def normalize(xml)
27
+ xml.gsub(/\n|\s\s/, "")
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,2 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'simple_spreadsheets'
metadata CHANGED
@@ -1,43 +1,85 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_spreadsheets
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Foraker Labs
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-06-26 00:00:00.000000000 Z
11
+ date: 2016-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: activesupport
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
20
+ type: :runtime
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
13
27
  - !ruby/object:Gem::Dependency
14
28
  name: bundler
15
29
  requirement: !ruby/object:Gem::Requirement
16
30
  requirements:
17
- - - ~>
31
+ - - "~>"
18
32
  - !ruby/object:Gem::Version
19
33
  version: '1.9'
20
34
  type: :development
21
35
  prerelease: false
22
36
  version_requirements: !ruby/object:Gem::Requirement
23
37
  requirements:
24
- - - ~>
38
+ - - "~>"
25
39
  - !ruby/object:Gem::Version
26
40
  version: '1.9'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: rake
29
43
  requirement: !ruby/object:Gem::Requirement
30
44
  requirements:
31
- - - ~>
45
+ - - "~>"
32
46
  - !ruby/object:Gem::Version
33
47
  version: '10.0'
34
48
  type: :development
35
49
  prerelease: false
36
50
  version_requirements: !ruby/object:Gem::Requirement
37
51
  requirements:
38
- - - ~>
52
+ - - "~>"
39
53
  - !ruby/object:Gem::Version
40
54
  version: '10.0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: rspec
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - "~>"
60
+ - !ruby/object:Gem::Version
61
+ version: '3'
62
+ type: :development
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - "~>"
67
+ - !ruby/object:Gem::Version
68
+ version: '3'
69
+ - !ruby/object:Gem::Dependency
70
+ name: nokogiri
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: '0'
76
+ type: :development
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: '0'
41
83
  description: A gem for simply rendering xls.
42
84
  email:
43
85
  - llc@foraker.com
@@ -45,7 +87,8 @@ executables: []
45
87
  extensions: []
46
88
  extra_rdoc_files: []
47
89
  files:
48
- - .gitignore
90
+ - ".gitignore"
91
+ - ".rspec"
49
92
  - Gemfile
50
93
  - LICENSE.txt
51
94
  - README.md
@@ -58,7 +101,11 @@ files:
58
101
  - lib/simple_spreadsheets/templates/document.xml.erb
59
102
  - lib/simple_spreadsheets/templates/row.xml.erb
60
103
  - lib/simple_spreadsheets/version.rb
104
+ - simple_spreadsheets-0.0.1.gem
61
105
  - simple_spreadsheets.gemspec
106
+ - spec/fixtures/spreadsheet.xls
107
+ - spec/simple_spreadsheets_spec.rb
108
+ - spec/spec_helper.rb
62
109
  homepage: ''
63
110
  licenses:
64
111
  - MIT
@@ -69,18 +116,21 @@ require_paths:
69
116
  - lib
70
117
  required_ruby_version: !ruby/object:Gem::Requirement
71
118
  requirements:
72
- - - ! '>='
119
+ - - ">="
73
120
  - !ruby/object:Gem::Version
74
121
  version: '0'
75
122
  required_rubygems_version: !ruby/object:Gem::Requirement
76
123
  requirements:
77
- - - ! '>='
124
+ - - ">="
78
125
  - !ruby/object:Gem::Version
79
126
  version: '0'
80
127
  requirements: []
81
128
  rubyforge_project:
82
- rubygems_version: 2.2.2
129
+ rubygems_version: 2.5.1
83
130
  signing_key:
84
131
  specification_version: 4
85
132
  summary: Easily render Excel-friendly spreadsheets.
86
- test_files: []
133
+ test_files:
134
+ - spec/fixtures/spreadsheet.xls
135
+ - spec/simple_spreadsheets_spec.rb
136
+ - spec/spec_helper.rb