beanstalkd_view 0.1.1 → 0.1.2

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,3 +1,5 @@
1
+ [![Build Status](https://secure.travis-ci.org/denniskuczynski/beanstalkd_view.png?branch=master)](http://travis-ci.org/denniskuczynski/beanstalkd_view)
2
+
1
3
  A Sinatra app to view/manage beanstalkd queues that can be embedded in a Rails app similar to what's available in Resque.
2
4
 
3
5
  To use, include the gem:
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
 
@@ -4,21 +4,28 @@ module BeanstalkdView
4
4
  include BeanstalkdView::BeanstalkdUtils
5
5
 
6
6
  get "/" do
7
- @tubes = beanstalk.list_tubes
8
- @stats = beanstalk.stats
9
- erb :index
7
+ begin
8
+ @tubes = beanstalk.list_tubes
9
+ @stats = beanstalk.stats
10
+ erb :index
11
+ rescue Beanstalk::NotConnected => @error
12
+ erb :error
13
+ end
10
14
  end
11
15
 
12
16
  get "/tube/:tube" do
13
- @stats = beanstalk.stats_tube(params[:tube])
14
- erb :tube_stats
17
+ begin
18
+ @stats = beanstalk.stats_tube(params[:tube])
19
+ erb :tube_stats
20
+ rescue Beanstalk::NotConnected => @error
21
+ erb :error
22
+ end
15
23
  end
16
24
 
17
25
  get "/resources/*" do |path|
18
26
  file = File.expand_path(File.join('resources', path), File.dirname(__FILE__))
19
27
  send_file file
20
28
  end
21
-
22
- end
23
-
29
+
30
+ end
24
31
  end
@@ -1,3 +1,3 @@
1
1
  module BeanstalkdView
2
- VERSION = "0.1.1"
2
+ VERSION = "0.1.2"
3
3
  end
@@ -0,0 +1,6 @@
1
+ <div class="row">
2
+ <div class="span12">
3
+ <h2>Error</h2>
4
+ <pre><%= @error %></pre>
5
+ </div>
6
+ </div>
@@ -0,0 +1,46 @@
1
+ require 'spec_helper'
2
+
3
+ describe BeanstalkdView::Server, :type => :request do
4
+
5
+ before :all do
6
+ ENV['BEANSTALK_URL'] = 'beanstalk://localhost/'
7
+ Capybara.app = BeanstalkdView::Server.new
8
+ end
9
+
10
+ describe "with beanstalkd daemon running", :requires_beanstalkd => true do
11
+ before :all do
12
+ # Make sure beanstalkd is running
13
+ if `pgrep beanstalkd` == ""
14
+ raise "PRECONDITION NOT MET: beanstalkd not running"
15
+ end
16
+ end
17
+
18
+ it "should show the overview at: /" do
19
+ visit '/'
20
+ body.should have_content "Beanstalkd View"
21
+ body.should have_content "Statistics"
22
+ body.should have_content "Tubes"
23
+ end
24
+
25
+ it "should show the default tube stats at: tube/default" do
26
+ visit '/tube/default'
27
+ body.should have_content "Beanstalkd View"
28
+ body.should have_content "Statistics"
29
+ end
30
+ end
31
+
32
+ describe "with out beanstalkd daemon running" do
33
+ before :all do
34
+ # Make sure beanstalkd is NOT running
35
+ if `pgrep beanstalkd` != ""
36
+ raise "PRECONDITION NOT MET: beanstalkd running"
37
+ end
38
+ end
39
+
40
+ it "should show error at: /" do
41
+ visit '/'
42
+ page.should have_content "Beanstalk::NotConnected"
43
+ end
44
+ end
45
+
46
+ end
data/spec/spec_helper.rb CHANGED
@@ -1,15 +1,19 @@
1
1
  require 'rubygems'
2
2
  require 'bundler/setup'
3
3
 
4
+ require 'capybara/rspec'
5
+
4
6
  require 'beanstalkd_view'
5
- require 'rspec'
6
-
7
+
7
8
  # Requires supporting ruby files with custom matchers and macros, etc,
8
9
  # in spec/support/ and its subdirectories.
9
10
  Dir[File.dirname(__FILE__)+"/support/**/*.rb"].each do |f|
10
11
  require f
11
12
  end
13
+
14
+ #Capybara.default_driver = :selenium
12
15
 
13
16
  RSpec.configure do |config|
14
- #
17
+ config.treat_symbols_as_metadata_keys_with_true_values = true
18
+ config.filter_run_excluding :requires_beanstalkd
15
19
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: beanstalkd_view
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.1
4
+ version: 0.1.2
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,22 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-12 00:00:00.000000000 Z
12
+ date: 2012-03-19 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: sinatra
16
- requirement: &2156471320 !ruby/object:Gem::Requirement
16
+ requirement: &2160299080 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: 0.9.2
21
+ version: 1.1.0
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *2156471320
24
+ version_requirements: *2160299080
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: beanstalk-client
27
- requirement: &2156469640 !ruby/object:Gem::Requirement
27
+ requirement: &2152286700 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,18 +32,51 @@ dependencies:
32
32
  version: 1.1.1
33
33
  type: :runtime
34
34
  prerelease: false
35
- version_requirements: *2156469640
35
+ version_requirements: *2152286700
36
+ - !ruby/object:Gem::Dependency
37
+ name: rake
38
+ requirement: &2151813520 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :development
45
+ prerelease: false
46
+ version_requirements: *2151813520
47
+ - !ruby/object:Gem::Dependency
48
+ name: rack-test
49
+ requirement: &2151798580 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *2151798580
36
58
  - !ruby/object:Gem::Dependency
37
59
  name: rspec
38
- requirement: &2156468080 !ruby/object:Gem::Requirement
60
+ requirement: &2151797740 !ruby/object:Gem::Requirement
39
61
  none: false
40
62
  requirements:
41
- - - ~>
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *2151797740
69
+ - !ruby/object:Gem::Dependency
70
+ name: capybara
71
+ requirement: &2151812180 !ruby/object:Gem::Requirement
72
+ none: false
73
+ requirements:
74
+ - - ! '>='
42
75
  - !ruby/object:Gem::Version
43
- version: '2.8'
76
+ version: '0'
44
77
  type: :development
45
78
  prerelease: false
46
- version_requirements: *2156468080
79
+ version_requirements: *2151812180
47
80
  description: A Sinatra app to view/manage beanstalkd queues that can be embedded in
48
81
  a Rails app similar to what's available in Resque
49
82
  email: dennis.kuczynski@gmail.com
@@ -51,7 +84,7 @@ executables: []
51
84
  extensions: []
52
85
  extra_rdoc_files: []
53
86
  files:
54
- - README
87
+ - README.md
55
88
  - Gemfile
56
89
  - Rakefile
57
90
  - lib/beanstalkd_view/beanstalkd_utils.rb
@@ -65,6 +98,7 @@ files:
65
98
  - lib/beanstalkd_view/resources/bootstrap/js/bootstrap.min.js
66
99
  - lib/beanstalkd_view/server.rb
67
100
  - lib/beanstalkd_view/version.rb
101
+ - lib/beanstalkd_view/views/error.erb
68
102
  - lib/beanstalkd_view/views/general_stats.erb
69
103
  - lib/beanstalkd_view/views/index.erb
70
104
  - lib/beanstalkd_view/views/layout.erb
@@ -72,6 +106,7 @@ files:
72
106
  - lib/beanstalkd_view/views/tubes.erb
73
107
  - lib/beanstalkd_view.rb
74
108
  - spec/lib/beanstalkd_view/beanstalkd_util_spec.rb
109
+ - spec/lib/beanstalkd_view/server_spec.rb
75
110
  - spec/spec_helper.rb
76
111
  homepage: https://github.com/denniskuczynski/beanstalkd_view
77
112
  licenses: []
@@ -100,4 +135,5 @@ summary: A Sinatra app to view/manage beanstalkd queues that can be embedded in
100
135
  Rails app similar to what's available in Resque
101
136
  test_files:
102
137
  - spec/lib/beanstalkd_view/beanstalkd_util_spec.rb
138
+ - spec/lib/beanstalkd_view/server_spec.rb
103
139
  - spec/spec_helper.rb