nesta 0.9.9 → 0.9.10
Sign up to get free protection for your applications and to get access to all the features.
- data/.gitignore +1 -0
- data/CHANGES +18 -0
- data/Gemfile.lock +13 -17
- data/bin/nesta +13 -4
- data/lib/nesta/app.rb +5 -4
- data/lib/nesta/commands.rb +72 -1
- data/lib/nesta/models.rb +21 -3
- data/lib/nesta/overrides.rb +1 -1
- data/lib/nesta/plugin.rb +33 -0
- data/lib/nesta/version.rb +1 -1
- data/nesta.gemspec +3 -3
- data/spec/atom_spec.rb +1 -2
- data/spec/commands_spec.rb +79 -7
- data/spec/config_spec.rb +0 -2
- data/spec/fixtures/nesta-plugin-test/Gemfile +4 -0
- data/spec/fixtures/nesta-plugin-test/Rakefile +1 -0
- data/spec/fixtures/nesta-plugin-test/lib/nesta-plugin-test.rb +3 -0
- data/spec/fixtures/nesta-plugin-test/lib/nesta-plugin-test/init.rb +20 -0
- data/spec/fixtures/nesta-plugin-test/lib/nesta-plugin-test/version.rb +7 -0
- data/spec/fixtures/nesta-plugin-test/nesta-plugin-test.gemspec +24 -0
- data/spec/model_factory.rb +0 -2
- data/spec/models_spec.rb +40 -18
- data/spec/overrides_spec.rb +8 -4
- data/spec/page_spec.rb +5 -11
- data/spec/plugin_spec.rb +51 -0
- data/spec/sitemap_spec.rb +2 -4
- data/spec/spec_helper.rb +35 -30
- data/views/atom.haml +1 -1
- metadata +45 -86
- data/lib/nesta/plugins.rb +0 -15
data/.gitignore
CHANGED
data/CHANGES
CHANGED
@@ -1,3 +1,21 @@
|
|
1
|
+
= 0.9.10 / (9 September 2011)
|
2
|
+
|
3
|
+
* Load Nesta plugins from gems. Any gem whose name begins with
|
4
|
+
nesta-plugin- can be used in a project by adding it to the project's
|
5
|
+
Gemfile beneath the `gem "nesta"` line. New plugins can be created
|
6
|
+
with the `nesta plugin:create` command.
|
7
|
+
|
8
|
+
* Mark pages as draft by setting a flag. Draft pages won't be shown in
|
9
|
+
production, but will be visible on your local copy of your site (as
|
10
|
+
it's running in production).
|
11
|
+
|
12
|
+
* Upgraded Sinatra to version 1.2.6. Upgraded other dependencies to
|
13
|
+
latest compatible versions.
|
14
|
+
|
15
|
+
* Bug fix: The `stylesheet` helper method assumes that you're using
|
16
|
+
the Sass rendering engine by default, which allows it to find .sass
|
17
|
+
files within the gem if no matching files are found locally.
|
18
|
+
|
1
19
|
= 0.9.9 / (24 August 2011)
|
2
20
|
|
3
21
|
* Bug fix: What a debacle this is turning into. The new Nesta::Env
|
data/Gemfile.lock
CHANGED
@@ -1,52 +1,48 @@
|
|
1
1
|
PATH
|
2
2
|
remote: .
|
3
3
|
specs:
|
4
|
-
nesta (0.9.
|
4
|
+
nesta (0.9.10)
|
5
5
|
RedCloth (~> 4.2)
|
6
6
|
haml (~> 3.1)
|
7
7
|
maruku (>= 0.6.0)
|
8
8
|
sass (~> 3.1)
|
9
9
|
shotgun (>= 0.8)
|
10
|
-
sinatra (= 1.
|
10
|
+
sinatra (= 1.2.6)
|
11
11
|
|
12
12
|
GEM
|
13
13
|
remote: http://rubygems.org/
|
14
14
|
specs:
|
15
15
|
RedCloth (4.2.8)
|
16
16
|
haml (3.1.2)
|
17
|
-
hoe (2.
|
18
|
-
rake (
|
19
|
-
|
20
|
-
hpricot (0.8.3)
|
21
|
-
json_pure (1.4.6)
|
17
|
+
hoe (2.12.2)
|
18
|
+
rake (~> 0.8)
|
19
|
+
hpricot (0.8.4)
|
22
20
|
maruku (0.6.0)
|
23
21
|
syntax (>= 1.0.0)
|
24
|
-
rack (1.2
|
25
|
-
rack-test (0.
|
22
|
+
rack (1.3.2)
|
23
|
+
rack-test (0.6.1)
|
26
24
|
rack (>= 1.0)
|
27
|
-
rake (0.
|
25
|
+
rake (0.9.2)
|
28
26
|
rspec (1.3.0)
|
29
27
|
rspec_hpricot_matchers (1.0)
|
30
|
-
rubyforge (2.0.4)
|
31
|
-
json_pure (>= 1.1.7)
|
32
28
|
sass (3.1.7)
|
33
29
|
shotgun (0.9)
|
34
30
|
rack (>= 1.0)
|
35
|
-
sinatra (1.
|
31
|
+
sinatra (1.2.6)
|
36
32
|
rack (~> 1.1)
|
37
|
-
tilt (
|
33
|
+
tilt (< 2.0, >= 1.2.2)
|
38
34
|
syntax (1.0.0)
|
39
35
|
test-unit (1.2.3)
|
40
36
|
hoe (>= 1.5.1)
|
41
|
-
tilt (1.3.
|
37
|
+
tilt (1.3.3)
|
42
38
|
|
43
39
|
PLATFORMS
|
44
40
|
ruby
|
45
41
|
|
46
42
|
DEPENDENCIES
|
47
|
-
hpricot (= 0.8.
|
43
|
+
hpricot (= 0.8.4)
|
48
44
|
nesta!
|
49
|
-
rack-test (= 0.
|
45
|
+
rack-test (= 0.6.1)
|
50
46
|
rspec (= 1.3.0)
|
51
47
|
rspec_hpricot_matchers (= 1.0)
|
52
48
|
test-unit (= 1.2.3)
|
data/bin/nesta
CHANGED
@@ -6,7 +6,7 @@ require File.expand_path('../lib/nesta/commands', File.dirname(__FILE__))
|
|
6
6
|
|
7
7
|
module Nesta
|
8
8
|
class Cli
|
9
|
-
def self.usage
|
9
|
+
def self.usage(exitcode=1)
|
10
10
|
puts <<EOF
|
11
11
|
USAGE: #{File.basename($0)} [GLOBAL OPTIONS] <command> [COMMAND OPTIONS]
|
12
12
|
|
@@ -17,6 +17,7 @@ GLOBAL OPTIONS
|
|
17
17
|
COMMANDS
|
18
18
|
new <path> Create a new Nesta project.
|
19
19
|
demo:content Install example pages in ./content-demo.
|
20
|
+
plugin:create <name> Create a gem called nesta-plugin-name.
|
20
21
|
theme:install <url> Install a theme from a git repository.
|
21
22
|
theme:enable <name> Make the theme active, updating config.yml.
|
22
23
|
theme:create <name> Makes a template for a new theme in ./themes.
|
@@ -26,7 +27,7 @@ OPTIONS FOR new
|
|
26
27
|
--vlad Include config/deploy.rb.
|
27
28
|
|
28
29
|
EOF
|
29
|
-
exit
|
30
|
+
exit exitcode
|
30
31
|
end
|
31
32
|
|
32
33
|
def self.version
|
@@ -45,7 +46,7 @@ exit 0
|
|
45
46
|
opts.each do |opt, arg|
|
46
47
|
case opt
|
47
48
|
when '--help'
|
48
|
-
usage
|
49
|
+
usage(exitcode=0)
|
49
50
|
when '--version'
|
50
51
|
version
|
51
52
|
else
|
@@ -53,6 +54,9 @@ exit 0
|
|
53
54
|
end
|
54
55
|
end
|
55
56
|
options
|
57
|
+
rescue GetoptLong::InvalidOption => e
|
58
|
+
$stderr.puts
|
59
|
+
usage
|
56
60
|
end
|
57
61
|
|
58
62
|
def self.main(options)
|
@@ -63,12 +67,17 @@ exit 0
|
|
63
67
|
Nesta::Commands::New.new(ARGV[0], options).execute
|
64
68
|
when 'demo:content'
|
65
69
|
Nesta::Commands::Demo::Content.new.execute
|
70
|
+
when 'plugin:create'
|
71
|
+
Nesta::Commands::Plugin::Create.new(ARGV[0]).execute
|
66
72
|
when /^theme:(create|enable|install)$/
|
67
73
|
command_cls = Nesta::Commands::Theme.const_get($1.capitalize.to_sym)
|
68
74
|
command_cls.new(ARGV[0], options).execute
|
69
75
|
else
|
70
|
-
usage
|
76
|
+
usage(exitcode=0)
|
71
77
|
end
|
78
|
+
rescue RuntimeError => e
|
79
|
+
$stderr.puts "ERROR: #{e}"
|
80
|
+
exit 1
|
72
81
|
rescue Nesta::Commands::UsageError => e
|
73
82
|
$stderr.puts "ERROR: #{e}"
|
74
83
|
usage
|
data/lib/nesta/app.rb
CHANGED
@@ -10,12 +10,10 @@ require File.expand_path('models', File.dirname(__FILE__))
|
|
10
10
|
require File.expand_path('navigation', File.dirname(__FILE__))
|
11
11
|
require File.expand_path('overrides', File.dirname(__FILE__))
|
12
12
|
require File.expand_path('path', File.dirname(__FILE__))
|
13
|
-
require File.expand_path('
|
13
|
+
require File.expand_path('plugin', File.dirname(__FILE__))
|
14
14
|
|
15
15
|
Encoding.default_external = 'utf-8' if RUBY_VERSION =~ /^1.9/
|
16
16
|
|
17
|
-
Nesta::Plugins.load_local_plugins
|
18
|
-
|
19
17
|
module Nesta
|
20
18
|
class App < Sinatra::Base
|
21
19
|
register Sinatra::Cache
|
@@ -112,7 +110,7 @@ module Nesta
|
|
112
110
|
error do
|
113
111
|
set_common_variables
|
114
112
|
haml(:error)
|
115
|
-
end unless Nesta::App.
|
113
|
+
end unless Nesta::App.development?
|
116
114
|
|
117
115
|
Overrides.load_local_app
|
118
116
|
Overrides.load_theme_app
|
@@ -163,3 +161,6 @@ module Nesta
|
|
163
161
|
end
|
164
162
|
end
|
165
163
|
end
|
164
|
+
|
165
|
+
Nesta::Plugin.load_local_plugins
|
166
|
+
Nesta::Plugin.initialize_plugins
|
data/lib/nesta/commands.rb
CHANGED
@@ -55,7 +55,9 @@ module Nesta
|
|
55
55
|
|
56
56
|
def initialize(path, options = {})
|
57
57
|
path.nil? && (raise UsageError.new('path not specified'))
|
58
|
-
|
58
|
+
if File.exist?(path)
|
59
|
+
raise RuntimeError.new("#{path} already exists")
|
60
|
+
end
|
59
61
|
@path = path
|
60
62
|
@options = options
|
61
63
|
end
|
@@ -131,6 +133,75 @@ module Nesta
|
|
131
133
|
end
|
132
134
|
end
|
133
135
|
|
136
|
+
module Plugin
|
137
|
+
class Create
|
138
|
+
def initialize(name)
|
139
|
+
name.nil? && (raise UsageError.new('name not specified'))
|
140
|
+
@name = name
|
141
|
+
@gem_name = "nesta-plugin-#{name}"
|
142
|
+
if File.exist?(@gem_name)
|
143
|
+
raise RuntimeError.new("#{@gem_name} already exists")
|
144
|
+
end
|
145
|
+
end
|
146
|
+
|
147
|
+
def lib_path(*parts)
|
148
|
+
File.join(@gem_name, 'lib', *parts)
|
149
|
+
end
|
150
|
+
|
151
|
+
def modify_required_file
|
152
|
+
File.open(lib_path("#{@gem_name}.rb"), 'w') do |file|
|
153
|
+
file.write <<-EOF
|
154
|
+
require "#{@gem_name}/version"
|
155
|
+
|
156
|
+
Nesta::Plugin.register(__FILE__)
|
157
|
+
EOF
|
158
|
+
end
|
159
|
+
end
|
160
|
+
|
161
|
+
def modify_init_file
|
162
|
+
module_name = @name.split('-').map { |name| name.capitalize }.join('::')
|
163
|
+
File.open(lib_path(@gem_name, 'init.rb'), 'w') do |file|
|
164
|
+
file.puts <<-EOF
|
165
|
+
module Nesta
|
166
|
+
module Plugin
|
167
|
+
module #{module_name}
|
168
|
+
module Helpers
|
169
|
+
helpers do
|
170
|
+
# If your plugin needs any helper methods, add them here...
|
171
|
+
end
|
172
|
+
end
|
173
|
+
end
|
174
|
+
end
|
175
|
+
|
176
|
+
class App
|
177
|
+
helpers Nesta::Plugin::#{module_name}::Helpers
|
178
|
+
end
|
179
|
+
end
|
180
|
+
EOF
|
181
|
+
end
|
182
|
+
end
|
183
|
+
|
184
|
+
def specify_gem_dependency
|
185
|
+
File.open(File.join(@gem_name, "#{@gem_name}.gemspec"), 'r+') do |file|
|
186
|
+
file.each_line do |line|
|
187
|
+
if line =~ /specify any dependencies here/
|
188
|
+
file.puts(' s.add_dependency("nesta", ">= 0.9.10")')
|
189
|
+
file.puts(' s.add_development_dependency("rake")')
|
190
|
+
end
|
191
|
+
end
|
192
|
+
end
|
193
|
+
end
|
194
|
+
|
195
|
+
def execute
|
196
|
+
system('bundle', 'gem', @gem_name)
|
197
|
+
modify_required_file
|
198
|
+
modify_init_file
|
199
|
+
specify_gem_dependency
|
200
|
+
Dir.chdir(@gem_name) { system('git', 'add', '.') }
|
201
|
+
end
|
202
|
+
end
|
203
|
+
end
|
204
|
+
|
134
205
|
module Theme
|
135
206
|
class Create
|
136
207
|
include Command
|
data/lib/nesta/models.rb
CHANGED
@@ -110,6 +110,11 @@ module Nesta
|
|
110
110
|
@metadata[key]
|
111
111
|
end
|
112
112
|
|
113
|
+
def flagged_as?(flag)
|
114
|
+
flags = metadata("flags")
|
115
|
+
flags && flags.split(",").map { |name| name.strip }.include?(flag)
|
116
|
+
end
|
117
|
+
|
113
118
|
private
|
114
119
|
def markup
|
115
120
|
@markup
|
@@ -154,7 +159,12 @@ module Nesta
|
|
154
159
|
end
|
155
160
|
|
156
161
|
def self.find_by_path(path)
|
157
|
-
load(path)
|
162
|
+
page = load(path)
|
163
|
+
page && page.hidden? ? nil : page
|
164
|
+
end
|
165
|
+
|
166
|
+
def self.find_all
|
167
|
+
super.select { |p| ! p.hidden? }
|
158
168
|
end
|
159
169
|
|
160
170
|
def self.find_articles
|
@@ -167,6 +177,14 @@ module Nesta
|
|
167
177
|
other.respond_to?(:path) && (self.path == other.path)
|
168
178
|
end
|
169
179
|
|
180
|
+
def draft?
|
181
|
+
flagged_as?('draft')
|
182
|
+
end
|
183
|
+
|
184
|
+
def hidden?
|
185
|
+
draft? && Nesta::App.production?
|
186
|
+
end
|
187
|
+
|
170
188
|
def heading
|
171
189
|
regex = case @format
|
172
190
|
when :mdown
|
@@ -203,11 +221,11 @@ module Nesta
|
|
203
221
|
end
|
204
222
|
|
205
223
|
def atom_id
|
206
|
-
metadata(
|
224
|
+
metadata('atom id')
|
207
225
|
end
|
208
226
|
|
209
227
|
def read_more
|
210
|
-
metadata(
|
228
|
+
metadata('read more') || 'Continue reading'
|
211
229
|
end
|
212
230
|
|
213
231
|
def summary
|
data/lib/nesta/overrides.rb
CHANGED
data/lib/nesta/plugin.rb
ADDED
@@ -0,0 +1,33 @@
|
|
1
|
+
module Nesta
|
2
|
+
module Plugin
|
3
|
+
class << self
|
4
|
+
attr_accessor :loaded
|
5
|
+
end
|
6
|
+
self.loaded ||= []
|
7
|
+
|
8
|
+
def self.register(path)
|
9
|
+
name = File.basename(path, '.rb')
|
10
|
+
prefix = 'nesta-plugin-'
|
11
|
+
name.start_with?(prefix) || raise("Plugin names must match '#{prefix}*'")
|
12
|
+
self.loaded << name
|
13
|
+
end
|
14
|
+
|
15
|
+
def self.initialize_plugins
|
16
|
+
self.loaded.each { |name| require "#{name}/init" }
|
17
|
+
end
|
18
|
+
|
19
|
+
def self.load_local_plugins
|
20
|
+
plugins = Dir.glob(File.expand_path('../plugins/*', File.dirname(__FILE__)))
|
21
|
+
plugins.each { |path| require_local_plugin(path) }
|
22
|
+
end
|
23
|
+
|
24
|
+
private
|
25
|
+
def self.require_local_plugin(path)
|
26
|
+
Nesta.deprecated(
|
27
|
+
'loading plugins from ./plugins', "convert #{path} to a gem")
|
28
|
+
require File.join(path, 'lib', File.basename(path))
|
29
|
+
rescue LoadError => e
|
30
|
+
$stderr.write("Couldn't load plugins/#{File.basename(path)}: #{e}\n")
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
data/lib/nesta/version.rb
CHANGED
data/nesta.gemspec
CHANGED
@@ -35,14 +35,14 @@ EOF
|
|
35
35
|
s.add_dependency('sass', '~> 3.1')
|
36
36
|
s.add_dependency('maruku', '>= 0.6.0')
|
37
37
|
s.add_dependency('RedCloth', '~> 4.2')
|
38
|
-
s.add_dependency('sinatra', '1.
|
38
|
+
s.add_dependency('sinatra', '1.2.6')
|
39
39
|
|
40
40
|
# Useful in development
|
41
41
|
s.add_dependency('shotgun', '>= 0.8')
|
42
42
|
|
43
43
|
# Test libraries
|
44
|
-
s.add_development_dependency('hpricot', '0.8.
|
45
|
-
s.add_development_dependency('rack-test', '0.
|
44
|
+
s.add_development_dependency('hpricot', '0.8.4')
|
45
|
+
s.add_development_dependency('rack-test', '0.6.1')
|
46
46
|
s.add_development_dependency('rspec', '1.3.0')
|
47
47
|
s.add_development_dependency('rspec_hpricot_matchers', '1.0')
|
48
48
|
s.add_development_dependency('test-unit', '1.2.3')
|
data/spec/atom_spec.rb
CHANGED
@@ -2,7 +2,6 @@ require File.expand_path('spec_helper', File.dirname(__FILE__))
|
|
2
2
|
require File.expand_path('model_factory', File.dirname(__FILE__))
|
3
3
|
|
4
4
|
describe "atom feed" do
|
5
|
-
include ConfigSpecHelper
|
6
5
|
include ModelFactory
|
7
6
|
include RequestSpecHelper
|
8
7
|
|
@@ -17,7 +16,7 @@ describe "atom feed" do
|
|
17
16
|
end
|
18
17
|
|
19
18
|
after(:each) do
|
20
|
-
|
19
|
+
remove_temp_directory
|
21
20
|
end
|
22
21
|
|
23
22
|
it "should render successfully" do
|
data/spec/commands_spec.rb
CHANGED
@@ -2,15 +2,13 @@ require File.expand_path("spec_helper", File.dirname(__FILE__))
|
|
2
2
|
require File.expand_path("../lib/nesta/commands", File.dirname(__FILE__))
|
3
3
|
|
4
4
|
describe "nesta" do
|
5
|
-
include FixtureHelper
|
6
|
-
|
7
5
|
before(:each) do
|
8
|
-
|
9
|
-
@project_path =
|
6
|
+
create_temp_directory
|
7
|
+
@project_path = temp_path('mysite.com')
|
10
8
|
end
|
11
9
|
|
12
10
|
after(:each) do
|
13
|
-
|
11
|
+
remove_temp_directory
|
14
12
|
end
|
15
13
|
|
16
14
|
def project_path(path)
|
@@ -169,6 +167,80 @@ describe "nesta" do
|
|
169
167
|
end
|
170
168
|
end
|
171
169
|
|
170
|
+
describe "plugin:create" do
|
171
|
+
before(:each) do
|
172
|
+
@name = 'my-feature'
|
173
|
+
@gem_name = "nesta-plugin-#{@name}"
|
174
|
+
@plugins_path = temp_path('plugins')
|
175
|
+
@working_dir = Dir.pwd
|
176
|
+
Dir.mkdir(@plugins_path)
|
177
|
+
Dir.chdir(@plugins_path)
|
178
|
+
@command = Nesta::Commands::Plugin::Create.new(@name)
|
179
|
+
@command.stub!(:system)
|
180
|
+
end
|
181
|
+
|
182
|
+
after(:each) do
|
183
|
+
Dir.chdir(@working_dir)
|
184
|
+
FileUtils.rm_r(@plugins_path)
|
185
|
+
end
|
186
|
+
|
187
|
+
it "should create a new gem prefixed with nesta-plugin" do
|
188
|
+
@command.should_receive(:system).with('bundle', 'gem', @gem_name)
|
189
|
+
begin
|
190
|
+
@command.execute
|
191
|
+
rescue Errno::ENOENT
|
192
|
+
# This test is only concerned with running bundle gem; ENOENT
|
193
|
+
# errors are raised because we didn't create a real gem.
|
194
|
+
end
|
195
|
+
end
|
196
|
+
|
197
|
+
describe "after gem created" do
|
198
|
+
def create_gem_file(*components)
|
199
|
+
path = File.join(@plugins_path, @gem_name, *components)
|
200
|
+
FileUtils.makedirs(File.dirname(path))
|
201
|
+
File.open(path, 'w') { |f| yield f if block_given? }
|
202
|
+
path
|
203
|
+
end
|
204
|
+
|
205
|
+
before(:each) do
|
206
|
+
@required_file = create_gem_file('lib', "#{@gem_name}.rb")
|
207
|
+
@init_file = create_gem_file('lib', @gem_name, 'init.rb')
|
208
|
+
@gem_spec = create_gem_file("#{@gem_name}.gemspec") do |file|
|
209
|
+
file.puts " # specify any dependencies here; for example:"
|
210
|
+
end
|
211
|
+
end
|
212
|
+
|
213
|
+
after(:each) do
|
214
|
+
FileUtils.rm(@required_file)
|
215
|
+
FileUtils.rm(@init_file)
|
216
|
+
end
|
217
|
+
|
218
|
+
it "should create the ruby file loaded on require" do
|
219
|
+
@command.execute
|
220
|
+
File.read(@required_file).should include('Plugin.register(__FILE__)')
|
221
|
+
end
|
222
|
+
|
223
|
+
it "should create a default init.rb file" do
|
224
|
+
@command.execute
|
225
|
+
init = File.read(@init_file)
|
226
|
+
boilerplate = <<-EOF
|
227
|
+
module My::Feature
|
228
|
+
module Helpers
|
229
|
+
helpers do
|
230
|
+
EOF
|
231
|
+
init.should include(boilerplate)
|
232
|
+
init.should include('helpers Nesta::Plugin::My::Feature::Helpers')
|
233
|
+
end
|
234
|
+
|
235
|
+
it "should specify plugin gem's dependencies" do
|
236
|
+
@command.execute
|
237
|
+
text = File.read(@gem_spec)
|
238
|
+
text.should include('s.add_dependency("nesta", ">= 0.9.10")')
|
239
|
+
text.should include('s.add_development_dependency("rake")')
|
240
|
+
end
|
241
|
+
end
|
242
|
+
end
|
243
|
+
|
172
244
|
describe "theme:install" do
|
173
245
|
before(:each) do
|
174
246
|
@repo_url = 'git://github.com/gma/nesta-theme-mine.git'
|
@@ -221,7 +293,7 @@ describe "nesta" do
|
|
221
293
|
|
222
294
|
describe "theme:enable" do
|
223
295
|
before(:each) do
|
224
|
-
config =
|
296
|
+
config = temp_path('config.yml')
|
225
297
|
Nesta::Config.stub!(:yaml_path).and_return(config)
|
226
298
|
@name = 'mytheme'
|
227
299
|
@command = Nesta::Commands::Theme::Enable.new(@name)
|
@@ -265,7 +337,7 @@ describe "nesta" do
|
|
265
337
|
end
|
266
338
|
|
267
339
|
before(:each) do
|
268
|
-
Nesta::App.stub!(:root).and_return(
|
340
|
+
Nesta::App.stub!(:root).and_return(TempFileHelper::TEMP_DIR)
|
269
341
|
@name = 'my-new-theme'
|
270
342
|
Nesta::Commands::Theme::Create.new(@name).execute
|
271
343
|
end
|