my_annotations 0.5.0 → 0.5.1

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 (72) hide show
  1. data/.gitignore +6 -0
  2. data/.rvmrc +1 -0
  3. data/AUTHORS.rdoc +5 -0
  4. data/CHANGELOG.rdoc +64 -0
  5. data/INDEX.rdoc +17 -0
  6. data/generators/annotations_migration/annotations_migration_generator.rb +32 -0
  7. data/generators/annotations_migration/templates/migration_v1.rb +60 -0
  8. data/generators/annotations_migration/templates/migration_v2.rb +9 -0
  9. data/generators/annotations_migration/templates/migration_v3.rb +74 -0
  10. data/generators/annotations_migration/templates/migration_v4.rb +13 -0
  11. data/install.rb +1 -0
  12. data/lib/annotations/acts_as_annotatable.rb +271 -0
  13. data/lib/annotations/acts_as_annotation_source.rb +117 -0
  14. data/lib/annotations/acts_as_annotation_value.rb +115 -0
  15. data/lib/annotations/config.rb +148 -0
  16. data/lib/annotations/routing.rb +8 -0
  17. data/lib/annotations/util.rb +82 -0
  18. data/lib/annotations_version_fu.rb +119 -0
  19. data/lib/app/controllers/annotations_controller.rb +162 -0
  20. data/lib/app/controllers/application_controller.rb +2 -0
  21. data/lib/app/helpers/application_helper.rb +2 -0
  22. data/lib/app/models/annotation.rb +413 -0
  23. data/lib/app/models/annotation_attribute.rb +37 -0
  24. data/lib/app/models/annotation_value_seed.rb +48 -0
  25. data/lib/app/models/number_value.rb +23 -0
  26. data/lib/app/models/text_value.rb +23 -0
  27. data/my_annotations.gemspec +4 -9
  28. data/rails/init.rb +8 -0
  29. data/test/acts_as_annotatable_test.rb +186 -0
  30. data/test/acts_as_annotation_source_test.rb +84 -0
  31. data/test/acts_as_annotation_value_test.rb +17 -0
  32. data/test/annotation_attribute_test.rb +22 -0
  33. data/test/annotation_test.rb +213 -0
  34. data/test/annotation_value_seed_test.rb +14 -0
  35. data/test/annotation_version_test.rb +39 -0
  36. data/test/annotations_controller_test.rb +27 -0
  37. data/test/app_root/app/controllers/application_controller.rb +9 -0
  38. data/test/app_root/app/models/book.rb +5 -0
  39. data/test/app_root/app/models/chapter.rb +5 -0
  40. data/test/app_root/app/models/group.rb +3 -0
  41. data/test/app_root/app/models/tag.rb +6 -0
  42. data/test/app_root/app/models/user.rb +3 -0
  43. data/test/app_root/app/views/annotations/edit.html.erb +12 -0
  44. data/test/app_root/app/views/annotations/index.html.erb +1 -0
  45. data/test/app_root/app/views/annotations/new.html.erb +11 -0
  46. data/test/app_root/app/views/annotations/show.html.erb +3 -0
  47. data/test/app_root/config/boot.rb +115 -0
  48. data/test/app_root/config/environment.rb +16 -0
  49. data/test/app_root/config/environments/mysql.rb +0 -0
  50. data/test/app_root/config/routes.rb +4 -0
  51. data/test/app_root/db/migrate/001_create_test_models.rb +38 -0
  52. data/test/app_root/db/migrate/002_annotations_migration_v1.rb +60 -0
  53. data/test/app_root/db/migrate/003_annotations_migration_v2.rb +9 -0
  54. data/test/app_root/db/migrate/004_annotations_migration_v3.rb +72 -0
  55. data/test/config_test.rb +383 -0
  56. data/test/fixtures/annotation_attributes.yml +49 -0
  57. data/test/fixtures/annotation_value_seeds.csv +16 -0
  58. data/test/fixtures/annotation_versions.yml +259 -0
  59. data/test/fixtures/annotations.yml +239 -0
  60. data/test/fixtures/books.yml +13 -0
  61. data/test/fixtures/chapters.yml +27 -0
  62. data/test/fixtures/groups.yml +7 -0
  63. data/test/fixtures/number_value_versions.csv +2 -0
  64. data/test/fixtures/number_values.csv +2 -0
  65. data/test/fixtures/text_value_versions.csv +35 -0
  66. data/test/fixtures/text_values.csv +35 -0
  67. data/test/fixtures/users.yml +8 -0
  68. data/test/number_value_version_test.rb +40 -0
  69. data/test/routing_test.rb +27 -0
  70. data/test/test_helper.rb +41 -0
  71. data/test/text_value_version_test.rb +40 -0
  72. metadata +77 -7
