ms_lorem 0.1.0

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.
data/.document ADDED
@@ -0,0 +1,5 @@
1
+ README.rdoc
2
+ lib/**/*.rb
3
+ bin/*
4
+ features/**/*.feature
5
+ LICENSE
data/.gitignore ADDED
@@ -0,0 +1,21 @@
1
+ ## MAC OS
2
+ .DS_Store
3
+
4
+ ## TEXTMATE
5
+ *.tmproj
6
+ tmtags
7
+
8
+ ## EMACS
9
+ *~
10
+ \#*
11
+ .\#*
12
+
13
+ ## VIM
14
+ *.swp
15
+
16
+ ## PROJECT::GENERAL
17
+ coverage
18
+ rdoc
19
+ pkg
20
+
21
+ ## PROJECT::SPECIFIC
data/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ Copyright (c) 2009 wmerrell
2
+
3
+ Permission is hereby granted, free of charge, to any person obtaining
4
+ a copy of this software and associated documentation files (the
5
+ "Software"), to deal in the Software without restriction, including
6
+ without limitation the rights to use, copy, modify, merge, publish,
7
+ distribute, sublicense, and/or sell copies of the Software, and to
8
+ permit persons to whom the Software is furnished to do so, subject to
9
+ the following conditions:
10
+
11
+ The above copyright notice and this permission notice shall be
12
+ included in all copies or substantial portions of the Software.
13
+
14
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
15
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
16
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
17
+ NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
18
+ LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
19
+ OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
20
+ WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
data/README.rdoc ADDED
@@ -0,0 +1,17 @@
1
+ = ms_lorem
2
+
3
+ Description goes here.
4
+
5
+ == Note on Patches/Pull Requests
6
+
7
+ * Fork the project.
8
+ * Make your feature addition or bug fix.
9
+ * Add tests for it. This is important so I don't break it in a
10
+ future version unintentionally.
11
+ * Commit, do not mess with rakefile, version, or history.
12
+ (if you want to have your own version, that is fine but bump version in a commit by itself I can ignore when I pull)
13
+ * Send me a pull request. Bonus points for topic branches.
14
+
15
+ == Copyright
16
+
17
+ Copyright (c) 2010 wmerrell. See LICENSE for details.
data/Rakefile ADDED
@@ -0,0 +1,53 @@
1
+ require 'rubygems'
2
+ require 'rake'
3
+
4
+ begin
5
+ require 'jeweler'
6
+ Jeweler::Tasks.new do |gem|
7
+ gem.name = "ms_lorem"
8
+ gem.summary = %Q{Generates a Lorem Ipsum string.}
9
+ gem.description = %Q{Creates a new class, Lorem, which is a sub class of String. Lorem.new(word_count) returns a Lorem string of specified length. The only parameter is the number of words to include in the returned string and defaults to twenty words.}
10
+ gem.email = "will@morelandsolutions.com"
11
+ gem.homepage = "http://github.com/wmerrell/ms_lorem"
12
+ gem.authors = ["Will Merrell"]
13
+ #gem.add_development_dependency "thoughtbot-shoulda", ">= 0"
14
+ # gem is a Gem::Specification... see http://www.rubygems.org/read/chapter/20 for additional settings
15
+ end
16
+ Jeweler::GemcutterTasks.new
17
+ rescue LoadError
18
+ puts "Jeweler (or a dependency) not available. Install it with: gem install jeweler"
19
+ end
20
+
21
+ require 'rake/testtask'
22
+ Rake::TestTask.new(:test) do |test|
23
+ test.libs << 'lib' << 'test'
24
+ test.pattern = 'test/**/test_*.rb'
25
+ test.verbose = true
26
+ end
27
+
28
+ begin
29
+ require 'rcov/rcovtask'
30
+ Rcov::RcovTask.new do |test|
31
+ test.libs << 'test'
32
+ test.pattern = 'test/**/test_*.rb'
33
+ test.verbose = true
34
+ end
35
+ rescue LoadError
36
+ task :rcov do
37
+ abort "RCov is not available. In order to run rcov, you must: sudo gem install spicycode-rcov"
38
+ end
39
+ end
40
+
41
+ task :test => :check_dependencies
42
+
43
+ task :default => :test
44
+
45
+ require 'rake/rdoctask'
46
+ Rake::RDocTask.new do |rdoc|
47
+ version = File.exist?('VERSION') ? File.read('VERSION') : ""
48
+
49
+ rdoc.rdoc_dir = 'rdoc'
50
+ rdoc.title = "ms_lorem #{version}"
51
+ rdoc.rdoc_files.include('README*')
52
+ rdoc.rdoc_files.include('lib/**/*.rb')
53
+ end
data/VERSION ADDED
@@ -0,0 +1 @@
1
+ 0.1.0
data/lib/ms_lorem.rb ADDED
@@ -0,0 +1,113 @@
1
+ class Lorem < String
2
+
3
+ def initialize(word_count=20)
4
+ # ===== words
5
+ words =<<EOS
6
+ lorem ipsum dolor sit amet consectetuer adipiscing elit integer in mi a mauris ornare sagittis
7
+ suspendisse potenti suspendisse dapibus dignissim dolor nam sapien tellus tempus et tempus ac
8
+ tincidunt in arcu duis dictum proin magna nulla pellentesque non commodo et iaculis sit amet
9
+ mi mauris condimentum massa ut metus donec viverra sapien mattis rutrum tristique lacus eros
10
+ semper tellus et molestie nisi sapien eu massa vestibulum ante ipsum primis in faucibus orci
11
+ luctus et ultrices posuere cubilia curae; fusce erat tortor mollis ut accumsan ut lacinia
12
+ gravida libero curabitur massa felis accumsan feugiat convallis sit amet porta vel neque duis
13
+ et ligula non elit ultricies rutrum suspendisse tempor quisque posuere malesuada velit sed
14
+ pellentesque mi a purus integer imperdiet orci a eleifend mollis velit nulla iaculis arcu eu
15
+ rutrum magna quam sed elit nullam egestas integer interdum purus nec mauris vestibulum ac mi in
16
+ nunc suscipit dapibus duis consectetuer ipsum et pharetra sollicitudin metus turpis facilisis
17
+ magna vitae dictum ligula nulla nec mi nunc ante urna gravida sit amet congue et accumsan
18
+ vitae magna praesent luctus nullam in velit praesent est curabitur turpis class aptent taciti
19
+ sociosqu ad litora torquent per conubia nostra per inceptos hymenaeos cras consectetuer nibh in
20
+ lacinia ornare turpis sem tempor massa sagittis feugiat mauris nibh non tellus phasellus mi
21
+ fusce enim mauris ultrices turpis eu adipiscing viverra justo libero ullamcorper massa id
22
+ ultrices velit est quis tortor quisque condimentum lacus volutpat nonummy accumsan est nunc
23
+ imperdiet magna vulputate aliquet nisi risus at est aliquam imperdiet gravida tortor praesent
24
+ interdum accumsan ante vivamus est ligula consequat sed pulvinar eu consequat vitae eros nulla
25
+ elit nunc congue eget scelerisque a tempor ac nisi morbi facilisis pellentesque habitant morbi
26
+ tristique senectus et netus et malesuada fames ac turpis egestas in hac habitasse platea dictumst
27
+ suspendisse vel lorem ut ligula tempor consequat quisque consectetuer nisl eget elit proin quis
28
+ mauris ac orci accumsan suscipit sed ipsum sed vel libero nec elit feugiat blandit vestibulum
29
+ purus nulla accumsan et volutpat at pellentesque vel urna suspendisse nonummy aliquam pulvinar
30
+ libero donec vulputate orci ornare bibendum condimentum lorem elit dignissim sapien ut aliquam
31
+ nibh augue in turpis phasellus ac eros praesent luctus lorem a mollis lacinia leo turpis commodo
32
+ sem in lacinia mi quam et quam curabitur a libero vel tellus mattis imperdiet in congue neque ut
33
+ scelerisque bibendum libero lacus ullamcorper sapien quis aliquet massa velit vel orci fusce in
34
+ nulla quis est cursus gravida in nibh lorem ipsum dolor sit amet consectetuer adipiscing elit
35
+ integer fermentum pretium massa morbi feugiat iaculis nunc aenean aliquam pretium orci cum sociis
36
+ natoque penatibus et magnis dis parturient montes nascetur ridiculus mus vivamus quis tellus vel
37
+ quam varius bibendum fusce est metus feugiat at porttitor et cursus quis pede nam ut augue
38
+ nulla posuere phasellus at dolor a enim cursus vestibulum duis id nisi duis semper tellus ac
39
+ nulla vestibulum scelerisque lobortis dolor aenean a felis aliquam erat volutpat donec a magna
40
+ vitae pede sagittis lacinia cras vestibulum diam ut arcu mauris a nunc duis sollicitudin erat sit
41
+ amet turpis proin at libero eu diam lobortis fermentum nunc lorem turpis imperdiet id gravida
42
+ eget aliquet sed purus ut vehicula laoreet ante mauris eu nunc sed sit amet elit nec ipsum
43
+ aliquam egestas donec non nibh cras sodales pretium massa praesent hendrerit est et risus
44
+ vivamus eget pede curabitur tristique scelerisque dui nullam ullamcorper vivamus venenatis velit
45
+ eget enim nunc eu nunc eget felis malesuada fermentum quisque magna mauris ligula felis luctus
46
+ a aliquet nec vulputate eget magna quisque placerat diam sed arcu praesent sollicitudin
47
+ aliquam non sapien quisque id augue class aptent taciti sociosqu ad litora torquent per conubia
48
+ nostra per inceptos hymenaeos etiam lacus lectus mollis quis mattis nec commodo facilisis
49
+ nibh sed sodales sapien ac ante duis eget lectus in nibh lacinia auctor fusce interdum lectus non
50
+ dui integer accumsan quisque quam curabitur scelerisque imperdiet nisl suspendisse potenti nam
51
+ massa leo iaculis sed accumsan id ultrices nec velit suspendisse potenti mauris bibendum
52
+ turpis ac viverra sollicitudin metus massa interdum orci non imperdiet orci ante at ipsum etiam
53
+ eget magna mauris at tortor eu lectus tempor tincidunt phasellus justo purus pharetra ut
54
+ ultricies nec consequat vel nisi fusce vitae velit at libero sollicitudin sodales aenean mi
55
+ libero ultrices id suscipit vitae dapibus eu metus aenean vestibulum nibh ac massa vivamus
56
+ vestibulum libero vitae purus in hac habitasse platea dictumst curabitur blandit nunc non arcu ut
57
+ nec nibh morbi quis leo vel magna commodo rhoncus donec congue leo eu lacus pellentesque at erat
58
+ id mi consequat congue praesent a nisl ut diam interdum molestie fusce suscipit rhoncus sem donec
59
+ pretium aliquam molestie vivamus et justo at augue aliquet dapibus pellentesque felis morbi
60
+ semper in venenatis imperdiet neque donec auctor molestie augue nulla id arcu sit amet dui
61
+ lacinia convallis proin tincidunt proin a ante nunc imperdiet augue nullam sit amet arcu
62
+ quisque laoreet viverra felis lorem ipsum dolor sit amet consectetuer adipiscing elit in hac
63
+ habitasse platea dictumst pellentesque habitant morbi tristique senectus et netus et malesuada
64
+ fames ac turpis egestas class aptent taciti sociosqu ad litora torquent per conubia nostra per
65
+ inceptos hymenaeos nullam nibh sapien volutpat ut placerat quis ornare at lorem class aptent
66
+ taciti sociosqu ad litora torquent per conubia nostra per inceptos hymenaeos morbi dictum massa id
67
+ libero ut neque phasellus tincidunt nibh ut tincidunt lacinia lacus nulla aliquam mi a interdum
68
+ dui augue non pede duis nunc magna vulputate a porta at tincidunt a nulla praesent facilisis
69
+ suspendisse sodales feugiat purus cras et justo a mauris mollis imperdiet morbi erat mi ultrices
70
+ eget aliquam elementum iaculis id velit in scelerisque enim sit amet turpis sed aliquam odio
71
+ nonummy ullamcorper mollis lacus nibh tempor dolor sit amet varius sem neque ac dui nunc et est
72
+ eu massa eleifend mollis mauris aliquet orci quis tellus ut mattis praesent mollis consectetuer
73
+ quam nulla nulla nunc accumsan nunc sit amet scelerisque porttitor nibh pede lacinia justo
74
+ tristique mattis purus eros non velit aenean sagittis commodo erat aliquam id lacus morbi
75
+ vulputate vestibulum elit
76
+ EOS
77
+ words.gsub!(/\n/,' ')
78
+ words.gsub!(/ */,' ')
79
+ words.strip!
80
+ words = words.split(/ /)
81
+
82
+ lorem = ""
83
+
84
+ # ===== total
85
+ twn = 0
86
+ twc = word_count
87
+ while twn < twc
88
+
89
+ # ===== paragraph
90
+ pwn = 0
91
+ pwc = rand(100)+50
92
+ while pwn < pwc and twn < twc do
93
+
94
+ # ===== sentence
95
+ swn = 0
96
+ swc = rand(10)+3
97
+ while swn < swc and pwn < pwc and twn < twc do
98
+ word = words[rand(words.length)]
99
+ if swn == 0
100
+ lorem << "#{word.capitalize} "
101
+ else
102
+ lorem << "#{word} "
103
+ end
104
+ twn +=1
105
+ pwn +=1
106
+ swn +=1
107
+ end
108
+ lorem << ". "
109
+ end
110
+ end
111
+ super(lorem.gsub!(/ \./,'.'))
112
+ end # end of lorem
113
+ end
data/ms_lorem.gemspec ADDED
@@ -0,0 +1,52 @@
1
+ # Generated by jeweler
2
+ # DO NOT EDIT THIS FILE DIRECTLY
3
+ # Instead, edit Jeweler::Tasks in Rakefile, and run the gemspec command
4
+ # -*- encoding: utf-8 -*-
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = %q{ms_lorem}
8
+ s.version = "0.1.0"
9
+
10
+ s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
+ s.authors = ["Will Merrell"]
12
+ s.date = %q{2010-06-11}
13
+ s.description = %q{Creates a new class, Lorem, which is a sub class of String. Lorem.new(word_count) returns a Lorem string of specified length. The only parameter is the number of words to include in the returned string and defaults to twenty words.}
14
+ s.email = %q{will@morelandsolutions.com}
15
+ s.extra_rdoc_files = [
16
+ "LICENSE",
17
+ "README.rdoc"
18
+ ]
19
+ s.files = [
20
+ ".document",
21
+ ".gitignore",
22
+ "LICENSE",
23
+ "README.rdoc",
24
+ "Rakefile",
25
+ "VERSION",
26
+ "lib/ms_lorem.rb",
27
+ "ms_lorem.gemspec",
28
+ "ms_lorem.kpf",
29
+ "test/helper.rb",
30
+ "test/test_ms_lorem.rb"
31
+ ]
32
+ s.homepage = %q{http://github.com/wmerrell/ms_lorem}
33
+ s.rdoc_options = ["--charset=UTF-8"]
34
+ s.require_paths = ["lib"]
35
+ s.rubygems_version = %q{1.3.6}
36
+ s.summary = %q{Generates a Lorem Ipsum string.}
37
+ s.test_files = [
38
+ "test/helper.rb",
39
+ "test/test_ms_lorem.rb"
40
+ ]
41
+
42
+ if s.respond_to? :specification_version then
43
+ current_version = Gem::Specification::CURRENT_SPECIFICATION_VERSION
44
+ s.specification_version = 3
45
+
46
+ if Gem::Version.new(Gem::RubyGemsVersion) >= Gem::Version.new('1.2.0') then
47
+ else
48
+ end
49
+ else
50
+ end
51
+ end
52
+
data/ms_lorem.kpf ADDED
@@ -0,0 +1,7 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <!-- Komodo Project File - DO NOT EDIT -->
3
+ <project id="0c2970bd-a77d-4559-8f37-a86ccd102334" kpf_version="4" name="ms_lorem.kpf">
4
+ <preference-set idref="0c2970bd-a77d-4559-8f37-a86ccd102334">
5
+ <boolean id="import_live">1</boolean>
6
+ </preference-set>
7
+ </project>
data/test/helper.rb ADDED
@@ -0,0 +1,10 @@
1
+ require 'rubygems'
2
+ require 'test/unit'
3
+ require 'shoulda'
4
+
5
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
6
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
7
+ require 'ms_lorem'
8
+
9
+ class Test::Unit::TestCase
10
+ end
@@ -0,0 +1,7 @@
1
+ require 'helper'
2
+
3
+ class TestMsLorem < Test::Unit::TestCase
4
+ should "probably rename this file and start testing for real" do
5
+ flunk "hey buddy, you should probably rename this file and start testing for real"
6
+ end
7
+ end
metadata ADDED
@@ -0,0 +1,74 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: ms_lorem
3
+ version: !ruby/object:Gem::Version
4
+ prerelease: false
5
+ segments:
6
+ - 0
7
+ - 1
8
+ - 0
9
+ version: 0.1.0
10
+ platform: ruby
11
+ authors:
12
+ - Will Merrell
13
+ autorequire:
14
+ bindir: bin
15
+ cert_chain: []
16
+
17
+ date: 2010-06-11 00:00:00 -04:00
18
+ default_executable:
19
+ dependencies: []
20
+
21
+ description: Creates a new class, Lorem, which is a sub class of String. Lorem.new(word_count) returns a Lorem string of specified length. The only parameter is the number of words to include in the returned string and defaults to twenty words.
22
+ email: will@morelandsolutions.com
23
+ executables: []
24
+
25
+ extensions: []
26
+
27
+ extra_rdoc_files:
28
+ - LICENSE
29
+ - README.rdoc
30
+ files:
31
+ - .document
32
+ - .gitignore
33
+ - LICENSE
34
+ - README.rdoc
35
+ - Rakefile
36
+ - VERSION
37
+ - lib/ms_lorem.rb
38
+ - ms_lorem.gemspec
39
+ - ms_lorem.kpf
40
+ - test/helper.rb
41
+ - test/test_ms_lorem.rb
42
+ has_rdoc: true
43
+ homepage: http://github.com/wmerrell/ms_lorem
44
+ licenses: []
45
+
46
+ post_install_message:
47
+ rdoc_options:
48
+ - --charset=UTF-8
49
+ require_paths:
50
+ - lib
51
+ required_ruby_version: !ruby/object:Gem::Requirement
52
+ requirements:
53
+ - - ">="
54
+ - !ruby/object:Gem::Version
55
+ segments:
56
+ - 0
57
+ version: "0"
58
+ required_rubygems_version: !ruby/object:Gem::Requirement
59
+ requirements:
60
+ - - ">="
61
+ - !ruby/object:Gem::Version
62
+ segments:
63
+ - 0
64
+ version: "0"
65
+ requirements: []
66
+
67
+ rubyforge_project:
68
+ rubygems_version: 1.3.6
69
+ signing_key:
70
+ specification_version: 3
71
+ summary: Generates a Lorem Ipsum string.
72
+ test_files:
73
+ - test/helper.rb
74
+ - test/test_ms_lorem.rb