simple_hashtag 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +19 -0
  3. data/.rspec +2 -0
  4. data/.travis.yml +6 -0
  5. data/Gemfile +4 -0
  6. data/LICENSE.txt +22 -0
  7. data/README.md +174 -0
  8. data/Rakefile +6 -0
  9. data/lib/generators/simple_hashtag/migration_generator.rb +20 -0
  10. data/lib/generators/simple_hashtag/templates/migrations/create_hashtaggings_migration.rb +11 -0
  11. data/lib/generators/simple_hashtag/templates/migrations/create_hashtags_migration.rb +10 -0
  12. data/lib/generators/simple_hashtag/templates/views/hashtags_controller.rb +8 -0
  13. data/lib/generators/simple_hashtag/templates/views/hashtags_helper.rb +16 -0
  14. data/lib/generators/simple_hashtag/templates/views/hashtags_index.html.erb +8 -0
  15. data/lib/generators/simple_hashtag/views_generator.rb +14 -0
  16. data/lib/simple_hashtag/hashtag.rb +39 -0
  17. data/lib/simple_hashtag/hashtaggable.rb +45 -0
  18. data/lib/simple_hashtag/hashtagging.rb +8 -0
  19. data/lib/simple_hashtag/version.rb +3 -0
  20. data/lib/simple_hashtag.rb +6 -0
  21. data/simple_hashtag.gemspec +28 -0
  22. data/spec/dummy/README.rdoc +261 -0
  23. data/spec/dummy/Rakefile +7 -0
  24. data/spec/dummy/app/assets/javascripts/application.js +15 -0
  25. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  26. data/spec/dummy/app/controllers/application_controller.rb +3 -0
  27. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  28. data/spec/dummy/app/mailers/.gitkeep +0 -0
  29. data/spec/dummy/app/models/.gitkeep +0 -0
  30. data/spec/dummy/app/models/picture.rb +4 -0
  31. data/spec/dummy/app/models/post.rb +3 -0
  32. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  33. data/spec/dummy/config/application.rb +56 -0
  34. data/spec/dummy/config/boot.rb +10 -0
  35. data/spec/dummy/config/database.yml +25 -0
  36. data/spec/dummy/config/environment.rb +5 -0
  37. data/spec/dummy/config/environments/development.rb +37 -0
  38. data/spec/dummy/config/environments/production.rb +67 -0
  39. data/spec/dummy/config/environments/test.rb +37 -0
  40. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  41. data/spec/dummy/config/initializers/inflections.rb +15 -0
  42. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  43. data/spec/dummy/config/initializers/secret_token.rb +7 -0
  44. data/spec/dummy/config/initializers/session_store.rb +8 -0
  45. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  46. data/spec/dummy/config/locales/en.yml +5 -0
  47. data/spec/dummy/config/routes.rb +2 -0
  48. data/spec/dummy/config.ru +4 -0
  49. data/spec/dummy/db/migrate/20130919041824_create_posts.rb +9 -0
  50. data/spec/dummy/db/migrate/20130919041825_create_pictures.rb +9 -0
  51. data/spec/dummy/db/migrate/20131004085836_create_simple_hashtag_hashtags.rb +9 -0
  52. data/spec/dummy/db/migrate/20131004085907_create_simple_hashtag_hashtaggings.rb +10 -0
  53. data/spec/dummy/db/schema.rb +43 -0
  54. data/spec/dummy/lib/assets/.gitkeep +0 -0
  55. data/spec/dummy/log/.gitkeep +0 -0
  56. data/spec/dummy/log/development.log +92 -0
  57. data/spec/dummy/log/test.log +3423 -0
  58. data/spec/dummy/public/404.html +26 -0
  59. data/spec/dummy/public/422.html +26 -0
  60. data/spec/dummy/public/500.html +25 -0
  61. data/spec/dummy/public/favicon.ico +0 -0
  62. data/spec/dummy/script/rails +6 -0
  63. data/spec/simple_hashtag_spec.rb +103 -0
  64. data/spec/spec_helper.rb +13 -0
  65. metadata +221 -0
