impressionizer 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (96) hide show
  1. data/.autotest +1 -0
  2. data/.gitignore +2 -1
  3. data/.rspec +1 -0
  4. data/CHANGELOG.md +18 -0
  5. data/Gemfile +9 -2
  6. data/README.md +64 -0
  7. data/VERSION +1 -0
  8. data/app/models/impressionizer/impressionable.rb +2 -2
  9. data/impressionizer.gemspec +0 -1
  10. data/lib/impressionizer/version.rb +1 -1
  11. data/spec/dummy/Gemfile +4 -0
  12. data/{test → spec}/dummy/Rakefile +0 -0
  13. data/{test → spec}/dummy/app/controllers/application_controller.rb +0 -0
  14. data/{test → spec}/dummy/app/controllers/pages_controller.rb +0 -0
  15. data/{test → spec}/dummy/app/helpers/application_helper.rb +0 -0
  16. data/{test → spec}/dummy/app/helpers/pages_helper.rb +0 -0
  17. data/{test → spec}/dummy/app/models/page.rb +0 -0
  18. data/{test → spec}/dummy/app/views/layouts/application.html.erb +0 -0
  19. data/{test → spec}/dummy/app/views/pages/_form.html.erb +0 -0
  20. data/{test → spec}/dummy/app/views/pages/edit.html.erb +0 -0
  21. data/{test → spec}/dummy/app/views/pages/index.html.erb +0 -0
  22. data/{test → spec}/dummy/app/views/pages/new.html.erb +0 -0
  23. data/{test → spec}/dummy/app/views/pages/show.html.erb +0 -0
  24. data/{test → spec}/dummy/config/application.rb +0 -0
  25. data/{test → spec}/dummy/config/boot.rb +0 -0
  26. data/{test → spec}/dummy/config/database.yml +0 -0
  27. data/{test → spec}/dummy/config/environment.rb +0 -0
  28. data/{test → spec}/dummy/config/environments/development.rb +0 -0
  29. data/{test → spec}/dummy/config/environments/production.rb +0 -0
  30. data/{test → spec}/dummy/config/environments/test.rb +0 -0
  31. data/{test → spec}/dummy/config/initializers/backtrace_silencers.rb +0 -0
  32. data/{test → spec}/dummy/config/initializers/inflections.rb +0 -0
  33. data/{test → spec}/dummy/config/initializers/mime_types.rb +0 -0
  34. data/{test → spec}/dummy/config/initializers/secret_token.rb +0 -0
  35. data/{test → spec}/dummy/config/initializers/session_store.rb +0 -0
  36. data/{test → spec}/dummy/config/locales/en.yml +0 -0
  37. data/{test → spec}/dummy/config/routes.rb +0 -0
  38. data/{test → spec}/dummy/config.ru +0 -0
  39. data/spec/dummy/coverage/-Users-pbartels-_rvm-gems-ruby-1_9_2-p136-gems-rcov-0_9_9-lib-rcov-code_coverage_analyzer_rb.html +1689 -0
  40. data/spec/dummy/coverage/-Users-pbartels-_rvm-gems-ruby-1_9_2-p136-gems-rcov-0_9_9-lib-rcov-differential_analyzer_rb.html +759 -0
  41. data/spec/dummy/coverage/index.html +122 -0
  42. data/spec/dummy/coverage/jquery-1.3.2.min.js +19 -0
  43. data/spec/dummy/coverage/jquery.tablesorter.min.js +15 -0
  44. data/spec/dummy/coverage/print.css +12 -0
  45. data/spec/dummy/coverage/rcov.js +42 -0
  46. data/spec/dummy/coverage/screen.css +270 -0
  47. data/spec/dummy/coverage/spec-models-page_spec_rb.html +153 -0
  48. data/spec/dummy/db/development.sqlite3 +0 -0
  49. data/{test → spec}/dummy/db/migrate/20110701011920_create_pages.rb +0 -0
  50. data/{test → spec}/dummy/db/migrate/20110701044058_create_impressions.rb +0 -0
  51. data/{test → spec}/dummy/db/schema.rb +0 -0
  52. data/spec/dummy/db/test.sqlite3 +0 -0
  53. data/spec/dummy/log/development.log +813 -0
  54. data/{test/dummy/public/favicon.ico → spec/dummy/log/production.log} +0 -0
  55. data/{test/dummy/public/stylesheets/.gitkeep → spec/dummy/log/server.log} +0 -0
  56. data/spec/dummy/log/test.log +5696 -0
  57. data/{test → spec}/dummy/public/404.html +0 -0
  58. data/{test → spec}/dummy/public/422.html +0 -0
  59. data/{test → spec}/dummy/public/500.html +0 -0
  60. data/spec/dummy/public/favicon.ico +0 -0
  61. data/{test → spec}/dummy/public/javascripts/application.js +0 -0
  62. data/{test → spec}/dummy/public/javascripts/controls.js +0 -0
  63. data/{test → spec}/dummy/public/javascripts/dragdrop.js +0 -0
  64. data/{test → spec}/dummy/public/javascripts/effects.js +0 -0
  65. data/{test → spec}/dummy/public/javascripts/prototype.js +0 -0
  66. data/{test → spec}/dummy/public/javascripts/rails.js +0 -0
  67. data/spec/dummy/public/stylesheets/.gitkeep +0 -0
  68. data/{test → spec}/dummy/public/stylesheets/scaffold.css +0 -0
  69. data/{test → spec}/dummy/script/rails +0 -0
  70. data/spec/dummy/spec/coverage/-Users-pbartels-_rvm-gems-ruby-1_9_2-p136-gems-rcov-0_9_9-lib-rcov-code_coverage_analyzer_rb.html +1689 -0
  71. data/spec/dummy/spec/coverage/-Users-pbartels-_rvm-gems-ruby-1_9_2-p136-gems-rcov-0_9_9-lib-rcov-differential_analyzer_rb.html +759 -0
  72. data/spec/dummy/spec/coverage/index.html +138 -0
  73. data/spec/dummy/spec/coverage/jquery-1.3.2.min.js +19 -0
  74. data/spec/dummy/spec/coverage/jquery.tablesorter.min.js +15 -0
  75. data/spec/dummy/spec/coverage/models-page_spec_rb.html +153 -0
  76. data/spec/dummy/spec/coverage/print.css +12 -0
  77. data/spec/dummy/spec/coverage/rcov.js +42 -0
  78. data/spec/dummy/spec/coverage/screen.css +270 -0
  79. data/spec/dummy/spec/fixtures/impressions.yml +8 -0
  80. data/spec/dummy/spec/fixtures/pages.yml +4 -0
  81. data/{test → spec/dummy/spec}/generators/impressionizer_generator_test.rb +0 -0
  82. data/spec/dummy/spec/integreation/navigation_spec.rb +7 -0
  83. data/spec/dummy/spec/models/impressionable_spec.rb +15 -0
  84. data/spec/dummy/spec/models/impressionizer_spec.rb +14 -0
  85. data/spec/dummy/spec/models/page_spec.rb +15 -0
  86. data/{test → spec/dummy/spec}/support/integration_case.rb +0 -0
  87. data/spec/spec_helper.rb +80 -0
  88. metadata +161 -107
  89. data/README.rdoc +0 -37
  90. data/test/dummy/Gemfile +0 -4
  91. data/test/impressionizer_test.rb +0 -17
  92. data/test/integration/navigation_test.rb +0 -11
  93. data/test/routing_test.rb +0 -21
  94. data/test/test_helper.rb +0 -24
  95. data/test/unit/impressionable_test.rb +0 -7
  96. data/test/unit/page_test.rb +0 -17
