bramipsum 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,18 @@
1
+ # -*- encoding: utf-8 -*-
2
+ require File.expand_path('../lib/bramipsum/version', __FILE__)
3
+
4
+ Gem::Specification.new do |gem|
5
+ gem.authors = ["Claudio Ortolina"]
6
+ gem.email = ["claudio@jumpzero.com"]
7
+ gem.description = %q{Random sentences from Bram Stoker's Dracula}
8
+ gem.summary = %q{Generate one or more dummy sentences taken from Bram Stoker's Dracula}
9
+ gem.homepage = ""
10
+
11
+ gem.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
12
+ gem.files = `git ls-files`.split("\n")
13
+ gem.test_files = `git ls-files -- {test,spec,features}/*`.split("\n")
14
+ gem.name = "bramipsum"
15
+ gem.require_paths = ["lib"]
16
+ gem.version = Bramipsum::VERSION
17
+ gem.add_development_dependency 'rake', '>= 0.9.2'
18
+ end
@@ -0,0 +1,3 @@
1
+ require_relative "./bramipsum/version"
2
+ require_relative "./bramipsum/base"
3
+ require_relative "./bramipsum/sentence"
@@ -0,0 +1,21 @@
1
+ module Bramipsum
2
+
3
+ class Base
4
+
5
+ def self.source
6
+ @source ||= self.read
7
+ end
8
+
9
+ def self.processed_source
10
+ self.source.split("\n").uniq
11
+ end
12
+
13
+ private
14
+
15
+ def self.read
16
+ File.read(File.expand_path('book/dracula.txt'))
17
+ end
18
+
19
+ end
20
+
21
+ end
@@ -0,0 +1,15 @@
1
+ module Bramipsum
2
+
3
+ class Sentence < Base
4
+
5
+ def self.sentence
6
+ self.processed_source.sample
7
+ end
8
+
9
+ def self.sentences(n=5)
10
+ self.processed_source.sample(n)
11
+ end
12
+
13
+ end
14
+
15
+ end
@@ -0,0 +1,3 @@
1
+ module Bramipsum
2
+ VERSION = "0.0.1"
3
+ end
@@ -0,0 +1,28 @@
1
+ require_relative '../../test_helper'
2
+
3
+ describe Bramipsum::Base do
4
+
5
+ subject { Bramipsum::Base }
6
+
7
+ describe "reading from file" do
8
+
9
+ it "must have a source" do
10
+ subject.must_respond_to(:source)
11
+ end
12
+
13
+ it "must have the dracula file as a source" do
14
+ subject.source.must_be_instance_of(String)
15
+ end
16
+
17
+ end
18
+
19
+ describe "splitting into lines" do
20
+
21
+ it "must correctly split the file into lines" do
22
+ subject.processed_source.must_be_instance_of(Array)
23
+ subject.processed_source.wont_include(nil)
24
+ end
25
+
26
+ end
27
+
28
+ end
@@ -0,0 +1,19 @@
1
+ require_relative '../../test_helper'
2
+
3
+ describe Bramipsum::Sentence do
4
+
5
+ subject { Bramipsum::Sentence }
6
+
7
+ it "must return a random sentence" do
8
+ subject.sentence.must_be_instance_of(String)
9
+ end
10
+
11
+ it "must return 5 sentences by default" do
12
+ subject.sentences.size.must_equal(5)
13
+ end
14
+
15
+ it "must return the specified amount of sentences" do
16
+ subject.sentences(10).size.must_equal(10)
17
+ end
18
+
19
+ end
@@ -0,0 +1,9 @@
1
+ require_relative '../../test_helper'
2
+
3
+ describe Bramipsum do
4
+
5
+ it "must be defined" do
6
+ Bramipsum::VERSION.wont_be_nil
7
+ end
8
+
9
+ end
@@ -0,0 +1,3 @@
1
+ require 'minitest/autorun'
2
+ require 'minitest/pride'
3
+ require File.expand_path('../../lib/bramipsum.rb', __FILE__)
metadata ADDED
@@ -0,0 +1,78 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: bramipsum
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - Claudio Ortolina
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-19 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rake
16
+ requirement: !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: 0.9.2
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
26
+ requirements:
27
+ - - ! '>='
28
+ - !ruby/object:Gem::Version
29
+ version: 0.9.2
30
+ description: Random sentences from Bram Stoker's Dracula
31
+ email:
32
+ - claudio@jumpzero.com
33
+ executables: []
34
+ extensions: []
35
+ extra_rdoc_files: []
36
+ files:
37
+ - .gitignore
38
+ - Gemfile
39
+ - Rakefile
40
+ - book/dracula.txt
41
+ - bramipsum.gemspec
42
+ - lib/bramipsum.rb
43
+ - lib/bramipsum/base.rb
44
+ - lib/bramipsum/sentence.rb
45
+ - lib/bramipsum/version.rb
46
+ - test/lib/bramipsum/base_test.rb
47
+ - test/lib/bramipsum/sentence_test.rb
48
+ - test/lib/bramipsum/version_test.rb
49
+ - test/test_helper.rb
50
+ homepage: ''
51
+ licenses: []
52
+ post_install_message:
53
+ rdoc_options: []
54
+ require_paths:
55
+ - lib
56
+ required_ruby_version: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
62
+ required_rubygems_version: !ruby/object:Gem::Requirement
63
+ none: false
64
+ requirements:
65
+ - - ! '>='
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ requirements: []
69
+ rubyforge_project:
70
+ rubygems_version: 1.8.24
71
+ signing_key:
72
+ specification_version: 3
73
+ summary: Generate one or more dummy sentences taken from Bram Stoker's Dracula
74
+ test_files:
75
+ - test/lib/bramipsum/base_test.rb
76
+ - test/lib/bramipsum/sentence_test.rb
77
+ - test/lib/bramipsum/version_test.rb
78
+ - test/test_helper.rb