morning-pages 0.0.1 → 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/Rakefile +4 -13
- data/bin/morning-pages +10 -0
- data/features/bin/fake-editor +5 -0
- data/features/step_definitions/steps.rb +18 -0
- data/features/support/driver.rb +17 -0
- data/features/support/env.rb +1 -0
- data/features/writing_words.feature +8 -0
- data/lib/morning-pages/version.rb +1 -1
- data/morning-pages.gemspec +1 -0
- metadata +30 -2
data/Rakefile
CHANGED
@@ -1,21 +1,12 @@
|
|
1
1
|
require "bundler/gem_tasks"
|
2
|
-
task :default => [:specs,
|
2
|
+
task :default => [:specs, :cukes]
|
3
3
|
|
4
4
|
desc "Run unit tests"
|
5
5
|
task :specs do
|
6
6
|
sh "rspec spec"
|
7
7
|
end
|
8
8
|
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
ENV['SLOW'] = 'true'
|
13
|
-
sh "cucumber"
|
14
|
-
end
|
15
|
-
|
16
|
-
desc "Run end-to-end tests with stubbed out file system for speed"
|
17
|
-
task :fast do
|
18
|
-
ENV['SLOW'] = nil
|
19
|
-
sh "cucumber"
|
20
|
-
end
|
9
|
+
desc "Run end-to-end tests"
|
10
|
+
task :cukes do
|
11
|
+
sh "cucumber"
|
21
12
|
end
|
data/bin/morning-pages
ADDED
@@ -0,0 +1,10 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
require 'trollop'
|
4
|
+
|
5
|
+
opts = Trollop.options do
|
6
|
+
opt :dir, "Words directory", :required => false, :type => :string, :default => "~/Documents/words"
|
7
|
+
end
|
8
|
+
|
9
|
+
todays_file = %{#{opts[:dir]}/#{Time.now.strftime("%Y\-%m\-%d")}}
|
10
|
+
system "$EDITOR #{todays_file}"
|
@@ -0,0 +1,18 @@
|
|
1
|
+
require 'tmpdir'
|
2
|
+
|
3
|
+
When /^I run 'morning\-pages'$/ do
|
4
|
+
run "morning-pages -d #{@dir}"
|
5
|
+
end
|
6
|
+
|
7
|
+
Then /^I should be able to write my words$/ do
|
8
|
+
now = Time.now
|
9
|
+
check_exact_file_content "#{@dir}/#{Time.now.strftime("%Y\-%m\-%d")}", "fake editor output"
|
10
|
+
end
|
11
|
+
|
12
|
+
Before do
|
13
|
+
@dir = Dir.mktmpdir
|
14
|
+
end
|
15
|
+
|
16
|
+
After do
|
17
|
+
FileUtils.remove_entry_secure @dir
|
18
|
+
end
|
@@ -0,0 +1,17 @@
|
|
1
|
+
require 'aruba/api'
|
2
|
+
module MorningPages
|
3
|
+
module Testing
|
4
|
+
module EndToEndDriver
|
5
|
+
include Aruba::Api
|
6
|
+
end
|
7
|
+
end
|
8
|
+
end
|
9
|
+
|
10
|
+
ENV['PATH'] = [
|
11
|
+
File.expand_path(File.dirname(__FILE__) + '/../../bin'),
|
12
|
+
File.expand_path(File.dirname(__FILE__) + '/../../features/bin'),
|
13
|
+
ENV['PATH']
|
14
|
+
].join File::PATH_SEPARATOR
|
15
|
+
|
16
|
+
ENV['EDITOR'] = 'fake-editor'
|
17
|
+
World(MorningPages::Testing::EndToEndDriver)
|
@@ -0,0 +1 @@
|
|
1
|
+
$: << File.dirname(__FILE__) + '/../../lib'
|
@@ -0,0 +1,8 @@
|
|
1
|
+
Feature: writing words
|
2
|
+
As Wilma the writer
|
3
|
+
I want to type morning-pages and be able to write my words for the day straightaway in my favourite editor
|
4
|
+
So nothing can distract me from getting them done
|
5
|
+
|
6
|
+
Scenario:
|
7
|
+
When I run 'morning-pages'
|
8
|
+
Then I should be able to write my words
|
data/morning-pages.gemspec
CHANGED
@@ -20,6 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.executables = `git ls-files -- bin/*`.split("\n").map{ |f| File.basename(f) }
|
21
21
|
s.require_paths = ["lib"]
|
22
22
|
|
23
|
+
s.add_dependency 'trollop', '~> 1.16.2'
|
23
24
|
s.add_development_dependency 'rspec', '~> 2.10.0'
|
24
25
|
s.add_development_dependency 'rake', '~> 0.9.2.2'
|
25
26
|
s.add_development_dependency 'cucumber', '~> 1.2'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: morning-pages
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -11,6 +11,22 @@ bindir: bin
|
|
11
11
|
cert_chain: []
|
12
12
|
date: 2012-07-17 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
|
+
- !ruby/object:Gem::Dependency
|
15
|
+
name: trollop
|
16
|
+
requirement: !ruby/object:Gem::Requirement
|
17
|
+
none: false
|
18
|
+
requirements:
|
19
|
+
- - ~>
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: 1.16.2
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
none: false
|
26
|
+
requirements:
|
27
|
+
- - ~>
|
28
|
+
- !ruby/object:Gem::Version
|
29
|
+
version: 1.16.2
|
14
30
|
- !ruby/object:Gem::Dependency
|
15
31
|
name: rspec
|
16
32
|
requirement: !ruby/object:Gem::Requirement
|
@@ -83,7 +99,8 @@ description: ! "I've long been fascinated by the morning pages habit of writing
|
|
83
99
|
help` for more info."
|
84
100
|
email:
|
85
101
|
- chris.p@rsons.org
|
86
|
-
executables:
|
102
|
+
executables:
|
103
|
+
- morning-pages
|
87
104
|
extensions: []
|
88
105
|
extra_rdoc_files: []
|
89
106
|
files:
|
@@ -92,6 +109,12 @@ files:
|
|
92
109
|
- Gemfile
|
93
110
|
- README.md
|
94
111
|
- Rakefile
|
112
|
+
- bin/morning-pages
|
113
|
+
- features/bin/fake-editor
|
114
|
+
- features/step_definitions/steps.rb
|
115
|
+
- features/support/driver.rb
|
116
|
+
- features/support/env.rb
|
117
|
+
- features/writing_words.feature
|
95
118
|
- lib/morning-pages.rb
|
96
119
|
- lib/morning-pages/version.rb
|
97
120
|
- morning-pages.gemspec
|
@@ -121,4 +144,9 @@ signing_key:
|
|
121
144
|
specification_version: 3
|
122
145
|
summary: Command line helper to write your morning pages
|
123
146
|
test_files:
|
147
|
+
- features/bin/fake-editor
|
148
|
+
- features/step_definitions/steps.rb
|
149
|
+
- features/support/driver.rb
|
150
|
+
- features/support/env.rb
|
151
|
+
- features/writing_words.feature
|
124
152
|
- spec/write_spec.rb
|