@@ -0,0 +1,239 @@
1
+ bh_summary_1:
2
+ annotatable_type: Book
3
+ annotatable_id: 1
4
+ attribute_id: 2
5
+ value_type: TextValue
6
+ value_id: 16
7
+ source_type: User
8
+ source_id: 1
9
+ version: 1
10
+ created_at: <%= 1.minute.ago.to_s(:db) %>
11
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
12
+
13
+ bh_length_1:
14
+ annotatable_type: Book
15
+ annotatable_id: 1
16
+ attribute_id: 3
17
+ value_type: NumberValue
18
+ value_id: 1
19
+ source_type: Group
20
+ source_id: 2
21
+ version: 1
22
+ created_at: <%= 1.minute.ago.to_s(:db) %>
23
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
24
+
25
+ bh_title_1:
26
+ annotatable_type: Book
27
+ annotatable_id: 1
28
+ attribute_id: 4
29
+ value_type: TextValue
30
+ value_id: 17
31
+ source_type: User
32
+ source_id: 1
33
+ version: 1
34
+ created_at: <%= 1.minute.ago.to_s(:db) %>
35
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
36
+
37
+ bh_rating_1:
38
+ annotatable_type: Book
39
+ annotatable_id: 1
40
+ attribute_id: 9
41
+ value_type: TextValue
42
+ value_id: 18
43
+ source_type: User
44
+ source_id: 2
45
+ version: 1
46
+ created_at: <%= 1.minute.ago.to_s(:db) %>
47
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
48
+
49
+ bh_tag_1:
50
+ annotatable_type: Book
51
+ annotatable_id: 1
52
+ attribute_id: 1
53
+ value_type: TextValue
54
+ value_id: 19
55
+ source_type: Group
56
+ source_id: 2
57
+ version: 1
58
+ created_at: <%= 1.minute.ago.to_s(:db) %>
59
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
60
+
61
+ bh_tag_2:
62
+ annotatable_type: Book
63
+ annotatable_id: 1
64
+ attribute_id: 1
65
+ value_type: TextValue
66
+ value_id: 20
67
+ source_type: User
68
+ source_id: 2
69
+ version: 1
70
+ created_at: <%= 1.minute.ago.to_s(:db) %>
71
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
72
+
73
+ br_summary_1:
74
+ annotatable_type: Book
75
+ annotatable_id: 2
76
+ attribute_id: 2
77
+ value_type: TextValue
78
+ value_id: 21
79
+ source_type: User
80
+ source_id: 1
81
+ version: 1
82
+ created_at: <%= 1.minute.ago.to_s(:db) %>
83
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
84
+
85
+ br_summary_2:
86
+ annotatable_type: Book
87
+ annotatable_id: 2
88
+ attribute_id: 2
89
+ value_type: TextValue
90
+ value_id: 22
91
+ source_type: Group
92
+ source_id: 1
93
+ version: 1
94
+ created_at: <%= 1.minute.ago.to_s(:db) %>
95
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
96
+
97
+ br_author_1:
98
+ annotatable_type: Book
99
+ annotatable_id: 2
100
+ attribute_id: 8
101
+ value_type: TextValue
102
+ value_id: 23
103
+ source_type: User
104
+ source_id: 1
105
+ version: 1
106
+ created_at: <%= 1.minute.ago.to_s(:db) %>
107
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
108
+
109
+ br_tag_1:
110
+ annotatable_type: Book
111
+ annotatable_id: 2
112
+ attribute_id: 1
113
+ value_type: TextValue
114
+ value_id: 24
115
+ source_type: User
116
+ source_id: 2
117
+ version: 1
118
+ created_at: <%= 1.minute.ago.to_s(:db) %>
119
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
120
+
121
+ br_note_1:
122
+ annotatable_type: Book
123
+ annotatable_id: 2
124
+ attribute_id: 7
125
+ value_type: TextValue
126
+ value_id: 25
127
+ source_type: User
128
+ source_id: 2
129
+ version: 1
130
+ created_at: <%= 1.minute.ago.to_s(:db) %>
131
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
132
+
133
+ bh_c10_endingtype_1:
134
+ annotatable_type: Chapter
135
+ annotatable_id: 2
136
+ attribute_id: 6
137
+ value_type: TextValue
138
+ value_id: 26
139
+ source_type: Group
140
+ source_id: 1
141
+ version: 1
142
+ created_at: <%= 1.minute.ago.to_s(:db) %>
143
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
144
+
145
+ bh_c10_title_1:
146
+ annotatable_type: Chapter
147
+ annotatable_id: 2
148
+ attribute_id: 4
149
+ value_type: TextValue
150
+ value_id: 27
151
+ source_type: User
152
+ source_id: 2
153
+ version: 1
154
+ created_at: <%= 1.minute.ago.to_s(:db) %>
155
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
156
+
157
+ br_c2_title_1:
158
+ annotatable_type: Chapter
159
+ annotatable_id: 3
160
+ attribute_id: 4
161
+ value_type: TextValue
162
+ value_id: 28
163
+ source_type: User
164
+ source_id: 1
165
+ version: 1
166
+ created_at: <%= 1.minute.ago.to_s(:db) %>
167
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
168
+
169
+ br_c2_tag_1:
170
+ annotatable_type: Chapter
171
+ annotatable_id: 3
172
+ attribute_id: 1
173
+ value_type: TextValue
174
+ value_id: 29
175
+ source_type: Group
176
+ source_id: 2
177
+ version: 1
178
+ created_at: <%= 1.minute.ago.to_s(:db) %>
179
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
180
+
181
+ br_c2_tag_2:
182
+ annotatable_type: Chapter
183
+ annotatable_id: 3
184
+ attribute_id: 1
185
+ value_type: TextValue
186
+ value_id: 30
187
+ source_type: User
188
+ source_id: 1
189
+ version: 1
190
+ created_at: <%= 1.minute.ago.to_s(:db) %>
191
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
192
+
193
+ br_c2_title_2:
194
+ annotatable_type: Chapter
195
+ annotatable_id: 3
196
+ attribute_id: 4
197
+ value_type: TextValue
198
+ value_id: 31
199
+ source_type: User
200
+ source_id: 2
201
+ version: 1
202
+ created_at: <%= 1.minute.ago.to_s(:db) %>
203
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
204
+
205
+ br_c202_complexity_1:
206
+ annotatable_type: Chapter
207
+ annotatable_id: 4
208
+ attribute_id: 5
209
+ value_type: TextValue
210
+ value_id: 32
211
+ source_type: Group
212
+ source_id: 1
213
+ version: 1
214
+ created_at: <%= 1.minute.ago.to_s(:db) %>
215
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
216
+
217
+ br_c202_title_1:
218
+ annotatable_type: Chapter
219
+ annotatable_id: 4
220
+ attribute_id: 4
221
+ value_type: TextValue
222
+ value_id: 33
223
+ source_type: User
224
+ source_id: 1
225
+ version: 1
226
+ created_at: <%= 1.minute.ago.to_s(:db) %>
227
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
228
+
229
+ br_c202_tag_1:
230
+ annotatable_type: Chapter
231
+ annotatable_id: 4
232
+ attribute_id: 1
233
+ value_type: TextValue
234
+ value_id: 34
235
+ source_type: Group
236
+ source_id: 2
237
+ version: 1
238
+ created_at: <%= 1.minute.ago.to_s(:db) %>
239
+ updated_at: <%= 1.minute.ago.to_s(:db) %>
@@ -0,0 +1,13 @@
1
+ h:
2
+ id: 1
3
+ title: Harry Pooter and the Exploding Gentlemen's Lavatory
4
+ author_name: Rich Woman
5
+ pub_year: 2056
6
+ summary: Wonderfully delightful!
7
+
8
+ r:
9
+ id: 2
10
+ title: Learning Ruby in 2 Seconds
11
+ author_name: Too Much Time
12
+ pub_year: 1854
13
+ isbn: 1688HH979BLAH
@@ -0,0 +1,27 @@
1
+ bh_c1:
2
+ id: 1
3
+ chapter_number: 1
4
+ title: The Beginning
5
+ book_id: 1
6
+
7
+ bh_c10:
8
+ id: 2
9
+ chapter_number: 10
10
+ title: The End
11
+ summary: Exciting and enthralling end to a exquisite experiment in ecology
12
+ book_id: 1
13
+
14
+ br_c2:
15
+ id: 3
16
+ chapter_number: 2
17
+ title: Hashing It Up
18
+ summary: Talking about Ruby Hashes
19
+ book_id: 2
20
+
21
+ br_c202:
22
+ id: 4
23
+ chapter_number: 202
24
+ title: Sorry, Did I Say 2 Seconds? I Meant 2 Years!
25
+ book_id: 2
26
+
27
+
@@ -0,0 +1,7 @@
1
+ sci_fi_geeks:
2
+ id: 1
3
+ name: Sci-fi Geeks
4
+
5
+ classical_fans:
6
+ id: 2
7
+ name: Classical Fans
@@ -0,0 +1,2 @@
1
+ id,number_value_id,version,number
2
+ 1,1,1,345
@@ -0,0 +1,2 @@
1
+ id,version,number
2
+ 1,1,345
@@ -0,0 +1,35 @@
1
+ id,text_value_id,version,text
2
+ 1,1,1,glorious
3
+ 2,2,1,dramatic
4
+ 3,3,1,exotic
5
+ 4,4,1,cryptic
6
+ 5,5,1,wizardry
7
+ 6,6,1,programming
8
+ 7,7,1,software development
9
+ 8,8,1,fiction
10
+ 9,9,1,scripting languages
11
+ 10,10,1,non-fiction
12
+ 11,11,1,Brad Pitta
13
+ 12,12,1,Angelina Jolly
14
+ 13,13,1,Douglas Michaels
15
+ 14,14,1,Nicole Mankid
16
+ 15,15,1,"J. K. Rowing"
17
+ 16,16,1,Something interesting happens
18
+ 17,17,1,Harry Potter and the Exploding Men's Locker Room
19
+ 18,18,1,"4/5"
20
+ 19,19,1,amusing rhetoric
21
+ 20,20,1,wizadry
22
+ 21,21,1,"Covers the absolute basics of the Ruby programming language."
23
+ 22,22,1,"Difficult and rocky trek into the complex language that is Ruby, covering detailed logic and mind numbing syntax."
24
+ 23,23,1,Too Little Time
25
+ 24,24,1,programming
26
+ 25,25,1,"Remember to buy milk!"
27
+ 26,26,1,"Thriller+Suspense+Supernatural"
28
+ 27,27,1,And It All Falls Down
29
+ 28,28,1,Hashes and U
30
+ 29,29,1,complex
31
+ 30,30,1,dynamic languages
32
+ 31,31,1,Ruby Hashes
33
+ 32,32,1,"O(x^2)"
34
+ 33,33,1,"Conclusion (finally!)"
35
+ 34,34,1,long
@@ -0,0 +1,35 @@
1
+ id,version,version_creator_id,text
2
+ 1,1,,glorious
3
+ 2,1,,dramatic
4
+ 3,1,,exotic
5
+ 4,1,,cryptic
6
+ 5,1,,wizardry
7
+ 6,1,,programming
8
+ 7,1,,software development
9
+ 8,1,,fiction
10
+ 9,1,,scripting languages
11
+ 10,1,,non-fiction
12
+ 11,1,,Brad Pitta
13
+ 12,1,,Angelina Jolly
14
+ 13,1,,Douglas Michaels
15
+ 14,1,,Nicole Mankid
16
+ 15,1,,"J. K. Rowing"
17
+ 16,1,,Something interesting happens
18
+ 17,1,,Harry Potter and the Exploding Men's Locker Room
19
+ 18,1,,"4/5"
20
+ 19,1,,amusing rhetoric
21
+ 20,1,,wizadry
22
+ 21,1,,"Covers the absolute basics of the Ruby programming language."
23
+ 22,1,,"Difficult and rocky trek into the complex language that is Ruby, covering detailed logic and mind numbing syntax."
24
+ 23,1,,Too Little Time
25
+ 24,1,,programming
26
+ 25,1,,"Remember to buy milk!"
27
+ 26,1,,"Thriller+Suspense+Supernatural"
28
+ 27,1,,And It All Falls Down
29
+ 28,1,,Hashes and U
30
+ 29,1,,complex
31
+ 30,1,,dynamic languages
32
+ 31,1,,Ruby Hashes
33
+ 32,1,,"O(x^2)"
34
+ 33,1,,"Conclusion (finally!)"
35
+ 34,1,,long
@@ -0,0 +1,8 @@
1
+ john:
2
+ id: 1
3
+ name: john
4
+
5
+ jane:
6
+ id: 2
7
+ name: jane
8
+
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/test_helper.rb'
2
+
3
+ class NumberValueVersionTest < ActiveSupport::TestCase
4
+
5
+ def test_text_value_version_class_loaded
6
+ assert_kind_of NumberValue::Version, NumberValue::Version.new
7
+ end
8
+
9
+ def test_versioning_on_update
10
+ ann = annotations(:bh_length_1)
11
+ val = ann.value
12
+ orig_content = val.number
13
+ new_content = 10000
14
+
15
+ assert_kind_of NumberValue, val
16
+
17
+ # Check number of versions
18
+ assert_equal 1, val.versions.length
19
+
20
+ # Update the value and check that a version has been created
21
+
22
+ val.number = new_content
23
+ val.version_creator = users(:john)
24
+
25
+ assert val.valid?
26
+
27
+ assert val.save
28
+
29
+ assert_equal 2, val.versions.length
30
+ assert_equal new_content, val.number
31
+ assert_equal 2, val.versions.latest.version
32
+ assert_equal new_content, val.versions.latest.number
33
+ assert_equal 1, val.versions.latest.previous.version
34
+ assert_equal orig_content, val.versions.latest.previous.number
35
+ assert_equal users(:john).id, val.version_creator_id
36
+ assert_equal users(:john).id, val.versions.latest.version_creator_id
37
+ assert_equal nil, val.versions.latest.previous.version_creator_id
38
+ end
39
+
40
+ end
@@ -0,0 +1,27 @@
1
+ require "#{File.dirname(__FILE__)}/test_helper"
2
+
3
+ class RoutingTest < ActiveSupport::TestCase
4
+
5
+ def setup
6
+ ActionController::Routing::Routes.draw do |map|
7
+ Annotations.map_routes(map)
8
+ end
9
+ end
10
+
11
+ def test_annotations_route
12
+ assert_recognition :get, "/annotations", :controller => "annotations", :action => "index"
13
+ end
14
+
15
+ private
16
+
17
+ # From: http://guides.rubyonrails.org/creating_plugins.html#_add_a_custom_route
18
+ #
19
+ # yes, I know about assert_recognizes, but it has proven problematic to
20
+ # use in these tests, since it uses RouteSet#recognize (which actually
21
+ # tries to instantiate the controller) and because it uses an awkward
22
+ # parameter order.
23
+ def assert_recognition(method, path, options)
24
+ result = ActionController::Routing::Routes.recognize_path(path, :method => method)
25
+ assert_equal options, result
26
+ end
27
+ end
@@ -0,0 +1,41 @@
1
+ Dir.chdir(File.join(File.dirname(__FILE__), "..")) do
2
+
3
+ ENV['RAILS_ENV'] = 'mysql'
4
+ RAILS_ENV = 'mysql'
5
+
6
+ RAILS_GEM_VERSION = '2.3.2' unless defined? RAILS_GEM_VERSION
7
+
8
+ HELPER_RAILS_ROOT = File.join(Dir.pwd, "test", "app_root")
9
+ RAILS_ROOT = File.join(Dir.pwd, "test", "app_root")
10
+
11
+ # Load the plugin testing framework
12
+ require 'rubygems'
13
+ require 'plugin_test_helper'
14
+
15
+ # Run the migrations (optional)
16
+ ActiveRecord::Migrator.migrate("#{Rails.root}/db/migrate")
17
+
18
+ require 'init'
19
+
20
+ ActiveSupport::TestCase.class_eval do
21
+ self.use_transactional_fixtures = true
22
+ self.use_instantiated_fixtures = false
23
+ self.fixture_path = File.join(Dir.pwd, "test", "fixtures")
24
+
25
+ set_fixture_class :books => Book,
26
+ :chapters => Chapter,
27
+ :users => User,
28
+ :groups => Group,
29
+ :annotations => Annotation,
30
+ :annotation_versions => Annotation::Version,
31
+ :annotation_attributes => AnnotationAttribute,
32
+ :annotation_value_seeds => AnnotationValueSeed,
33
+ :text_values => TextValue,
34
+ :text_value_versions => TextValue::Version,
35
+ :number_values => NumberValue,
36
+ :number_value_versions => NumberValue::Version
37
+
38
+ fixtures :all
39
+ end
40
+
41
+ end
@@ -0,0 +1,40 @@
1
+ require File.dirname(__FILE__) + '/test_helper.rb'
2
+
3
+ class TextValueVersionTest < ActiveSupport::TestCase
4
+
5
+ def test_text_value_version_class_loaded
6
+ assert_kind_of TextValue::Version, TextValue::Version.new
7
+ end
8
+
9
+ def test_versioning_on_update
10
+ ann = annotations(:bh_title_1)
11
+ val = ann.value
12
+ orig_content = val.text
13
+ new_content = "Harry Potter IIIIIII"
14
+
15
+ assert_kind_of TextValue, val
16
+
17
+ # Check number of versions
18
+ assert_equal 1, val.versions.length
19
+
20
+ # Update the value and check that a version has been created
21
+
22
+ val.text = new_content
23
+ val.version_creator = users(:john)
24
+
25
+ assert val.valid?
26
+
27
+ assert val.save
28
+
29
+ assert_equal 2, val.versions.length
30
+ assert_equal new_content, val.text
31
+ assert_equal 2, val.versions.latest.version
32
+ assert_equal new_content, val.versions.latest.text
33
+ assert_equal 1, val.versions.latest.previous.version
34
+ assert_equal orig_content, val.versions.latest.previous.text
35
+ assert_equal users(:john).id, val.version_creator_id
36
+ assert_equal users(:john).id, val.versions.latest.version_creator_id
37
+ assert_equal nil, val.versions.latest.previous.version_creator_id
38
+ end
39
+
40
+ end
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: my_annotations
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
4
+ hash: 9
5
5
  prerelease: false
