sprsquish-order_fu 0.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.
- data/VERSION.yml +4 -0
- data/lib/order_fu.rb +62 -0
- data/spec/database.yml +18 -0
- data/spec/debug.log +378 -0
- data/spec/order_fu_spec.rb +58 -0
- data/spec/schema.rb +5 -0
- data/spec/spec.opts +7 -0
- data/spec/spec_helper.rb +24 -0
- metadata +61 -0
data/VERSION.yml
ADDED
data/lib/order_fu.rb
ADDED
@@ -0,0 +1,62 @@
|
|
1
|
+
module OrderFu
|
2
|
+
class AttributeOrder
|
3
|
+
attr_accessor :attribute_name, :order_direction
|
4
|
+
|
5
|
+
def initialize(attribute_name, order_direction)
|
6
|
+
@attribute_name, @order_direction = attribute_name, order_direction
|
7
|
+
end
|
8
|
+
|
9
|
+
def to_s
|
10
|
+
"#{@attribute_name} #{@order_direction.to_s.upcase}"
|
11
|
+
end
|
12
|
+
|
13
|
+
def <=>(other)
|
14
|
+
[self.order_direction.to_s, self.attribute_name.to_s] <=> [other.order_direction.to_s, other.attribute_name.to_s]
|
15
|
+
end
|
16
|
+
|
17
|
+
def ==(other)
|
18
|
+
(self <=> other) == 0
|
19
|
+
end
|
20
|
+
|
21
|
+
def eql?(other)
|
22
|
+
self.hash == other.hash
|
23
|
+
end
|
24
|
+
|
25
|
+
def hash
|
26
|
+
["AttributeOrder", self.order_direction.to_s, self.attribute_name.to_s].hash
|
27
|
+
end
|
28
|
+
end
|
29
|
+
|
30
|
+
# ActiveRecord Extention
|
31
|
+
module ActiveRecordExtentions
|
32
|
+
def add_order_with_order_fu!(sql, order, scope = :auto)
|
33
|
+
order = build_order(order)
|
34
|
+
|
35
|
+
scope = scope(:find) if :auto == scope
|
36
|
+
scoped_order = build_order(scope[:order]) if scope
|
37
|
+
|
38
|
+
if order
|
39
|
+
sql << " ORDER BY #{order}"
|
40
|
+
sql << ", #{scoped_order}" if scoped_order
|
41
|
+
else
|
42
|
+
sql << " ORDER BY #{scoped_order}" if scoped_order
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def build_order(order)
|
47
|
+
case order
|
48
|
+
when AttributeOrder then order.to_s
|
49
|
+
when Array then order.map { |o| o.to_s } * ','
|
50
|
+
else order
|
51
|
+
end
|
52
|
+
end
|
53
|
+
end
|
54
|
+
|
55
|
+
module SymbolExtensions
|
56
|
+
[ :asc, :desc ].each do |order_direction|
|
57
|
+
define_method(order_direction) do
|
58
|
+
AttributeOrder.new(self, order_direction)
|
59
|
+
end
|
60
|
+
end
|
61
|
+
end
|
62
|
+
end
|
data/spec/database.yml
ADDED
@@ -0,0 +1,18 @@
|
|
1
|
+
sqlite:
|
2
|
+
:adapter: sqlite
|
3
|
+
:dbfile: plugin.sqlite.db
|
4
|
+
sqlite3:
|
5
|
+
:adapter: sqlite3
|
6
|
+
:dbfile: ":memory:"
|
7
|
+
postgresql:
|
8
|
+
:adapter: postgresql
|
9
|
+
:username: postgres
|
10
|
+
:password: postgres
|
11
|
+
:database: plugin_test
|
12
|
+
:min_messages: ERROR
|
13
|
+
mysql:
|
14
|
+
:adapter: mysql
|
15
|
+
:host: localhost
|
16
|
+
:username: rails
|
17
|
+
:password:
|
18
|
+
:database: plugin_test
|
data/spec/debug.log
ADDED
@@ -0,0 +1,378 @@
|
|
1
|
+
# Logfile created on Sat Sep 13 16:13:28 -0700 2008 by /
|
2
|
+
[4;36;1mSQL (17.9ms)[0m [0;1mselect sqlite_version(*)[0m
|
3
|
+
[4;35;1mSQL (0.6ms)[0m [0mCREATE TABLE "things" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
4
|
+
[4;36;1mSQL (0.3ms)[0m [0;1m SELECT name
|
5
|
+
FROM sqlite_master
|
6
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
7
|
+
[0m
|
8
|
+
[4;35;1mSQL (0.2ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
9
|
+
[4;36;1mSQL (0.3ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
10
|
+
[4;35;1mSQL (0.3ms)[0m [0m SELECT name
|
11
|
+
FROM sqlite_master
|
12
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
13
|
+
[0m
|
14
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
15
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
16
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
17
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "things" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
18
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
19
|
+
FROM sqlite_master
|
20
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
21
|
+
[0m
|
22
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
23
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
24
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
25
|
+
FROM sqlite_master
|
26
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
27
|
+
[0m
|
28
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
29
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
30
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
31
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "people" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
32
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
33
|
+
FROM sqlite_master
|
34
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
35
|
+
[0m
|
36
|
+
[4;35;1mSQL (0.2ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
37
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
38
|
+
[4;35;1mSQL (0.2ms)[0m [0m SELECT name
|
39
|
+
FROM sqlite_master
|
40
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
41
|
+
[0m
|
42
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
43
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
44
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
45
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
46
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
47
|
+
FROM sqlite_master
|
48
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
49
|
+
[0m
|
50
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
51
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
52
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
53
|
+
FROM sqlite_master
|
54
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
55
|
+
[0m
|
56
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
57
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
58
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
59
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
60
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
61
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
62
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
63
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
64
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
65
|
+
FROM sqlite_master
|
66
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
67
|
+
[0m
|
68
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
69
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
70
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
71
|
+
FROM sqlite_master
|
72
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
73
|
+
[0m
|
74
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
75
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
76
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
77
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
78
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
79
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
80
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
81
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
82
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
83
|
+
FROM sqlite_master
|
84
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
85
|
+
[0m
|
86
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
87
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
88
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
89
|
+
FROM sqlite_master
|
90
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
91
|
+
[0m
|
92
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
93
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
94
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
95
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
96
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
97
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
98
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
99
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
100
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
101
|
+
FROM sqlite_master
|
102
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
103
|
+
[0m
|
104
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
105
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
106
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
107
|
+
FROM sqlite_master
|
108
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
109
|
+
[0m
|
110
|
+
[4;36;1mSQL (0.0ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
111
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
112
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
113
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
114
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
115
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
116
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mselect sqlite_version(*)[0m
|
117
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
118
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
119
|
+
FROM sqlite_master
|
120
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
121
|
+
[0m
|
122
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
123
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
124
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
125
|
+
FROM sqlite_master
|
126
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
127
|
+
[0m
|
128
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
129
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
130
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
131
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
132
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
133
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
134
|
+
[4;36;1mSQL (0.0ms)[0m [0;1mSQLite3::SQLException: table "order_fu_controls" already exists: CREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
135
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
136
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
137
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
138
|
+
FROM sqlite_master
|
139
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
140
|
+
[0m
|
141
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
142
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
143
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
144
|
+
FROM sqlite_master
|
145
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
146
|
+
[0m
|
147
|
+
[4;36;1mSQL (0.0ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
148
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
149
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
150
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
151
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
152
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
153
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
154
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
155
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
156
|
+
FROM sqlite_master
|
157
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
158
|
+
[0m
|
159
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
160
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
161
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
162
|
+
FROM sqlite_master
|
163
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
164
|
+
[0m
|
165
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
166
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
167
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
168
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
169
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
170
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
171
|
+
[4;36;1mSQL (0.0ms)[0m [0;1mSQLite3::SQLException: table "order_fu_controls" already exists: CREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
172
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
173
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
174
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
175
|
+
FROM sqlite_master
|
176
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
177
|
+
[0m
|
178
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
179
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
180
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
181
|
+
FROM sqlite_master
|
182
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
183
|
+
[0m
|
184
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
185
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
186
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
187
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
188
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
189
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
190
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
191
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
192
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
193
|
+
FROM sqlite_master
|
194
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
195
|
+
[0m
|
196
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
197
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
198
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
199
|
+
FROM sqlite_master
|
200
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
201
|
+
[0m
|
202
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
203
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
204
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
205
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
206
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
207
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
208
|
+
[4;36;1mOrderFuControl Load (0.3ms)[0m [0;1mSELECT * FROM "order_fu_controls" [0m
|
209
|
+
[4;35;1mOrderFuControl Load (0.3ms)[0m [0mSELECT * FROM "order_fu_controls" [0m
|
210
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
211
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
212
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
213
|
+
FROM sqlite_master
|
214
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
215
|
+
[0m
|
216
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
217
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
218
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
219
|
+
FROM sqlite_master
|
220
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
221
|
+
[0m
|
222
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
223
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
224
|
+
[4;36;1mOrderFuControl Create (0.2ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
225
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
226
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
227
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
228
|
+
[4;36;1mOrderFuControl Load (0.3ms)[0m [0;1mSELECT * FROM "order_fu_controls" [0m
|
229
|
+
[4;35;1mOrderFuControl Load (0.2ms)[0m [0mSELECT * FROM "order_fu_controls" [0m
|
230
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
231
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
232
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
233
|
+
FROM sqlite_master
|
234
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
235
|
+
[0m
|
236
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
237
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
238
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
239
|
+
FROM sqlite_master
|
240
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
241
|
+
[0m
|
242
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
243
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
244
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
245
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
246
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
247
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
248
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
249
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
250
|
+
[4;36;1mSQL (0.3ms)[0m [0;1m SELECT name
|
251
|
+
FROM sqlite_master
|
252
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
253
|
+
[0m
|
254
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
255
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
256
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
257
|
+
FROM sqlite_master
|
258
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
259
|
+
[0m
|
260
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
261
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
262
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
263
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
264
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
265
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
266
|
+
[4;36;1mOrderFuControl Load (1.1ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY first_name DESC[0m
|
267
|
+
[4;35;1mOrderFuControl Load (0.7ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY first_name ASC[0m
|
268
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
269
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
270
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
271
|
+
FROM sqlite_master
|
272
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
273
|
+
[0m
|
274
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
275
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
276
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
277
|
+
FROM sqlite_master
|
278
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
279
|
+
[0m
|
280
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
281
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
282
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
283
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
284
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
285
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
286
|
+
[4;36;1mOrderFuControl Load (1.3ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
287
|
+
[4;35;1mOrderFuControl Load (0.8ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name ASC[0m
|
288
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
289
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
290
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
291
|
+
FROM sqlite_master
|
292
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
293
|
+
[0m
|
294
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
295
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
296
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
297
|
+
FROM sqlite_master
|
298
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
299
|
+
[0m
|
300
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
301
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
302
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
303
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
304
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
305
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
306
|
+
[4;36;1mOrderFuControl Load (107.5ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY first_name ASC,last_name DESC[0m
|
307
|
+
[4;35;1mOrderFuControl Load (1.1ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
308
|
+
[4;36;1mOrderFuControl Load (1.0ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name ASC[0m
|
309
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
310
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
311
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
312
|
+
FROM sqlite_master
|
313
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
314
|
+
[0m
|
315
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
316
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
317
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
318
|
+
FROM sqlite_master
|
319
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
320
|
+
[0m
|
321
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
322
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
323
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
324
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
325
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
326
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
327
|
+
[4;36;1mOrderFuControl Load (1.3ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY first_name DESC,last_name ASC[0m
|
328
|
+
[4;35;1mOrderFuControl Load (0.8ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY first_name ASC,last_name DESC[0m
|
329
|
+
[4;36;1mOrderFuControl Load (0.7ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
330
|
+
[4;35;1mOrderFuControl Load (0.7ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name ASC[0m
|
331
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
332
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
333
|
+
[4;36;1mSQL (0.1ms)[0m [0;1m SELECT name
|
334
|
+
FROM sqlite_master
|
335
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
336
|
+
[0m
|
337
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
338
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
339
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
340
|
+
FROM sqlite_master
|
341
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
342
|
+
[0m
|
343
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
344
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
345
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
346
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
347
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
348
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
349
|
+
[4;36;1mOrderFuControl Load (1.3ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name[0m
|
350
|
+
[4;35;1mOrderFuControl Load (0.7ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY first_name DESC,last_name ASC[0m
|
351
|
+
[4;36;1mOrderFuControl Load (0.6ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY first_name ASC,last_name DESC[0m
|
352
|
+
[4;35;1mOrderFuControl Load (0.7ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
353
|
+
[4;36;1mOrderFuControl Load (0.8ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name ASC[0m
|
354
|
+
[4;36;1mSQL (0.2ms)[0m [0;1mselect sqlite_version(*)[0m
|
355
|
+
[4;35;1mSQL (0.3ms)[0m [0mCREATE TABLE "order_fu_controls" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "first_name" varchar(255), "last_name" varchar(255)) [0m
|
356
|
+
[4;36;1mSQL (0.2ms)[0m [0;1m SELECT name
|
357
|
+
FROM sqlite_master
|
358
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
359
|
+
[0m
|
360
|
+
[4;35;1mSQL (0.1ms)[0m [0mCREATE TABLE "schema_migrations" ("version" varchar(255) NOT NULL) [0m
|
361
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mCREATE UNIQUE INDEX "unique_schema_migrations" ON "schema_migrations" ("version")[0m
|
362
|
+
[4;35;1mSQL (0.1ms)[0m [0m SELECT name
|
363
|
+
FROM sqlite_master
|
364
|
+
WHERE type = 'table' AND NOT name = 'sqlite_sequence'
|
365
|
+
[0m
|
366
|
+
[4;36;1mSQL (0.1ms)[0m [0;1mSELECT version FROM "schema_migrations"[0m
|
367
|
+
[4;35;1mSQL (0.1ms)[0m [0mINSERT INTO "schema_migrations" (version) VALUES ('1')[0m
|
368
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Yevgevi')[0m
|
369
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Clif', 'Walters')[0m
|
370
|
+
[4;36;1mOrderFuControl Create (0.1ms)[0m [0;1mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Adam', 'Zentowski')[0m
|
371
|
+
[4;35;1mOrderFuControl Create (0.1ms)[0m [0mINSERT INTO "order_fu_controls" ("first_name", "last_name") VALUES('Bert', 'Xander')[0m
|
372
|
+
[4;36;1mOrderFuControl Load (1.1ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name[0m
|
373
|
+
[4;35;1mOrderFuControl Load (0.7ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
374
|
+
[4;36;1mOrderFuControl Load (0.9ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name[0m
|
375
|
+
[4;35;1mOrderFuControl Load (0.6ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY first_name DESC,last_name ASC[0m
|
376
|
+
[4;36;1mOrderFuControl Load (0.6ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY first_name ASC,last_name DESC[0m
|
377
|
+
[4;35;1mOrderFuControl Load (0.6ms)[0m [0mSELECT * FROM "order_fu_controls" ORDER BY last_name DESC[0m
|
378
|
+
[4;36;1mOrderFuControl Load (1.1ms)[0m [0;1mSELECT * FROM "order_fu_controls" ORDER BY last_name ASC[0m
|
@@ -0,0 +1,58 @@
|
|
1
|
+
require File.dirname(__FILE__) + '/spec_helper'
|
2
|
+
|
3
|
+
def expect_order(test, control)
|
4
|
+
test.map { |t| [t.first_name, t.last_name] }.should == control.map { |c| [c[:first_name], c[:last_name]] }
|
5
|
+
end
|
6
|
+
|
7
|
+
describe OrderFu do
|
8
|
+
it 'orders by "attr ASC"' do
|
9
|
+
expect_order(
|
10
|
+
OrderFuControl.find(:all, :order => :last_name.asc),
|
11
|
+
ORDER_FU_CONTROLS.sort_by { |p| p[:last_name] }
|
12
|
+
)
|
13
|
+
end
|
14
|
+
|
15
|
+
it 'orders by "attr DESC"' do
|
16
|
+
expect_order(
|
17
|
+
OrderFuControl.find(:all, :order => :last_name.desc),
|
18
|
+
ORDER_FU_CONTROLS.sort_by { |p| p[:last_name] }.reverse
|
19
|
+
)
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'orders by "attr ASC, attr DESC"' do
|
23
|
+
expect_order(OrderFuControl.find(:all, :order => [:first_name.asc, :last_name.desc]), [
|
24
|
+
{:first_name => 'Adam', :last_name => 'Zentowski' },
|
25
|
+
{:first_name => 'Adam', :last_name => 'Yevgevi' },
|
26
|
+
{:first_name => 'Bert', :last_name => 'Xander' },
|
27
|
+
{:first_name => 'Clif', :last_name => 'Walters' },
|
28
|
+
])
|
29
|
+
end
|
30
|
+
|
31
|
+
it 'orders by "attr DESC, attr ASC"' do
|
32
|
+
expect_order(OrderFuControl.find(:all, :order => [:first_name.desc, :last_name.asc]), [
|
33
|
+
{:first_name => 'Adam', :last_name => 'Zentowski' },
|
34
|
+
{:first_name => 'Adam', :last_name => 'Yevgevi' },
|
35
|
+
{:first_name => 'Bert', :last_name => 'Xander' },
|
36
|
+
{:first_name => 'Clif', :last_name => 'Walters' },
|
37
|
+
].reverse)
|
38
|
+
end
|
39
|
+
|
40
|
+
it 'orders from symbol without interference'do
|
41
|
+
expect_order(
|
42
|
+
OrderFuControl.find(:all, :order => :last_name),
|
43
|
+
ORDER_FU_CONTROLS.sort_by { |p| p[:last_name] }
|
44
|
+
)
|
45
|
+
end
|
46
|
+
|
47
|
+
it 'orders from string without interference'do
|
48
|
+
expect_order(
|
49
|
+
OrderFuControl.find(:all, :order => 'last_name'),
|
50
|
+
ORDER_FU_CONTROLS.sort_by { |p| p[:last_name] }
|
51
|
+
)
|
52
|
+
|
53
|
+
expect_order(
|
54
|
+
OrderFuControl.find(:all, :order => 'last_name DESC'),
|
55
|
+
ORDER_FU_CONTROLS.sort_by { |p| p[:last_name] }.reverse
|
56
|
+
)
|
57
|
+
end
|
58
|
+
end
|
data/spec/schema.rb
ADDED
data/spec/spec.opts
ADDED
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,24 @@
|
|
1
|
+
begin
|
2
|
+
require File.dirname(__FILE__) + '/../../../../spec/spec_helper'
|
3
|
+
rescue LoadError
|
4
|
+
puts "You need to install rspec in your base app"
|
5
|
+
exit
|
6
|
+
end
|
7
|
+
|
8
|
+
plugin_spec_dir = File.dirname(__FILE__)
|
9
|
+
ActiveRecord::Base.logger = Logger.new(plugin_spec_dir + "/debug.log")
|
10
|
+
config = YAML::load(IO.read(plugin_spec_dir + '/database.yml'))
|
11
|
+
ActiveRecord::Base.establish_connection(config[ENV['DB'] || 'sqlite3'])
|
12
|
+
load(plugin_spec_dir + "/schema.rb") if File.exist?(plugin_spec_dir + "/schema.rb")
|
13
|
+
|
14
|
+
class OrderFuControl < ActiveRecord::Base
|
15
|
+
end
|
16
|
+
|
17
|
+
ORDER_FU_CONTROLS = [
|
18
|
+
{:first_name => 'Adam', :last_name => 'Yevgevi' },
|
19
|
+
{:first_name => 'Clif', :last_name => 'Walters' },
|
20
|
+
{:first_name => 'Adam', :last_name => 'Zentowski' },
|
21
|
+
{:first_name => 'Bert', :last_name => 'Xander' },
|
22
|
+
]
|
23
|
+
|
24
|
+
ORDER_FU_CONTROLS.each { |control| OrderFuControl.create control }
|
metadata
ADDED
@@ -0,0 +1,61 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: sprsquish-order_fu
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.1.0
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Jeff Smick
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
|
12
|
+
date: 2009-01-29 00:00:00 -08:00
|
13
|
+
default_executable:
|
14
|
+
dependencies: []
|
15
|
+
|
16
|
+
description: README
|
17
|
+
email: sprsquish@gmail.com
|
18
|
+
executables: []
|
19
|
+
|
20
|
+
extensions: []
|
21
|
+
|
22
|
+
extra_rdoc_files: []
|
23
|
+
|
24
|
+
files:
|
25
|
+
- VERSION.yml
|
26
|
+
- lib/order_fu.rb
|
27
|
+
- spec/database.yml
|
28
|
+
- spec/debug.log
|
29
|
+
- spec/order_fu_spec.rb
|
30
|
+
- spec/schema.rb
|
31
|
+
- spec/spec.opts
|
32
|
+
- spec/spec_helper.rb
|
33
|
+
has_rdoc: true
|
34
|
+
homepage: http://github.com/sprsquish/order_fu
|
35
|
+
post_install_message:
|
36
|
+
rdoc_options:
|
37
|
+
- --inline-source
|
38
|
+
- --charset=UTF-8
|
39
|
+
require_paths:
|
40
|
+
- lib
|
41
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
42
|
+
requirements:
|
43
|
+
- - ">="
|
44
|
+
- !ruby/object:Gem::Version
|
45
|
+
version: "0"
|
46
|
+
version:
|
47
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
48
|
+
requirements:
|
49
|
+
- - ">="
|
50
|
+
- !ruby/object:Gem::Version
|
51
|
+
version: "0"
|
52
|
+
version:
|
53
|
+
requirements: []
|
54
|
+
|
55
|
+
rubyforge_project:
|
56
|
+
rubygems_version: 1.2.0
|
57
|
+
signing_key:
|
58
|
+
specification_version: 2
|
59
|
+
summary: README
|
60
|
+
test_files: []
|
61
|
+
|