@@ -0,0 +1,270 @@
1
+ /* @group General */
2
+
3
+ body {
4
+ font-family: Verdana, Helvetica, Arial, Sans-Serif;
5
+ font-size: 12px;
6
+ color: #4C4C4C;
7
+ background-color: #F4F2ED;
8
+ padding: 1em;
9
+ }
10
+
11
+ a:link {
12
+ color: #191919;
13
+ }
14
+
15
+ a:visited {
16
+ color: #191919;
17
+ }
18
+
19
+ pre, code {
20
+ color: #000000;
21
+ font-family: "Bitstream Vera Sans Mono","Monaco","Courier New",monospace;
22
+ font-size: 95%;
23
+ line-height: 1.3em;
24
+ margin-top: 0;
25
+ margin-bottom: 0;
26
+ padding: 0;
27
+ word-wrap: break-word;
28
+ }
29
+
30
+ h1, h2, h3, h4, h5, h6 {
31
+ margin: 0em 0em 1em 0em;
32
+ color: #666666;
33
+ }
34
+
35
+ h1 {
36
+ display: block;
37
+ font-size: 2em;
38
+ letter-spacing: -1px;
39
+ }
40
+
41
+ h2 {
42
+ margin-top: -1em;
43
+ }
44
+
45
+ fieldset {
46
+ display: inline;
47
+ border: 0px;
48
+ padding: 0px;
49
+ margin-right: 1em;
50
+ }
51
+
52
+ div.filters {
53
+ margin-bottom: 1em;
54
+ }
55
+
56
+ .hidden {
57
+ display: none;
58
+ }
59
+
60
+ /* @end */
61
+
62
+ /* @group Cross-References */
63
+
64
+ span.cross-ref-title {
65
+ font-size: 140%;
66
+ }
67
+
68
+ span.cross-ref a {
69
+ text-decoration: none;
70
+ }
71
+
72
+ span.cross-ref {
73
+ background-color:#f3f7fa;
74
+ border: 1px dashed #333;
75
+ margin: 1em;
76
+ padding: 0.5em;
77
+ overflow: hidden;
78
+ }
79
+
80
+ a.crossref-toggle {
81
+ text-decoration: none;
82
+ }
83
+
84
+ /* @end */
85
+
86
+ /* @group Report Table */
87
+
88
+ div.report_table_wrapper {
89
+ min-width: 900px;
90
+ }
91
+
92
+ table.report {
93
+ border-collapse: collapse;
94
+ border: 1px solid #666666;
95
+ width: 100%;
96
+ margin-bottom: 1em;
97
+ }
98
+
99
+ table.report tr {
100
+ line-height: 1.75em;
101
+ }
102
+
103
+ table.report th {
104
+ background: #666666;
105
+ color: #ffffff;
106
+ text-align: right;
107
+ text-transform: uppercase;
108
+ font-size: .8em;
109
+ font-weight: bold;
110
+ padding: 0em .5em;
111
+ border: 1px solid #666666;
112
+ }
113
+
114
+ table.report tfoot tr {
115
+ background: #dddddd;
116
+ font-weight: bold;
117
+ padding: .5em;
118
+ border: 1px solid #666666;
119
+ }
120
+
121
+ th.left_align, td.left_align {
122
+ text-align: left !important;
123
+ }
124
+
125
+ th.right_align, td.right_align {
126
+ text-align: right;
127
+ padding-right: 2em !important;
128
+ }
129
+
130
+ table.report th.header:hover {
131
+ cursor: pointer;
132
+ text-decoration: underline;
133
+ }
134
+
135
+ table.report th.headerSortUp:after{
136
+ content: "\25BC";
137
+ margin-left: 1em;
138
+ }
139
+
140
+ table.report th.headerSortDown:after {
141
+ content: "\25B2";
142
+ margin-left: 1em;
143
+ }
144
+
145
+ table.report tr.summary_row {
146
+ background: #cccccc;
147
+ border: 1px solid #cccccc;
148
+ }
149
+
150
+ table.report tr.summary_row td {
151
+ padding-left: .2em !important;
152
+ color: #333333;
153
+ font-weight: bold;
154
+ }
155
+
156
+ table.report td {
157
+ padding: .2em .5em .2em .5em;
158
+ }
159
+
160
+ table.report td a {
161
+ text-decoration: none;
162
+ }
163
+
164
+ table.report tbody tr:hover {
165
+ background: #cccccc !important;
166
+ }
167
+
168
+ table.report tr.summary_row td {
169
+ border-bottom: 1px solid #aaaaaa;
170
+ }
171
+
172
+ table.report tr {
173
+ background-color: #eeeeee;
174
+ }
175
+
176
+ table.report tr.odd {
177
+ background-color: #dddddd;
178
+ }
179
+
180
+ /* @end */
181
+
182
+ /* @group Percentage Graphs */
183
+
184
+ div.percent_graph_legend {
185
+ width: 5.5em;
186
+ float: left;
187
+ margin: .5em 1em .5em 0em;
188
+ height: 1em;
189
+ line-height: 1em;
190
+ }
191
+
192
+ div.percent_graph {
193
+ height: 1em;
194
+ border: #333333 1px solid;
195
+ empty-cells: show;
196
+ padding: 0px;
197
+ border-collapse: collapse;
198
+ width: 100px !important;
199
+ float: left;
200
+ margin: .5em 1em .5em 0em;
201
+ }
202
+
203
+ div.percent_graph div {
204
+ float: left;
205
+ height: 1em;
206
+ padding: 0px !important;
207
+ }
208
+
209
+ div.percent_graph div.covered {
210
+ background: #649632;
211
+ }
212
+
213
+ div.percent_graph div.uncovered {
214
+ background: #a92730;
215
+ }
216
+
217
+ div.percent_graph div.NA {
218
+ background: #eaeaea;
219
+ }
220
+
221
+ /* @end */
222
+
223
+ /* @group Details page */
224
+
225
+ table.details {
226
+ margin-top: 1em;
227
+ border-collapse: collapse;
228
+ width: 100%;
229
+ border: 1px solid #666666;
230
+ }
231
+
232
+ table.details tr {
233
+ line-height: 1.75em;
234
+ }
235
+
236
+ table.details td {
237
+ padding: .25em;
238
+ }
239
+
240
+ span.inferred, span.inferred1, span.marked, span.marked1, span.uncovered, span.uncovered1 {
241
+ display: block;
242
+ padding: .25em;
243
+ }
244
+
245
+ tr.inferred td, span.inferred {
246
+ background-color: #e0dedb;
247
+ }
248
+
249
+ tr.inferred1 td, span.inferred1 {
250
+ background-color: #e0dedb;
251
+ }
252
+
253
+ tr.marked td, span.marked, span.marked1 {
254
+ background-color: #bed2be;
255
+ }
256
+
257
+ tr.uncovered td, span.uncovered {
258
+ background-color: #ce8b8c;
259
+ }
260
+
261
+ tr.uncovered1 td, span.uncovered1 {
262
+ background-color: #ce8b8c;
263
+ }
264
+
265
+ div.key {
266
+ border: 1px solid #666666;
267
+ margin: 1em 0em;
268
+ }
269
+
270
+ /* @end */
@@ -0,0 +1,8 @@
1
+ one:
2
+ impressionable_type: Page
3
+ impressionable_id: 1
4
+ session_hash: 123
5
+ request_hash: 123
6
+ referrer: /
7
+ ip_address: 127.0.0.1
8
+ user_id: 0
@@ -0,0 +1,4 @@
1
+ one:
2
+ id: 1
3
+ title: "Test Page"
4
+ body: "Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet."
@@ -0,0 +1,7 @@
1
+ require 'spec_helper'
2
+
3
+ describe Dummy do
4
+ it "should be kind of Rails.application" do
5
+ assert_kind_of Dummy::Application, Rails.application
6
+ end
7
+ end
@@ -0,0 +1,15 @@
1
+ require 'spec_helper'
2
+
3
+ describe Impressionizer::Impression do
4
+ fixtures :all
5
+
6
+ before(:each) do
7
+ @page = Page.find(1)
8
+ end
9
+
10
+ it "should save a blank impression for an Article that has 10 impressions" do
11
+ @page.impressions.create
12
+ @page.impressions.size.should eq 2
13
+ end
14
+
15
+ end
@@ -0,0 +1,14 @@
1
+ require 'spec_helper'
2
+
3
+ describe Impressionizer::Impression do
4
+
5
+ it "should be kind of Module" do
6
+ assert_kind_of Module, Impressionizer
7
+ end
8
+
9
+ it 'setup block yields self' do
10
+ Impressionizer.setup do |config|
11
+ assert_equal Impressionizer, config
12
+ end
13
+ end
14
+ end
@@ -0,0 +1,15 @@
1
+ require 'spec_helper'
2
+
3
+ describe Page do
4
+ fixtures :all
5
+
6
+ it "should be impressionable" do
7
+ page = Page.new
8
+ assert page.impressionable?
9
+ end
10
+
11
+ it "should return impression_count" do
12
+ page = Page.new
13
+ assert page.impression_count
14
+ end
15
+ end
@@ -0,0 +1,80 @@
1
+ # Configure Rails Envinronment
2
+ ENV["RAILS_ENV"] = "test"
3
+ ENV["RAILS_ROOT"] = File.expand_path("../dummy", __FILE__)
4
+
5
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
6
+ require "rails/test_help"
7
+
8
+ ActionMailer::Base.delivery_method = :test
9
+ ActionMailer::Base.perform_deliveries = true
10
+ ActionMailer::Base.default_url_options[:host] = "test.com"
11
+
12
+ Rails.backtrace_cleaner.remove_silencers!
13
+
14
+ # Configure capybara for integration testing
15
+ require "capybara/rails"
16
+ Capybara.default_driver = :rack_test
17
+ Capybara.default_selector = :css
18
+
19
+ # Run any available migration
20
+ # TODO: not working!
21
+ ActiveRecord::Migrator.migrate File.expand_path("dummy/db/migrate/", __FILE__)
22
+
23
+ # Load support files
24
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
25
+
26
+ $LOAD_PATH.unshift(File.dirname(__FILE__))
27
+ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
28
+
29
+ ENV["RAILS_ENV"] ||= 'test'
30
+ ENV["RAILS_ROOT"] = File.expand_path("../dummy", __FILE__)
31
+
32
+ require File.expand_path("../dummy/config/environment.rb", __FILE__)
33
+ require "rails/test_help"
34
+
35
+ ActionMailer::Base.delivery_method = :test
36
+ ActionMailer::Base.perform_deliveries = true
37
+ ActionMailer::Base.default_url_options[:host] = "test.com"
38
+
39
+ require 'rubygems'
40
+
41
+ Rails.backtrace_cleaner.remove_silencers!
42
+
43
+ # Configure capybara for integration testing
44
+ require "capybara/rails"
45
+ Capybara.default_driver = :rack_test
46
+ Capybara.default_selector = :css
47
+
48
+ # Run any available migration
49
+ # TODO: not working!
50
+ ActiveRecord::Migrator.migrate File.expand_path("dummy/db/migrate/", __FILE__)
51
+
52
+ # Load support files
53
+ Dir["#{File.dirname(__FILE__)}/support/**/*.rb"].each { |f| require f }
54
+
55
+ require 'rspec/rails'
56
+
57
+ RSpec.configure do |config|
58
+ # == Mock Framework
59
+ #
60
+ # If you prefer to use mocha, flexmock or RR, uncomment the appropriate line:
61
+ #
62
+ # config.mock_with :mocha
63
+ # config.mock_with :flexmock
64
+ # config.mock_with :rr
65
+ config.mock_with :rspec
66
+
67
+ # Remove this line if you're not using ActiveRecord or ActiveRecord fixtures
68
+ config.fixture_path = "#{::Rails.root}/spec/fixtures"
69
+
70
+ # If you're not using ActiveRecord, or you'd prefer not to run each of your
71
+ # examples within a transaction, remove the following line or assign false
72
+ # instead of true.
73
+ config.use_transactional_fixtures = true
74
+ end
75
+
76
+ # Requires supporting ruby files with custom matchers and macros, etc,
77
+ # in spec/support/ and its subdirectories.
78
+ Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
79
+
80
+ require 'impressionizer'