@@ -0,0 +1,9 @@
1
+ class CreatePosts < ActiveRecord::Migration
2
+ def change
3
+ create_table :posts do |t|
4
+ t.text :body
5
+
6
+ t.timestamps
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ class CreatePictures < ActiveRecord::Migration
2
+ def change
3
+ create_table :pictures do |t|
4
+ t.text :caption
5
+
6
+ t.timestamps
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,9 @@
1
+ class CreateSimpleHashtagHashtags < ActiveRecord::Migration
2
+ def change
3
+ create_table :simple_hashtag_hashtags do |t|
4
+ t.string :name, :index => true
5
+
6
+ t.timestamps
7
+ end
8
+ end
9
+ end
@@ -0,0 +1,10 @@
1
+ class CreateSimpleHashtagHashtaggings < ActiveRecord::Migration
2
+ def change
3
+ create_table :simple_hashtag_hashtaggings do |t|
4
+ t.references :hashtag, :index => true
5
+ t.references :hashtaggable, :polymorphic => true
6
+ end
7
+ add_index :simple_hashtag_hashtaggings, ["hashtaggable_id", "hashtaggable_type"],
8
+ :name => 'index_hashtaggings_hashtaggable_id_hashtaggable_type'
9
+ end
10
+ end
@@ -0,0 +1,43 @@
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: 20131004085907) do
15
+
16
+ create_table "pictures", force: true do |t|
17
+ t.text "caption"
18
+ t.datetime "created_at"
19
+ t.datetime "updated_at"
20
+ end
21
+
22
+ create_table "posts", force: true do |t|
23
+ t.text "body"
24
+ t.datetime "created_at"
25
+ t.datetime "updated_at"
26
+ end
27
+
28
+ create_table "simple_hashtag_hashtaggings", force: true do |t|
29
+ t.integer "hashtag_id"
30
+ t.integer "hashtaggable_id"
31
+ t.string "hashtaggable_type"
32
+ end
33
+
34
+ add_index "simple_hashtag_hashtaggings", ["hashtag_id"], name: "index_simple_hashtag_hashtaggings_on_hashtag_id"
35
+ add_index "simple_hashtag_hashtaggings", ["hashtaggable_id", "hashtaggable_type"], name: "index_hashtaggings_hashtaggable_id_hashtaggable_type"
36
+
37
+ create_table "simple_hashtag_hashtags", force: true do |t|
38
+ t.string "name"
39
+ t.datetime "created_at"
40
+ t.datetime "updated_at"
41
+ end
42
+
43
+ end
File without changes
File without changes
@@ -0,0 +1,92 @@
1
+  (2.0ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
2
+  (1.4ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
3
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
4
+  (1.8ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
5
+  (1.3ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
6
+  (0.1ms) SELECT version FROM "schema_migrations"
7
+  (1.2ms) INSERT INTO "schema_migrations" (version) VALUES ('0')
8
+ ActiveRecord::SchemaMigration Load (0.3ms) SELECT "schema_migrations".* FROM "schema_migrations"
9
+ Migrating to CreateSimpleHashtagHashtags (20131004085836)
10
+  (0.0ms) begin transaction
11
+  (0.4ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime) 
12
+ SQL (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131004085836"]]
13
+  (1.8ms) commit transaction
14
+ Migrating to CreateSimpleHashtagHashtaggings (20131004085907)
15
+  (0.1ms) begin transaction
16
+  (0.3ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255)) 
17
+  (0.1ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
18
+  (0.1ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
19
+ SQL (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20131004085907"]]
20
+  (1.0ms) commit transaction
21
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
22
+  (1.4ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255)) 
23
+  (1.4ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
24
+  (1.2ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
25
+  (1.0ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
26
+  (0.9ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
27
+  (0.9ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
28
+  (0.1ms) SELECT version FROM "schema_migrations"
29
+  (0.9ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085907')
30
+  (0.7ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085836')
31
+  (2.1ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255)) 
32
+  (1.4ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
33
+  (1.3ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
34
+  (1.3ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
35
+  (1.0ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
36
+  (0.9ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
37
+  (0.2ms) SELECT version FROM "schema_migrations"
38
+  (1.0ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085907')
39
+  (1.1ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085836')
40
+ SimpleHashtag::Hashtag Load (0.2ms) SELECT "hashtags".* FROM "hashtags" ORDER BY "hashtags"."id" DESC LIMIT 1
41
+ SQLite3::SQLException: no such table: hashtags: SELECT "hashtags".* FROM "hashtags" ORDER BY "hashtags"."id" DESC LIMIT 1
42
+ SimpleHashtag::Hashtag Load (0.2ms) SELECT "hashtags".* FROM "hashtags" ORDER BY "hashtags"."id" DESC LIMIT 1
43
+ SQLite3::SQLException: no such table: hashtags: SELECT "hashtags".* FROM "hashtags" ORDER BY "hashtags"."id" DESC LIMIT 1
44
+ ActiveRecord::SchemaMigration Load (0.5ms) SELECT "schema_migrations".* FROM "schema_migrations"
45
+ Migrating to CreatePosts (20130919041824)
46
+  (0.1ms) begin transaction
47
+  (0.3ms) CREATE TABLE "posts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "body" text, "created_at" datetime, "updated_at" datetime) 
48
+ SQL (0.2ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20130919041824"]]
49
+  (0.8ms) commit transaction
50
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
51
+  (0.9ms) CREATE TABLE "posts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "body" text, "created_at" datetime, "updated_at" datetime) 
52
+  (0.9ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255))
53
+  (0.8ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
54
+  (0.9ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
55
+  (0.9ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime) 
56
+  (0.8ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL)
57
+  (0.8ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
58
+  (0.1ms) SELECT version FROM "schema_migrations"
59
+  (1.0ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085907')
60
+  (0.7ms) INSERT INTO "schema_migrations" (version) VALUES ('20130919041824')
61
+  (0.7ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085836')
62
+  (1.4ms) CREATE TABLE "posts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "body" text, "created_at" datetime, "updated_at" datetime) 
63
+  (1.3ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255))
64
+  (1.2ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
65
+  (0.9ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
66
+  (0.8ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime) 
67
+  (0.9ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL)
68
+  (1.1ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
69
+  (0.1ms) SELECT version FROM "schema_migrations"
70
+  (0.8ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085907')
71
+  (1.1ms) INSERT INTO "schema_migrations" (version) VALUES ('20130919041824')
72
+  (0.9ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085836')
73
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
74
+ Migrating to CreatePictures (20130919041825)
75
+  (0.1ms) begin transaction
76
+  (0.4ms) CREATE TABLE "pictures" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "caption" text, "created_at" datetime, "updated_at" datetime) 
77
+ SQL (0.1ms) INSERT INTO "schema_migrations" ("version") VALUES (?) [["version", "20130919041825"]]
78
+  (1.0ms) commit transaction
79
+ ActiveRecord::SchemaMigration Load (0.1ms) SELECT "schema_migrations".* FROM "schema_migrations"
80
+  (1.2ms) CREATE TABLE "pictures" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "caption" text, "created_at" datetime, "updated_at" datetime) 
81
+  (1.2ms) CREATE TABLE "posts" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "body" text, "created_at" datetime, "updated_at" datetime)
82
+  (1.2ms) CREATE TABLE "simple_hashtag_hashtaggings" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "hashtag_id" integer, "hashtaggable_id" integer, "hashtaggable_type" varchar(255)) 
83
+  (1.1ms) CREATE INDEX "index_simple_hashtag_hashtaggings_on_hashtag_id" ON "simple_hashtag_hashtaggings" ("hashtag_id")
84
+  (0.9ms) CREATE INDEX "index_hashtaggings_hashtaggable_id_hashtaggable_type" ON "simple_hashtag_hashtaggings" ("hashtaggable_id", "hashtaggable_type")
85
+  (0.9ms) CREATE TABLE "simple_hashtag_hashtags" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar(255), "created_at" datetime, "updated_at" datetime)
86
+  (1.0ms) CREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) 
87
+  (0.9ms) CREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")
88
+  (0.1ms) SELECT version FROM "schema_migrations"
89
+  (0.7ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085907')
90
+  (0.8ms) INSERT INTO "schema_migrations" (version) VALUES ('20130919041824')
91
+  (0.8ms) INSERT INTO "schema_migrations" (version) VALUES ('20130919041825')
92
+  (0.7ms) INSERT INTO "schema_migrations" (version) VALUES ('20131004085836')