valid_route 0.0.1 → 0.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/lib/valid_route/route_validator.rb +13 -7
  3. data/lib/valid_route/version.rb +1 -1
  4. data/test/dummy/app/assets/javascripts/namespaced/whizzers.js +2 -0
  5. data/test/dummy/app/assets/stylesheets/namespaced/whizzers.css +4 -0
  6. data/test/dummy/app/controllers/namespaced/whizzers_controller.rb +60 -0
  7. data/test/dummy/app/helpers/namespaced/whizzers_helper.rb +4 -0
  8. data/test/dummy/app/models/namespaced/whizzer.rb +5 -0
  9. data/test/dummy/app/models/namespaced.rb +5 -0
  10. data/test/dummy/app/views/namespaced/whizzers/_form.html.erb +21 -0
  11. data/test/dummy/app/views/namespaced/whizzers/edit.html.erb +6 -0
  12. data/test/dummy/app/views/namespaced/whizzers/index.html.erb +27 -0
  13. data/test/dummy/app/views/namespaced/whizzers/new.html.erb +5 -0
  14. data/test/dummy/app/views/namespaced/whizzers/show.html.erb +9 -0
  15. data/test/dummy/config/routes.rb +4 -0
  16. data/test/dummy/db/development.sqlite3 +0 -0
  17. data/test/dummy/db/migrate/20130515201559_create_namespaced_whizzers.rb +9 -0
  18. data/test/dummy/db/schema.rb +7 -1
  19. data/test/dummy/db/test.sqlite3 +0 -0
  20. data/test/dummy/log/development.log +230 -0
  21. data/test/dummy/log/test.log +11652 -22850
  22. data/test/dummy/test/controllers/namespaced/whizzers_controller_test.rb +51 -0
  23. data/test/dummy/test/factories/namespaced_whizzers.rb +7 -0
  24. data/test/dummy/test/helpers/namespaced/whizzers_helper_test.rb +6 -0
  25. data/test/dummy/test/models/namespaced/whizzer_test.rb +9 -0
  26. data/test/dummy/test/valid_route/route_formatter_test.rb +5 -0
  27. data/test/dummy/test/valid_route/route_validator_test.rb +12 -0
  28. data/test/dummy/tmp/cache/assets/development/sprockets/09256ba0e8264827c3e2c318991b64cd +0 -0
  29. data/test/dummy/tmp/cache/assets/development/sprockets/120ae5950a11de18f96bf740f106444a +0 -0
  30. data/test/dummy/tmp/cache/assets/development/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  31. data/test/dummy/tmp/cache/assets/development/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  32. data/test/dummy/tmp/cache/assets/development/sprockets/34d3dd45f6515787f94cd1b673db4076 +0 -0
  33. data/test/dummy/tmp/cache/assets/development/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  34. data/test/dummy/tmp/cache/assets/development/sprockets/3d6a697f5610f9f9e1d5af4ce5c9d618 +0 -0
  35. data/test/dummy/tmp/cache/assets/development/sprockets/717ea0077fd0f73e5d956e4902250d3a +0 -0
  36. data/test/dummy/tmp/cache/assets/development/sprockets/8733c94f79979ec907253d4bff6714a6 +0 -0
  37. data/test/dummy/tmp/cache/assets/development/sprockets/c9f51f5d854353b135800b3f119d5a2f +0 -0
  38. data/test/dummy/tmp/cache/assets/development/sprockets/caba0b8ace01695be44d327614791326 +0 -0
  39. data/test/dummy/tmp/cache/assets/development/sprockets/cea2000b50dd04cabe48512175515a85 +0 -0
  40. data/test/dummy/tmp/cache/assets/development/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  41. data/test/dummy/tmp/cache/assets/development/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  42. data/test/dummy/tmp/cache/assets/development/sprockets/e1d02a80492905aecbf9091b02015b8a +0 -0
  43. data/test/dummy/tmp/cache/assets/development/sprockets/efa1d5add14bdd35667da1677327970d +0 -0
  44. data/test/dummy/tmp/cache/assets/development/sprockets/efbbda72f9bf6e818df8cdbb4ac150b0 +0 -0
  45. data/test/dummy/tmp/cache/assets/development/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  46. data/test/dummy/tmp/cache/assets/test/sprockets/09256ba0e8264827c3e2c318991b64cd +0 -0
  47. data/test/dummy/tmp/cache/assets/test/sprockets/120ae5950a11de18f96bf740f106444a +0 -0
  48. data/test/dummy/tmp/cache/assets/test/sprockets/13fe41fee1fe35b49d145bcc06610705 +0 -0
  49. data/test/dummy/tmp/cache/assets/test/sprockets/2f5173deea6c795b8fdde723bb4b63af +0 -0
  50. data/test/dummy/tmp/cache/assets/test/sprockets/357970feca3ac29060c1e3861e2c0953 +0 -0
  51. data/test/dummy/tmp/cache/assets/test/sprockets/caba0b8ace01695be44d327614791326 +0 -0
  52. data/test/dummy/tmp/cache/assets/test/sprockets/cea2000b50dd04cabe48512175515a85 +0 -0
  53. data/test/dummy/tmp/cache/assets/test/sprockets/cffd775d018f68ce5dba1ee0d951a994 +0 -0
  54. data/test/dummy/tmp/cache/assets/test/sprockets/d771ace226fc8215a3572e0aa35bb0d6 +0 -0
  55. data/test/dummy/tmp/cache/assets/test/sprockets/f7cbd26ba1d28d48de824f0e94586655 +0 -0
  56. data/test/factories/namespaced_whizzers.rb +8 -0
  57. metadata +68 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: f4afca94e7e2a46d340d2474c9f5b12b386ecf37
