resumetools 0.2.7.6 → 0.2.8

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: a9e2ead7740e046277eb9d78c1b895c381a8cc7b
4
+ data.tar.gz: e03fd47d6da9f350ed7805a225821e448e6711a5
5
+ SHA512:
6
+ metadata.gz: c938691dc0ae9d95fd7d01e2bd0c8d164789740e1df913184661dd45e0fad5fb3e62b2240d71f7f728b65f5eea253c8ed7be436caf1fa1cc14ce720a9333d40b
7
+ data.tar.gz: 11a85e3ebbd6b262fa0783deaf06a9b2564d2214a1ebb2d3af45d2f1591bd767659121661bd503866839d3754bbf25ff3347a769b4bcc8c4d0a663e61bc4de41
data/Gemfile ADDED
@@ -0,0 +1,4 @@
1
+ source "https://rubygems.org"
2
+
3
+ # See tasks/gem.rake GEM_SPEC for gem requirements
4
+ gemspec
data/Gemfile.lock ADDED
@@ -0,0 +1,46 @@
1
+ PATH
2
+ remote: .
3
+ specs:
4
+ resumetools (0.2.8)
5
+ extlib
6
+ json_pure
7
+ prawn (>= 0.7.1)
8
+ treetop (>= 1.3.0)
9
+ uuidtools
10
+
11
+ GEM
12
+ remote: https://rubygems.org/
13
+ specs:
14
+ diff-lcs (1.2.5)
15
+ extlib (0.9.16)
16
+ json_pure (1.8.2)
17
+ pdf-core (0.4.0)
18
+ polyglot (0.3.5)
19
+ prawn (1.3.0)
20
+ pdf-core (~> 0.4.0)
21
+ ttfunk (~> 1.4.0)
22
+ rake (10.4.2)
23
+ rspec (3.1.0)
24
+ rspec-core (~> 3.1.0)
25
+ rspec-expectations (~> 3.1.0)
26
+ rspec-mocks (~> 3.1.0)
27
+ rspec-core (3.1.7)
28
+ rspec-support (~> 3.1.0)
29
+ rspec-expectations (3.1.2)
30
+ diff-lcs (>= 1.2.0, < 2.0)
31
+ rspec-support (~> 3.1.0)
32
+ rspec-mocks (3.1.3)
33
+ rspec-support (~> 3.1.0)
34
+ rspec-support (3.1.2)
35
+ treetop (1.5.3)
36
+ polyglot (~> 0.3)
37
+ ttfunk (1.4.0)
38
+ uuidtools (2.1.5)
39
+
40
+ PLATFORMS
41
+ ruby
42
+
43
+ DEPENDENCIES
44
+ rake (>= 0.8.7)
45
+ resumetools!
46
+ rspec (>= 1.2.8)
data/README.md CHANGED
@@ -1,7 +1,9 @@
1
1
  ResumeTools
2
2
  ===========
3
3
 
