rails3-jquery-autocomplete 1.0.6 → 1.0.7
Sign up to get free protection for your applications and to get access to all the features.
- data/README.md +22 -1
- data/lib/assets/javascripts/autocomplete-rails.js +1 -1
- data/lib/rails3-jquery-autocomplete/simple_form_plugin.rb +16 -4
- data/lib/rails3-jquery-autocomplete/version.rb +1 -1
- data/test/lib/rails3-jquery-autocomplete/simple_form_plugin_test.rb +33 -0
- data/test/test_helper.rb +5 -0
- data/test/view_test_helper.rb +108 -0
- metadata +85 -20
data/README.md
CHANGED
@@ -1,5 +1,7 @@
|
|
1
1
|
# rails3-jquery-autocomplete
|
2
2
|
|
3
|
+
[![Build Status](https://secure.travis-ci.org/crowdint/rails3-jquery-autocomplete.png)](http://travis-ci.org/crowdint/rails3-jquery-autocomplete)
|
4
|
+
|
3
5
|
An easy way to use jQuery's autocomplete with Rails 3.
|
4
6
|
|
5
7
|
Supports both ActiveRecord, [mongoid](http://github.com/mongoid/mongoid), and [MongoMapper](https://github.com/jnunemaker/mongomapper).
|
@@ -316,10 +318,18 @@ And then, install all your dependencies:
|
|
316
318
|
|
317
319
|
## Running the test suite
|
318
320
|
|
319
|
-
You need to have an instance of MongoDB running on your computer or all the mongo tests will fail miserably
|
321
|
+
<strike>You need to have an instance of MongoDB running on your computer or all the mongo tests will fail miserably.</strike>
|
322
|
+
|
323
|
+
To run all the tests once, simply use
|
320
324
|
|
321
325
|
rake test
|
322
326
|
|
327
|
+
while you're developing, it is recommended that you run
|
328
|
+
|
329
|
+
bundle exec guard
|
330
|
+
|
331
|
+
to have the relevent test run every time you save a file.
|
332
|
+
|
323
333
|
## Integration tests
|
324
334
|
|
325
335
|
If you make changes or add features to the jQuery part, please make sure
|
@@ -334,6 +344,17 @@ integration folder:
|
|
334
344
|
rake db:migrate
|
335
345
|
cucumber
|
336
346
|
|
347
|
+
## Where to test what
|
348
|
+
|
349
|
+
If you're making or tweaking a plugin (such as the formastic plugin or
|
350
|
+
simple\_form plugin), check out the simple\_form\_plugin\_test for an
|
351
|
+
example of how to test it as part of the main `rake test` run.
|
352
|
+
Historically, plugins like these had been tested (shoddily) as part of
|
353
|
+
the integration tests. Feel free to remove them from the integration
|
354
|
+
suite and move them into the main suite. Your tests will run much
|
355
|
+
faster, and there will be less likelihood of your feature breaking in
|
356
|
+
the future. Thanks!
|
357
|
+
|
337
358
|
# Thanks to
|
338
359
|
|
339
360
|
Everyone on [this list](https://github.com/crowdint/rails3-jquery-autocomplete/contributors)
|
@@ -13,4 +13,4 @@
|
|
13
13
|
* Example:
|
14
14
|
* <input type="text" data-autocomplete="/url/to/autocomplete" data-id-element="#id_field">
|
15
15
|
*/
|
16
|
-
(function(a){var b=null;a.fn.railsAutocomplete=function(){return this.live("focus",function(){this.railsAutoCompleter||(this.railsAutoCompleter=new a.railsAutocomplete(this))})},a.railsAutocomplete=function(a){_e=a,this.init(_e)},a.railsAutocomplete.fn=a.railsAutocomplete.prototype={railsAutocomplete:"0.0.1"},a.railsAutocomplete.fn.extend=a.railsAutocomplete.extend=a.extend,a.railsAutocomplete.fn.extend({init:function(b){function c(a){return a.split(b.delimiter)}function d(a){return c(a).pop().replace(/^\s+/,"")}b.delimiter=a(b).attr("data-delimiter")||null,a(b).autocomplete({source:function(c,f){a.getJSON(a(b).attr("data-autocomplete"),{term:d(c.term)},function(){a(arguments[0]).each(function(c,d){var f={};f[d.id]=d,a(b).data(f)}),f.apply(null,arguments)})},search:function(){var a=d(this.value);if(a.length<2)return!1},focus:function(){return!1},select:function(d,f){var g=c(this.value);g.pop(),g.push(f.item.value);if(b.delimiter!=null)g.push(""),this.value=g.join(b.delimiter);else{this.value=g.join(""),a(this).attr("data-id-element")&&a(a(this).attr("data-id-element")).val(f.item.id);if(a(this).attr("data-update-elements")){var h=a(this).data(f.item.id.toString()),i=a.parseJSON(a(this).attr("data-update-elements"));for(var j in i)a(i[j]).val(h[j])}}var k=this.value;return a(this).bind("keyup.clearId",function(){a(this).val().trim()!=k.trim()&&(a(a(this).attr("data-id-element")).val(""),a(this).unbind("keyup.clearId"))}),a(this).trigger("railsAutocomplete.select",f),!1}})}}),a(document).ready(function(){a("input[data-autocomplete]").railsAutocomplete()})})(jQuery)
|
16
|
+
(function(a){var b=null;a.fn.railsAutocomplete=function(){return this.live("focus",function(){this.railsAutoCompleter||(this.railsAutoCompleter=new a.railsAutocomplete(this))})},a.railsAutocomplete=function(a){_e=a,this.init(_e)},a.railsAutocomplete.fn=a.railsAutocomplete.prototype={railsAutocomplete:"0.0.1"},a.railsAutocomplete.fn.extend=a.railsAutocomplete.extend=a.extend,a.railsAutocomplete.fn.extend({init:function(b){function c(a){return a.split(b.delimiter)}function d(a){return c(a).pop().replace(/^\s+/,"")}b.delimiter=a(b).attr("data-delimiter")||null,a(b).autocomplete({source:function(c,f){a.getJSON(a(b).attr("data-autocomplete"),{term:d(c.term)},function(){a(arguments[0]).each(function(c,d){var f={};f[d.id]=d,a(b).data(f)}),f.apply(null,arguments)})},search:function(){var a=d(this.value);if(a.length<2)return!1},focus:function(){return!1},select:function(d,f){var g=c(this.value);g.pop(),g.push(f.item.value);if(b.delimiter!=null)g.push(""),this.value=g.join(b.delimiter);else{this.value=g.join(""),a(this).attr("data-id-element")&&a(a(this).attr("data-id-element")).val(f.item.id);if(a(this).attr("data-update-elements")){var h=a(this).data(f.item.id.toString()),i=a.parseJSON(a(this).attr("data-update-elements"));for(var j in i)a(i[j]).val(h[j])}}var k=this.value;return a(this).bind("keyup.clearId",function(){a(this).val().trim()!=k.trim()&&(a(a(this).attr("data-id-element")).val(""),a(this).unbind("keyup.clearId"))}),a(this).trigger("railsAutocomplete.select",f),!1}})}}),a(document).ready(function(){a("input[data-autocomplete]").railsAutocomplete()})})(jQuery);
|
@@ -1,8 +1,13 @@
|
|
1
1
|
module SimpleForm
|
2
|
+
|
2
3
|
module Inputs
|
3
4
|
class AutocompleteInput < Base
|
4
5
|
def input
|
5
|
-
@builder.autocomplete_field(
|
6
|
+
@builder.autocomplete_field(
|
7
|
+
attribute_name,
|
8
|
+
options[:url],
|
9
|
+
html_options
|
10
|
+
)
|
6
11
|
end
|
7
12
|
|
8
13
|
protected
|
@@ -15,15 +20,22 @@ module SimpleForm
|
|
15
20
|
placeholder_present?
|
16
21
|
end
|
17
22
|
|
23
|
+
def html_options
|
24
|
+
input_html_options.merge update_elements options[:update_elements]
|
25
|
+
end
|
26
|
+
|
18
27
|
def update_elements(elements)
|
19
|
-
|
28
|
+
if elements
|
29
|
+
{'data-update-elements' => elements.to_json}
|
30
|
+
else
|
31
|
+
{}
|
32
|
+
end
|
20
33
|
end
|
21
34
|
end
|
22
35
|
end
|
23
|
-
end
|
24
36
|
|
25
|
-
module SimpleForm
|
26
37
|
class FormBuilder
|
27
38
|
map_type :autocomplete, :to => SimpleForm::Inputs::AutocompleteInput
|
28
39
|
end
|
40
|
+
|
29
41
|
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'test_helper'
|
2
|
+
require 'view_test_helper'
|
3
|
+
|
4
|
+
module Rails3JQueryAutocomplete
|
5
|
+
class SimpleFormPluginTest < ActionView::TestCase
|
6
|
+
|
7
|
+
should "apply a class of 'autocomplete'" do
|
8
|
+
with_input_for @user, :name, :autocomplete
|
9
|
+
assert_select "input#user_name.autocomplete[type=text][name='user[name]']"
|
10
|
+
end
|
11
|
+
|
12
|
+
should "add a data-autocomplete attribute with the provided :url" do
|
13
|
+
with_input_for @user, :name, :autocomplete, :url => '/test'
|
14
|
+
assert_select "input#user_name[data-autocomplete=/test]"
|
15
|
+
end
|
16
|
+
|
17
|
+
should "add a data-update-elements attribute with encoded data if passed an :update_elements option" do
|
18
|
+
with_input_for @user, :name, :autocomplete, :update_elements => { :id => '#this', :ego => '#that' }
|
19
|
+
assert_select "input#user_name[data-update-elements='{"id":"#this","ego":"#that"}']"
|
20
|
+
end
|
21
|
+
|
22
|
+
should "not add a data-update-elements attribute if not passed an :update_elements option" do
|
23
|
+
with_input_for @user, :name, :autocomplete, :url => '/test'
|
24
|
+
assert_no_select "input#user_name[data-update-elements]"
|
25
|
+
end
|
26
|
+
|
27
|
+
should "add arbitrary html options, if specified" do
|
28
|
+
with_input_for @user, :name, :autocomplete, :input_html => { :class => "superego" }
|
29
|
+
assert_select "input#user_name.superego"
|
30
|
+
end
|
31
|
+
|
32
|
+
end
|
33
|
+
end
|
data/test/test_helper.rb
CHANGED
@@ -5,6 +5,11 @@ $LOAD_PATH.unshift(File.join(File.dirname(__FILE__), '..', 'lib'))
|
|
5
5
|
$LOAD_PATH.unshift(File.dirname(__FILE__))
|
6
6
|
|
7
7
|
ENV["RAILS_ENV"] = "test"
|
8
|
+
module Rails
|
9
|
+
def self.env
|
10
|
+
ActiveSupport::StringInquirer.new("test")
|
11
|
+
end
|
12
|
+
end
|
8
13
|
|
9
14
|
require 'rails/all'
|
10
15
|
require 'mongoid'
|
@@ -0,0 +1,108 @@
|
|
1
|
+
class User
|
2
|
+
extend ActiveModel::Naming
|
3
|
+
include ActiveModel::Conversion
|
4
|
+
|
5
|
+
attr_accessor :id, :name, :description, :created_at, :updated_at
|
6
|
+
|
7
|
+
def initialize(options={})
|
8
|
+
@new_record = false
|
9
|
+
options.each do |key, value|
|
10
|
+
send("#{key}=", value)
|
11
|
+
end if options
|
12
|
+
end
|
13
|
+
|
14
|
+
def new_record!
|
15
|
+
@new_record = true
|
16
|
+
end
|
17
|
+
|
18
|
+
def persisted?
|
19
|
+
!@new_record
|
20
|
+
end
|
21
|
+
end
|
22
|
+
|
23
|
+
class MockController
|
24
|
+
attr_writer :action_name
|
25
|
+
|
26
|
+
def _routes
|
27
|
+
self
|
28
|
+
end
|
29
|
+
|
30
|
+
def action_name
|
31
|
+
defined?(@action_name) ? @action_name : "edit"
|
32
|
+
end
|
33
|
+
|
34
|
+
def url_for(*args)
|
35
|
+
"http://example.com"
|
36
|
+
end
|
37
|
+
|
38
|
+
def url_helpers
|
39
|
+
self
|
40
|
+
end
|
41
|
+
|
42
|
+
def hash_for_user_path(*args); end
|
43
|
+
def hash_for_users_path(*args); end
|
44
|
+
end
|
45
|
+
|
46
|
+
class MockResponse
|
47
|
+
|
48
|
+
def initialize(test_case)
|
49
|
+
@test_case = test_case
|
50
|
+
end
|
51
|
+
|
52
|
+
def content_type
|
53
|
+
'text/html'
|
54
|
+
end
|
55
|
+
|
56
|
+
def body
|
57
|
+
@test_case.send :output_buffer
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
class ActionView::TestCase
|
62
|
+
include Rails3JQueryAutocomplete::Autocomplete
|
63
|
+
include SimpleForm::ActionViewExtensions::FormHelper
|
64
|
+
|
65
|
+
setup :set_controller
|
66
|
+
setup :set_response
|
67
|
+
setup :setup_new_user
|
68
|
+
|
69
|
+
def assert_no_select(selector, value = nil)
|
70
|
+
assert_select(selector, :text => value, :count => 0)
|
71
|
+
end
|
72
|
+
|
73
|
+
def with_concat_form_for(*args, &block)
|
74
|
+
concat simple_form_for(*args, &block)
|
75
|
+
end
|
76
|
+
|
77
|
+
def with_input_for(object, attribute_name, type, options={})
|
78
|
+
with_concat_form_for(object) do |f|
|
79
|
+
f.input(attribute_name, options.merge(:as => type))
|
80
|
+
end
|
81
|
+
end
|
82
|
+
|
83
|
+
def set_controller
|
84
|
+
@controller = MockController.new
|
85
|
+
end
|
86
|
+
|
87
|
+
def set_response
|
88
|
+
@response = MockResponse.new(self)
|
89
|
+
end
|
90
|
+
|
91
|
+
def setup_new_user
|
92
|
+
@user = User.new(
|
93
|
+
:id => 1,
|
94
|
+
:name => 'New in SimpleForm!',
|
95
|
+
:description => 'Hello!',
|
96
|
+
:created_at => Time.now
|
97
|
+
)
|
98
|
+
end
|
99
|
+
|
100
|
+
def protect_against_forgery?
|
101
|
+
false
|
102
|
+
end
|
103
|
+
|
104
|
+
def user_path(*args)
|
105
|
+
'/users'
|
106
|
+
end
|
107
|
+
alias :users_path :user_path
|
108
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rails3-jquery-autocomplete
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.
|
4
|
+
version: 1.0.7
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-04-18 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: rails
|
16
|
-
requirement: &
|
16
|
+
requirement: &70154298640540 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '3.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70154298640540
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: sqlite3-ruby
|
27
|
-
requirement: &
|
27
|
+
requirement: &70154298638880 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0'
|
33
33
|
type: :development
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70154298638880
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: mongoid
|
38
|
-
requirement: &
|
38
|
+
requirement: &70154298635000 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: 2.0.0
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70154298635000
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: mongo_mapper
|
49
|
-
requirement: &
|
49
|
+
requirement: &70154298653820 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,32 +54,76 @@ dependencies:
|
|
54
54
|
version: '0.9'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70154298653820
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: mongo
|
60
|
+
requirement: &70154298665520 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ~>
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: 1.6.2
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *70154298665520
|
58
69
|
- !ruby/object:Gem::Dependency
|
59
70
|
name: bson_ext
|
60
|
-
requirement: &
|
71
|
+
requirement: &70154298664280 !ruby/object:Gem::Requirement
|
61
72
|
none: false
|
62
73
|
requirements:
|
63
74
|
- - ~>
|
64
75
|
- !ruby/object:Gem::Version
|
65
|
-
version: 1.
|
76
|
+
version: 1.6.2
|
66
77
|
type: :development
|
67
78
|
prerelease: false
|
68
|
-
version_requirements: *
|
79
|
+
version_requirements: *70154298664280
|
80
|
+
- !ruby/object:Gem::Dependency
|
81
|
+
name: guard
|
82
|
+
requirement: &70154298661600 !ruby/object:Gem::Requirement
|
83
|
+
none: false
|
84
|
+
requirements:
|
85
|
+
- - ! '>='
|
86
|
+
- !ruby/object:Gem::Version
|
87
|
+
version: '0'
|
88
|
+
type: :development
|
89
|
+
prerelease: false
|
90
|
+
version_requirements: *70154298661600
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: guard-test
|
93
|
+
requirement: &70154298658700 !ruby/object:Gem::Requirement
|
94
|
+
none: false
|
95
|
+
requirements:
|
96
|
+
- - ! '>='
|
97
|
+
- !ruby/object:Gem::Version
|
98
|
+
version: '0'
|
99
|
+
type: :development
|
100
|
+
prerelease: false
|
101
|
+
version_requirements: *70154298658700
|
102
|
+
- !ruby/object:Gem::Dependency
|
103
|
+
name: test-unit
|
104
|
+
requirement: &70154298671440 !ruby/object:Gem::Requirement
|
105
|
+
none: false
|
106
|
+
requirements:
|
107
|
+
- - ~>
|
108
|
+
- !ruby/object:Gem::Version
|
109
|
+
version: 2.2.0
|
110
|
+
type: :development
|
111
|
+
prerelease: false
|
112
|
+
version_requirements: *70154298671440
|
69
113
|
- !ruby/object:Gem::Dependency
|
70
114
|
name: shoulda
|
71
|
-
requirement: &
|
115
|
+
requirement: &70154298668460 !ruby/object:Gem::Requirement
|
72
116
|
none: false
|
73
117
|
requirements:
|
74
118
|
- - ~>
|
75
119
|
- !ruby/object:Gem::Version
|
76
|
-
version:
|
120
|
+
version: 3.0.1
|
77
121
|
type: :development
|
78
122
|
prerelease: false
|
79
|
-
version_requirements: *
|
123
|
+
version_requirements: *70154298668460
|
80
124
|
- !ruby/object:Gem::Dependency
|
81
125
|
name: uglifier
|
82
|
-
requirement: &
|
126
|
+
requirement: &70154314667660 !ruby/object:Gem::Requirement
|
83
127
|
none: false
|
84
128
|
requirements:
|
85
129
|
- - ! '>='
|
@@ -87,10 +131,10 @@ dependencies:
|
|
87
131
|
version: '0'
|
88
132
|
type: :development
|
89
133
|
prerelease: false
|
90
|
-
version_requirements: *
|
134
|
+
version_requirements: *70154314667660
|
91
135
|
- !ruby/object:Gem::Dependency
|
92
136
|
name: rr
|
93
|
-
requirement: &
|
137
|
+
requirement: &70154314666660 !ruby/object:Gem::Requirement
|
94
138
|
none: false
|
95
139
|
requirements:
|
96
140
|
- - ! '>='
|
@@ -98,7 +142,18 @@ dependencies:
|
|
98
142
|
version: '0'
|
99
143
|
type: :development
|
100
144
|
prerelease: false
|
101
|
-
version_requirements: *
|
145
|
+
version_requirements: *70154314666660
|
146
|
+
- !ruby/object:Gem::Dependency
|
147
|
+
name: simple_form
|
148
|
+
requirement: &70154314664920 !ruby/object:Gem::Requirement
|
149
|
+
none: false
|
150
|
+
requirements:
|
151
|
+
- - ~>
|
152
|
+
- !ruby/object:Gem::Version
|
153
|
+
version: '1.5'
|
154
|
+
type: :development
|
155
|
+
prerelease: false
|
156
|
+
version_requirements: *70154314664920
|
102
157
|
description: Use jQuery's autocomplete plugin with Rails 3.
|
103
158
|
email: david.padilla@crowdint.com
|
104
159
|
executables: []
|
@@ -134,8 +189,10 @@ files:
|
|
134
189
|
- test/lib/rails3-jquery-autocomplete/orm/active_record_test.rb
|
135
190
|
- test/lib/rails3-jquery-autocomplete/orm/mongo_mapper_test.rb
|
136
191
|
- test/lib/rails3-jquery-autocomplete/orm/mongoid_test.rb
|
192
|
+
- test/lib/rails3-jquery-autocomplete/simple_form_plugin_test.rb
|
137
193
|
- test/lib/rails3-jquery-autocomplete_test.rb
|
138
194
|
- test/test_helper.rb
|
195
|
+
- test/view_test_helper.rb
|
139
196
|
homepage: http://github.com/crowdint/rails3-jquery-autocomplete
|
140
197
|
licenses: []
|
141
198
|
post_install_message:
|
@@ -148,12 +205,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
148
205
|
- - ! '>='
|
149
206
|
- !ruby/object:Gem::Version
|
150
207
|
version: '0'
|
208
|
+
segments:
|
209
|
+
- 0
|
210
|
+
hash: -2709210459065488220
|
151
211
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
152
212
|
none: false
|
153
213
|
requirements:
|
154
214
|
- - ! '>='
|
155
215
|
- !ruby/object:Gem::Version
|
156
216
|
version: '0'
|
217
|
+
segments:
|
218
|
+
- 0
|
219
|
+
hash: -2709210459065488220
|
157
220
|
requirements: []
|
158
221
|
rubyforge_project:
|
159
222
|
rubygems_version: 1.8.11
|
@@ -168,5 +231,7 @@ test_files:
|
|
168
231
|
- test/lib/rails3-jquery-autocomplete/orm/active_record_test.rb
|
169
232
|
- test/lib/rails3-jquery-autocomplete/orm/mongo_mapper_test.rb
|
170
233
|
- test/lib/rails3-jquery-autocomplete/orm/mongoid_test.rb
|
234
|
+
- test/lib/rails3-jquery-autocomplete/simple_form_plugin_test.rb
|
171
235
|
- test/lib/rails3-jquery-autocomplete_test.rb
|
172
236
|
- test/test_helper.rb
|
237
|
+
- test/view_test_helper.rb
|