4
- data.tar.gz: dfad34ddb57e360b42cb6f7c6fdc410dde50970f
3
+ metadata.gz: fd3f318f6e79d420b9f41465980ea0f334f98d86
4
+ data.tar.gz: 70923f6e407e55a9d0f96eb0e2f8770c6f5ee490
5
5
  SHA512:
6
- metadata.gz: c8875fba33475ae9c7733a59127329e2ef89d46370acd6bbd13a2058ee4a164144cec08bb100efa74ae22b47396b9d40b01a1c55c5e461c6c2fc3aab37681f51
7
- data.tar.gz: 5d78d64ddad6cdb9f7dc6b65e5b8be6f6fad450ab7c373f0d0ed75dfda7889121c03b2ae8f4970855c290a06ebb950c3395fc919b4fabd09fb51220d1e6397eb
6
+ metadata.gz: a2c74f43755922cd08238e68e4edeeef7cc1b55a09abada9dfbfaf6f9bda3a667dbdc1a21945b292cfff3bae9b9af4e3c9d452ec6d763f0942e7f1c8f3908045
7
+ data.tar.gz: 8cab5c0c3f9d91a8de8090564af351f9c110776c4b2cf6a7328b7acaac267de35cfb6b3f47e27c22a43d952562c632a6d4c9c0b195fa1f091c077268db9cdd53
@@ -1,8 +1,10 @@
1
1
  class RouteValidator < ActiveModel::EachValidator
2
2
 
3
3
  def initialize(options)
4
+ # options[:get_all_conflicts] = true
4
5
  super
5
6
  scrub_options options
7
+
6
8
  end
7
9
 
8
10
  def validate_each(record, attribute, value)
@@ -12,9 +14,7 @@ class RouteValidator < ActiveModel::EachValidator
12
14
 
13
15
  routes = scrub_routes routes
14
16
 
15
- conflicts = check_conflicts routes, record
16
-
17
-
17
+ conflicts = check_conflicts routes, record
18
18
 
19
19
  unless conflicts.empty?
20
20
  record.errors[attribute] << (@options[:message] || "route is taken")
@@ -59,9 +59,11 @@ class RouteValidator < ActiveModel::EachValidator
59
59
  substituted_route = route_to_create[:path].sub(parameter, record.to_param)
60
60
  if (route[:path] == route_to_create[:path]) or (route[:path] == substituted_route)
61
61
  conflicts.push route
62
+ break unless @options[:get_all_conflicts]
62
63
  end
63
64
  end
64
65
  }
66
+ break if !conflicts.empty? unless @options[:get_all_conflicts]
65
67
  }
66
68
 
67
69
  # Check for existing records of other Classes' Show actions, add it to the conflicting paths if the record at that path already exists
