human_urls 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.
Files changed (55) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/Rakefile +37 -0
  4. data/config/routes.rb +2 -0
  5. data/lib/generators/slug_migration/USAGE +8 -0
  6. data/lib/generators/slug_migration/slug_migration_generator.rb +27 -0
  7. data/lib/generators/slug_migration/templates/slug_migration.rb +6 -0
  8. data/lib/human_urls/engine.rb +5 -0
  9. data/lib/human_urls/sluggable.rb +29 -0
  10. data/lib/human_urls/version.rb +3 -0
  11. data/lib/human_urls.rb +5 -0
  12. data/lib/tasks/human_urls_tasks.rake +4 -0
  13. data/test/dummy/README.rdoc +28 -0
  14. data/test/dummy/Rakefile +6 -0
  15. data/test/dummy/app/models/taggable.rb +4 -0
  16. data/test/dummy/app/models/taggable_w_generated_slug.rb +4 -0
  17. data/test/dummy/bin/bundle +3 -0
  18. data/test/dummy/bin/rails +4 -0
  19. data/test/dummy/bin/rake +4 -0
  20. data/test/dummy/bin/setup +29 -0
  21. data/test/dummy/config/application.rb +26 -0
  22. data/test/dummy/config/boot.rb +5 -0
  23. data/test/dummy/config/database.yml +12 -0
  24. data/test/dummy/config/environment.rb +5 -0
  25. data/test/dummy/config/environments/development.rb +41 -0
  26. data/test/dummy/config/environments/production.rb +79 -0
  27. data/test/dummy/config/environments/test.rb +42 -0
  28. data/test/dummy/config/initializers/assets.rb +11 -0
  29. data/test/dummy/config/initializers/backtrace_silencers.rb +7 -0
  30. data/test/dummy/config/initializers/cookies_serializer.rb +3 -0
  31. data/test/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  32. data/test/dummy/config/initializers/inflections.rb +16 -0
  33. data/test/dummy/config/initializers/mime_types.rb +4 -0
  34. data/test/dummy/config/initializers/session_store.rb +3 -0
  35. data/test/dummy/config/initializers/wrap_parameters.rb +14 -0
  36. data/test/dummy/config/locales/en.yml +23 -0
  37. data/test/dummy/config/routes.rb +2 -0
  38. data/test/dummy/config/secrets.yml +22 -0
  39. data/test/dummy/config.ru +4 -0
  40. data/test/dummy/db/migrate/20151022230845_create_posts.rb +12 -0
  41. data/test/dummy/db/migrate/20151029003656_create_taggable_w_generated_slugs.rb +11 -0
  42. data/test/dummy/db/migrate/20151029012517_rename_post_to_taggable.rb +5 -0
  43. data/test/dummy/db/schema.rb +37 -0
  44. data/test/dummy/log/development.log +114 -0
  45. data/test/dummy/log/test.log +3357 -0
  46. data/test/dummy/public/404.html +67 -0
  47. data/test/dummy/public/422.html +67 -0
  48. data/test/dummy/public/500.html +66 -0
  49. data/test/dummy/public/favicon.ico +0 -0
  50. data/test/dummy/tmp/generators/db/migrate/20151112020841_add_slug_to_posts.rb +6 -0
  51. data/test/human_urls/sluggable_test.rb +52 -0
  52. data/test/human_urls_test.rb +7 -0
  53. data/test/lib/generators/human_urls/slug_migration_generator_test.rb +30 -0
  54. data/test/test_helper.rb +16 -0
  55. metadata +196 -0