4
- http://codaset.com/virgil/resumetools
4
+ https://github.com/virgild/resumetools
5
+
6
+ ![Travis-CI](https://travis-ci.org/virgild/resumetools.svg)
5
7
 
6
8
  DESCRIPTION:
7
9
  ------------
@@ -75,7 +77,7 @@ CODE:
75
77
  The source code is available at:
76
78
 
77
79
  http://codaset.com/virgil/resumetools
78
-
80
+
79
81
  To get the source code using git:
80
82
 
81
83
  $ git clone git://codaset.com/virgil/resumetools.git
@@ -95,7 +97,7 @@ Building a resume model
95
97
  myresume.address1 = "221 Relativity Circle"
96
98
  myresume.address2 = "Princeton, NJ"
97
99
  myresume.email = "albert.einstein@science.org"
98
-
100
+
99
101
  # Add a section, "Career Goals"
100
102
  myresume.create_section do |section|
101
103
  section.title = "Career Goals"
@@ -114,40 +116,40 @@ Example of a resume text format:
114
116
  #T (410) 555-1212
115
117
  #E seeker@nettcom.com
116
118
  #U http://nettcom.com/tseeker
117
-
119
+
118
120
  = Qualifications Summary
119
121
  ---
120
- Nine years of experience in designing, installing, and troubleshooting
121
- computing systems; a proven track record in identifying problems and
122
+ Nine years of experience in designing, installing, and troubleshooting
123
+ computing systems; a proven track record in identifying problems and
122
124
  developing innovative solutions.
123
125
  ---
124
-
126
+
125
127
  = Technical Skills
126
128
 
127
- - PROGRAMMING: C, C++, Visual BASIC, FORTRAN, Pascal, SQL, OSF/Motif,
129
+ - PROGRAMMING: C, C++, Visual BASIC, FORTRAN, Pascal, SQL, OSF/Motif,
128
130
  UNIX Shell Script (sh, ksh, csh), BASIC, Clipper, Algol 68, and 80X86 Assembler.
129
131
 
130
- - OPERATING SYSTEMS: UNIX (bsd & SVr3/r4), MS Windows, MS DOS, MS Windows NT,
132
+ - OPERATING SYSTEMS: UNIX (bsd & SVr3/r4), MS Windows, MS DOS, MS Windows NT,
131
133
  Solaris, HP-UX, Ultrix, AIX, VAX/VMS, and Macintosh System 7.
132
134
 
133
135
  = Professional Experience
134
-
136
+
135
137
  + Systems Engineer
136
138
  >O Computer Engineering Corporation
137
139
  >L Los Angeles, CA
138
140
  >D 1993 to Present
139
- - Provide systems engineering, software engineering, technical consulting, and
140
- marketing services as a member of the Systems Integration Division of a
141
+ - Provide systems engineering, software engineering, technical consulting, and
142
+ marketing services as a member of the Systems Integration Division of a
141
143
  software engineering consulting company.
142
-
144
+
143
145
  + Systems Analyst
144
146
  >O Business Consultants, Inc.
145
147
  >L Washington, DC
146
148
  >D 1990 to 1993
147
- - Provided technical consulting services to the Smithsonian Institute's
149
+ - Provided technical consulting services to the Smithsonian Institute's
148
150
  Information Technology Services Group, Amnesty International, and
149
151
  internal research and development initiatives.
150
-
152
+
151
153
  = Education
152
154
 
153
155
  + Computer Systems Technology Program
@@ -155,19 +157,19 @@ Example of a resume text format:
155
157
 
156
158
  + BS, Mathematics/Computer Science
157
159
  >O University of California, Los Angeles (UCLA)
158
-
160
+
159
161
  = Specialized Training
160
162
 
161
- - Database Administration, Performance Tuning, and Benchmarking with
163
+ - Database Administration, Performance Tuning, and Benchmarking with
162
164
  Oracle7; Oracle Corporation.
163
- - Software Requirements Engineering and Management Course;
165
+ - Software Requirements Engineering and Management Course;
164
166
  Computer Applications International Corporation.
165
167
  - X.400 Messaging and Allied Communications Procedures-123 Profile;
166
168
  ComTechnologies, Inc.
167
169
 
168
170
  See the `examples` directory for a sample resume text and its generated
169
171
  PDF document.
170
-
172
+
171
173
 
172
174
  LIMITATIONS:
173
175
  ------------
data/Rakefile CHANGED
@@ -3,10 +3,12 @@ $:.unshift(lib_dir)
3
3
  $:.uniq!
4
4
 
5
5
  require 'rubygems'
6
+ require 'bundler/setup'
7
+
6
8
  require 'rake'
7
9
  require 'rake/testtask'
8
- require 'rake/rdoctask'
9
- require 'spec/rake/spectask'
10
+ require 'rdoc/task'
11
+ require 'rspec/core/rake_task'
10
12
 
11
13
  require File.join(File.dirname(__FILE__), 'lib', 'resumetools', 'version')
12
14
 
data/lib/resumetools.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  #--
2
2
  # Copyright (c) 2009 Virgil Dimaguila
3
- #
3
+ #
4
4
  # Permission is hereby granted, free of charge, to any person
5
5
  # obtaining a copy of this software and associated documentation
6
6
  # files (the "Software"), to deal in the Software without
@@ -9,10 +9,10 @@
9
9
  # copies of the Software, and to permit persons to whom the
10
10
  # Software is furnished to do so, subject to the following
11
11
  # conditions:
12
- #
12
+ #
13
13
  # The above copyright notice and this permission notice shall be
14
14
  # included in all copies or substantial portions of the Software.
15
- #
15
+ #
16
16
  # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
17
  # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
18
18
  # OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
@@ -24,7 +24,6 @@
24
24
  #++
25
25
 
26
26
  require "prawn"
27
- require "prawn/layout"
28
27
  require "prawn/measurement_extensions"
29
28
  require "extlib"
30
29
  require "uuidtools"
@@ -25,6 +25,6 @@
25
25
 
26
26
  unless defined? ResumeTools::VERSION
27
27
  module ResumeTools
28
- VERSION = "0.2.7.6"
28
+ VERSION = "0.2.8"
29
29
  end
30
30
  end
@@ -0,0 +1,50 @@
1
+ # -*- encoding: utf-8 -*-
2
+ # stub: resumetools 0.2.8 ruby lib
3
+
4
+ Gem::Specification.new do |s|
5
+ s.name = "resumetools"
6
+ s.version = "0.2.8"
7
+
8
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
9
+ s.require_paths = ["lib"]
10
+ s.authors = ["Virgil Dimaguila"]
11
+ s.date = "2015-01-20"
12
+ s.description = "Resume generation and writing tools\n"
13
+ s.email = "virgil@roundysoft.com"
14
+ s.files = ["CHANGES", "Gemfile", "Gemfile.lock", "LICENSE", "README.md", "Rakefile", "examples", "examples/sample.pdf", "examples/sample.resume", "lib", "lib/fonts", "lib/fonts/Vera.ttf", "lib/fonts/VeraBI.ttf", "lib/fonts/VeraBd.ttf", "lib/fonts/VeraIt.ttf", "lib/resumetools", "lib/resumetools.rb", "lib/resumetools/grammars", "lib/resumetools/grammars/resume.treetop", "lib/resumetools/resume", "lib/resumetools/resume/export.rb", "lib/resumetools/resume/json.rb", "lib/resumetools/resume/pdf.rb", "lib/resumetools/resume/plain_text.rb", "lib/resumetools/resume/resume.rb", "lib/resumetools/resume/text_reader.rb", "lib/resumetools/version.rb", "lib/text", "lib/text/format.rb", "resumetools.gemspec", "script", "spec", "spec/grammar_spec.rb", "spec/read_resume_spec.rb", "spec/rendering_pdf_spec.rb", "spec/resume_spec.rb", "spec/spec.opts", "spec/spec_helper.rb", "tasks", "tasks/default.rake", "tasks/gem.rake", "tasks/rdoc.rake", "tasks/rspec.rake", "vendor"]
15
+ s.homepage = "https://github.com/virgild/resumetools"
16
+ s.required_ruby_version = Gem::Requirement.new(">= 1.8.6")
17
+ s.rubyforge_project = "resumetools"
18
+ s.rubygems_version = "2.4.5"
19
+ s.summary = "Resume generation and writing tools"
20
+
21
+ if s.respond_to? :specification_version then
22
+ s.specification_version = 4
23
+
24
+ if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
25
+ s.add_development_dependency(%q<rake>, [">= 0.8.7"])
26
+ s.add_development_dependency(%q<rspec>, [">= 1.2.8"])
27
+ s.add_runtime_dependency(%q<extlib>, [">= 0"])
28
+ s.add_runtime_dependency(%q<prawn>, [">= 0.7.1"])
29
+ s.add_runtime_dependency(%q<treetop>, [">= 1.3.0"])
30
+ s.add_runtime_dependency(%q<json_pure>, [">= 0"])
31
+ s.add_runtime_dependency(%q<uuidtools>, [">= 0"])
32
+ else
33
+ s.add_dependency(%q<rake>, [">= 0.8.7"])
34
+ s.add_dependency(%q<rspec>, [">= 1.2.8"])
35
+ s.add_dependency(%q<extlib>, [">= 0"])
36
+ s.add_dependency(%q<prawn>, [">= 0.7.1"])
37
+ s.add_dependency(%q<treetop>, [">= 1.3.0"])
38
+ s.add_dependency(%q<json_pure>, [">= 0"])
39
+ s.add_dependency(%q<uuidtools>, [">= 0"])
40
+ end
41
+ else
42
+ s.add_dependency(%q<rake>, [">= 0.8.7"])
43
+ s.add_dependency(%q<rspec>, [">= 1.2.8"])
44
+ s.add_dependency(%q<extlib>, [">= 0"])
45
+ s.add_dependency(%q<prawn>, [">= 0.7.1"])
46
+ s.add_dependency(%q<treetop>, [">= 1.3.0"])
47
+ s.add_dependency(%q<json_pure>, [">= 0"])
48
+ s.add_dependency(%q<uuidtools>, [">= 0"])
49
+ end
50
+ end
@@ -6,56 +6,56 @@ describe "Creating a resume from a text" do
6
6
  text = File.read(sample)
7
7
  @resume = ResumeTools::Resume.from_text(text)
8
8
  end
9
-
9
+
10
10
  it "should create a resume" do
11
11
  @resume.should be_instance_of(ResumeTools::Resume)
12
12
  end
13
-
13
+
14
14
  it "should have the correct contact info" do
15
15
  @resume.full_name.should == "Thomas B. Seeker"
16
16
  @resume.address1.should == "1234 Northern Star Circle"
17
17
  @resume.address2.should == "Baltimore, MD 12345"
18
18
  @resume.telephone.should == "(410) 555-1212"
19
19
  end
20
-
20
+
21
21
  it "should have 7 sections" do
22
- @resume.should have(7).sections
22
+ expect(@resume.sections.length).to eq 7
23
23
  end
24
-
24
+
25
25
  it "should have sections in order" do
26
26
  @resume.sections.map { |s| s.title }.should == [
27
27
  "Career Goal",
28
- "Qualifications Summary",
29
- "Technical Skills",
30
- "Professional Experience",
31
- "Education",
32
- "Specialized Training",
28
+ "Qualifications Summary",
29
+ "Technical Skills",
30
+ "Professional Experience",
31
+ "Education",
32
+ "Specialized Training",
33
33
  "Certification, Honors, and Professional Affiliations"
34
34
  ]
35
35
  end
36
-
36
+
37
37
  it "should have a paragraph in the Career Goal section" do
38
38
  @resume.sections[0].para.should_not be_blank
39
39
  end
40
-
40
+
41
41
  it "should have a paragraph in the Qualifications Summary section" do
42
42
  @resume.sections[1].para.should_not be_blank
43
43
  end
44
-
44
+
45
45
  it "should have 4 items in the Technical Skills section" do
46
- @resume.sections[2].should have(4).items
46
+ expect(@resume.sections[2].items.length).to eq 4
47
47
  end
48
-
48
+
49
49
  it "should have 3 periods in the Professional Experience section" do
50
- @resume.sections[3].should have(3).periods
50
+ expect(@resume.sections[3].periods.length).to eq 3
51
51
  end
52
-
52
+
53
53
  it "should have 3 items in the Systems Engineer period" do
54
- @resume.sections[3].periods[0].should have(3).items
54
+ expect(@resume.sections[3].periods[0].items.length).to eq 3
55
55
  end
56
-
56
+
57
57
  it "should have proper dates" do
58
- @resume.sections[3].periods[0].dtstart.should == "1993"
59
- @resume.sections[3].periods[0].dtend.should == "Present"
58
+ expect(@resume.sections[3].periods[0].dtstart).to eq "1993"
59
+ expect(@resume.sections[3].periods[0].dtend).to eq "Present"
60
60
  end
61
61
  end
data/spec/resume_spec.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  #--
2
2
  # Copyright (c) 2009 Virgil Dimaguila
3
- #
3
+ #
4
4
  # Permission is hereby granted, free of charge, to any person
5
5
  # obtaining a copy of this software and associated documentation
6
6
  # files (the "Software"), to deal in the Software without
@@ -9,10 +9,10 @@
9
9
  # copies of the Software, and to permit persons to whom the
10
10
  # Software is furnished to do so, subject to the following
11
11
  # conditions:
12
- #
12
+ #
13
13
  # The above copyright notice and this permission notice shall be
14
14
  # included in all copies or substantial portions of the Software.
15
- #
15
+ #
16
16
  # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
17
  # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
18
18
  # OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
@@ -27,7 +27,7 @@ require File.join(File.dirname(__FILE__), "spec_helper")
27
27
 
28
28
 
29
29
  def resume_attributes
30
- {
30
+ {
31
31
  :full_name => "Albert Einstein",
32
32
  :url => "http://phys6.science.org/einstein",
33
33
  :email => "albert.einstein@science.org",
@@ -61,32 +61,34 @@ describe "Resume" do
61
61
  before do
62
62
  @attributes = resume_attributes
63
63
  end
64
-
64
+
65
65
  it "has initial properties after creation" do
66
66
  @resume = ResumeTools::Resume.new
67
- @resume.full_name.should be_blank
68
- @resume.has_url?.should be_false
69
- @resume.has_email?.should be_false
70
- @resume.has_telephone?.should be_false
71
- @resume.has_address1?.should be_false
72
- @resume.has_address2?.should be_false
73
- @resume.has_sections?.should be_false
67
+
68
+ expect(@resume.full_name).to be_blank
69
+ expect(@resume.has_url?).to be false
70
+ expect(@resume.has_email?).to be false
71
+ expect(@resume.has_telephone?).to be false
72
+ expect(@resume.has_address1?).to be false
73
+ expect(@resume.has_address2?).to be false
74
+ expect(@resume.has_sections?).to be false
74
75
  end
75
-
76
+
76
77
  it "is created with hash properties" do
77
78
  @resume = ResumeTools::Resume.new(@attributes)
78
- @resume.has_url?.should be_true
79
- @resume.has_email?.should be_true
80
- @resume.has_telephone?.should be_true
81
- @resume.has_address1?.should be_true
82
- @resume.has_address2?.should be_true
83
-
84
- @resume.full_name.should == @attributes[:full_name]
85
- @resume.url.should == @attributes[:url]
86
- @resume.telephone.should == @attributes[:telephone]
87
- @resume.address1.should == @attributes[:address1]
88
- @resume.address2.should == @attributes[:address2]
89
- @resume.should have(0).sections
79
+
80
+ expect(@resume.has_url?).to be true
81
+ expect(@resume.has_email?).to be true
82
+ expect(@resume.has_telephone?).to be true
83
+ expect(@resume.has_address1?).to be true
84
+ expect(@resume.has_address2?).to be true
85
+
86
+ expect(@resume.full_name).to eq @attributes[:full_name]
87
+ expect(@resume.url).to eq @attributes[:url]
88
+ expect(@resume.telephone).to eq @attributes[:telephone]
89
+ expect(@resume.address1).to eq @attributes[:address1]
90
+ expect(@resume.address2).to eq @attributes[:address2]
91
+ expect(@resume.sections.length).to eq 0
90
92
  end
91
93
 
92
94
  end
@@ -97,45 +99,47 @@ describe "Section" do
97
99
  @resume = ResumeTools::Resume.new(resume_attributes)
98
100
  @attributes = section_attributes
99
101
  end
100
-
102
+
101
103
  it "is created in resume" do
102
104
  @resume.create_section do |s|
103
105
  s.title = @attributes[:title]
104
106
  s.para = @attributes[:para]
105
107
  end
106
-
107
- @resume.should have(1).sections
108
- @resume.has_sections?.should be_true
108
+
109
+ expect(@resume.sections.length).to eq 1
110
+ expect(@resume.has_sections?).to be true
111
+
109
112
  section = @resume.sections[0]
110
- section.title.should == @attributes[:title]
111
- section.para.should == @attributes[:para]
113
+ expect(section.title).to eq @attributes[:title]
114
+ expect(section.para).to eq @attributes[:para]
112
115
  end
113
-
116
+
114
117
  it "should have no items" do
115
118
  section = ResumeTools::Section.new
116
- section.should have(0).items
117
- section.has_items?.should be_false
119
+ expect(section.items.length).to eq 0
120
+ expect(section.has_items?).to be false
118
121
  end
119
-
122
+
120
123
  it "should have no periods" do
121
124
  section = ResumeTools::Section.new
122
- section.has_periods?.should be_false
125
+ expect(section.has_periods?).to be false
123
126
  end
124
-
125
-
127
+
128
+
126
129
  it "should be able to add items" do
127
130
  section = ResumeTools::Section.new
128
131
  section.create_item do |item|
129
132
  item.text = "This is item A."
130
133
  end
131
- section.should have(1).items
134
+ expect(section.items.length).to eq 1
135
+
132
136
  section.add_item(ResumeTools::Item.new(:text => "This is item B."))
133
- section.should have(2).items
134
- section.items[0].text.should == "This is item A."
135
- section.items[1].text.should == "This is item B."
136
- section.has_items?.should be_true
137
+ expect(section.items.length).to eq 2
138
+ expect(section.items[0].text).to eq "This is item A."
139
+ expect(section.items[1].text).to eq "This is item B."
140
+ expect(section.has_items?).to be true
137
141
  end
138
-
142
+
139
143
  it "is created in the right order" do
140
144
  @resume.create_section do |s|
141
145
  s.title = "First"
@@ -143,9 +147,9 @@ describe "Section" do
143
147
  @resume.create_section do |s|
144
148
  s.title = "Second"
145
149
  end
146
-
147
- @resume.sections[0].title.should == "First"
148
- @resume.sections[1].title.should == "Second"
150
+
151
+ expect(@resume.sections[0].title).to eq "First"
152
+ expect(@resume.sections[1].title).to eq "Second"
149
153
  end
150
154
  end
151
155
 
@@ -157,7 +161,7 @@ describe "Period" do
157
161
  @section = @resume.sections[0]
158
162
  @attributes = period_attributes
159
163
  end
160
-
164
+
161
165
  it "is created in a section" do
162
166
  @section.create_period do |p|
163
167
  p.title = @attributes[:title]
@@ -166,23 +170,23 @@ describe "Period" do
166
170
  p.dtstart = @attributes[:dtstart]
167
171
  p.dtend = @attributes[:dtend]
168
172
  end
169
-
170
- @section.should have(1).periods
173
+ expect(@section.periods.length).to eq 1
174
+
171
175
  period = @section.periods[0]
172
- period.title.should == @attributes[:title]
173
- period.location.should == @attributes[:location]
174
- period.organization.should == @attributes[:organization]
175
- period.dtstart.should == @attributes[:dtstart]
176
- period.dtend.should == @attributes[:dtend]
176
+ expect(period.title).to eq @attributes[:title]
177
+ expect(period.location).to eq @attributes[:location]
178
+ expect(period.organization).to eq @attributes[:organization]
179
+ expect(period.dtstart).to eq @attributes[:dtstart]
180
+ expect(period.dtend).to eq @attributes[:dtend]
177
181
  end
178
-
182
+
179
183
  it "is added in the right order" do
180
184
  @section.create_period :title => "First"
181
185
  @section.create_period :title => "Second"
182
-
183
- @section.should have(2).periods
184
- @section.periods[0].title.should == "First"
185
- @section.periods[1].title.should == "Second"
186
+
187
+ expect(@section.periods.length).to eq 2
188
+ expect(@section.periods[0].title).to eq "First"
189
+ expect(@section.periods[1].title).to eq "Second"
186
190
  end
187
191
  end
188
192
 
@@ -195,23 +199,23 @@ describe "Item" do
195
199
  @period = @resume.sections[0].periods[0]
196
200
  @attributes = item_attributes
197
201
  end
198
-
202
+
199
203
  it "is created in a period" do
200
204
  @period.create_item do |i|
201
205
  i.text = @attributes[:text]
202
206
  end
203
-
204
- @period.should have(1).items
207
+
208
+ expect(@period.items.length).to eq 1
205
209
  item = @period.items[0]
206
- item.text.should == @attributes[:text]
210
+ expect(item.text).to eq @attributes[:text]
207
211
  end
208
-
212
+
209
213
  it "is addd in the right order" do
210
214
  @period.create_item :text => "First"
211
215
  @period.create_item :text => "Second"
212
-
213
- @period.should have(2).items
214
- @period.items[0].text.should == "First"
215
- @period.items[1].text.should == "Second"
216
+
217
+ expect(@period.items.length).to eq 2
218
+ expect(@period.items[0].text).to eq "First"
219
+ expect(@period.items[1].text).to eq "Second"
216
220
  end
217
221
  end
data/spec/spec_helper.rb CHANGED
@@ -1,6 +1,6 @@
1
1
  #--
2
2
  # Copyright (c) 2009 Virgil Dimaguila
3
- #
3
+ #
4
4
  # Permission is hereby granted, free of charge, to any person
5
5
  # obtaining a copy of this software and associated documentation
6
6
  # files (the "Software"), to deal in the Software without
@@ -9,10 +9,10 @@
9
9
  # copies of the Software, and to permit persons to whom the
10
10
  # Software is furnished to do so, subject to the following
11
11
  # conditions:
12
- #
12
+ #
13
13
  # The above copyright notice and this permission notice shall be
14
14
  # included in all copies or substantial portions of the Software.
15
- #
15
+ #
16
16
  # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
17
17
  # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
18
18
  # OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
@@ -31,9 +31,16 @@ $:.uniq!
31
31
 
32
32
  require "rubygems"
33
33
  require "resumetools"
34
+ require 'rspec'
35
+ require 'rspec/expectations'
34
36
 
37
+ RSpec.configure do |config|
38
+ config.expect_with :rspec do |c|
39
+ c.syntax = [:should, :expect]
40
+ end
41
+ end
35
42
 
36
43
  # Simple blank string matcher
37
- def be_blank
38
- simple_matcher("a blank string") { |given| given.blank? }
39
- end
44
+ # def be_blank
45
+ # simple_matcher("a blank string") { |given| given.blank? }
46
+ # end
data/tasks/gem.rake CHANGED
@@ -1,5 +1,4 @@
1
- require "rake/gempackagetask"
2
-
1
+ require 'rubygems/package_task'
3
2
 
4
3
  PKG_DISPLAY_NAME = "resumetools"
5
4
  PKG_NAME = PKG_DISPLAY_NAME.downcase
@@ -15,18 +14,15 @@ PKG_FILES = FileList[
15
14
  "examples/**/*",
16
15
  "lib/**/*",
17
16
  "spec/**/*",
18
- "vendor/**/*",
19
17
  "tasks/**/*",
20
18
  "fonts/**/*",
21
19
  "[A-Z]*",
22
20
  "README.md",
23
21
  "Rakefile"
24
22
  ].exclude(/[_\.]git$/, 'TODO')
25
- WINDOWS = (RUBY_PLATFORM =~ /mswin|win32|mingw|bccwin|cygwin/) rescue false
26
- SUDO = WINDOWS ? '' : ('sudo' unless ENV['SUDOLESS'])
23
+
27
24
 
28
25
  namespace :gem do
29
-
30
26
  # Gem specification
31
27
  GEM_SPEC = Gem::Specification.new do |s|
32
28
  unless s.respond_to?(:add_development_dependency)
@@ -42,37 +38,40 @@ namespace :gem do
42
38
  s.files = PKG_FILES.to_a
43
39
 
44
40
  s.has_rdoc = true
45
-
46
- s.required_ruby_version = ">= 1.8.6"
47
-
48
- s.add_development_dependency("rake", ">= 0.8.7")
49
- s.add_development_dependency("rspec", ">= 1.2.8")
50
-
51
- s.add_runtime_dependency("extlib")
52
- s.add_runtime_dependency("prawn", ">= 0.7.1")
53
- s.add_runtime_dependency("treetop", ">= 1.3.0")
54
- s.add_runtime_dependency("json_pure")
55
- s.add_runtime_dependency("uuidtools")
41
+
42
+ s.required_ruby_version = ">= 2.0.0"
43
+
44
+ s.add_development_dependency("rake", ">= 10.4.0")
45
+ s.add_development_dependency("rspec", ">= 3.1.0")
46
+
47
+ s.add_runtime_dependency("extlib", ">= 0.9.16")
48
+ s.add_runtime_dependency("prawn", ">= 1.3.0")
49
+ s.add_runtime_dependency("treetop", ">= 1.5.3")
50
+ s.add_runtime_dependency("json_pure", ">= 1.8.2")
51
+ s.add_runtime_dependency("uuidtools", ">= 2.1.5")
56
52
 
57
53
  s.require_path = "lib"
58
54
 
59
55
  s.author = "Virgil Dimaguila"
60
56
  s.email = "virgil@roundysoft.com"
61
- s.homepage = "http://codaset.com/virgil/resumetools"
57
+ s.homepage = "https://github.com/virgild/resumetools"
62
58
  s.rubyforge_project = "resumetools"
63
59
  end
64
60
 
65
- Rake::GemPackageTask.new(GEM_SPEC) do |p|
66
- p.gem_spec = GEM_SPEC
61
+
62
+ Gem::PackageTask.new(GEM_SPEC) do |pkg|
63
+ pkg.gem_spec = GEM_SPEC
67
64
  end
68
-
69
-
65
+
66
+
70
67
  # Generate gemspec
71
68
  desc "Generate gemspec file"
72
69
  task :gemspec do
70
+ puts "Generating resumetools.gemspec..."
73
71
  File.open(File.join(File.dirname(__FILE__), '..', 'resumetools.gemspec'), "w") do |f|
74
72
  f.write(GEM_SPEC.to_ruby)
75
73
  end
74
+ puts "...DONE."
76
75
  end
77
76
 
78
77
 
@@ -86,11 +85,9 @@ namespace :gem do
86
85
  `
87
86
  puts "...DONE"
88
87
  end
89
-
88
+
90
89
  task :package => :clean_attributes
91
90
  end
92
91
 
93
92
  desc "Alias to gem:package"
94
- task "gem" => "gem:package"
95
-
96
- task "clobber" => ["gem:clobber_package"]
93
+ task "gem" => "gem:package"
data/tasks/rdoc.rake CHANGED
@@ -1,4 +1,4 @@
1
- require "rake/rdoctask"
1
+ require 'rdoc/task'
2
2
 
3
3
  namespace :doc do
4
4
  desc "Generate RDoc documentation"
@@ -8,7 +8,7 @@ namespace :doc do
8
8
  rdoc.options << "--line-numbers" << "--inline-source" <<
9
9
  "--accessor" << "cattr_accessor=object" << "--charset" << "utf-8"
10
10
  rdoc.template = "#{ENV["template"]}.rb" if ENV["template"]
11
- rdoc.rdoc_files.include("README", "CHANGES", "LICENSE")
11
+ rdoc.rdoc_files.include("README.md", "CHANGES", "LICENSE")
12
12
  rdoc.rdoc_files.include("lib/**/*.rb")
13
13
  end
14
14
 
@@ -26,4 +26,4 @@ end
26
26
  desc "Alias to doc:rdoc"
27
27
  task "doc" => "doc:rdoc"
28
28
 
29
- task "clobber" => ["doc:clobber_rdoc", "doc:clobber_ri"]
29
+ task "clobber" => ["doc:clobber_rdoc", "doc:clobber_ri"]
data/tasks/rspec.rake CHANGED
@@ -1,16 +1,16 @@
1
1
  namespace :spec do
2
2
  desc "Run all specs"
3
- Spec::Rake::SpecTask.new(:normal) do |t|
4
- t.spec_files = FileList['spec/**/*_spec.rb']
5
- t.spec_opts = ["--colour", "--format", "specdoc"]
3
+ RSpec::Core::RakeTask.new(:normal) do |t|
4
+ t.pattern = FileList['spec/**/*_spec.rb']
5
+ t.rspec_opts = ["--colour", "--format", "documentation"]
6
6
  end
7
-
7
+
8
8
  desc "Run specs with rcov"
9
- Spec::Rake::SpecTask.new(:rcov) do |t|
10
- t.spec_files = FileList['spec/**/*_spec.rb']
11
- t.spec_opts = ["--colour", "--format", "specdoc"]
9
+ RSpec::Core::RakeTask.new(:rcov) do |t|
10
+ t.pattern = FileList['spec/**/*_spec.rb']
11
+ t.rspec_opts = ["--colour", "--format", "documentation"]
12
12
  t.rcov = true
13
13
  end
14
14
  end
15
15
 
16
- task :spec => "spec:normal"
16
+ task :spec => "spec:normal"
metadata CHANGED
@@ -1,155 +1,174 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: resumetools
3
- version: !ruby/object:Gem::Version
4
- version: 0.2.7.6
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.2.8
5
5
  platform: ruby
6
- authors:
7
- - Virgil Dimaguila
6
+ authors:
7
+ - Virgil Dimaguila
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
-
12
- date: 2010-01-10 00:00:00 -05:00
13
- default_executable:
14
- dependencies:
15
- - !ruby/object:Gem::Dependency
16
- name: rake
17
- type: :development
18
- version_requirement:
19
- version_requirements: !ruby/object:Gem::Requirement
20
- requirements:
21
- - - ">="
22
- - !ruby/object:Gem::Version
23
- version: 0.8.7
24
- version:
25
- - !ruby/object:Gem::Dependency
26
- name: rspec
27
- type: :development
28
- version_requirement:
29
- version_requirements: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: 1.2.8
34
- version:
35
- - !ruby/object:Gem::Dependency
36
- name: extlib
37
- type: :runtime
38
- version_requirement:
39
- version_requirements: !ruby/object:Gem::Requirement
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- version: "0"
44
- version:
45
- - !ruby/object:Gem::Dependency
46
- name: prawn
47
- type: :runtime
48
- version_requirement:
49
- version_requirements: !ruby/object:Gem::Requirement
50
- requirements:
51
- - - ">="
52
- - !ruby/object:Gem::Version
53
- version: 0.7.1
54
- version:
55
- - !ruby/object:Gem::Dependency
56
- name: treetop
57
- type: :runtime
58
- version_requirement:
59
- version_requirements: !ruby/object:Gem::Requirement
60
- requirements:
61
- - - ">="
62
- - !ruby/object:Gem::Version
63
- version: 1.3.0
64
- version:
65
- - !ruby/object:Gem::Dependency
66
- name: json_pure
67
- type: :runtime
68
- version_requirement:
69
- version_requirements: !ruby/object:Gem::Requirement
70
- requirements:
71
- - - ">="
72
- - !ruby/object:Gem::Version
73
- version: "0"
74
- version:
75
- - !ruby/object:Gem::Dependency
76
- name: uuidtools
77
- type: :runtime
78
- version_requirement:
79
- version_requirements: !ruby/object:Gem::Requirement
80
- requirements:
81
- - - ">="
82
- - !ruby/object:Gem::Version
83
- version: "0"
84
- version:
11
+ date: 2015-01-20 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: rake
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 10.4.0
20
+ type: :development
21
+ prerelease: false
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - ">="
25
+ - !ruby/object:Gem::Version
26
+ version: 10.4.0
27
+ - !ruby/object:Gem::Dependency
28
+ name: rspec
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: 3.1.0
34
+ type: :development
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: 3.1.0
41
+ - !ruby/object:Gem::Dependency
42
+ name: extlib
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - ">="
46
+ - !ruby/object:Gem::Version
47
+ version: 0.9.16
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - ">="
53
+ - !ruby/object:Gem::Version
54
+ version: 0.9.16
55
+ - !ruby/object:Gem::Dependency
56
+ name: prawn
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - ">="
60
+ - !ruby/object:Gem::Version
61
+ version: 1.3.0
62
+ type: :runtime
63
+ prerelease: false
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - ">="
67
+ - !ruby/object:Gem::Version
68
+ version: 1.3.0
69
+ - !ruby/object:Gem::Dependency
70
+ name: treetop
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
73
+ - - ">="
74
+ - !ruby/object:Gem::Version
75
+ version: 1.5.3
76
+ type: :runtime
77
+ prerelease: false
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ">="
81
+ - !ruby/object:Gem::Version
82
+ version: 1.5.3
83
+ - !ruby/object:Gem::Dependency
84
+ name: json_pure
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ version: 1.8.2
90
+ type: :runtime
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: 1.8.2
97
+ - !ruby/object:Gem::Dependency
98
+ name: uuidtools
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ version: 2.1.5
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - ">="
109
+ - !ruby/object:Gem::Version
110
+ version: 2.1.5
85
111
  description: |
86
112
  Resume generation and writing tools
87
-
88
113
  email: virgil@roundysoft.com
89
114
  executables: []
90
-
91
115
  extensions: []
92
-
93
116
  extra_rdoc_files: []
94
-
95
- files:
96
- - examples/sample.pdf
97
- - examples/sample.resume
98
- - lib/resumetools.rb
99
- - lib/fonts/Vera.ttf
100
- - lib/fonts/VeraBd.ttf
101
- - lib/fonts/VeraBI.ttf
102
- - lib/fonts/VeraIt.ttf
103
- - lib/resumetools/version.rb
104
- - lib/resumetools/grammars/resume.treetop
105
- - lib/resumetools/resume/export.rb
106
- - lib/resumetools/resume/json.rb
107
- - lib/resumetools/resume/pdf.rb
108
- - lib/resumetools/resume/plain_text.rb
109
- - lib/resumetools/resume/resume.rb
110
- - lib/resumetools/resume/text_reader.rb
111
- - lib/text/format.rb
112
- - spec/grammar_spec.rb
113
- - spec/read_resume_spec.rb
114
- - spec/rendering_pdf_spec.rb
115
- - spec/resume_spec.rb
116
- - spec/spec.opts
117
- - spec/spec_helper.rb
118
- - tasks/default.rake
119
- - tasks/gem.rake
120
- - tasks/rdoc.rake
121
- - tasks/rspec.rake
122
- - CHANGES
123
- - LICENSE
124
- - Rakefile
125
- - README.md
126
- has_rdoc: true
127
- homepage: http://codaset.com/virgil/resumetools
117
+ files:
118
+ - CHANGES
119
+ - Gemfile
120
+ - Gemfile.lock
121
+ - LICENSE
122
+ - README.md
123
+ - Rakefile
124
+ - examples/sample.pdf
125
+ - examples/sample.resume
126
+ - lib/fonts/Vera.ttf
127
+ - lib/fonts/VeraBI.ttf
128
+ - lib/fonts/VeraBd.ttf
129
+ - lib/fonts/VeraIt.ttf
130
+ - lib/resumetools.rb
131
+ - lib/resumetools/grammars/resume.treetop
132
+ - lib/resumetools/resume/export.rb
133
+ - lib/resumetools/resume/json.rb
134
+ - lib/resumetools/resume/pdf.rb
135
+ - lib/resumetools/resume/plain_text.rb
136
+ - lib/resumetools/resume/resume.rb
137
+ - lib/resumetools/resume/text_reader.rb
138
+ - lib/resumetools/version.rb
139
+ - lib/text/format.rb
140
+ - resumetools.gemspec
141
+ - spec/grammar_spec.rb
142
+ - spec/read_resume_spec.rb
143
+ - spec/rendering_pdf_spec.rb
144
+ - spec/resume_spec.rb
145
+ - spec/spec.opts
146
+ - spec/spec_helper.rb
147
+ - tasks/default.rake
148
+ - tasks/gem.rake
149
+ - tasks/rdoc.rake
150
+ - tasks/rspec.rake
151
+ homepage: https://github.com/virgild/resumetools
128
152
  licenses: []
129
-
153
+ metadata: {}
130
154
  post_install_message:
131
155
  rdoc_options: []
132
-
133
- require_paths:
134
- - lib
135
- required_ruby_version: !ruby/object:Gem::Requirement
136
- requirements:
137
- - - ">="
138
- - !ruby/object:Gem::Version
139
- version: 1.8.6
140
- version:
141
- required_rubygems_version: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - ">="
144
- - !ruby/object:Gem::Version
145
- version: "0"
146
- version:
156
+ require_paths:
157
+ - lib
158
+ required_ruby_version: !ruby/object:Gem::Requirement
159
+ requirements:
160
+ - - ">="
161
+ - !ruby/object:Gem::Version
162
+ version: 2.0.0
163
+ required_rubygems_version: !ruby/object:Gem::Requirement
164
+ requirements:
165
+ - - ">="
166
+ - !ruby/object:Gem::Version
167
+ version: '0'
147
168
  requirements: []
148
-
149
169
  rubyforge_project: resumetools
150
- rubygems_version: 1.3.5
170
+ rubygems_version: 2.4.5
151
171
  signing_key:
152
- specification_version: 3
172
+ specification_version: 4
153
173
  summary: Resume generation and writing tools
154
174
  test_files: []
155
-