6
6
  segments:
7
7
  - 0
8
8
  - 5
9
- - 0
10
- version: 0.5.0
9
+ - 1
10
+ version: 0.5.1
11
11
  platform: ruby
12
12
  authors:
13
13
  - Jiten Bhagat
@@ -30,14 +30,84 @@ extensions: []
30
30
  extra_rdoc_files: []
31
31
 
32
32
  files:
33
- - lib/my_annotations.rb
34
- - RakeFile
35
- - VERSION.yml
33
+ - .gitignore
34
+ - .rvmrc
35
+ - AUTHORS.rdoc
36
+ - CHANGELOG.rdoc
37
+ - INDEX.rdoc
36
38
  - LICENSE
37
- - script/console
38
39
  - README.rdoc
39
40
  - RUNNING_TESTS.rdoc
41
+ - RakeFile
42
+ - VERSION.yml
43
+ - generators/annotations_migration/annotations_migration_generator.rb
44
+ - generators/annotations_migration/templates/migration_v1.rb
45
+ - generators/annotations_migration/templates/migration_v2.rb
46
+ - generators/annotations_migration/templates/migration_v3.rb
47
+ - generators/annotations_migration/templates/migration_v4.rb
48
+ - install.rb
49
+ - lib/annotations/acts_as_annotatable.rb
50
+ - lib/annotations/acts_as_annotation_source.rb
51
+ - lib/annotations/acts_as_annotation_value.rb
52
+ - lib/annotations/config.rb
53
+ - lib/annotations/routing.rb
54
+ - lib/annotations/util.rb
55
+ - lib/annotations_version_fu.rb
56
+ - lib/app/controllers/annotations_controller.rb
57
+ - lib/app/controllers/application_controller.rb
58
+ - lib/app/helpers/application_helper.rb
59
+ - lib/app/models/annotation.rb
60
+ - lib/app/models/annotation_attribute.rb
61
+ - lib/app/models/annotation_value_seed.rb
62
+ - lib/app/models/number_value.rb
63
+ - lib/app/models/text_value.rb
64
+ - lib/my_annotations.rb
40
65
  - my_annotations.gemspec