@@ -0,0 +1,37 @@
1
+ # encoding: UTF-8
2
+ # This file is auto-generated from the current state of the database. Instead
3
+ # of editing this file, please use the migrations feature of Active Record to
4
+ # incrementally modify your database, and then regenerate this schema definition.
5
+ #
6
+ # Note that this schema.rb definition is the authoritative source for your
7
+ # database schema. If you need to create the application database on another
8
+ # system, you should be using db:schema:load, not running all the migrations
9
+ # from scratch. The latter is a flawed and unsustainable approach (the more migrations
10
+ # you'll amass, the slower it'll run and the greater likelihood for issues).
11
+ #
12
+ # It's strongly recommended that you check this file into your version control system.
13
+
14
+ ActiveRecord::Schema.define(version: 20151029012517) do
15
+
16
+ # These are extensions that must be enabled in order to support this database
17
+ enable_extension "plpgsql"
18
+
19
+ create_table "taggable_w_generated_slugs", force: :cascade do |t|
20
+ t.string "title"
21
+ t.string "slug"
22
+ t.datetime "created_at", null: false
23
+ t.datetime "updated_at", null: false
24
+ end
25
+
26
+ add_index "taggable_w_generated_slugs", ["slug"], name: "index_taggable_w_generated_slugs_on_slug", unique: true, using: :btree
27
+
28
+ create_table "taggables", force: :cascade do |t|
29
+ t.string "title"
30
+ t.string "slug"
31
+ t.datetime "created_at", null: false
32
+ t.datetime "updated_at", null: false
33
+ end
34
+
35
+ add_index "taggables", ["slug"], name: "index_taggables_on_slug", unique: true, using: :btree
36
+
37
+ end
@@ -0,0 +1,114 @@
1
+  (43.2ms) CREATE TABLE "schema_migrations" ("version" character varying NOT NULL) 
2
+  (3.0ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
3
+ ActiveRecord::SchemaMigration Load (1.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
4
+ Migrating to CreatePosts (20151022230845)
5
+  (1.5ms) BEGIN
6
+  (22.9ms) CREATE TABLE "posts" ("id" serial primary key, "title" character varying, "slug" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) 
7
+  (1.5ms) CREATE UNIQUE INDEX "index_posts_on_slug" ON "posts" ("slug")
8
+ SQL (2.2ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20151022230845"]]
9
+  (0.9ms) COMMIT
10
+ ActiveRecord::SchemaMigration Load (0.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
11
+  (5.7ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
12
+ FROM pg_constraint c
13
+ JOIN pg_class t1 ON c.conrelid = t1.oid
14
+ JOIN pg_class t2 ON c.confrelid = t2.oid
15
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
16
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
17
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
18
+ WHERE c.contype = 'f'
19
+ AND t1.relname = 'posts'
20
+ AND t3.nspname = ANY (current_schemas(false))
21
+ ORDER BY c.conname
22
+
23
+ ActiveRecord::SchemaMigration Load (4.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
24
+ Migrating to CreateTaggableWGeneratedSlugs (20151029003656)
25
+  (0.4ms) BEGIN
26
+  (53.7ms) CREATE TABLE "taggable_w_generated_slugs" ("id" serial primary key, "title" character varying, "slug" character varying, "created_at" timestamp NOT NULL, "updated_at" timestamp NOT NULL) 
27
+  (2.4ms) CREATE UNIQUE INDEX "index_taggable_w_generated_slugs_on_slug" ON "taggable_w_generated_slugs" ("slug")
28
+ SQL (1.0ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20151029003656"]]
29
+  (1.1ms) COMMIT
30
+ ActiveRecord::SchemaMigration Load (0.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
31
+  (7.6ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
32
+ FROM pg_constraint c
33
+ JOIN pg_class t1 ON c.conrelid = t1.oid
34
+ JOIN pg_class t2 ON c.confrelid = t2.oid
35
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
36
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
37
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
38
+ WHERE c.contype = 'f'
39
+ AND t1.relname = 'posts'
40
+ AND t3.nspname = ANY (current_schemas(false))
41
+ ORDER BY c.conname
42
+
43
+  (4.9ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
44
+ FROM pg_constraint c
45
+ JOIN pg_class t1 ON c.conrelid = t1.oid
46
+ JOIN pg_class t2 ON c.confrelid = t2.oid
47
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
48
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
49
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
50
+ WHERE c.contype = 'f'
51
+ AND t1.relname = 'taggable_w_generated_slugs'
52
+ AND t3.nspname = ANY (current_schemas(false))
53
+ ORDER BY c.conname
54
+ 
55
+ ActiveRecord::SchemaMigration Load (0.7ms) SELECT "schema_migrations".* FROM "schema_migrations"
56
+ ActiveRecord::SchemaMigration Load (0.9ms) SELECT "schema_migrations".* FROM "schema_migrations"
57
+  (4.9ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
58
+ FROM pg_constraint c
59
+ JOIN pg_class t1 ON c.conrelid = t1.oid
60
+ JOIN pg_class t2 ON c.confrelid = t2.oid
61
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
62
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
63
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
64
+ WHERE c.contype = 'f'
65
+ AND t1.relname = 'posts'
66
+ AND t3.nspname = ANY (current_schemas(false))
67
+ ORDER BY c.conname
68
+ 
69
+  (4.7ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
70
+ FROM pg_constraint c
71
+ JOIN pg_class t1 ON c.conrelid = t1.oid
72
+ JOIN pg_class t2 ON c.confrelid = t2.oid
73
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
74
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
75
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
76
+ WHERE c.contype = 'f'
77
+ AND t1.relname = 'taggable_w_generated_slugs'
78
+ AND t3.nspname = ANY (current_schemas(false))
79
+ ORDER BY c.conname
80
+
81
+ ActiveRecord::SchemaMigration Load (1.2ms) SELECT "schema_migrations".* FROM "schema_migrations"
82
+ Migrating to RenamePostToTaggable (20151029012517)
83
+  (0.4ms) BEGIN
84
+  (3.7ms) ALTER TABLE "posts" RENAME TO "taggables"
85
+  (0.7ms) ALTER TABLE "public"."posts_id_seq" RENAME TO "taggables_id_seq"
86
+  (1.8ms) ALTER INDEX "posts_pkey" RENAME TO "taggables_pkey"
87
+  (0.6ms) ALTER INDEX "index_posts_on_slug" RENAME TO "index_taggables_on_slug"
88
+ SQL (0.5ms) INSERT INTO "schema_migrations" ("version") VALUES ($1) [["version", "20151029012517"]]
89
+  (0.8ms) COMMIT
90
+ ActiveRecord::SchemaMigration Load (0.4ms) SELECT "schema_migrations".* FROM "schema_migrations"
91
+  (5.9ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
92
+ FROM pg_constraint c
93
+ JOIN pg_class t1 ON c.conrelid = t1.oid
94
+ JOIN pg_class t2 ON c.confrelid = t2.oid
95
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
96
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
97
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
98
+ WHERE c.contype = 'f'
99
+ AND t1.relname = 'taggable_w_generated_slugs'
100
+ AND t3.nspname = ANY (current_schemas(false))
101
+ ORDER BY c.conname
102
+
103
+  (7.2ms) SELECT t2.oid::regclass::text AS to_table, a1.attname AS column, a2.attname AS primary_key, c.conname AS name, c.confupdtype AS on_update, c.confdeltype AS on_delete
104
+ FROM pg_constraint c
105
+ JOIN pg_class t1 ON c.conrelid = t1.oid
106
+ JOIN pg_class t2 ON c.confrelid = t2.oid
107
+ JOIN pg_attribute a1 ON a1.attnum = c.conkey[1] AND a1.attrelid = t1.oid
108
+ JOIN pg_attribute a2 ON a2.attnum = c.confkey[1] AND a2.attrelid = t2.oid
109
+ JOIN pg_namespace t3 ON c.connamespace = t3.oid
110
+ WHERE c.contype = 'f'
111
+ AND t1.relname = 'taggables'
112
+ AND t3.nspname = ANY (current_schemas(false))
113
+ ORDER BY c.conname
114
+