@@ -69,20 +71,26 @@ class RouteValidator < ActiveModel::EachValidator
69
71
  routes_to_create.each {|route_to_create|
70
72
  if route[:reqs].include?("#show") or route[:reqs].include?("#edit")
71
73
  if route[:reqs].include?("/") # is this a namespaced route or anything?
72
- route_controller_segments = route[:reqs].split(/^(.*\/)(.*)$/)
73
- klass_underscored = route_controller_segments[0] + route_controller_segments[1].singularize
74
+ route_controller_segments = route[:reqs].slice(/(.*)(#)(.*)/, 1).split(/^(.*\/)(.*)$/)
75
+ last_segment = route_controller_segments.pop.singularize
76
+ klass_underscored = route_controller_segments.join("") + last_segment
77
+
78
+ # TODO: THIS has no coverage
74
79
  else
75
80
  klass_underscored = route[:reqs].slice(/(.*)(#)(.*)/, 1).singularize
76
81
  end
77
82
  klass = klass_underscored.classify.constantize
78
83
  if klass.exists?(record.to_param)
79
84
  conflicts.push route unless klass.find(record.to_param).eql? record
85
+ break unless @options[:get_all_conflicts]
80
86
  end
81
87
  if record.class.exists?(record.to_param)
82
88
  conflicts.push route unless record.class.find(record.to_param).eql? record
89
+ break unless @options[:get_all_conflicts]
83
90
  end
84
91
  end
85
92
  }
93
+ break if !conflicts.empty? unless @options[:get_all_conflicts]
86
94
  }
87
95
 
88
96
  conflicts
@@ -107,7 +115,6 @@ class RouteValidator < ActiveModel::EachValidator
107
115
  # Add the additional routes
108
116
  unless @options[:reserved_routes].nil?
109
117
  @options[:reserved_routes].each { |route_path|
110
- # puts "valid_route:110 #{route_path}"
111
118
  routes << {path: route_path, verb: 'GET', reqs: ''}
112
119
  }
113
120
  end
@@ -117,7 +124,6 @@ class RouteValidator < ActiveModel::EachValidator
117
124
  routes.delete_if { |route|
118
125
  route_included = false
119
126
  @options[:unreserved_routes].each { |route_path|
120
- # puts "valid_route:120 #{route[:path]} #{route_path}"
121
127
  route_included = route_included || (route[:path] == route_path)
122
128
  }
123
129
  route_included
@@ -1,3 +1,3 @@
1
1
  module ValidRoute
2
- VERSION = "0.0.1"
2
+ VERSION = "0.0.2"
3
3
  end
@@ -0,0 +1,2 @@
1
+ // Place all the behaviors and hooks related to the matching controller here.
2
+ // All this logic will automatically be available in application.js.
@@ -0,0 +1,4 @@
1
+ /*
2
+ Place all the styles related to the matching controller here.
3
+ They will automatically be included in application.css.
4
+ */
@@ -0,0 +1,60 @@
1
+ module Namespaced
2
+ class WhizzersController < ApplicationController
3
+ before_action :set_namespaced_whizzer, only: [:show, :edit, :update, :destroy]
4
+
5
+ # GET /namespaced/whizzers
6
+ def index
7
+ @namespaced_whizzers = Namespaced::Whizzer.all
8
+ end
9
+
10
+ # GET /namespaced/whizzers/1
11
+ def show
12
+ end
13
+
14
+ # GET /namespaced/whizzers/new
15
+ def new
16
+ @namespaced_whizzer = Namespaced::Whizzer.new
17
+ end
18
+
19
+ # GET /namespaced/whizzers/1/edit
20
+ def edit
21
+ end
22
+
23
+ # POST /namespaced/whizzers
24
+ def create
25
+ @namespaced_whizzer = Namespaced::Whizzer.new(namespaced_whizzer_params)
26
+
27
+ if @namespaced_whizzer.save
28
+ redirect_to @namespaced_whizzer, notice: 'Whizzer was successfully created.'
29
+ else
30
+ render action: 'new'
31
+ end
32
+ end
33
+
34
+ # PATCH/PUT /namespaced/whizzers/1
35
+ def update
36
+ if @namespaced_whizzer.update(namespaced_whizzer_params)
37
+ redirect_to @namespaced_whizzer, notice: 'Whizzer was successfully updated.'
38
+ else
39
+ render action: 'edit'
40
+ end
41
+ end
42
+
43
+ # DELETE /namespaced/whizzers/1
44
+ def destroy
45
+ @namespaced_whizzer.destroy
46
+ redirect_to namespaced_whizzers_url, notice: 'Whizzer was successfully destroyed.'
47
+ end
48
+
49
+ private
50
+ # Use callbacks to share common setup or constraints between actions.
51
+ def set_namespaced_whizzer
52
+ @namespaced_whizzer = Namespaced::Whizzer.find(params[:id])
53
+ end
54
+
55
+ # Only allow a trusted parameter "white list" through.
56
+ def namespaced_whizzer_params
57
+ params.require(:namespaced_whizzer).permit(:permalink)
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,4 @@
1
+ module Namespaced
2
+ module WhizzersHelper
3
+ end
4
+ end
@@ -0,0 +1,5 @@
1
+ module Namespaced
2
+ class Whizzer < ActiveRecord::Base
3
+ self.table_name = "namespaced_whizzers"
4
+ end
5
+ end
@@ -0,0 +1,5 @@
1
+ module Namespaced
2
+ def self.table_name_prefix
3
+ 'namespaced_'
4
+ end
5
+ end
@@ -0,0 +1,21 @@
1
+ <%= form_for(@namespaced_whizzer) do |f| %>
2
+ <% if @namespaced_whizzer.errors.any? %>
3
+ <div id="error_explanation">
4
+ <h2><%= pluralize(@namespaced_whizzer.errors.count, "error") %> prohibited this namespaced_whizzer from being saved:</h2>
5
+
6
+ <ul>
7
+ <% @namespaced_whizzer.errors.full_messages.each do |msg| %>
8
+ <li><%= msg %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div class="field">
15
+ <%= f.label :permalink %><br>
16
+ <%= f.text_field :permalink %>
17
+ </div>
18
+ <div class="actions">
19
+ <%= f.submit %>
20
+ </div>
21
+ <% end %>
@@ -0,0 +1,6 @@
1
+ <h1>Editing namespaced_whizzer</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Show', @namespaced_whizzer %> |
6
+ <%= link_to 'Back', namespaced_whizzers_path %>
@@ -0,0 +1,27 @@
1
+ <h1>Listing namespaced_whizzers</h1>
2
+
3
+ <table>
4
+ <thead>
5
+ <tr>
6
+ <th>Permalink</th>
7
+ <th></th>
8
+ <th></th>
9
+ <th></th>
10
+ </tr>
11
+ </thead>
12
+
13
+ <tbody>
14
+ <% @namespaced_whizzers.each do |namespaced_whizzer| %>
15
+ <tr>
16
+ <td><%= namespaced_whizzer.permalink %></td>
17
+ <td><%= link_to 'Show', namespaced_whizzer %></td>
18
+ <td><%= link_to 'Edit', edit_namespaced_whizzer_path(namespaced_whizzer) %></td>
19
+ <td><%= link_to 'Destroy', namespaced_whizzer, method: :delete, data: { confirm: 'Are you sure?' } %></td>
20
+ </tr>
21
+ <% end %>
22
+ </tbody>
23
+ </table>
24
+
25
+ <br>
26
+
27
+ <%= link_to 'New Whizzer', new_namespaced_whizzer_path %>
@@ -0,0 +1,5 @@
1
+ <h1>New namespaced_whizzer</h1>
2
+
3
+ <%= render 'form' %>
4
+
5
+ <%= link_to 'Back', namespaced_whizzers_path %>
@@ -0,0 +1,9 @@
1
+ <p id="notice"><%= notice %></p>
2
+
3
+ <p>
4
+ <strong>Permalink:</strong>
5
+ <%= @namespaced_whizzer.permalink %>
6
+ </p>
7
+
8
+ <%= link_to 'Edit', edit_namespaced_whizzer_path(@namespaced_whizzer) %> |
9
+ <%= link_to 'Back', namespaced_whizzers_path %>
@@ -1,4 +1,8 @@
1
1
  Dummy::Application.routes.draw do
2
+ namespace :namespaced do
3
+ resources :whizzers
4
+ end
5
+
2
6
  resources :others
3
7
 
4
8
  resources :users
Binary file
@@ -0,0 +1,9 @@
1
+ class CreateNamespacedWhizzers < ActiveRecord::Migration
2
+ def change
3
+ create_table :namespaced_whizzers do |t|
4
+ t.string :permalink
5
+
6
+ t.timestamps
7
+ end
8
+ end
9
+ end
@@ -11,7 +11,13 @@
11
11
  #
12
12
  # It's strongly recommended that you check this file into your version control system.
13
13
 
14
- ActiveRecord::Schema.define(version: 20130513145529) do
14
+ ActiveRecord::Schema.define(version: 20130515201559) do
15
+
16
+ create_table "namespaced_whizzers", force: true do |t|
17
+ t.string "permalink"
18
+ t.datetime "created_at"
19
+ t.datetime "updated_at"
20
+ end
15
21
 
16
22
  create_table "others", force: true do |t|
17
23
  t.string "name"
Binary file
@@ -8036,3 +8036,233 @@ Migrating to CreateOthers (20130513145529)
8036
8036
  SQL (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20130513145529"]]
8037
8037
   (2.1ms) commit transaction
8038
8038
  ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
8039
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
8040
+ Migrating to CreateNamespacedWhizzers (20130515201559)
8041
+  (0.1ms) begin transaction
8042
+  (0.4ms) CREATE TABLE "namespaced_whizzers" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "permalink" varchar(255), "created_at" datetime, "updated_at" datetime) 
8043
+ SQL (0.3ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20130515201559"]]
8044
+  (2.1ms) commit transaction
8045
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
8046
+
8047
+
8048
+ Started GET "/pages/new" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8049
+ Processing by PagesController#new as HTML
8050
+ Rendered pages/_form.html.erb (204.9ms)
8051
+ Rendered pages/new.html.erb within layouts/application (232.4ms)
8052
+ Completed 200 OK in 397ms (Views: 393.7ms | ActiveRecord: 0.4ms)
8053
+
8054
+
8055
+ Started GET "/assets/namespaced/whizzers.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8056
+
8057
+
8058
+ Started GET "/assets/others.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8059
+
8060
+
8061
+ Started GET "/assets/namespaced/whizzers.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8062
+
8063
+
8064
+ Started GET "/assets/pages.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8065
+
8066
+
8067
+ Started GET "/assets/others.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8068
+
8069
+
8070
+ Started GET "/assets/application.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8071
+
8072
+
8073
+ Started GET "/assets/scaffold.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8074
+
8075
+
8076
+ Started GET "/assets/users.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8077
+
8078
+
8079
+ Started GET "/assets/pages.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8080
+
8081
+
8082
+ Started GET "/assets/jquery.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8083
+
8084
+
8085
+ Started GET "/assets/jquery_ujs.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8086
+
8087
+
8088
+ Started GET "/assets/application.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8089
+
8090
+
8091
+ Started GET "/assets/users.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:31 -0500
8092
+
8093
+
8094
+ Started POST "/pages" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8095
+ Processing by PagesController#create as HTML
8096
+ Parameters: {"utf8"=>"✓", "authenticity_token"=>"nY/8pnyavELtrS3x3lW6exMi4/PKkFT/oqNfQ0UO7Pc=", "page"=>{"name"=>"", "permalink"=>"namespaced/whizzers", "content"=>""}, "commit"=>"Create Page"}
8097
+  (0.1ms) begin transaction
8098
+ User Exists (0.1ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8099
+ Page Exists (0.1ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8100
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8101
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8102
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8103
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8104
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8105
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8106
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8107
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8108
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8109
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8110
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8111
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8112
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8113
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8114
+ Other Exists (0.1ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8115
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8116
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8117
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8118
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8119
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8120
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8121
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8122
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8123
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8124
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8125
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8126
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8127
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8128
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8129
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8130
+  (0.1ms) rollback transaction
8131
+ Rendered pages/_form.html.erb (3.2ms)
8132
+ Rendered pages/new.html.erb within layouts/application (4.2ms)
8133
+ Completed 200 OK in 48ms (Views: 8.4ms | ActiveRecord: 1.5ms)
8134
+
8135
+
8136
+ Started GET "/assets/pages.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8137
+
8138
+
8139
+ Started GET "/assets/users.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8140
+
8141
+
8142
+ Started GET "/assets/scaffold.css?body=1" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8143
+
8144
+
8145
+ Started GET "/assets/pages.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8146
+
8147
+
8148
+ Started GET "/assets/users.js?body=1" for 127.0.0.1 at 2013-05-15 15:30:42 -0500
8149
+
8150
+
8151
+ Started POST "/pages" for 127.0.0.1 at 2013-05-15 15:31:19 -0500
8152
+ Processing by PagesController#create as HTML
8153
+ Parameters: {"utf8"=>"✓", "authenticity_token"=>"nY/8pnyavELtrS3x3lW6exMi4/PKkFT/oqNfQ0UO7Pc=", "page"=>{"name"=>"", "permalink"=>"namespaced/whizzers", "content"=>""}, "commit"=>"Create Page"}
8154
+  (0.1ms) begin transaction
8155
+ User Exists (0.1ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8156
+ Page Exists (0.1ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8157
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8158
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8159
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8160
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8161
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8162
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8163
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8164
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8165
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8166
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8167
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8168
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8169
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8170
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8171
+ Other Exists (0.1ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8172
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8173
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8174
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8175
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8176
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8177
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8178
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8179
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8180
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8181
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8182
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8183
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8184
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8185
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8186
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8187
+  (0.1ms) rollback transaction
8188
+ Rendered pages/_form.html.erb (12.9ms)
8189
+ Rendered pages/new.html.erb within layouts/application (16.8ms)
8190
+ Completed 200 OK in 168ms (Views: 89.3ms | ActiveRecord: 2.0ms)
8191
+
8192
+
8193
+ Started GET "/assets/pages.css?body=1" for 127.0.0.1 at 2013-05-15 15:31:20 -0500
8194
+
8195
+
8196
+ Started GET "/assets/scaffold.css?body=1" for 127.0.0.1 at 2013-05-15 15:31:20 -0500
8197
+
8198
+
8199
+ Started GET "/assets/pages.js?body=1" for 127.0.0.1 at 2013-05-15 15:31:20 -0500
8200
+
8201
+
8202
+ Started GET "/assets/users.css?body=1" for 127.0.0.1 at 2013-05-15 15:31:20 -0500
8203
+
8204
+
8205
+ Started GET "/assets/users.js?body=1" for 127.0.0.1 at 2013-05-15 15:31:20 -0500
8206
+
8207
+
8208
+ Started POST "/pages" for 127.0.0.1 at 2013-05-15 15:33:06 -0500
8209
+ Processing by PagesController#create as HTML
8210
+ Parameters: {"utf8"=>"✓", "authenticity_token"=>"nY/8pnyavELtrS3x3lW6exMi4/PKkFT/oqNfQ0UO7Pc=", "page"=>{"name"=>"", "permalink"=>"namespaced/whizzers", "content"=>""}, "commit"=>"Create Page"}
8211
+  (0.1ms) begin transaction
8212
+ User Exists (0.1ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8213
+ Page Exists (0.1ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8214
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8215
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8216
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8217
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8218
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8219
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8220
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8221
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8222
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8223
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8224
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8225
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8226
+ CACHE (0.0ms) SELECT 1 AS one FROM "users" WHERE "users"."username" = 'namespaced/whizzers' LIMIT 1
8227
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8228
+ Other Exists (0.1ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8229
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8230
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8231
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8232
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8233
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8234
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8235
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8236
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8237
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8238
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8239
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8240
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8241
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8242
+ CACHE (0.0ms) SELECT 1 AS one FROM "others" WHERE "others"."permalink" = 'namespaced/whizzers' LIMIT 1
8243
+ CACHE (0.0ms) SELECT 1 AS one FROM "pages" WHERE "pages"."permalink" = 'namespaced/whizzers' LIMIT 1
8244
+  (0.1ms) rollback transaction
8245
+ Rendered pages/_form.html.erb (37.3ms)
8246
+ Rendered pages/new.html.erb within layouts/application (41.0ms)
8247
+ Completed 200 OK in 165ms (Views: 87.9ms | ActiveRecord: 1.8ms)
8248
+
8249
+
8250
+ Started GET "/assets/namespaced/whizzers.css?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8251
+
8252
+
8253
+ Started GET "/assets/pages.css?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8254
+
8255
+
8256
+ Started GET "/assets/scaffold.css?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8257
+
8258
+
8259
+ Started GET "/assets/users.css?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8260
+
8261
+
8262
+ Started GET "/assets/users.js?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8263
+
8264
+
8265
+ Started GET "/assets/namespaced/whizzers.js?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500
8266
+
8267
+
8268
+ Started GET "/assets/pages.js?body=1" for 127.0.0.1 at 2013-05-15 15:33:07 -0500