mado 0.0.4 → 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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1424884826aa2d29c1cf38a357e6c1ea7d5a0d21
4
- data.tar.gz: 4996784b598622d4c07a03cfdc15c0ac5301778e
3
+ metadata.gz: 98e1b4bb1a0f29db57b97d42ee0d60aac051575e
4
+ data.tar.gz: 675bd5ebee01e6bb023029b597f992919c0d2c85
5
5
  SHA512:
6
- metadata.gz: 4a64da322c766a914b29e6c1bc3f5be2bb6d173b883684d419a29513c0f4a24564e6457cfc384a4a44078a3eb53794e55b4a3e947e33fa280a40401915f2b708
7
- data.tar.gz: d82322dc1441ebbdbbebf19d36ac00d2623b050781acef46dafb76534d4ac96d651bf16cff1ef069d86652c720658b0b94dad344cec99cdbd08df79d5751265a
6
+ metadata.gz: b0d40125b424e8ba8b5db700cbed2260928eed9e649faa9fa9ce944c591fa94c80201e351544a9f2df9499dc39ef98e4b560693aa49657b400b581319870594f
7
+ data.tar.gz: 43760d60c02b67bb644feee4c537d8eb7a3e3fb94c7598b8f7e3ca9a02e6bcea4274c8e093938e73fe0823835817c4bf35df1134660be18dda25e20d82695f06
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --color
2
+ --format documentation
3
+ --require spec_helper
@@ -0,0 +1,5 @@
1
+ language: ruby
2
+ rvm:
3
+ - 1.9.3
4
+ - 2.0.0
5
+ - 2.1
@@ -1,3 +1,6 @@
1
+ ## 0.1.0
2
+ * Show local image
3
+
1
4
  ## 0.0.4
2
5
  * Use Thin 1.6.x
3
6
 