66
+ - rails/init.rb
67
+ - script/console
68
+ - test/acts_as_annotatable_test.rb
69
+ - test/acts_as_annotation_source_test.rb
70
+ - test/acts_as_annotation_value_test.rb
71
+ - test/annotation_attribute_test.rb
72
+ - test/annotation_test.rb
73
+ - test/annotation_value_seed_test.rb
74
+ - test/annotation_version_test.rb
75
+ - test/annotations_controller_test.rb
76
+ - test/app_root/app/controllers/application_controller.rb
77
+ - test/app_root/app/models/book.rb
78
+ - test/app_root/app/models/chapter.rb
79
+ - test/app_root/app/models/group.rb
80
+ - test/app_root/app/models/tag.rb
81
+ - test/app_root/app/models/user.rb
82
+ - test/app_root/app/views/annotations/edit.html.erb
83
+ - test/app_root/app/views/annotations/index.html.erb
84
+ - test/app_root/app/views/annotations/new.html.erb
85
+ - test/app_root/app/views/annotations/show.html.erb
86
+ - test/app_root/config/boot.rb
87
+ - test/app_root/config/environment.rb
88
+ - test/app_root/config/environments/mysql.rb
89
+ - test/app_root/config/routes.rb
90
+ - test/app_root/db/migrate/001_create_test_models.rb
91
+ - test/app_root/db/migrate/002_annotations_migration_v1.rb
92
+ - test/app_root/db/migrate/003_annotations_migration_v2.rb
93
+ - test/app_root/db/migrate/004_annotations_migration_v3.rb
94
+ - test/config_test.rb
95
+ - test/fixtures/annotation_attributes.yml
96
+ - test/fixtures/annotation_value_seeds.csv
97
+ - test/fixtures/annotation_versions.yml
98
+ - test/fixtures/annotations.yml
99
+ - test/fixtures/books.yml
100
+ - test/fixtures/chapters.yml
101
+ - test/fixtures/groups.yml
102
+ - test/fixtures/number_value_versions.csv
103
+ - test/fixtures/number_values.csv
104
+ - test/fixtures/text_value_versions.csv
105
+ - test/fixtures/text_values.csv
106
+ - test/fixtures/users.yml
107
+ - test/number_value_version_test.rb
108
+ - test/routing_test.rb
109
+ - test/test_helper.rb
110
+ - test/text_value_version_test.rb
41
111
  has_rdoc: true
42
112
  homepage: https://github.com/myGrid/annotations
43
113
  licenses: []