weeler 1.0.4 → 1.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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/.travis.yml +3 -0
- data/CHANGELOG.md +17 -0
- data/app/views/weeler/content/_object_seo.html.haml +3 -1
- data/app/views/weeler/translations/_form.html.haml +2 -4
- data/lib/generators/weeler/templates/initializers/weeler.rb +1 -0
- data/lib/i18n/backend/weeler.rb +9 -5
- data/lib/i18n/backend/weeler/html_checker.rb +6 -2
- data/lib/i18n/backend/weeler/translation.rb +2 -2
- data/lib/weeler.rb +3 -0
- data/lib/weeler/action_view/helpers/image_form_helper.rb +5 -6
- data/lib/weeler/version.rb +2 -2
- data/spec/dummy/db/schema.rb +7 -7
- data/spec/dummy/db/test.sqlite3 +0 -0
- data/spec/weeler/action_controller/acts/restful_spec.rb +1 -1
- data/spec/weeler/action_view/helpers/form_helper_spec.rb +8 -0
- data/spec/weeler/i18n/backend/weeler_spec.rb +38 -12
- data/weeler.gemspec +5 -1
- metadata +2 -3
- data/rspec.html +0 -798
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 68940eeb55fdefffd683777736dd8061caf8e998
|
4
|
+
data.tar.gz: 9140eb89f13bbc9a4da87eae17a8c8da335bd012
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 3294c821dd0927db19745f754d5e0accf08f3129aad52faef6b387a2d4b159a69baf88a7422fb33c52eaab9afdfb08bf4012a3b93186694271f9029fa263af61
|
7
|
+
data.tar.gz: 614afa34c328b29a96a1278e02de45af676584b79c2cbd9f018079b80e92bcd368853ca75fd6a8e2f6af5c588bd80ac4b26b8e17032162335509b4df3aa9c820
|
data/.gitignore
CHANGED
data/.travis.yml
CHANGED
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,20 @@
|
|
1
|
+
## 1.1.0
|
2
|
+
|
3
|
+
### Features & Enhancements
|
4
|
+
|
5
|
+
* Add JRuby and Rubinius support.
|
6
|
+
* 'image_upload_field' accept only hash options (for JRuby support).
|
7
|
+
* Add 'empty_translation_acts_like_missing' config. Empty translations by
|
8
|
+
default is treat like missing translation.
|
9
|
+
|
10
|
+
### Bug Fixes
|
11
|
+
|
12
|
+
* Translation html safe output bug fixed (Rails 4.2 bug)
|
13
|
+
|
14
|
+
### Contributors
|
15
|
+
|
16
|
+
* Arturs Braucs
|
17
|
+
|
1
18
|
## 1.0.4
|
2
19
|
|
3
20
|
### Bug Fixes
|
@@ -13,7 +13,9 @@
|
|
13
13
|
= seo_fields.hidden_field :id, :value => seo_fields.object.id if seo_fields.object.present?
|
14
14
|
= seo_fields.hidden_field :section, :value => controller_name
|
15
15
|
|
16
|
-
- seo_fields.
|
16
|
+
- seo_fields.fields_for :translations do |g|
|
17
|
+
= g.hidden_field :locale
|
18
|
+
= g.hidden_field :id
|
17
19
|
|
18
20
|
.form-group
|
19
21
|
.input-group
|
@@ -10,10 +10,8 @@
|
|
10
10
|
.form-group
|
11
11
|
%label.col-lg-2.col-md-2.control-label Value
|
12
12
|
.col-lg-10.col-md-10
|
13
|
-
- if translation.html?
|
14
|
-
=
|
15
|
-
- else
|
16
|
-
= f.text_area :value, {class: "form-control" }
|
13
|
+
%textarea.form-control{class: "#{'redactor' if translation.html?}", name: 'i18n_backend_weeler_translation[value]', id: 'i18n_backend_weeler_translation_value'}
|
14
|
+
= translation.value
|
17
15
|
%h4 Info
|
18
16
|
.form-group
|
19
17
|
%label.col-lg-2.col-md-2.control-label Variables
|
@@ -4,6 +4,7 @@ Weeler.setup do |config|
|
|
4
4
|
#
|
5
5
|
# config.use_weeler_i18n = true
|
6
6
|
# config.create_missing_translations = true # Create translation in database if it missing
|
7
|
+
# config.empty_translation_acts_like_missing = true # Empty translations by default is treat like missing translation.
|
7
8
|
|
8
9
|
# Require user method weeler use in before filter. (e.g. require_user)
|
9
10
|
#
|
data/lib/i18n/backend/weeler.rb
CHANGED
@@ -44,20 +44,24 @@ module I18n
|
|
44
44
|
i18n_cache.clear
|
45
45
|
|
46
46
|
Translation.all.each do |translation|
|
47
|
-
|
47
|
+
# Load in cache unless value is nil or it is blank and empty
|
48
|
+
# translation acts like missing
|
49
|
+
if !(translation.value.nil? || (::Weeler.empty_translation_acts_like_missing && translation.value.blank?))
|
50
|
+
i18n_cache.write [translation.locale, translation.key], translation
|
51
|
+
end
|
48
52
|
end
|
49
53
|
|
50
54
|
i18n_cache.write('UPDATED_AT', Settings.i18n_updated_at) if ActiveRecord::Base.connection.table_exists?('settings')
|
51
55
|
end
|
52
56
|
|
53
|
-
|
57
|
+
protected
|
54
58
|
|
55
59
|
def lookup(locale, key, scope = [], options = {})
|
56
60
|
key = normalize_flat_keys(locale, key, scope, options[:separator])
|
57
61
|
return lookup_in_cache(locale, key, scope, options)
|
58
62
|
end
|
59
63
|
|
60
|
-
|
64
|
+
private
|
61
65
|
|
62
66
|
def lookup_in_cache locale, key, scope = [], options = {}
|
63
67
|
# reload cache if cache timestamp differs from last translations update
|
@@ -71,7 +75,7 @@ module I18n
|
|
71
75
|
|
72
76
|
result = i18n_cache.read([locale, check_key])
|
73
77
|
|
74
|
-
return result.value unless result.blank?
|
78
|
+
return result.value unless result.blank?
|
75
79
|
end
|
76
80
|
|
77
81
|
# mark translation as missing
|
@@ -87,7 +91,7 @@ module I18n
|
|
87
91
|
def lookup_in_database locale, key, scope = [], options = {}
|
88
92
|
result = Translation.locale(locale).lookup(key).load
|
89
93
|
|
90
|
-
if result.
|
94
|
+
if result.nil? || (::Weeler.empty_translation_acts_like_missing && result.blank?)
|
91
95
|
if ::Weeler.create_missing_translations
|
92
96
|
return store_empty_translation locale, key, options
|
93
97
|
else
|
@@ -8,7 +8,8 @@
|
|
8
8
|
# was extracted from the original backend.
|
9
9
|
|
10
10
|
begin
|
11
|
-
require '
|
11
|
+
# require 'sanitize'
|
12
|
+
require 'action_controller/base'
|
12
13
|
rescue LoadError => e
|
13
14
|
puts "can't use Html because: #{e.message}"
|
14
15
|
end
|
@@ -16,11 +17,14 @@ end
|
|
16
17
|
module I18n
|
17
18
|
module Backend
|
18
19
|
class Weeler
|
20
|
+
|
19
21
|
module HtmlChecker
|
22
|
+
|
23
|
+
# include ActionView::Helpers::SanitizeHelper
|
20
24
|
|
21
25
|
def html?
|
22
26
|
if html_safe_translation_key?(self.key) ||
|
23
|
-
|
27
|
+
(self.value.present? && ActionController::Base.helpers.sanitize(self.value.to_s, {tags: []}).length != self.value.to_s.length)
|
24
28
|
return true
|
25
29
|
else
|
26
30
|
return false
|
@@ -54,7 +54,7 @@ module I18n
|
|
54
54
|
serialize :value
|
55
55
|
serialize :interpolations, Array
|
56
56
|
|
57
|
-
scope :except_key,
|
57
|
+
scope :except_key, lambda { |key| where("key NOT LIKE ?", "#{key}%") }
|
58
58
|
|
59
59
|
validates :key, :uniqueness => { :scope => :locale }
|
60
60
|
validates :key, presence: true
|
@@ -71,7 +71,7 @@ module I18n
|
|
71
71
|
|
72
72
|
unless separator.empty?
|
73
73
|
warn "[DEPRECATION] Giving a separator to Translation.lookup is deprecated. " <<
|
74
|
-
|
74
|
+
"You can change the internal separator by overwriting FLATTEN_SEPARATOR."
|
75
75
|
end
|
76
76
|
|
77
77
|
namespace = "#{keys.last}#{I18n::Backend::Flatten::FLATTEN_SEPARATOR}%"
|
data/lib/weeler.rb
CHANGED
@@ -27,6 +27,9 @@ module Weeler
|
|
27
27
|
|
28
28
|
mattr_accessor :use_weeler_i18n
|
29
29
|
@@use_weeler_i18n = true
|
30
|
+
|
31
|
+
mattr_accessor :empty_translation_acts_like_missing
|
32
|
+
@@empty_translation_acts_like_missing = true
|
30
33
|
|
31
34
|
mattr_accessor :required_user_method
|
32
35
|
@@required_user_method = nil
|
@@ -19,15 +19,14 @@ module Weeler
|
|
19
19
|
#
|
20
20
|
# Also with remove_image action in controller and route for that,
|
21
21
|
# it removes only image from object.
|
22
|
-
def image_upload_field(name,
|
22
|
+
def image_upload_field(name, options = {})
|
23
|
+
options = options.reverse_merge({size_info: "200x80", image_url_method: "#{name.to_s}.url(\"original\")"})
|
23
24
|
self.multipart = true
|
24
25
|
|
25
|
-
image_url_method = "#{name.to_s}.url(\"original\")" unless image_url_method.present?
|
26
|
-
|
27
26
|
buffer = @template.label(@object_name, name, :class => "col-lg-2 col-md-2 control-label")
|
28
27
|
|
29
|
-
buffer += image_upload_field_file_block name, size_info
|
30
|
-
buffer += image_upload_field_preview_block name, image_url_method if File.exist?(@object.instance_eval(image_url_method))
|
28
|
+
buffer += image_upload_field_file_block name, options[:size_info]
|
29
|
+
buffer += image_upload_field_preview_block name, options[:image_url_method] if File.exist?(@object.instance_eval(options[:image_url_method]))
|
31
30
|
|
32
31
|
buffer
|
33
32
|
end
|
@@ -62,7 +61,7 @@ module Weeler
|
|
62
61
|
build_route = true
|
63
62
|
begin
|
64
63
|
@template.link_to("Remove", action: "remove_image")
|
65
|
-
rescue Exception
|
64
|
+
rescue Exception
|
66
65
|
build_route = false
|
67
66
|
end
|
68
67
|
|
data/lib/weeler/version.rb
CHANGED
data/spec/dummy/db/schema.rb
CHANGED
@@ -13,7 +13,7 @@
|
|
13
13
|
|
14
14
|
ActiveRecord::Schema.define(version: 20140726151210) do
|
15
15
|
|
16
|
-
create_table "posts", force:
|
16
|
+
create_table "posts", force: :cascade do |t|
|
17
17
|
t.string "title"
|
18
18
|
t.text "body"
|
19
19
|
t.integer "sequence", default: 0
|
@@ -22,7 +22,7 @@ ActiveRecord::Schema.define(version: 20140726151210) do
|
|
22
22
|
t.datetime "updated_at"
|
23
23
|
end
|
24
24
|
|
25
|
-
create_table "settings", force:
|
25
|
+
create_table "settings", force: :cascade do |t|
|
26
26
|
t.string "var", null: false
|
27
27
|
t.text "value"
|
28
28
|
t.integer "thing_id"
|
@@ -33,7 +33,7 @@ ActiveRecord::Schema.define(version: 20140726151210) do
|
|
33
33
|
|
34
34
|
add_index "settings", ["thing_type", "thing_id", "var"], name: "index_settings_on_thing_type_and_thing_id_and_var", unique: true
|
35
35
|
|
36
|
-
create_table "translations", force:
|
36
|
+
create_table "translations", force: :cascade do |t|
|
37
37
|
t.integer "post_id"
|
38
38
|
t.string "locale"
|
39
39
|
t.string "title"
|
@@ -44,7 +44,7 @@ ActiveRecord::Schema.define(version: 20140726151210) do
|
|
44
44
|
|
45
45
|
add_index "translations", ["post_id"], name: "index_translations_on_post_id"
|
46
46
|
|
47
|
-
create_table "weeler_seo_translations", force:
|
47
|
+
create_table "weeler_seo_translations", force: :cascade do |t|
|
48
48
|
t.integer "weeler_seo_id", null: false
|
49
49
|
t.string "locale", null: false
|
50
50
|
t.datetime "created_at"
|
@@ -57,7 +57,7 @@ ActiveRecord::Schema.define(version: 20140726151210) do
|
|
57
57
|
add_index "weeler_seo_translations", ["locale"], name: "index_weeler_seo_translations_on_locale"
|
58
58
|
add_index "weeler_seo_translations", ["weeler_seo_id"], name: "index_weeler_seo_translations_on_weeler_seo_id"
|
59
59
|
|
60
|
-
create_table "weeler_seos", force:
|
60
|
+
create_table "weeler_seos", force: :cascade do |t|
|
61
61
|
t.string "title"
|
62
62
|
t.text "description"
|
63
63
|
t.text "keywords"
|
@@ -69,9 +69,9 @@ ActiveRecord::Schema.define(version: 20140726151210) do
|
|
69
69
|
end
|
70
70
|
|
71
71
|
add_index "weeler_seos", ["section"], name: "index_weeler_seos_on_section"
|
72
|
-
add_index "weeler_seos", ["
|
72
|
+
add_index "weeler_seos", ["seoable_type", "seoable_id"], name: "index_weeler_seos_on_seoable_type_and_seoable_id"
|
73
73
|
|
74
|
-
create_table "weeler_translations", force:
|
74
|
+
create_table "weeler_translations", force: :cascade do |t|
|
75
75
|
t.string "locale"
|
76
76
|
t.string "key"
|
77
77
|
t.text "value"
|
data/spec/dummy/db/test.sqlite3
CHANGED
Binary file
|
@@ -136,7 +136,7 @@ describe Weeler::ActionController::Acts::Restful, type: :controller do
|
|
136
136
|
|
137
137
|
context "permited all with block" do
|
138
138
|
controller Weeler::FoosController do
|
139
|
-
acts_as_restful Post, permit_params:
|
139
|
+
acts_as_restful Post, permit_params: lambda { |params| params.require(:post).permit! }
|
140
140
|
end
|
141
141
|
|
142
142
|
describe "actions" do
|
@@ -23,5 +23,13 @@ describe Weeler::ActionView::Helpers::FormHelper, :type => :helper do
|
|
23
23
|
expect(output).to include 'src="'+ Rails.root.join('sample/original.png').to_s+'"'
|
24
24
|
expect(output).to include 'style="height: 80px;"'
|
25
25
|
end
|
26
|
+
|
27
|
+
context 'change size info and image url method' do
|
28
|
+
|
29
|
+
it 'works on none java platforms' do
|
30
|
+
expect(helper.image_upload_field(:image, image_url_method: "image.url('small')", size_info: "200x100")).to include("200x100")
|
31
|
+
end
|
32
|
+
|
33
|
+
end
|
26
34
|
|
27
35
|
end
|
@@ -1,3 +1,4 @@
|
|
1
|
+
# encoding: utf-8
|
1
2
|
require "spec_helper"
|
2
3
|
|
3
4
|
describe I18n::Backend::Weeler do
|
@@ -70,7 +71,7 @@ describe I18n::Backend::Weeler do
|
|
70
71
|
before(:all) do
|
71
72
|
@html_key_translation = I18n::Backend::Weeler::Translation.create(:key => 'methods.body_html', :value => "Super duper", :locale => :en)
|
72
73
|
@html_value_translation = I18n::Backend::Weeler::Translation.create(:key => 'methods.body', :value => "Super <b>duper</b>", :locale => :en)
|
73
|
-
@html_fake_value_translation = I18n::Backend::Weeler::Translation.create(:key => 'methods.body_fake', :value => "Super
|
74
|
+
@html_fake_value_translation = I18n::Backend::Weeler::Translation.create(:key => 'methods.body_fake', :value => "Super b", :locale => :en)
|
74
75
|
end
|
75
76
|
|
76
77
|
it "is true if key is html" do
|
@@ -86,11 +87,6 @@ describe I18n::Backend::Weeler do
|
|
86
87
|
expect(@html_fake_value_translation.html?).to be(false)
|
87
88
|
end
|
88
89
|
|
89
|
-
end
|
90
|
-
|
91
|
-
describe "#lookup" do
|
92
|
-
|
93
|
-
|
94
90
|
end
|
95
91
|
|
96
92
|
describe "groups" do
|
@@ -197,13 +193,43 @@ describe I18n::Backend::Weeler do
|
|
197
193
|
end
|
198
194
|
|
199
195
|
context "already stored" do
|
200
|
-
before(:all) do
|
201
|
-
FactoryGirl.create(:translation, key: "weeler.test.cms_title", locale: "en", value: nil)
|
202
|
-
end
|
203
196
|
|
204
|
-
|
205
|
-
|
206
|
-
|
197
|
+
context "value is empty" do
|
198
|
+
context "empty as existing" do
|
199
|
+
before(:all) do
|
200
|
+
Weeler.empty_translation_acts_like_missing = false
|
201
|
+
FactoryGirl.create(:translation, key: "weeler.test.cms_title", locale: "en", value: "")
|
202
|
+
end
|
203
|
+
|
204
|
+
it "saves the fallback backend value" do
|
205
|
+
I18n.t('weeler.test.cms_title')
|
206
|
+
expect(I18n::Backend::Weeler::Translation.locale(:en).find_by_key('weeler.test.cms_title').value).to eq("")
|
207
|
+
end
|
208
|
+
|
209
|
+
after(:all) do
|
210
|
+
Weeler.empty_translation_acts_like_missing = true
|
211
|
+
end
|
212
|
+
end
|
213
|
+
context "empty as missing" do
|
214
|
+
before(:all) do
|
215
|
+
FactoryGirl.create(:translation, key: "weeler.test.cms_title", locale: "en", value: "")
|
216
|
+
end
|
217
|
+
|
218
|
+
it "saves the fallback backend value" do
|
219
|
+
I18n.t('weeler.test.cms_title')
|
220
|
+
expect(I18n::Backend::Weeler::Translation.locale(:en).find_by_key('weeler.test.cms_title').value).to eq("Weeler is cool")
|
221
|
+
end
|
222
|
+
end
|
223
|
+
end
|
224
|
+
context "value is nil" do
|
225
|
+
before(:all) do
|
226
|
+
FactoryGirl.create(:translation, key: "weeler.test.cms_title", locale: "en", value: nil)
|
227
|
+
end
|
228
|
+
|
229
|
+
it "saves the fallback backend value" do
|
230
|
+
I18n.t('weeler.test.cms_title')
|
231
|
+
expect(I18n::Backend::Weeler::Translation.locale(:en).find_by_key('weeler.test.cms_title').value).to eq("Weeler is cool")
|
232
|
+
end
|
207
233
|
end
|
208
234
|
end
|
209
235
|
end
|
data/weeler.gemspec
CHANGED
@@ -39,7 +39,11 @@ Gem::Specification.new do |spec|
|
|
39
39
|
spec.add_development_dependency 'webrat'
|
40
40
|
spec.add_development_dependency 'capybara'
|
41
41
|
spec.add_development_dependency 'factory_girl_rails'
|
42
|
-
|
42
|
+
if RUBY_PLATFORM == 'java'
|
43
|
+
spec.add_development_dependency 'activerecord-jdbcsqlite3-adapter'
|
44
|
+
else
|
45
|
+
spec.add_development_dependency 'sqlite3'
|
46
|
+
end
|
43
47
|
spec.add_development_dependency 'database_cleaner'
|
44
48
|
spec.add_development_dependency 'shoulda-matchers'
|
45
49
|
spec.add_development_dependency 'coveralls'
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: weeler
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0
|
4
|
+
version: 1.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Artūrs Braučs
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2015-01-
|
12
|
+
date: 2015-01-23 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
@@ -446,7 +446,6 @@ files:
|
|
446
446
|
- lib/weeler/deprecator.rb
|
447
447
|
- lib/weeler/engine.rb
|
448
448
|
- lib/weeler/version.rb
|
449
|
-
- rspec.html
|
450
449
|
- spec/.DS_Store
|
451
450
|
- spec/controllers/translations_controller_spec.rb
|
452
451
|
- spec/dummy/README.rdoc
|
data/rspec.html
DELETED
@@ -1,798 +0,0 @@
|
|
1
|
-
<!DOCTYPE html>
|
2
|
-
<html lang='en'>
|
3
|
-
<head>
|
4
|
-
<title>RSpec results</title>
|
5
|
-
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
-
<meta http-equiv="Expires" content="-1" />
|
7
|
-
<meta http-equiv="Pragma" content="no-cache" />
|
8
|
-
<style type="text/css">
|
9
|
-
body {
|
10
|
-
margin: 0;
|
11
|
-
padding: 0;
|
12
|
-
background: #fff;
|
13
|
-
font-size: 80%;
|
14
|
-
}
|
15
|
-
</style>
|
16
|
-
<script type="text/javascript">
|
17
|
-
// <![CDATA[
|
18
|
-
|
19
|
-
function addClass(element_id, classname) {
|
20
|
-
document.getElementById(element_id).className += (" " + classname);
|
21
|
-
}
|
22
|
-
|
23
|
-
function removeClass(element_id, classname) {
|
24
|
-
var elem = document.getElementById(element_id);
|
25
|
-
var classlist = elem.className.replace(classname,'');
|
26
|
-
elem.className = classlist;
|
27
|
-
}
|
28
|
-
|
29
|
-
function moveProgressBar(percentDone) {
|
30
|
-
document.getElementById("rspec-header").style.width = percentDone +"%";
|
31
|
-
}
|
32
|
-
|
33
|
-
function makeRed(element_id) {
|
34
|
-
removeClass(element_id, 'passed');
|
35
|
-
removeClass(element_id, 'not_implemented');
|
36
|
-
addClass(element_id,'failed');
|
37
|
-
}
|
38
|
-
|
39
|
-
function makeYellow(element_id) {
|
40
|
-
var elem = document.getElementById(element_id);
|
41
|
-
if (elem.className.indexOf("failed") == -1) { // class doesn't includes failed
|
42
|
-
if (elem.className.indexOf("not_implemented") == -1) { // class doesn't include not_implemented
|
43
|
-
removeClass(element_id, 'passed');
|
44
|
-
addClass(element_id,'not_implemented');
|
45
|
-
}
|
46
|
-
}
|
47
|
-
}
|
48
|
-
|
49
|
-
function apply_filters() {
|
50
|
-
var passed_filter = document.getElementById('passed_checkbox').checked;
|
51
|
-
var failed_filter = document.getElementById('failed_checkbox').checked;
|
52
|
-
var pending_filter = document.getElementById('pending_checkbox').checked;
|
53
|
-
|
54
|
-
assign_display_style("example passed", passed_filter);
|
55
|
-
assign_display_style("example failed", failed_filter);
|
56
|
-
assign_display_style("example not_implemented", pending_filter);
|
57
|
-
|
58
|
-
assign_display_style_for_group("example_group passed", passed_filter);
|
59
|
-
assign_display_style_for_group("example_group not_implemented", pending_filter, pending_filter || passed_filter);
|
60
|
-
assign_display_style_for_group("example_group failed", failed_filter, failed_filter || pending_filter || passed_filter);
|
61
|
-
}
|
62
|
-
|
63
|
-
function get_display_style(display_flag) {
|
64
|
-
var style_mode = 'none';
|
65
|
-
if (display_flag == true) {
|
66
|
-
style_mode = 'block';
|
67
|
-
}
|
68
|
-
return style_mode;
|
69
|
-
}
|
70
|
-
|
71
|
-
function assign_display_style(classname, display_flag) {
|
72
|
-
var style_mode = get_display_style(display_flag);
|
73
|
-
var elems = document.getElementsByClassName(classname)
|
74
|
-
for (var i=0; i<elems.length;i++) {
|
75
|
-
elems[i].style.display = style_mode;
|
76
|
-
}
|
77
|
-
}
|
78
|
-
|
79
|
-
function assign_display_style_for_group(classname, display_flag, subgroup_flag) {
|
80
|
-
var display_style_mode = get_display_style(display_flag);
|
81
|
-
var subgroup_style_mode = get_display_style(subgroup_flag);
|
82
|
-
var elems = document.getElementsByClassName(classname)
|
83
|
-
for (var i=0; i<elems.length;i++) {
|
84
|
-
var style_mode = display_style_mode;
|
85
|
-
if ((display_flag != subgroup_flag) && (elems[i].getElementsByTagName('dt')[0].innerHTML.indexOf(", ") != -1)) {
|
86
|
-
elems[i].style.display = subgroup_style_mode;
|
87
|
-
} else {
|
88
|
-
elems[i].style.display = display_style_mode;
|
89
|
-
}
|
90
|
-
}
|
91
|
-
}
|
92
|
-
|
93
|
-
// ]]>
|
94
|
-
</script>
|
95
|
-
<style type="text/css">
|
96
|
-
#rspec-header {
|
97
|
-
background: #65C400; color: #fff; height: 4em;
|
98
|
-
}
|
99
|
-
|
100
|
-
.rspec-report h1 {
|
101
|
-
margin: 0px 10px 0px 10px;
|
102
|
-
padding: 10px;
|
103
|
-
font-family: "Lucida Grande", Helvetica, sans-serif;
|
104
|
-
font-size: 1.8em;
|
105
|
-
position: absolute;
|
106
|
-
}
|
107
|
-
|
108
|
-
#label {
|
109
|
-
float:left;
|
110
|
-
}
|
111
|
-
|
112
|
-
#display-filters {
|
113
|
-
float:left;
|
114
|
-
padding: 28px 0 0 40%;
|
115
|
-
font-family: "Lucida Grande", Helvetica, sans-serif;
|
116
|
-
}
|
117
|
-
|
118
|
-
#summary {
|
119
|
-
float:right;
|
120
|
-
padding: 5px 10px;
|
121
|
-
font-family: "Lucida Grande", Helvetica, sans-serif;
|
122
|
-
text-align: right;
|
123
|
-
}
|
124
|
-
|
125
|
-
#summary p {
|
126
|
-
margin: 0 0 0 2px;
|
127
|
-
}
|
128
|
-
|
129
|
-
#summary #totals {
|
130
|
-
font-size: 1.2em;
|
131
|
-
}
|
132
|
-
|
133
|
-
.example_group {
|
134
|
-
margin: 0 10px 5px;
|
135
|
-
background: #fff;
|
136
|
-
}
|
137
|
-
|
138
|
-
dl {
|
139
|
-
margin: 0; padding: 0 0 5px;
|
140
|
-
font: normal 11px "Lucida Grande", Helvetica, sans-serif;
|
141
|
-
}
|
142
|
-
|
143
|
-
dt {
|
144
|
-
padding: 3px;
|
145
|
-
background: #65C400;
|
146
|
-
color: #fff;
|
147
|
-
font-weight: bold;
|
148
|
-
}
|
149
|
-
|
150
|
-
dd {
|
151
|
-
margin: 5px 0 5px 5px;
|
152
|
-
padding: 3px 3px 3px 18px;
|
153
|
-
}
|
154
|
-
|
155
|
-
dd .duration {
|
156
|
-
padding-left: 5px;
|
157
|
-
text-align: right;
|
158
|
-
right: 0px;
|
159
|
-
float:right;
|
160
|
-
}
|
161
|
-
|
162
|
-
dd.example.passed {
|
163
|
-
border-left: 5px solid #65C400;
|
164
|
-
border-bottom: 1px solid #65C400;
|
165
|
-
background: #DBFFB4; color: #3D7700;
|
166
|
-
}
|
167
|
-
|
168
|
-
dd.example.not_implemented {
|
169
|
-
border-left: 5px solid #FAF834;
|
170
|
-
border-bottom: 1px solid #FAF834;
|
171
|
-
background: #FCFB98; color: #131313;
|
172
|
-
}
|
173
|
-
|
174
|
-
dd.example.pending_fixed {
|
175
|
-
border-left: 5px solid #0000C2;
|
176
|
-
border-bottom: 1px solid #0000C2;
|
177
|
-
color: #0000C2; background: #D3FBFF;
|
178
|
-
}
|
179
|
-
|
180
|
-
dd.example.failed {
|
181
|
-
border-left: 5px solid #C20000;
|
182
|
-
border-bottom: 1px solid #C20000;
|
183
|
-
color: #C20000; background: #FFFBD3;
|
184
|
-
}
|
185
|
-
|
186
|
-
|
187
|
-
dt.not_implemented {
|
188
|
-
color: #000000; background: #FAF834;
|
189
|
-
}
|
190
|
-
|
191
|
-
dt.pending_fixed {
|
192
|
-
color: #FFFFFF; background: #C40D0D;
|
193
|
-
}
|
194
|
-
|
195
|
-
dt.failed {
|
196
|
-
color: #FFFFFF; background: #C40D0D;
|
197
|
-
}
|
198
|
-
|
199
|
-
|
200
|
-
#rspec-header.not_implemented {
|
201
|
-
color: #000000; background: #FAF834;
|
202
|
-
}
|
203
|
-
|
204
|
-
#rspec-header.pending_fixed {
|
205
|
-
color: #FFFFFF; background: #C40D0D;
|
206
|
-
}
|
207
|
-
|
208
|
-
#rspec-header.failed {
|
209
|
-
color: #FFFFFF; background: #C40D0D;
|
210
|
-
}
|
211
|
-
|
212
|
-
|
213
|
-
.backtrace {
|
214
|
-
color: #000;
|
215
|
-
font-size: 12px;
|
216
|
-
}
|
217
|
-
|
218
|
-
a {
|
219
|
-
color: #BE5C00;
|
220
|
-
}
|
221
|
-
|
222
|
-
/* Ruby code, style similar to vibrant ink */
|
223
|
-
.ruby {
|
224
|
-
font-size: 12px;
|
225
|
-
font-family: monospace;
|
226
|
-
color: white;
|
227
|
-
background-color: black;
|
228
|
-
padding: 0.1em 0 0.2em 0;
|
229
|
-
}
|
230
|
-
|
231
|
-
.ruby .keyword { color: #FF6600; }
|
232
|
-
.ruby .constant { color: #339999; }
|
233
|
-
.ruby .attribute { color: white; }
|
234
|
-
.ruby .global { color: white; }
|
235
|
-
.ruby .module { color: white; }
|
236
|
-
.ruby .class { color: white; }
|
237
|
-
.ruby .string { color: #66FF00; }
|
238
|
-
.ruby .ident { color: white; }
|
239
|
-
.ruby .method { color: #FFCC00; }
|
240
|
-
.ruby .number { color: white; }
|
241
|
-
.ruby .char { color: white; }
|
242
|
-
.ruby .comment { color: #9933CC; }
|
243
|
-
.ruby .symbol { color: white; }
|
244
|
-
.ruby .regex { color: #44B4CC; }
|
245
|
-
.ruby .punct { color: white; }
|
246
|
-
.ruby .escape { color: white; }
|
247
|
-
.ruby .interp { color: white; }
|
248
|
-
.ruby .expr { color: white; }
|
249
|
-
|
250
|
-
.ruby .offending { background-color: gray; }
|
251
|
-
.ruby .linenum {
|
252
|
-
width: 75px;
|
253
|
-
padding: 0.1em 1em 0.2em 0;
|
254
|
-
color: #000000;
|
255
|
-
background-color: #FFFBD3;
|
256
|
-
}
|
257
|
-
|
258
|
-
</style>
|
259
|
-
</head>
|
260
|
-
<body>
|
261
|
-
<div class="rspec-report">
|
262
|
-
|
263
|
-
<div id="rspec-header">
|
264
|
-
<div id="label">
|
265
|
-
<h1>RSpec Code Examples</h1>
|
266
|
-
</div>
|
267
|
-
|
268
|
-
<div id="display-filters">
|
269
|
-
<input id="passed_checkbox" name="passed_checkbox" type="checkbox" checked="checked" onchange="apply_filters()" value="1" /> <label for="passed_checkbox">Passed</label>
|
270
|
-
<input id="failed_checkbox" name="failed_checkbox" type="checkbox" checked="checked" onchange="apply_filters()" value="2" /> <label for="failed_checkbox">Failed</label>
|
271
|
-
<input id="pending_checkbox" name="pending_checkbox" type="checkbox" checked="checked" onchange="apply_filters()" value="3" /> <label for="pending_checkbox">Pending</label>
|
272
|
-
</div>
|
273
|
-
|
274
|
-
<div id="summary">
|
275
|
-
<p id="totals"> </p>
|
276
|
-
<p id="duration"> </p>
|
277
|
-
</div>
|
278
|
-
</div>
|
279
|
-
|
280
|
-
|
281
|
-
<div class="results">
|
282
|
-
<div id="div_group_1" class="example_group passed">
|
283
|
-
<dl style="margin-left: 0px;">
|
284
|
-
<dt id="example_group_1" class="passed">I18n::Backend::Weeler::Exporter</dt>
|
285
|
-
</dl>
|
286
|
-
</div>
|
287
|
-
<div id="div_group_2" class="example_group passed">
|
288
|
-
<dl style="margin-left: 15px;">
|
289
|
-
<dt id="example_group_2" class="passed">as_xlsx_package</dt>
|
290
|
-
</dl>
|
291
|
-
</div>
|
292
|
-
<div id="div_group_3" class="example_group passed">
|
293
|
-
<dl style="margin-left: 30px;">
|
294
|
-
<dt id="example_group_3" class="passed">all translations</dt>
|
295
|
-
<script type="text/javascript">moveProgressBar('1.2');</script>
|
296
|
-
<dd class="example passed"><span class="passed_spec_name">other row with two translation</span><span class='duration'>0.07887s</span></dd>
|
297
|
-
<script type="text/javascript">moveProgressBar('2.4');</script>
|
298
|
-
<dd class="example passed"><span class="passed_spec_name">should have 3 rows</span><span class='duration'>0.00621s</span></dd>
|
299
|
-
<script type="text/javascript">moveProgressBar('3.6');</script>
|
300
|
-
<dd class="example passed"><span class="passed_spec_name">other row with one translation</span><span class='duration'>0.00581s</span></dd>
|
301
|
-
<script type="text/javascript">moveProgressBar('4.8');</script>
|
302
|
-
<dd class="example passed"><span class="passed_spec_name">first row should be title</span><span class='duration'>0.00574s</span></dd>
|
303
|
-
</dl>
|
304
|
-
</div>
|
305
|
-
<div id="div_group_4" class="example_group passed">
|
306
|
-
<dl style="margin-left: 30px;">
|
307
|
-
<dt id="example_group_4" class="passed">selected translations</dt>
|
308
|
-
<script type="text/javascript">moveProgressBar('6.0');</script>
|
309
|
-
<dd class="example passed"><span class="passed_spec_name">other row with one translation</span><span class='duration'>0.00763s</span></dd>
|
310
|
-
<script type="text/javascript">moveProgressBar('7.2');</script>
|
311
|
-
<dd class="example passed"><span class="passed_spec_name">should have 2 rows</span><span class='duration'>0.00779s</span></dd>
|
312
|
-
<script type="text/javascript">moveProgressBar('8.4');</script>
|
313
|
-
<dd class="example passed"><span class="passed_spec_name">first row should be title</span><span class='duration'>0.00608s</span></dd>
|
314
|
-
</dl>
|
315
|
-
</div>
|
316
|
-
<div id="div_group_5" class="example_group passed">
|
317
|
-
<dl style="margin-left: 0px;">
|
318
|
-
<dt id="example_group_5" class="passed">Weeler::TranslationsController</dt>
|
319
|
-
</dl>
|
320
|
-
</div>
|
321
|
-
<div id="div_group_6" class="example_group passed">
|
322
|
-
<dl style="margin-left: 15px;">
|
323
|
-
<dt id="example_group_6" class="passed">POST #import</dt>
|
324
|
-
</dl>
|
325
|
-
</div>
|
326
|
-
<div id="div_group_7" class="example_group passed">
|
327
|
-
<dl style="margin-left: 30px;">
|
328
|
-
<dt id="example_group_7" class="passed">submiting a file</dt>
|
329
|
-
<script type="text/javascript">moveProgressBar('9.6');</script>
|
330
|
-
<dd class="example passed"><span class="passed_spec_name">adds translation from files</span><span class='duration'>0.36659s</span></dd>
|
331
|
-
</dl>
|
332
|
-
</div>
|
333
|
-
<div id="div_group_8" class="example_group passed">
|
334
|
-
<dl style="margin-left: 30px;">
|
335
|
-
<dt id="example_group_8" class="passed">no file</dt>
|
336
|
-
<script type="text/javascript">moveProgressBar('10.8');</script>
|
337
|
-
<dd class="example passed"><span class="passed_spec_name">redirects back</span><span class='duration'>0.04332s</span></dd>
|
338
|
-
</dl>
|
339
|
-
</div>
|
340
|
-
<div id="div_group_9" class="example_group passed">
|
341
|
-
<dl style="margin-left: 15px;">
|
342
|
-
<dt id="example_group_9" class="passed">GET #new</dt>
|
343
|
-
<script type="text/javascript">moveProgressBar('12.0');</script>
|
344
|
-
<dd class="example passed"><span class="passed_spec_name">retern new translation form</span><span class='duration'>0.05938s</span></dd>
|
345
|
-
</dl>
|
346
|
-
</div>
|
347
|
-
<div id="div_group_10" class="example_group passed">
|
348
|
-
<dl style="margin-left: 15px;">
|
349
|
-
<dt id="example_group_10" class="passed">#create</dt>
|
350
|
-
<script type="text/javascript">moveProgressBar('13.2');</script>
|
351
|
-
<dd class="example passed"><span class="passed_spec_name">creates translation in DB</span><span class='duration'>0.08486s</span></dd>
|
352
|
-
<script type="text/javascript">moveProgressBar('14.4');</script>
|
353
|
-
<dd class="example passed"><span class="passed_spec_name">doesnt create a duplicate key</span><span class='duration'>0.17436s</span></dd>
|
354
|
-
</dl>
|
355
|
-
</div>
|
356
|
-
<div id="div_group_11" class="example_group passed">
|
357
|
-
<dl style="margin-left: 15px;">
|
358
|
-
<dt id="example_group_11" class="passed">GET #export</dt>
|
359
|
-
<script type="text/javascript">moveProgressBar('15.6');</script>
|
360
|
-
<dd class="example passed"><span class="passed_spec_name">retursns translation file</span><span class='duration'>0.05055s</span></dd>
|
361
|
-
</dl>
|
362
|
-
</div>
|
363
|
-
<div id="div_group_12" class="example_group passed">
|
364
|
-
<dl style="margin-left: 15px;">
|
365
|
-
<dt id="example_group_12" class="passed">GET #edit</dt>
|
366
|
-
<script type="text/javascript">moveProgressBar('16.8');</script>
|
367
|
-
<dd class="example passed"><span class="passed_spec_name">retern edit translation form</span><span class='duration'>0.04457s</span></dd>
|
368
|
-
</dl>
|
369
|
-
</div>
|
370
|
-
<div id="div_group_13" class="example_group passed">
|
371
|
-
<dl style="margin-left: 15px;">
|
372
|
-
<dt id="example_group_13" class="passed">GET #index</dt>
|
373
|
-
<script type="text/javascript">moveProgressBar('18.0');</script>
|
374
|
-
<dd class="example passed"><span class="passed_spec_name">list translations</span><span class='duration'>0.06114s</span></dd>
|
375
|
-
</dl>
|
376
|
-
</div>
|
377
|
-
<div id="div_group_14" class="example_group passed">
|
378
|
-
<dl style="margin-left: 15px;">
|
379
|
-
<dt id="example_group_14" class="passed">PUT #update</dt>
|
380
|
-
<script type="text/javascript">moveProgressBar('19.2');</script>
|
381
|
-
<dd class="example passed"><span class="passed_spec_name">update translation in DB</span><span class='duration'>0.06285s</span></dd>
|
382
|
-
<script type="text/javascript">moveProgressBar('20.4');</script>
|
383
|
-
<dd class="example passed"><span class="passed_spec_name">dont updates if key is empty</span><span class='duration'>0.12468s</span></dd>
|
384
|
-
</dl>
|
385
|
-
</div>
|
386
|
-
<div id="div_group_15" class="example_group passed">
|
387
|
-
<dl style="margin-left: 15px;">
|
388
|
-
<dt id="example_group_15" class="passed">DELETE #destroy</dt>
|
389
|
-
<script type="text/javascript">moveProgressBar('21.6');</script>
|
390
|
-
<dd class="example passed"><span class="passed_spec_name">destroys translation</span><span class='duration'>0.06130s</span></dd>
|
391
|
-
</dl>
|
392
|
-
</div>
|
393
|
-
<div id="div_group_16" class="example_group passed">
|
394
|
-
<dl style="margin-left: 0px;">
|
395
|
-
<dt id="example_group_16" class="passed">Weeler::ActionController::Acts::Restful</dt>
|
396
|
-
</dl>
|
397
|
-
</div>
|
398
|
-
<div id="div_group_17" class="example_group passed">
|
399
|
-
<dl style="margin-left: 15px;">
|
400
|
-
<dt id="example_group_17" class="passed">acts_as_restful</dt>
|
401
|
-
</dl>
|
402
|
-
</div>
|
403
|
-
<div id="div_group_18" class="example_group passed">
|
404
|
-
<dl style="margin-left: 30px;">
|
405
|
-
<dt id="example_group_18" class="passed">permited all with block</dt>
|
406
|
-
</dl>
|
407
|
-
</div>
|
408
|
-
<div id="div_group_19" class="example_group passed">
|
409
|
-
<dl style="margin-left: 45px;">
|
410
|
-
<dt id="example_group_19" class="passed">GET #index</dt>
|
411
|
-
<script type="text/javascript">moveProgressBar('22.8');</script>
|
412
|
-
<dd class="example passed"><span class="passed_spec_name">users order by for ordering</span><span class='duration'>0.06440s</span></dd>
|
413
|
-
</dl>
|
414
|
-
</div>
|
415
|
-
<div id="div_group_20" class="example_group passed">
|
416
|
-
<dl style="margin-left: 30px;">
|
417
|
-
<dt id="example_group_20" class="passed">permited title with array</dt>
|
418
|
-
</dl>
|
419
|
-
</div>
|
420
|
-
<div id="div_group_21" class="example_group passed">
|
421
|
-
<dl style="margin-left: 45px;">
|
422
|
-
<dt id="example_group_21" class="passed">model</dt>
|
423
|
-
<script type="text/javascript">moveProgressBar('24.0');</script>
|
424
|
-
<dd class="example passed"><span class="passed_spec_name">returns current controller model</span><span class='duration'>0.04312s</span></dd>
|
425
|
-
</dl>
|
426
|
-
</div>
|
427
|
-
<div id="div_group_22" class="example_group passed">
|
428
|
-
<dl style="margin-left: 45px;">
|
429
|
-
<dt id="example_group_22" class="passed">actions</dt>
|
430
|
-
<script type="text/javascript">moveProgressBar('25.3');</script>
|
431
|
-
<dd class="example passed"><span class="passed_spec_name">POST #order</span><span class='duration'>0.05351s</span></dd>
|
432
|
-
</dl>
|
433
|
-
</div>
|
434
|
-
<div id="div_group_23" class="example_group passed">
|
435
|
-
<dl style="margin-left: 60px;">
|
436
|
-
<dt id="example_group_23" class="passed">POST #create</dt>
|
437
|
-
<script type="text/javascript">moveProgressBar('26.5');</script>
|
438
|
-
<dd class="example passed"><span class="passed_spec_name">redirects to edit path</span><span class='duration'>0.05178s</span></dd>
|
439
|
-
<script type="text/javascript">moveProgressBar('27.7');</script>
|
440
|
-
<dd class="example passed"><span class="passed_spec_name">sets only permited params</span><span class='duration'>0.05649s</span></dd>
|
441
|
-
</dl>
|
442
|
-
</div>
|
443
|
-
<div id="div_group_24" class="example_group passed">
|
444
|
-
<dl style="margin-left: 60px;">
|
445
|
-
<dt id="example_group_24" class="passed">PUT #update</dt>
|
446
|
-
<script type="text/javascript">moveProgressBar('28.9');</script>
|
447
|
-
<dd class="example passed"><span class="passed_spec_name">sets only permited params</span><span class='duration'>0.05057s</span></dd>
|
448
|
-
</dl>
|
449
|
-
</div>
|
450
|
-
<div id="div_group_25" class="example_group passed">
|
451
|
-
<dl style="margin-left: 60px;">
|
452
|
-
<dt id="example_group_25" class="passed">GET #new</dt>
|
453
|
-
<script type="text/javascript">moveProgressBar('30.1');</script>
|
454
|
-
<dd class="example passed"><span class="passed_spec_name">returns success status</span><span class='duration'>0.07341s</span></dd>
|
455
|
-
</dl>
|
456
|
-
</div>
|
457
|
-
<div id="div_group_26" class="example_group passed">
|
458
|
-
<dl style="margin-left: 60px;">
|
459
|
-
<dt id="example_group_26" class="passed">GET #index</dt>
|
460
|
-
<script type="text/javascript">moveProgressBar('31.3');</script>
|
461
|
-
<dd class="example passed"><span class="passed_spec_name">index returns success</span><span class='duration'>0.05013s</span></dd>
|
462
|
-
<script type="text/javascript">moveProgressBar('32.5');</script>
|
463
|
-
<dd class="example passed"><span class="passed_spec_name">assigns posts</span><span class='duration'>0.04941s</span></dd>
|
464
|
-
</dl>
|
465
|
-
</div>
|
466
|
-
<div id="div_group_27" class="example_group passed">
|
467
|
-
<dl style="margin-left: 60px;">
|
468
|
-
<dt id="example_group_27" class="passed">GET #edit</dt>
|
469
|
-
<script type="text/javascript">moveProgressBar('33.7');</script>
|
470
|
-
<dd class="example passed"><span class="passed_spec_name">returns success status</span><span class='duration'>0.06116s</span></dd>
|
471
|
-
</dl>
|
472
|
-
</div>
|
473
|
-
<div id="div_group_28" class="example_group passed">
|
474
|
-
<dl style="margin-left: 60px;">
|
475
|
-
<dt id="example_group_28" class="passed">DELETE #destroy</dt>
|
476
|
-
<script type="text/javascript">moveProgressBar('34.9');</script>
|
477
|
-
<dd class="example passed"><span class="passed_spec_name">destroys item</span><span class='duration'>0.05277s</span></dd>
|
478
|
-
</dl>
|
479
|
-
</div>
|
480
|
-
<div id="div_group_29" class="example_group passed">
|
481
|
-
<dl style="margin-left: 30px;">
|
482
|
-
<dt id="example_group_29" class="passed">permited all with block</dt>
|
483
|
-
</dl>
|
484
|
-
</div>
|
485
|
-
<div id="div_group_30" class="example_group passed">
|
486
|
-
<dl style="margin-left: 45px;">
|
487
|
-
<dt id="example_group_30" class="passed">actions</dt>
|
488
|
-
</dl>
|
489
|
-
</div>
|
490
|
-
<div id="div_group_31" class="example_group passed">
|
491
|
-
<dl style="margin-left: 60px;">
|
492
|
-
<dt id="example_group_31" class="passed">POST #create</dt>
|
493
|
-
<script type="text/javascript">moveProgressBar('36.1');</script>
|
494
|
-
<dd class="example passed"><span class="passed_spec_name">sets only permited params</span><span class='duration'>0.05593s</span></dd>
|
495
|
-
</dl>
|
496
|
-
</div>
|
497
|
-
<div id="div_group_32" class="example_group passed">
|
498
|
-
<dl style="margin-left: 30px;">
|
499
|
-
<dt id="example_group_32" class="passed">no permited params</dt>
|
500
|
-
</dl>
|
501
|
-
</div>
|
502
|
-
<div id="div_group_33" class="example_group passed">
|
503
|
-
<dl style="margin-left: 45px;">
|
504
|
-
<dt id="example_group_33" class="passed">actions</dt>
|
505
|
-
</dl>
|
506
|
-
</div>
|
507
|
-
<div id="div_group_34" class="example_group passed">
|
508
|
-
<dl style="margin-left: 60px;">
|
509
|
-
<dt id="example_group_34" class="passed">POST #create</dt>
|
510
|
-
<script type="text/javascript">moveProgressBar('37.3');</script>
|
511
|
-
<dd class="example passed"><span class="passed_spec_name">sets only permited params</span><span class='duration'>0.05463s</span></dd>
|
512
|
-
<script type="text/javascript">moveProgressBar('38.5');</script>
|
513
|
-
<dd class="example passed"><span class="passed_spec_name">warns developer</span><span class='duration'>0.05039s</span></dd>
|
514
|
-
</dl>
|
515
|
-
</div>
|
516
|
-
<div id="div_group_35" class="example_group passed">
|
517
|
-
<dl style="margin-left: 0px;">
|
518
|
-
<dt id="example_group_35" class="passed">#<ActionDispatch::Routing::RouteSet:0x007fd9e5073430></dt>
|
519
|
-
</dl>
|
520
|
-
</div>
|
521
|
-
<div id="div_group_36" class="example_group passed">
|
522
|
-
<dl style="margin-left: 15px;">
|
523
|
-
<dt id="example_group_36" class="passed">#weeler_resources</dt>
|
524
|
-
<script type="text/javascript">moveProgressBar('39.7');</script>
|
525
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource destroy route</span><span class='duration'>0.04838s</span></dd>
|
526
|
-
<script type="text/javascript">moveProgressBar('40.9');</script>
|
527
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource create route</span><span class='duration'>0.04047s</span></dd>
|
528
|
-
<script type="text/javascript">moveProgressBar('42.1');</script>
|
529
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource edit route</span><span class='duration'>0.04458s</span></dd>
|
530
|
-
<script type="text/javascript">moveProgressBar('43.3');</script>
|
531
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource show route</span><span class='duration'>0.04252s</span></dd>
|
532
|
-
<script type="text/javascript">moveProgressBar('44.5');</script>
|
533
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resources index route</span><span class='duration'>0.04348s</span></dd>
|
534
|
-
<script type="text/javascript">moveProgressBar('45.7');</script>
|
535
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource new route</span><span class='duration'>0.04880s</span></dd>
|
536
|
-
<script type="text/javascript">moveProgressBar('46.9');</script>
|
537
|
-
<dd class="example passed"><span class="passed_spec_name">mounts resource update route</span><span class='duration'>0.03990s</span></dd>
|
538
|
-
</dl>
|
539
|
-
</div>
|
540
|
-
<div id="div_group_37" class="example_group passed">
|
541
|
-
<dl style="margin-left: 30px;">
|
542
|
-
<dt id="example_group_37" class="passed">when destroy route is skiped within with only: option</dt>
|
543
|
-
<script type="text/javascript">moveProgressBar('48.1');</script>
|
544
|
-
<dd class="example passed"><span class="passed_spec_name">does not mount destroy confirm route</span><span class='duration'>0.06545s</span></dd>
|
545
|
-
</dl>
|
546
|
-
</div>
|
547
|
-
<div id="div_group_38" class="example_group passed">
|
548
|
-
<dl style="margin-left: 30px;">
|
549
|
-
<dt id="example_group_38" class="passed">when custom block given</dt>
|
550
|
-
<script type="text/javascript">moveProgressBar('49.3');</script>
|
551
|
-
<dd class="example passed"><span class="passed_spec_name">calls it within resources method</span><span class='duration'>0.06077s</span></dd>
|
552
|
-
</dl>
|
553
|
-
</div>
|
554
|
-
<div id="div_group_39" class="example_group passed">
|
555
|
-
<dl style="margin-left: 15px;">
|
556
|
-
<dt id="example_group_39" class="passed">#mount Weeler::Engine</dt>
|
557
|
-
<script type="text/javascript">moveProgressBar('50.6');</script>
|
558
|
-
<dd class="example passed"><span class="passed_spec_name">/weeler returns home</span><span class='duration'>0.03856s</span></dd>
|
559
|
-
</dl>
|
560
|
-
</div>
|
561
|
-
<div id="div_group_40" class="example_group passed">
|
562
|
-
<dl style="margin-left: 15px;">
|
563
|
-
<dt id="example_group_40" class="passed">#add_menu_item</dt>
|
564
|
-
<script type="text/javascript">moveProgressBar('51.8');</script>
|
565
|
-
<dd class="example passed"><span class="passed_spec_name">adds resource to weeler menu item</span><span class='duration'>0.03303s</span></dd>
|
566
|
-
</dl>
|
567
|
-
</div>
|
568
|
-
<div id="div_group_41" class="example_group passed">
|
569
|
-
<dl style="margin-left: 0px;">
|
570
|
-
<dt id="example_group_41" class="passed">I18n::HumanizeMissingTranslations</dt>
|
571
|
-
</dl>
|
572
|
-
</div>
|
573
|
-
<div id="div_group_42" class="example_group passed">
|
574
|
-
<dl style="margin-left: 15px;">
|
575
|
-
<dt id="example_group_42" class="passed">.call</dt>
|
576
|
-
</dl>
|
577
|
-
</div>
|
578
|
-
<div id="div_group_43" class="example_group passed">
|
579
|
-
<dl style="margin-left: 30px;">
|
580
|
-
<dt id="example_group_43" class="passed">when exception is I18n::MissingTranslation</dt>
|
581
|
-
<script type="text/javascript">moveProgressBar('53.0');</script>
|
582
|
-
<dd class="example passed"><span class="passed_spec_name">humanizes missing translations</span><span class='duration'>0.01760s</span></dd>
|
583
|
-
</dl>
|
584
|
-
</div>
|
585
|
-
<div id="div_group_44" class="example_group passed">
|
586
|
-
<dl style="margin-left: 30px;">
|
587
|
-
<dt id="example_group_44" class="passed">when exception is not I18n::MissingTranslation</dt>
|
588
|
-
<script type="text/javascript">moveProgressBar('54.2');</script>
|
589
|
-
<dd class="example passed"><span class="passed_spec_name">does not intercept it</span><span class='duration'>0.02617s</span></dd>
|
590
|
-
</dl>
|
591
|
-
</div>
|
592
|
-
<div id="div_group_45" class="example_group passed">
|
593
|
-
<dl style="margin-left: 0px;">
|
594
|
-
<dt id="example_group_45" class="passed">Weeler::ActionView::Helpers::FormHelper</dt>
|
595
|
-
<script type="text/javascript">moveProgressBar('55.4');</script>
|
596
|
-
<dd class="example passed"><span class="passed_spec_name">creates img preview tag</span><span class='duration'>0.02510s</span></dd>
|
597
|
-
<script type="text/javascript">moveProgressBar('56.6');</script>
|
598
|
-
<dd class="example passed"><span class="passed_spec_name">create file field</span><span class='duration'>0.01413s</span></dd>
|
599
|
-
<script type="text/javascript">moveProgressBar('57.8');</script>
|
600
|
-
<dd class="example passed"><span class="passed_spec_name">creates a label</span><span class='duration'>0.01307s</span></dd>
|
601
|
-
</dl>
|
602
|
-
</div>
|
603
|
-
<div id="div_group_46" class="example_group passed">
|
604
|
-
<dl style="margin-left: 0px;">
|
605
|
-
<dt id="example_group_46" class="passed">I18n::Backend::Weeler::Importer</dt>
|
606
|
-
</dl>
|
607
|
-
</div>
|
608
|
-
<div id="div_group_47" class="example_group passed">
|
609
|
-
<dl style="margin-left: 15px;">
|
610
|
-
<dt id="example_group_47" class="passed">import</dt>
|
611
|
-
</dl>
|
612
|
-
</div>
|
613
|
-
<div id="div_group_48" class="example_group passed">
|
614
|
-
<dl style="margin-left: 30px;">
|
615
|
-
<dt id="example_group_48" class="passed">empty db</dt>
|
616
|
-
<script type="text/javascript">moveProgressBar('59.0');</script>
|
617
|
-
<dd class="example passed"><span class="passed_spec_name">returns nil if value is not file</span><span class='duration'>0.20385s</span></dd>
|
618
|
-
<script type="text/javascript">moveProgressBar('60.2');</script>
|
619
|
-
<dd class="example passed"><span class="passed_spec_name">translation stores all translation in each locale</span><span class='duration'>0.21122s</span></dd>
|
620
|
-
<script type="text/javascript">moveProgressBar('61.4');</script>
|
621
|
-
<dd class="example passed"><span class="passed_spec_name">returns value if value is in file</span><span class='duration'>0.23474s</span></dd>
|
622
|
-
</dl>
|
623
|
-
</div>
|
624
|
-
<div id="div_group_49" class="example_group passed">
|
625
|
-
<dl style="margin-left: 30px;">
|
626
|
-
<dt id="example_group_49" class="passed">full db</dt>
|
627
|
-
<script type="text/javascript">moveProgressBar('62.6');</script>
|
628
|
-
<dd class="example passed"><span class="passed_spec_name">file import overrides value</span><span class='duration'>0.25205s</span></dd>
|
629
|
-
</dl>
|
630
|
-
</div>
|
631
|
-
<div id="div_group_50" class="example_group passed">
|
632
|
-
<dl style="margin-left: 0px;">
|
633
|
-
<dt id="example_group_50" class="passed">Weeler::ActionView::Helpers::TranslationHelper</dt>
|
634
|
-
<script type="text/javascript">moveProgressBar('63.8');</script>
|
635
|
-
<dd class="example passed"><span class="passed_spec_name">dont renders key</span><span class='duration'>0.01624s</span></dd>
|
636
|
-
</dl>
|
637
|
-
</div>
|
638
|
-
<div id="div_group_51" class="example_group passed">
|
639
|
-
<dl style="margin-left: 0px;">
|
640
|
-
<dt id="example_group_51" class="passed">I18n::Backend::Weeler</dt>
|
641
|
-
</dl>
|
642
|
-
</div>
|
643
|
-
<div id="div_group_52" class="example_group passed">
|
644
|
-
<dl style="margin-left: 15px;">
|
645
|
-
<dt id="example_group_52" class="passed">#store_translations</dt>
|
646
|
-
<script type="text/javascript">moveProgressBar('65.0');</script>
|
647
|
-
<dd class="example passed"><span class="passed_spec_name">can store translations with keys that are translations containing special chars</span><span class='duration'>0.01758s</span></dd>
|
648
|
-
<script type="text/javascript">moveProgressBar('66.2');</script>
|
649
|
-
<dd class="example passed"><span class="passed_spec_name">store_translations does not allow ambiguous keys (1)</span><span class='duration'>0.03392s</span></dd>
|
650
|
-
<script type="text/javascript">moveProgressBar('67.4');</script>
|
651
|
-
<dd class="example passed"><span class="passed_spec_name">store_translations does not allow ambiguous keys (2)</span><span class='duration'>0.03034s</span></dd>
|
652
|
-
</dl>
|
653
|
-
</div>
|
654
|
-
<div id="div_group_53" class="example_group passed">
|
655
|
-
<dl style="margin-left: 15px;">
|
656
|
-
<dt id="example_group_53" class="passed">groups</dt>
|
657
|
-
<script type="text/javascript">moveProgressBar('68.6');</script>
|
658
|
-
<dd class="example passed"><span class="passed_spec_name">returns 2 groups</span><span class='duration'>0.00869s</span></dd>
|
659
|
-
<script type="text/javascript">moveProgressBar('69.8');</script>
|
660
|
-
<dd class="example passed"><span class="passed_spec_name">returns ordered list</span><span class='duration'>0.00789s</span></dd>
|
661
|
-
</dl>
|
662
|
-
</div>
|
663
|
-
<div id="div_group_54" class="example_group passed">
|
664
|
-
<dl style="margin-left: 15px;">
|
665
|
-
<dt id="example_group_54" class="passed">#reload_cache</dt>
|
666
|
-
<script type="text/javascript">moveProgressBar('71.0');</script>
|
667
|
-
<dd class="example passed"><span class="passed_spec_name">loads all translated data to cache</span><span class='duration'>0.02609s</span></dd>
|
668
|
-
<script type="text/javascript">moveProgressBar('72.2');</script>
|
669
|
-
<dd class="example passed"><span class="passed_spec_name">clears translations cache</span><span class='duration'>0.00846s</span></dd>
|
670
|
-
<script type="text/javascript">moveProgressBar('73.4');</script>
|
671
|
-
<dd class="example passed"><span class="passed_spec_name">writes last translations update timestamp to cache</span><span class='duration'>0.01427s</span></dd>
|
672
|
-
</dl>
|
673
|
-
</div>
|
674
|
-
<div id="div_group_55" class="example_group passed">
|
675
|
-
<dl style="margin-left: 15px;">
|
676
|
-
<dt id="example_group_55" class="passed">#value</dt>
|
677
|
-
<script type="text/javascript">moveProgressBar('74.6');</script>
|
678
|
-
<dd class="example passed"><span class="passed_spec_name">returns boolean if translation boolean</span><span class='duration'>0.02133s</span></dd>
|
679
|
-
<script type="text/javascript">moveProgressBar('75.9');</script>
|
680
|
-
<dd class="example passed"><span class="passed_spec_name">runs kernel if translation is_proc</span><span class='duration'>0.01404s</span></dd>
|
681
|
-
</dl>
|
682
|
-
</div>
|
683
|
-
<div id="div_group_56" class="example_group passed">
|
684
|
-
<dl style="margin-left: 15px;">
|
685
|
-
<dt id="example_group_56" class="passed">#lookup</dt>
|
686
|
-
<script type="text/javascript">moveProgressBar('77.1');</script>
|
687
|
-
<dd class="example passed"><span class="passed_spec_name">show warning</span><span class='duration'>0.00731s</span></dd>
|
688
|
-
<script type="text/javascript">moveProgressBar('78.3');</script>
|
689
|
-
<dd class="example passed"><span class="passed_spec_name">returns translation</span><span class='duration'>0.01563s</span></dd>
|
690
|
-
</dl>
|
691
|
-
</div>
|
692
|
-
<div id="div_group_57" class="example_group passed">
|
693
|
-
<dl style="margin-left: 30px;">
|
694
|
-
<dt id="example_group_57" class="passed">cache</dt>
|
695
|
-
</dl>
|
696
|
-
</div>
|
697
|
-
<div id="div_group_58" class="example_group passed">
|
698
|
-
<dl style="margin-left: 45px;">
|
699
|
-
<dt id="example_group_58" class="passed">differs from settings timestamp</dt>
|
700
|
-
<script type="text/javascript">moveProgressBar('79.5');</script>
|
701
|
-
<dd class="example passed"><span class="passed_spec_name">reloads cache</span><span class='duration'>0.02136s</span></dd>
|
702
|
-
</dl>
|
703
|
-
</div>
|
704
|
-
<div id="div_group_59" class="example_group passed">
|
705
|
-
<dl style="margin-left: 45px;">
|
706
|
-
<dt id="example_group_59" class="passed">is same as updates timestamp</dt>
|
707
|
-
<script type="text/javascript">moveProgressBar('80.7');</script>
|
708
|
-
<dd class="example passed"><span class="passed_spec_name">does not reload cache</span><span class='duration'>0.01490s</span></dd>
|
709
|
-
</dl>
|
710
|
-
</div>
|
711
|
-
<div id="div_group_60" class="example_group passed">
|
712
|
-
<dl style="margin-left: 30px;">
|
713
|
-
<dt id="example_group_60" class="passed">missing translations</dt>
|
714
|
-
<script type="text/javascript">moveProgressBar('81.9');</script>
|
715
|
-
<dd class="example passed"><span class="passed_spec_name">creates a stub per pluralization when a custom separator is used</span><span class='duration'>0.03016s</span></dd>
|
716
|
-
<script type="text/javascript">moveProgressBar('83.1');</script>
|
717
|
-
<dd class="example passed"><span class="passed_spec_name">creates one stub per pluralization</span><span class='duration'>0.02424s</span></dd>
|
718
|
-
<script type="text/javascript">moveProgressBar('84.3');</script>
|
719
|
-
<dd class="example passed"><span class="passed_spec_name">lookup does not persist the key twice</span><span class='duration'>0.02052s</span></dd>
|
720
|
-
<script type="text/javascript">moveProgressBar('85.5');</script>
|
721
|
-
<dd class="example passed"><span class="passed_spec_name">creates a stub when a custom separator is used and the key contains the flatten separator (a dot character)</span><span class='duration'>0.02182s</span></dd>
|
722
|
-
<script type="text/javascript">moveProgressBar('86.7');</script>
|
723
|
-
<dd class="example passed"><span class="passed_spec_name">creates no stub for base key in pluralization</span><span class='duration'>0.03195s</span></dd>
|
724
|
-
<script type="text/javascript">moveProgressBar('87.9');</script>
|
725
|
-
<dd class="example passed"><span class="passed_spec_name">persists the key</span><span class='duration'>0.02231s</span></dd>
|
726
|
-
<script type="text/javascript">moveProgressBar('89.1');</script>
|
727
|
-
<dd class="example passed"><span class="passed_spec_name">lookup persists interpolation keys when looked up directly</span><span class='duration'>0.01723s</span></dd>
|
728
|
-
<script type="text/javascript">moveProgressBar('90.3');</script>
|
729
|
-
<dd class="example passed"><span class="passed_spec_name">creates a stub when a custom separator is used</span><span class='duration'>0.02281s</span></dd>
|
730
|
-
</dl>
|
731
|
-
</div>
|
732
|
-
<div id="div_group_61" class="example_group passed">
|
733
|
-
<dl style="margin-left: 45px;">
|
734
|
-
<dt id="example_group_61" class="passed">exist in yml</dt>
|
735
|
-
</dl>
|
736
|
-
</div>
|
737
|
-
<div id="div_group_62" class="example_group passed">
|
738
|
-
<dl style="margin-left: 60px;">
|
739
|
-
<dt id="example_group_62" class="passed">new translation</dt>
|
740
|
-
<script type="text/javascript">moveProgressBar('91.5');</script>
|
741
|
-
<dd class="example passed"><span class="passed_spec_name">persist it</span><span class='duration'>0.02194s</span></dd>
|
742
|
-
</dl>
|
743
|
-
</div>
|
744
|
-
<div id="div_group_63" class="example_group passed">
|
745
|
-
<dl style="margin-left: 60px;">
|
746
|
-
<dt id="example_group_63" class="passed">already stored</dt>
|
747
|
-
<script type="text/javascript">moveProgressBar('92.7');</script>
|
748
|
-
<dd class="example passed"><span class="passed_spec_name">saves the fallback backend value</span><span class='duration'>0.01834s</span></dd>
|
749
|
-
</dl>
|
750
|
-
</div>
|
751
|
-
<div id="div_group_64" class="example_group passed">
|
752
|
-
<dl style="margin-left: 15px;">
|
753
|
-
<dt id="example_group_64" class="passed">#html?</dt>
|
754
|
-
<script type="text/javascript">moveProgressBar('93.9');</script>
|
755
|
-
<dd class="example passed"><span class="passed_spec_name">is false if value not contains html</span><span class='duration'>0.01682s</span></dd>
|
756
|
-
<script type="text/javascript">moveProgressBar('95.1');</script>
|
757
|
-
<dd class="example passed"><span class="passed_spec_name">is true if key is html</span><span class='duration'>0.00709s</span></dd>
|
758
|
-
<script type="text/javascript">moveProgressBar('96.3');</script>
|
759
|
-
<dd class="example passed"><span class="passed_spec_name">is true if value contains html</span><span class='duration'>0.00682s</span></dd>
|
760
|
-
</dl>
|
761
|
-
</div>
|
762
|
-
<div id="div_group_65" class="example_group passed">
|
763
|
-
<dl style="margin-left: 15px;">
|
764
|
-
<dt id="example_group_65" class="passed">#interpolations</dt>
|
765
|
-
<script type="text/javascript">moveProgressBar('97.5');</script>
|
766
|
-
<dd class="example passed"><span class="passed_spec_name">can persist</span><span class='duration'>0.01811s</span></dd>
|
767
|
-
</dl>
|
768
|
-
</div>
|
769
|
-
<div id="div_group_66" class="example_group passed">
|
770
|
-
<dl style="margin-left: 15px;">
|
771
|
-
<dt id="example_group_66" class="passed">#available_locales</dt>
|
772
|
-
<script type="text/javascript">moveProgressBar('98.7');</script>
|
773
|
-
<dd class="example passed"><span class="passed_spec_name">finds one locale</span><span class='duration'>0.00823s</span></dd>
|
774
|
-
</dl>
|
775
|
-
</div>
|
776
|
-
<div id="div_group_67" class="example_group passed">
|
777
|
-
<dl style="margin-left: 0px;">
|
778
|
-
<dt id="example_group_67" class="passed">I18n::Backend::Weeler::Dedupe</dt>
|
779
|
-
</dl>
|
780
|
-
</div>
|
781
|
-
<div id="div_group_68" class="example_group passed">
|
782
|
-
<dl style="margin-left: 15px;">
|
783
|
-
<dt id="example_group_68" class="passed">#dedupe</dt>
|
784
|
-
</dl>
|
785
|
-
</div>
|
786
|
-
<div id="div_group_69" class="example_group passed">
|
787
|
-
<dl style="margin-left: 30px;">
|
788
|
-
<dt id="example_group_69" class="passed">empty db</dt>
|
789
|
-
<script type="text/javascript">moveProgressBar('100.0');</script>
|
790
|
-
<dd class="example passed"><span class="passed_spec_name">translation stores all translation in each locale</span><span class='duration'>0.14833s</span></dd>
|
791
|
-
</dl>
|
792
|
-
</div>
|
793
|
-
<script type="text/javascript">document.getElementById('duration').innerHTML = "Finished in <strong>4.36667 seconds</strong>";</script>
|
794
|
-
<script type="text/javascript">document.getElementById('totals').innerHTML = "83 examples, 0 failures";</script>
|
795
|
-
</div>
|
796
|
-
</div>
|
797
|
-
</body>
|
798
|
-
</html>
|