@@ -0,0 +1,8 @@
1
+ # A sample Guardfile
2
+ # More info at https://github.com/guard/guard#readme
3
+
4
+ guard :rspec do
5
+ watch(%r{^spec/.+_spec\.rb$})
6
+ watch(%r{^lib/(.+)\.rb$}) { |m| "spec/#{m[1]}_spec.rb" }
7
+ watch('spec/spec_helper.rb') { "spec" }
8
+ end
data/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # Mado
2
+ [![Build Status](https://travis-ci.org/dtan4/mado.svg?branch=master)](https://travis-ci.org/dtan4/mado)
2
3
  [![Gem Version](https://badge.fury.io/rb/mado.svg)](http://badge.fury.io/rb/mado)
3
4
 
4
5
  Realtime [Github Flavored Markdown](https://help.github.com/articles/github-flavored-markdown) Preview with WebSocket
data/Rakefile CHANGED
@@ -1,2 +1,7 @@
1
1
  require "bundler/gem_tasks"
2
+ require "rspec/core/rake_task"
3
+
4
+ RSpec::Core::RakeTask.new(:spec)
5
+
6
+ task :default => :spec
2
7
 
@@ -13,6 +13,12 @@ module Mado
13
13
  register Sinatra::Reloader
14
14
  end
15
15
 
16
+ helpers do
17
+ def markdown_dir
18
+ @markdown_dir ||= File.dirname(settings.markdown_path)
19
+ end
20
+ end
21
+
16
22
  get '/' do
17
23
  slim :index
18
24
  end
@@ -24,5 +30,15 @@ module Mado
24
30
  get "/js/application.js" do
25
31
  coffee :application
26
32
  end
33
+
34
+ get "/*" do
35
+ path = File.expand_path(params[:splat][0], markdown_dir)
36
+
37
+ if File.exist?(path)
38
+ send_file path, disposition: "inline"
39
+ else
40
+ not_found
41
+ end
42
+ end
27
43
  end
28
44
  end
@@ -28,6 +28,8 @@ module Mado
28
28
  end
29
29
 
30
30
  app = Rack::Builder.app do
31
+ Mado::App.set :markdown_path, markdown_path
32
+
31
33
  map "/" do
32
34
  run Mado::App
33
35
  end
@@ -1,3 +1,3 @@
1
1
  module Mado
2
- VERSION = "0.0.4"
2
+ VERSION = "0.1.0"
3
3
  end
@@ -29,6 +29,9 @@ Gem::Specification.new do |spec|
29
29
  spec.add_dependency "thin", "~> 1.6"
30
30
 
31
31
  spec.add_development_dependency "bundler", "~> 1.6"
32
+ spec.add_development_dependency "guard-rspec"
32
33
  spec.add_development_dependency "rake"
34
+ spec.add_development_dependency "rspec", "~> 3.0.0"
33
35
  spec.add_development_dependency "sinatra-reloader"
36
+ spec.add_development_dependency "terminal-notifier-guard"
34
37
  end
@@ -0,0 +1,64 @@
1
+ require "spec_helper"
2
+ require "rack/test"
3
+
4
+ module Mado
5
+ describe App do
6
+ include Rack::Test::Methods
7
+
8
+ let(:app) do
9
+ described_class
10
+ end
11
+
12
+ describe "GET /" do
13
+ it "should show the root page" do
14
+ get "/"
15
+ expect(last_response).to be_ok
16
+ end
17
+ end
18
+
19
+ describe "GET /<image>" do
20
+ let(:base_dir) do
21
+ fixture_path("example")
22
+ end
23
+
24
+ let(:other_dir) do
25
+ fixture_path("other")
26
+ end
27
+
28
+ before do
29
+ Dir.chdir(base_dir)
30
+ end
31
+
32
+ context "with existed image" do
33
+ context "in the same directory" do
34
+ before do
35
+ described_class.set :markdown_path, File.join(base_dir, "sample.md")
36
+ end
37
+
38
+ it "should return the specified image" do
39
+ get "/example.png"
40
+ expect(last_response).to be_ok
41
+ end
42
+ end
43
+
44
+ context "in the different directory" do
45
+ before do
46
+ described_class.set :markdown_path, File.join(other_dir, "other.md")
47
+ end
48
+
49
+ it "should return the specified image" do
50
+ get "/other.png"
51
+ expect(last_response).to be_ok
52
+ end
53
+ end
54
+ end
55
+
56
+ context "with non-existed image" do
57
+ it "should return 404" do
58
+ get "/notfound.png"
59
+ expect(last_response).to be_not_found
60
+ end
61
+ end
62
+ end
63
+ end
64
+ end
@@ -0,0 +1,6 @@
1
+ $LOAD_PATH.unshift File.expand_path('../../lib', __FILE__)
2
+ require 'mado'
3
+
4
+ def fixture_path(name)
5
+ File.expand_path(File.join("..", "fixtures", name), __FILE__)
6
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mado
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - dtan4
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-05-10 00:00:00.000000000 Z
11
+ date: 2014-06-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: coffee-script
@@ -150,6 +150,20 @@ dependencies:
150
150
  - - "~>"
151
151
  - !ruby/object:Gem::Version
152
152
  version: '1.6'
153
+ - !ruby/object:Gem::Dependency
154
+ name: guard-rspec
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - ">="
158
+ - !ruby/object:Gem::Version
159
+ version: '0'
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - ">="
165
+ - !ruby/object:Gem::Version
166
+ version: '0'
153
167
  - !ruby/object:Gem::Dependency
154
168
  name: rake
155
169
  requirement: !ruby/object:Gem::Requirement
@@ -164,6 +178,20 @@ dependencies:
164
178
  - - ">="
165
179
  - !ruby/object:Gem::Version
166
180
  version: '0'
181
+ - !ruby/object:Gem::Dependency
182
+ name: rspec
183
+ requirement: !ruby/object:Gem::Requirement
184
+ requirements:
185
+ - - "~>"
186
+ - !ruby/object:Gem::Version
187
+ version: 3.0.0
188
+ type: :development
189
+ prerelease: false
190
+ version_requirements: !ruby/object:Gem::Requirement
191
+ requirements:
192
+ - - "~>"
193
+ - !ruby/object:Gem::Version
194
+ version: 3.0.0
167
195
  - !ruby/object:Gem::Dependency
168
196
  name: sinatra-reloader
169
197
  requirement: !ruby/object:Gem::Requirement
@@ -178,6 +206,20 @@ dependencies:
178
206
  - - ">="
179
207
  - !ruby/object:Gem::Version
180
208
  version: '0'
209
+ - !ruby/object:Gem::Dependency
210
+ name: terminal-notifier-guard
211
+ requirement: !ruby/object:Gem::Requirement
212
+ requirements:
213
+ - - ">="
214
+ - !ruby/object:Gem::Version
215
+ version: '0'
216
+ type: :development
217
+ prerelease: false
218
+ version_requirements: !ruby/object:Gem::Requirement
219
+ requirements:
220
+ - - ">="
221
+ - !ruby/object:Gem::Version
222
+ version: '0'
181
223
  description: Realtime Github Flavored Markdown Preview with WebSocket
182
224
  email:
183
225
  - dtanshi45@gmail.com
@@ -187,8 +229,11 @@ extensions: []
187
229
  extra_rdoc_files: []
188
230
  files:
189
231
  - ".gitignore"
232
+ - ".rspec"
233
+ - ".travis.yml"
190
234
  - CHANGELOG.md
191
235
  - Gemfile
236
+ - Guardfile
192
237
  - LICENSE.txt
193
238
  - README.md
194
239
  - Rakefile
@@ -208,6 +253,10 @@ files:
208
253
  - lib/mado/server.rb
209
254
  - lib/mado/version.rb
210
255
  - mado.gemspec
256
+ - spec/fixtures/example/example.png
257
+ - spec/fixtures/other/other.png
258
+ - spec/mado/app_spec.rb
259
+ - spec/spec_helper.rb
211
260
  homepage: https://github.com/dtan4/mado
212
261
  licenses:
213
262
  - MIT
@@ -232,4 +281,9 @@ rubygems_version: 2.2.2
232
281
  signing_key:
233
282
  specification_version: 4
234
283
  summary: Realtime Github Flavored Markdown Preview
235
- test_files: []
284
+ test_files:
285
+ - spec/fixtures/example/example.png
286
+ - spec/fixtures/other/other.png
287
+ - spec/mado/app_spec.rb
288
+ - spec/spec_helper.rb
289
+ has_rdoc: