controlled_versioning 0.6.3 → 0.7.2

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 (85) hide show
  1. checksums.yaml +8 -8
  2. data/MIT-LICENSE +1 -1
  3. data/Rakefile +0 -6
  4. data/app/assets/javascripts/controlled_versioning/application.js +13 -0
  5. data/app/assets/stylesheets/controlled_versioning/application.css +13 -0
  6. data/app/controllers/controlled_versioning/application_controller.rb +4 -0
  7. data/app/helpers/controlled_versioning/application_helper.rb +4 -0
  8. data/app/models/controlled_versioning/version.rb +23 -0
  9. data/app/models/controlled_versioning/version_attribute.rb +8 -0
  10. data/app/models/controlled_versioning/version_child.rb +9 -0
  11. data/app/views/layouts/controlled_versioning/application.html.erb +14 -0
  12. data/lib/controlled_versioning/engine.rb +16 -0
  13. data/lib/controlled_versioning/version_number.rb +1 -1
  14. data/lib/controlled_versioning.rb +2 -0
  15. data/spec/controlled_versioning_spec.rb +316 -0
  16. data/spec/dummy/README.rdoc +28 -0
  17. data/spec/dummy/Rakefile +6 -0
  18. data/spec/dummy/app/assets/javascripts/application.js +13 -0
  19. data/spec/dummy/app/assets/stylesheets/application.css +13 -0
  20. data/spec/dummy/app/controllers/application_controller.rb +5 -0
  21. data/spec/dummy/app/helpers/application_helper.rb +2 -0
  22. data/spec/dummy/app/models/child_resource.rb +10 -0
  23. data/spec/dummy/app/models/grand_child_resource.rb +7 -0
  24. data/spec/dummy/app/models/nonversionable_resource.rb +2 -0
  25. data/spec/dummy/app/models/parent_resource.rb +9 -0
  26. data/spec/dummy/app/models/partially_exclusive_versionable_resource.rb +3 -0
  27. data/spec/dummy/app/models/partially_inclusive_versionable_resource.rb +3 -0
  28. data/spec/dummy/app/models/user.rb +3 -0
  29. data/spec/dummy/app/models/versionable_resource.rb +5 -0
  30. data/spec/dummy/app/views/layouts/application.html.erb +14 -0
  31. data/spec/dummy/bin/bundle +3 -0
  32. data/spec/dummy/bin/rails +4 -0
  33. data/spec/dummy/bin/rake +4 -0
  34. data/spec/dummy/config/application.rb +30 -0
  35. data/spec/dummy/config/boot.rb +5 -0
  36. data/spec/dummy/config/database.yml +60 -0
  37. data/spec/dummy/config/environment.rb +5 -0
  38. data/spec/dummy/config/environments/development.rb +29 -0
  39. data/spec/dummy/config/environments/production.rb +80 -0
  40. data/spec/dummy/config/environments/test.rb +36 -0
  41. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  42. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  43. data/spec/dummy/config/initializers/inflections.rb +16 -0
  44. data/spec/dummy/config/initializers/mime_types.rb +5 -0
  45. data/spec/dummy/config/initializers/secret_token.rb +12 -0
  46. data/spec/dummy/config/initializers/session_store.rb +3 -0
  47. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  48. data/spec/dummy/config/locales/en.yml +23 -0
  49. data/spec/dummy/config/routes.rb +3 -0
  50. data/spec/dummy/config.ru +4 -0
  51. data/spec/dummy/db/migrate/20140117222800_create_users.rb +11 -0
  52. data/spec/dummy/db/migrate/20140117222808_create_versionable_resources.rb +17 -0
  53. data/spec/dummy/db/migrate/20140117222814_create_partially_inclusive_versionable_resources.rb +17 -0
  54. data/spec/dummy/db/migrate/20140117222815_create_partially_exclusive_versionable_resources.rb +17 -0
  55. data/spec/dummy/db/migrate/20140117222828_create_nonversionable_resources.rb +17 -0
  56. data/spec/dummy/db/migrate/20140117222840_create_parent_resources.rb +17 -0
  57. data/spec/dummy/db/migrate/20140117222841_create_child_resources.rb +19 -0
  58. data/spec/dummy/db/migrate/20140117222842_create_grand_child_resources.rb +19 -0
  59. data/spec/dummy/db/migrate/20140206173607_create_controlled_versioning_versions.controlled_versioning.rb +30 -0
  60. data/spec/dummy/db/migrate/20140206173608_create_controlled_versioning_version_attributes.controlled_versioning.rb +15 -0
  61. data/spec/dummy/db/migrate/20140206173609_create_controlled_versioning_version_children.controlled_versioning.rb +19 -0
  62. data/spec/dummy/db/schema.rb +163 -0
  63. data/spec/dummy/public/404.html +58 -0
  64. data/spec/dummy/public/422.html +58 -0
  65. data/spec/dummy/public/500.html +57 -0
  66. data/spec/dummy/public/favicon.ico +0 -0
  67. data/spec/factories/child_resources.rb +28 -0
  68. data/spec/factories/controlled_versioning_versions.rb +7 -0
  69. data/spec/factories/grand_child_resources.rb +17 -0
  70. data/spec/factories/parent_resources.rb +35 -0
  71. data/spec/factories/partially_exclusive_versionable_resources.rb +14 -0
  72. data/spec/factories/partially_inclusive_versionable_resources.rb +14 -0
  73. data/spec/factories/unversionable_resources.rb +14 -0
  74. data/spec/factories/users.rb +6 -0
  75. data/spec/factories/versionable_resources.rb +14 -0
  76. data/spec/spec_helper.rb +86 -0
  77. metadata +136 -11
  78. data/config/locales/en.yml +0 -4
  79. data/lib/generators/controlled_versioning/install_generator.rb +0 -30
  80. data/lib/generators/templates/create_version_attributes.rb +0 -17
  81. data/lib/generators/templates/create_version_children.rb +0 -20
  82. data/lib/generators/templates/create_versions.rb +0 -36
  83. data/lib/generators/templates/version.rb +0 -19
  84. data/lib/generators/templates/version_attribute.rb +0 -7
  85. data/lib/generators/templates/version_child.rb +0 -8
@@ -1,4 +0,0 @@
1
- en:
2
- errors:
3
- messages:
4
- no_revisions_made: "You must edit at least one attribute"
@@ -1,30 +0,0 @@
1
- require 'rails/generators'
2
- require 'rails/generators/migration'
3
- require 'rails/generators/active_record'
4
-
5
- module ControlledVersioning
6
- class InstallGenerator < Rails::Generators::Base
7
- include ::Rails::Generators::Migration
8
-
9
- source_root File.expand_path('../../templates', __FILE__)
10
-
11
- desc 'Generates (but does not run) a migration to add a versions table.'
12
-
13
- def create_model_file
14
- template "version.rb", "app/models/controlled_versioning/version.rb"
15
- template "version_attribute.rb",
16
- "app/models/controlled_versioning/version_attribute.rb"
17
- template "version_child.rb",
18
- "app/models/controlled_versioning/version_child.rb"
19
- migration_template "create_versions.rb", "db/migrate/create_versions.rb"
20
- migration_template "create_version_attributes.rb",
21
- "db/migrate/create_version_attributes.rb"
22
- migration_template "create_version_children.rb",
23
- "db/migrate/create_version_children.rb"
24
- end
25
-
26
- def self.next_migration_number(dirname)
27
- ::ActiveRecord::Generators::Base.next_migration_number(dirname)
28
- end
29
- end
30
- end
@@ -1,17 +0,0 @@
1
- class CreateVersionAttributes < ActiveRecord::Migration
2
- def self.up
3
- create_table :version_attributes do |t|
4
- t.string :version_type, null: false
5
- t.integer :version_id, null: false
6
- t.string :name, null: false
7
- t.text :old_value
8
- t.text :new_value
9
- end
10
- add_index :version_attributes, [:version_type, :version_id]
11
- end
12
-
13
- def self.down
14
- remove_index :version_attributes, [:version_type, :version_id]
15
- drop_table :version_attributes
16
- end
17
- end
@@ -1,20 +0,0 @@
1
- class CreateVersionChildren < ActiveRecord::Migration
2
- def self.up
3
- create_table :version_children do |t|
4
- t.string :version_type, null: false
5
- t.integer :version_id, null: false
6
- t.string :versionable_type
7
- t.integer :versionable_id
8
-
9
- t.boolean :marked_for_removal, null: false, default: false
10
- end
11
- add_index :version_children, [:version_type, :version_id]
12
- add_index :version_children, [:versionable_type, :versionable_id]
13
- end
14
-
15
- def self.down
16
- remove_index :version_children, [:version_type, :version_id]
17
- remove_index :version_children, [:versionable_type, :versionable_id]
18
- drop_table :version_children
19
- end
20
- end
@@ -1,36 +0,0 @@
1
- class CreateVersions < ActiveRecord::Migration
2
- def self.up
3
- create_table :versions do |t|
4
- t.string :versionable_type, null: false
5
- t.integer :versionable_id, null: false
6
-
7
- t.integer :user_id
8
-
9
- t.text :notes
10
-
11
- t.boolean :initial, null: false, default: false
12
-
13
- t.boolean :marked_for_removal, null: false, default: false
14
-
15
- t.boolean :accepted, null: false, default: false
16
- t.boolean :declined, null: false, default: false
17
- t.boolean :pending, null: false, default: true
18
-
19
- t.datetime :created_at
20
- end
21
- add_index :versions, :initial
22
- add_index :versions, :accepted
23
- add_index :versions, :declined
24
- add_index :versions, :pending
25
- add_index :versions, [:versionable_type, :versionable_id]
26
- end
27
-
28
- def self.down
29
- remove_index :versions, :initial
30
- remove_index :versions, :accepted
31
- remove_index :versions, :declined
32
- remove_index :versions, :pending
33
- remove_index :versions, [:verstionable_type, :versionable_id]
34
- drop_table :versions
35
- end
36
- end
@@ -1,19 +0,0 @@
1
- class ControlledVersioning::Version < ActiveRecord::Base
2
-
3
- belongs_to :versionable, polymorphic: true
4
- belongs_to :user
5
- has_many :version_attributes, as: :version
6
- has_many :version_children, as: :version
7
-
8
- validates :versionable, presence: true
9
-
10
- def accept
11
- Revision::Publisher.new(self).accept_revision unless initial?
12
- update_attributes(pending: false, accepted: true)
13
- end
14
-
15
- def decline
16
- update_attributes(pending: false, declined: true)
17
- end
18
-
19
- end
@@ -1,7 +0,0 @@
1
- class ControlledVersioning::VersionAttribute < ActiveRecord::Base
2
-
3
- belongs_to :version, polymorphic: true
4
-
5
- validates :name, presence: true
6
-
7
- end
@@ -1,8 +0,0 @@
1
- class ControlledVersioning::VersionChild < ActiveRecord::Base
2
-
3
- belongs_to :versionable, polymorphic: true
4
- belongs_to :version, polymorphic: true
5
- has_many :version_attributes, as: :version
6
- has_many :version_children, as: :version
7
-
8
- end