rails_db 0.1 → 0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/Rakefile +1 -1
  3. data/app/assets/javascripts/rails_db/application.js +7 -1
  4. data/app/controllers/rails_db/sql_controller.rb +24 -5
  5. data/app/helpers/rails_db/application_helper.rb +1 -1
  6. data/app/helpers/rails_db/flash_messages_helper.rb +44 -0
  7. data/app/views/layouts/rails_db/application.html.erb +1 -0
  8. data/app/views/rails_db/dashboard/index.html.erb +5 -2
  9. data/app/views/rails_db/shared/_footer.html.erb +7 -0
  10. data/app/views/rails_db/shared/_header.html.erb +7 -0
  11. data/app/views/rails_db/sql/_import_sample.html.erb +19 -0
  12. data/app/views/rails_db/sql/import.html.erb +37 -0
  13. data/config/routes.rb +3 -0
  14. data/lib/rails_db/adapters/base_adapter.rb +26 -0
  15. data/lib/rails_db/adapters/mysql.rb +15 -0
  16. data/lib/rails_db/adapters/postgres.rb +9 -0
  17. data/lib/rails_db/adapters/sqlite.rb +17 -0
  18. data/lib/rails_db/database.rb +24 -0
  19. data/lib/rails_db/rails_db_error.rb +5 -0
  20. data/lib/rails_db/result.rb +19 -0
  21. data/lib/rails_db/sql_import.rb +26 -0
  22. data/lib/rails_db/sql_query.rb +1 -1
  23. data/lib/rails_db/sql_query_data.rb +1 -1
  24. data/lib/rails_db/table_data.rb +2 -3
  25. data/lib/rails_db/version.rb +1 -1
  26. data/test/database_test.rb +11 -0
  27. data/test/dummy/app/views/home/index.html.erb +3 -1
  28. data/test/dummy/config/database.yml +4 -11
  29. data/test/dummy/db/development.sqlite3 +0 -0
  30. data/test/dummy/log/development.log +5732 -0
  31. data/test/dummy/log/test.log +513 -0
  32. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Dv1AN2HoFMwjvSCCzmegkLXUJxe_iZ-0XOufRf-tFE.cache +1 -0
  33. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/F7wzDvE1vUNPUC4ZdkIfiwyHVkeOPL4pGwzzq-wuBO8.cache +0 -0
  34. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/QuKueSfLQwv5cyuM_l_0EODvexy0h2PBp7EnBc4Vu-8.cache +1 -0
  35. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/VL6Fc1DN45EKm7QH9mclqvRrCbC1nu6inX4AlLYlBWE.cache +0 -0
  36. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/WdVD_QcJoi6wyNWFFoAg-36LzsDzh1zBi5zamPh_vZk.cache +0 -0
  37. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/_V6QCpwpPXKJNZEta0kCLvmOQwMNNTEIMOo1kYMK5oM.cache +0 -0
  38. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/enBbJ4kwxNcDB6tUtAT1Bw4I7Ib3WrVFHWBl-d-zm-4.cache +1 -0
  39. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/lcfsHC3R1udkB-YUXiVLMAoRPoMvtCbnfis33Dx9EJc.cache +1 -0
  40. data/test/dummy/tmp/cache/assets/development/sprockets/v3.0/zJVqRZ01Vba8pBsFHjFbbagNHI468L0wWM3efZtgLIc.cache +1 -0
  41. data/test/sql_import_test.rb +14 -0
  42. data/test/sql_query_test.rb +14 -0
  43. data/test/table_test.rb +18 -0
  44. data/test/test_sql_mysql.sql +12 -0
  45. data/test/test_sql_postgres.sql +12 -0
  46. data/test/test_sql_sqlite.sql +5 -0
  47. metadata +59 -5
  48. data/lib/rails_db/sql_executor.rb +0 -20
  49. data/test/integration/navigation_test.rb +0 -8
@@ -0,0 +1 @@
1
+ I"�/Users/igorkasyanchuk/Projects/rails_db/app/assets/javascripts/rails_db/application.js?type=application/javascript&id=a32c19a73e451057318c0ef5d4054d3e9ea2ec7246b53bfb14b356e09cde96d2:ET
@@ -0,0 +1 @@
1
+ "%j:��ś\�a�;�� EM�!�bV���[9�
@@ -0,0 +1 @@
1
+ "%j:��ś\�a�;�� EM�!�bV���[9�
@@ -0,0 +1 @@
1
+ I"�/Users/igorkasyanchuk/Projects/rails_db/app/assets/javascripts/rails_db/application.js?type=application/javascript&pipeline=self&id=a3e97d6a3475fd9ba07ae933e10b471cdbf1e9f173b3a4ce938a1c58fffa0b6f:ET
@@ -0,0 +1 @@
1
+ "%j:��ś\�a�;�� EM�!�bV���[9�
@@ -0,0 +1,14 @@
1
+ require_relative 'test_helper'
2
+
3
+ class SqlImportTest < ActiveSupport::TestCase
4
+
5
+ test "import" do
6
+ assert_equal RailsDb::Database.tables, ["accounts", "comments", "contacts", "projects", "users"]
7
+ file = File.open("#{Rails.root}/../test_sql_sqlite.sql")
8
+ importer = RailsDb::SqlImport.new(file)
9
+ importer.import
10
+ assert importer.result.ok?
11
+ assert_equal RailsDb::Database.tables, ["accounts", "comments", "contacts", "projects", 't', "users"]
12
+ end
13
+
14
+ end
@@ -0,0 +1,14 @@
1
+ require_relative 'test_helper'
2
+
3
+ class DatabaseTest < ActiveSupport::TestCase
4
+
5
+ test "query" do
6
+ User.create(name: 'Igor')
7
+ query = RailsDb::SqlQuery.new('select count(*) as users_count from users')
8
+ query.execute
9
+ assert_equal query.data.columns, ['users_count']
10
+ assert_equal query.data.rows, [[1]]
11
+ assert_not_nil query.explain
12
+ end
13
+
14
+ end
@@ -0,0 +1,18 @@
1
+ require_relative 'test_helper'
2
+
3
+ class TableTest < ActiveSupport::TestCase
4
+
5
+ def setup
6
+ @users_table = RailsDb::Table.new('users')
7
+ end
8
+
9
+ test 'columns' do
10
+ assert_equal @users_table.column_names, ["id", "name", "age", "salary", "bio", "created_at", "updated_at", "account_id", "dob"]
11
+ end
12
+
13
+ test 'to_csv' do
14
+ User.create(name: "igor")
15
+ assert_not_equal @users_table.to_csv, ""
16
+ end
17
+
18
+ end
@@ -0,0 +1,12 @@
1
+ update users set email = 'e1@e.com' where id = 5;
2
+ update users set email = 'e2@e.com' where id = 6;
3
+ update users set email = 'e3@e.com' where id = 7;
4
+
5
+
6
+ CREATE TABLE MyGuests (
7
+ id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
8
+ firstname VARCHAR(30) NOT NULL,
9
+ lastname VARCHAR(30) NOT NULL,
10
+ email VARCHAR(50),
11
+ reg_date TIMESTAMP
12
+ )
@@ -0,0 +1,12 @@
1
+ update users set email = 'e1@e.com' where id = 1;
2
+ update users set email = 'e2@e.com' where id = 2;
3
+ update users set email = 'e3@e.com' where id = 3;
4
+
5
+ CREATE TABLE films1 (
6
+ code char(5) PRIMARY KEY,
7
+ title varchar(40) NOT NULL,
8
+ did integer NOT NULL,
9
+ date_prod date,
10
+ kind varchar(10),
11
+ len interval hour to minute
12
+ );
@@ -0,0 +1,5 @@
1
+ update users set age = 11 where id = 1;
2
+ update users set age = 22 where id = 2;
3
+ update users set age = 33 where id = 3;
4
+
5
+ CREATE TABLE t(x INTEGER, y, z, PRIMARY KEY(x ASC));
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_db
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.1'
4
+ version: '0.2'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Igor Kasyanchuk
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-16 00:00:00.000000000 Z
11
+ date: 2015-10-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -152,6 +152,20 @@ dependencies:
152
152
  version: '0'
153
153
  - !ruby/object:Gem::Dependency
154
154
  name: mysql2
155
+ requirement: !ruby/object:Gem::Requirement
156
+ requirements:
157
+ - - "<="
158
+ - !ruby/object:Gem::Version
159
+ version: 0.3.20
160
+ type: :development
161
+ prerelease: false
162
+ version_requirements: !ruby/object:Gem::Requirement
163
+ requirements:
164
+ - - "<="
165
+ - !ruby/object:Gem::Version
166
+ version: 0.3.20
167
+ - !ruby/object:Gem::Dependency
168
+ name: pg
155
169
  requirement: !ruby/object:Gem::Requirement
156
170
  requirements:
157
171
  - - ">="
@@ -204,6 +218,7 @@ files:
204
218
  - app/controllers/rails_db/sql_controller.rb
205
219
  - app/controllers/rails_db/tables_controller.rb
206
220
  - app/helpers/rails_db/application_helper.rb
221
+ - app/helpers/rails_db/flash_messages_helper.rb
207
222
  - app/helpers/rails_db/tables_helper.rb
208
223
  - app/views/layouts/rails_db/application.html.erb
209
224
  - app/views/rails_db/dashboard/index.html.erb
@@ -212,7 +227,9 @@ files:
212
227
  - app/views/rails_db/shared/_sidebar.html.erb
213
228
  - app/views/rails_db/sql/_explain.html.erb
214
229
  - app/views/rails_db/sql/_history.html.erb
230
+ - app/views/rails_db/sql/_import_sample.html.erb
215
231
  - app/views/rails_db/sql/_results.html.erb
232
+ - app/views/rails_db/sql/import.html.erb
216
233
  - app/views/rails_db/sql/index.html.erb
217
234
  - app/views/rails_db/tables/data.html.erb
218
235
  - app/views/rails_db/tables/index.html.erb
@@ -220,11 +237,18 @@ files:
220
237
  - config/routes.rb
221
238
  - lib/rails/routes.rb
222
239
  - lib/rails_db.rb
240
+ - lib/rails_db/adapters/base_adapter.rb
241
+ - lib/rails_db/adapters/mysql.rb
242
+ - lib/rails_db/adapters/postgres.rb
243
+ - lib/rails_db/adapters/sqlite.rb
223
244
  - lib/rails_db/connection.rb
245
+ - lib/rails_db/database.rb
224
246
  - lib/rails_db/engine.rb
225
247
  - lib/rails_db/history.rb
226
- - lib/rails_db/sql_executor.rb
248
+ - lib/rails_db/rails_db_error.rb
249
+ - lib/rails_db/result.rb
227
250
  - lib/rails_db/sql_explain.rb
251
+ - lib/rails_db/sql_import.rb
228
252
  - lib/rails_db/sql_query.rb
229
253
  - lib/rails_db/sql_query_data.rb
230
254
  - lib/rails_db/table.rb
@@ -232,6 +256,7 @@ files:
232
256
  - lib/rails_db/table_pagination.rb
233
257
  - lib/rails_db/version.rb
234
258
  - lib/tasks/rails_db_tasks.rake
259
+ - test/database_test.rb
235
260
  - test/dummy/README.rdoc
236
261
  - test/dummy/Rakefile
237
262
  - test/dummy/app/assets/javascripts/application.js
@@ -627,6 +652,7 @@ files:
627
652
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/96_oB31QMOZNQSp92q4ntmRWHwq5zEcPcnrX_KYxMqw.cache
628
653
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Aha0J24k7H7InXpQt3AwusAH9CJMJJwN1DA4HUJOUI.cache
629
654
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9BJbnvsx0kPGl1m4xaSqfBdxfY9b_KEgSUk0fOkiDYQ.cache
655
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Dv1AN2HoFMwjvSCCzmegkLXUJxe_iZ-0XOufRf-tFE.cache
630
656
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Ez7BV0vmJcwsp5QESkzq7Er6MSprhBbqIcVUAbdD3k.cache
631
657
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9FxT9wO2B88rR0Iy1-HH5TK8jMOuyQ8W1I9__mKdBbQ.cache
632
658
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9GW5yzPBFCJ9UPbJxlETIc6vFTwEfWfcvCT41KCloeg.cache
@@ -798,6 +824,7 @@ files:
798
824
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F6I7fjzkLerHR0yNOdKGpw18ZBTF33gNzHipTfXpkY0.cache
799
825
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F75AuIdNfIIRokopWREL6lkjcdXTTeOTjD1UF2jX0dM.cache
800
826
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F7Y62nEoKslGVN4f95JfN0efSsxMQgd0oh2ucLq_hjY.cache
827
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F7wzDvE1vUNPUC4ZdkIfiwyHVkeOPL4pGwzzq-wuBO8.cache
801
828
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F8Gp9BTLl04PA9PR-tFzM_Pxp-QyOaPHBRC5U3ow3vI.cache
802
829
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F8ROg1UVFxnLE4Za-9iG9Q4gg6UR-cBqXkBQnr2NtiI.cache
803
830
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F9kqItxGFWJN680VA9_2DHQlX2IRntBpltsc_ZscME4.cache
@@ -1148,6 +1175,7 @@ files:
1148
1175
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QqgLlN1PgWH_clxe5NbPxWlqb-8S2G4hoFBnUwbAmJ0.cache
1149
1176
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QrRmrn3y-5InkxBXm17R524YwdpxfftnMYzjwc5rRn8.cache
1150
1177
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QtPW879XU4O-bC4mfyNPPF8Zusje2N1Vy4BwL3imN3M.cache
1178
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QuKueSfLQwv5cyuM_l_0EODvexy0h2PBp7EnBc4Vu-8.cache
1151
1179
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QusYO1ip5lpOGcfog4D59XmDPQnNjcId5fszPlsOfAA.cache
1152
1180
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/Qwynx3Fak48JsuMlnvjxbD800GUSE0dTGw1T9PX-BBw.cache
1153
1181
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/R2Ie_PAu3pE3hEk6SAf97MiQQTfrFF_I3zt57A98sO0.cache
@@ -1267,6 +1295,7 @@ files:
1267
1295
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VA_itW-3Nvv5M0P22yK1hjAaVBlaLeRZiVVzfuxsDu0.cache
1268
1296
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VB-gcopDl8SeHDpRxntioFNkHn9MAw2aKBA93ujGcCs.cache
1269
1297
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VI4pKbjJvWQ9DJqLHTRNi0qoZFeP5TOO8ZgqfXnx2Ks.cache
1298
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VL6Fc1DN45EKm7QH9mclqvRrCbC1nu6inX4AlLYlBWE.cache
1270
1299
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VNRaQuTHRhXjS5X5aQyT9Ta96cA24ac8EUg7tTrpkeM.cache
1271
1300
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VQw_2o_1FZVwQdifqlc7P9HMpcGM4ILgATJm7a7gCbk.cache
1272
1301
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VXv5dqRrBAw7P9b7DXHNHxVCqTh7bRJZX6ggZoSk9vY.cache
@@ -1300,6 +1329,7 @@ files:
1300
1329
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WXCqCU-6r96mtoGgPxJHsTnUsgnsT26Cf1Aw8GKxJks.cache
1301
1330
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/W_T3l3T6OQ-TVOWpzA9oNt9Fp-8Te7D20kWARDySu_c.cache
1302
1331
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WczVFSbVv7epqcd7HQ0ZFF8Hxs5znt-zgFn13waVD1I.cache
1332
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WdVD_QcJoi6wyNWFFoAg-36LzsDzh1zBi5zamPh_vZk.cache
1303
1333
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WihWmQjAsb3rzUoxjr00miIGCtc8BwyBAi_P2Cos2gE.cache
1304
1334
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WlF2UK5invBMpJV1WPGrzgu8sfa2fXFiSul1OkuTz1U.cache
1305
1335
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WnguuM5HL3zHq5kqPBy9oU8z_LQbso-x0IFDfkVjKYE.cache
@@ -1419,6 +1449,7 @@ files:
1419
1449
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_PVnBnlpIsM5EGIgFao14Ez_rnn6-HG8OTuBv8bI3_c.cache
1420
1450
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_QW_pzCyNPxPmR_RzClxbIch9rUwWUWdDmkST9OC9-8.cache
1421
1451
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_TR5IuxXrCFnJBLI6FpcWE3yYd_RwHMAIhqpn9-tmdA.cache
1452
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_V6QCpwpPXKJNZEta0kCLvmOQwMNNTEIMOo1kYMK5oM.cache
1422
1453
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_W2W4qFFbFTIhs2uIwGCb2c6E6nt18TcXX07qAkkP7U.cache
1423
1454
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_ZiNB3dBGlIrlT0v35B_7moBqCt3ayDGC3mMVJg0Jsg.cache
1424
1455
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/__40Pt9K9wvqZUz1QPQHZ8CPzLl-Dfwdr9-IRRQyaZw.cache
@@ -1585,6 +1616,7 @@ files:
1585
1616
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ehSSJchnTgyjkHxcR5SGVAAiuitK1bQpXVELDqH_eYg.cache
1586
1617
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ekUpiaYYYbAad9lc5fYwgM8j-Zn_bu5IXFhB_A8rmaQ.cache
1587
1618
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ekazdE8BkOIBM9CMTInfQR-3TES9p5COwwGr-keef6g.cache
1619
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/enBbJ4kwxNcDB6tUtAT1Bw4I7Ib3WrVFHWBl-d-zm-4.cache
1588
1620
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/eup_2zT33dxz593gDfen-x7_MzoEkSuLYlSWuky2PSk.cache
1589
1621
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/f1uiU9kr13-tHJo-vSwa4Ao6z-UlkOg1U27T50_eJ2Q.cache
1590
1622
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/f2uyrFCWzPkbp4SLtlmjKkB5v6K7BsRBTSUhAOnT2_c.cache
@@ -1801,6 +1833,7 @@ files:
1801
1833
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbmGeqhg9R47f8OAIRbyCXvDZPjByvLE5g6WaBAQH74.cache
1802
1834
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbtufFEPdzZb9VEnX7avrhdTAq1NfLjtljAxqHwY6fA.cache
1803
1835
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbvS5lBUzwPE2-VBy04Rz6CTXT3yzYWh_EWHZt57nA0.cache
1836
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lcfsHC3R1udkB-YUXiVLMAoRPoMvtCbnfis33Dx9EJc.cache
1804
1837
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lhd2Oh2U-ipnwcmd6UrxF_gjc-WH8oo67pkZF_TY_J8.cache
1805
1838
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/llFyFlnApX932uz4j4CHqK9X5HPWmHRflsA_0K_PfO8.cache
1806
1839
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/llbbN_bTGaCownApskFMou9u9vr51klYI4UcxNYvcPo.cache
@@ -2244,6 +2277,7 @@ files:
2244
2277
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zGAVeWMbC950yV4y2PwOu6ShicWtFBBxI66o6swYQ3w.cache
2245
2278
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zH_Vc7T7Z4LkRT9gSg_1YSfwWbPdebETmGHebfBnijs.cache
2246
2279
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zICt_dnU9yiWpZ-UkTSiNcxxlSVWIh4MShuV2hWyBmI.cache
2280
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zJVqRZ01Vba8pBsFHjFbbagNHI468L0wWM3efZtgLIc.cache
2247
2281
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zKAJgGmmYOVyB3-CMQ1BOjSLzE-26RGXv_vKbX1uC4I.cache
2248
2282
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zKkYnOZLbAaxaxICOiUtDJNQSSgJzhq4BvV-FftN6HA.cache
2249
2283
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zKxVOu26SJ8iJ6PGArlAvj0en1n9ysNN9CItTI6NGkg.cache
@@ -2262,9 +2296,14 @@ files:
2262
2296
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zjoQ8JcAjmZyLvOPp7BnddHbBwCYTSiSiItjouSg-cU.cache
2263
2297
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zkT9YdxRD67TGSeAv9D5tY8TtTVHPJgB_Mc3xcjBNvs.cache
2264
2298
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zv09JskAq_wPPubFt669UP_unjjAV4-AVAwtQLmaPSA.cache
2265
- - test/integration/navigation_test.rb
2266
2299
  - test/rails_db_test.rb
2300
+ - test/sql_import_test.rb
2301
+ - test/sql_query_test.rb
2302
+ - test/table_test.rb
2267
2303
  - test/test_helper.rb
2304
+ - test/test_sql_mysql.sql
2305
+ - test/test_sql_postgres.sql
2306
+ - test/test_sql_sqlite.sql
2268
2307
  homepage: https://github.com/igorkasyanchuk/rails_db
2269
2308
  licenses:
2270
2309
  - MIT
@@ -2291,6 +2330,7 @@ specification_version: 4
2291
2330
  summary: Inspect your Rails DB (table content viewer, execute sql queries, export
2292
2331
  & import data
2293
2332
  test_files:
2333
+ - test/database_test.rb
2294
2334
  - test/dummy/app/assets/javascripts/application.js
2295
2335
  - test/dummy/app/assets/stylesheets/application.css
2296
2336
  - test/dummy/app/controllers/application_controller.rb
@@ -2687,6 +2727,7 @@ test_files:
2687
2727
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9_q3kRxGExat9gM-FoN44UfSL8YDX_bj916HABv03Zc.cache
2688
2728
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Aha0J24k7H7InXpQt3AwusAH9CJMJJwN1DA4HUJOUI.cache
2689
2729
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9BJbnvsx0kPGl1m4xaSqfBdxfY9b_KEgSUk0fOkiDYQ.cache
2730
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Dv1AN2HoFMwjvSCCzmegkLXUJxe_iZ-0XOufRf-tFE.cache
2690
2731
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9Ez7BV0vmJcwsp5QESkzq7Er6MSprhBbqIcVUAbdD3k.cache
2691
2732
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9FxT9wO2B88rR0Iy1-HH5TK8jMOuyQ8W1I9__mKdBbQ.cache
2692
2733
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/9GW5yzPBFCJ9UPbJxlETIc6vFTwEfWfcvCT41KCloeg.cache
@@ -2723,6 +2764,7 @@ test_files:
2723
2764
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_QW_pzCyNPxPmR_RzClxbIch9rUwWUWdDmkST9OC9-8.cache
2724
2765
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_TR5IuxXrCFnJBLI6FpcWE3yYd_RwHMAIhqpn9-tmdA.cache
2725
2766
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_ux4YoalL_1DGrq_2vS3rsFfmKjR4G6sOjXV_v6c5NQ.cache
2767
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_V6QCpwpPXKJNZEta0kCLvmOQwMNNTEIMOo1kYMK5oM.cache
2726
2768
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_W2W4qFFbFTIhs2uIwGCb2c6E6nt18TcXX07qAkkP7U.cache
2727
2769
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/_ZiNB3dBGlIrlT0v35B_7moBqCt3ayDGC3mMVJg0Jsg.cache
2728
2770
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/a0bhuTzr1YJ0bKvL21XhixqAY1HlUhYXO_0tCGW-XN0.cache
@@ -3006,6 +3048,7 @@ test_files:
3006
3048
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/EmkmILuyKNN6yDW9GVfw94jnLAH4RHB-hnwYerqSpRc.cache
3007
3049
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/EMSS8udYtr4McVBzWxmpCXbTp5juHIVjRfvc84bz4-g.cache
3008
3050
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/eN9HcR3efze6xBq9yTgHdBLlx2t-gJYR5nt3_ikGSC4.cache
3051
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/enBbJ4kwxNcDB6tUtAT1Bw4I7Ib3WrVFHWBl-d-zm-4.cache
3009
3052
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/EnM2kuK9s7muKocxuqRQ_ENRs8rUMKQbHUR6UVxzpC0.cache
3010
3053
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ENoXRMOgan0djgyfVA2f9H91R3vxE4pe3k8la5whvVQ.cache
3011
3054
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/EnUPeKc1L-7sipk4JCvtOjlVxrdAhQ0gTCXdf47duMs.cache
@@ -3040,6 +3083,7 @@ test_files:
3040
3083
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F6I7fjzkLerHR0yNOdKGpw18ZBTF33gNzHipTfXpkY0.cache
3041
3084
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F75AuIdNfIIRokopWREL6lkjcdXTTeOTjD1UF2jX0dM.cache
3042
3085
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/f7la8aiQ1hjKOKFjqG8941FewnGFkZ_k68W6ikOgdh4.cache
3086
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F7wzDvE1vUNPUC4ZdkIfiwyHVkeOPL4pGwzzq-wuBO8.cache
3043
3087
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F7Y62nEoKslGVN4f95JfN0efSsxMQgd0oh2ucLq_hjY.cache
3044
3088
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F8Gp9BTLl04PA9PR-tFzM_Pxp-QyOaPHBRC5U3ow3vI.cache
3045
3089
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/F8ROg1UVFxnLE4Za-9iG9Q4gg6UR-cBqXkBQnr2NtiI.cache
@@ -3427,6 +3471,7 @@ test_files:
3427
3471
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbmGeqhg9R47f8OAIRbyCXvDZPjByvLE5g6WaBAQH74.cache
3428
3472
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbtufFEPdzZb9VEnX7avrhdTAq1NfLjtljAxqHwY6fA.cache
3429
3473
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lbvS5lBUzwPE2-VBy04Rz6CTXT3yzYWh_EWHZt57nA0.cache
3474
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/lcfsHC3R1udkB-YUXiVLMAoRPoMvtCbnfis33Dx9EJc.cache
3430
3475
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/LdPpcipGZeX5GwRAII42vmk7VED516SX4i2kz_57hQ0.cache
3431
3476
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/LeDmI5JxvP2b6LCEfJm6TLXf7WZzcwoHkW5iMUCGHdE.cache
3432
3477
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/LetFNQpPr7n8AiI155vshGicJQL7t1oDioW2U6W-4YM.cache
@@ -3765,6 +3810,7 @@ test_files:
3765
3810
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/qt_SjJcZ8s3sDWe3Glv2WtKaBM_pSUfjeMACqhmWQNI.cache
3766
3811
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QTFoYayykjjxxwHIm7DicbUu2VePlEo8ZZuECYpURz4.cache
3767
3812
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QtPW879XU4O-bC4mfyNPPF8Zusje2N1Vy4BwL3imN3M.cache
3813
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QuKueSfLQwv5cyuM_l_0EODvexy0h2PBp7EnBc4Vu-8.cache
3768
3814
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/QusYO1ip5lpOGcfog4D59XmDPQnNjcId5fszPlsOfAA.cache
3769
3815
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/qvuUx9f3yZA9WgehSwZDp2SM3I_RQu10F48mx32ekTQ.cache
3770
3816
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/Qwynx3Fak48JsuMlnvjxbD800GUSE0dTGw1T9PX-BBw.cache
@@ -4035,6 +4081,7 @@ test_files:
4035
4081
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/vjn9nMvBlJMdb19RX_U8_5Yrpf5JKJ1h_fCM6Bj30NY.cache
4036
4082
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/vKGGX472iULi48cSPRDUIgVYZSrTd0DoRI8an_t5fbo.cache
4037
4083
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/vKR67Mtckei_SvE7NSv_6QaYv3kHQumQLB6YhqH7Q_0.cache
4084
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VL6Fc1DN45EKm7QH9mclqvRrCbC1nu6inX4AlLYlBWE.cache
4038
4085
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/vMmjI-AvAyTahVX_-z6AZb-Ll_d-AOFUTXDp7EYtbhA.cache
4039
4086
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VmzERuCnsDPPO8rmkrayQtgOHCFn2opdsslsQWi9FsY.cache
4040
4087
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/VnklVgyAcz0gPLXNAHH6gwf_siw3aOgaTqyqjAWr1n4.cache
@@ -4088,6 +4135,7 @@ test_files:
4088
4135
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/wbuE1rrts8vlUDKy2SvXDNQKmIkdL2lY_26Net_q_BY.cache
4089
4136
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WczVFSbVv7epqcd7HQ0ZFF8Hxs5znt-zgFn13waVD1I.cache
4090
4137
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/wDv-FebgPLvOy8EFYkfMb4QGXyVFFKTy7dVyLjOOupk.cache
4138
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WdVD_QcJoi6wyNWFFoAg-36LzsDzh1zBi5zamPh_vZk.cache
4091
4139
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/wF3dMeeBgZ-p_Hxl30SztxObp6T6kaQLKp1xAPnqDG8.cache
4092
4140
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/WGN4EZs-xvXpe-ijzMIToggwIWvuvZNJXa61wVOWsNk.cache
4093
4141
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/wgpg3azLTlO_RBZXJOOo4NiAsBK_WQVHa8ZZXrgdAFA.cache
@@ -4293,6 +4341,7 @@ test_files:
4293
4341
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZjcDiQh5dDRxXAS3xnkkw9ZZofTVKEMpqPPDR5fu4rI.cache
4294
4342
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZJefl1bTRC-2KzgQP6Nc3YccadxweMx-qUhUJOzrw24.cache
4295
4343
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zjoQ8JcAjmZyLvOPp7BnddHbBwCYTSiSiItjouSg-cU.cache
4344
+ - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zJVqRZ01Vba8pBsFHjFbbagNHI468L0wWM3efZtgLIc.cache
4296
4345
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/Zk-M2GkWOo_uwTfZORJyKqDe5sONZhK7O-_Tu82XL0g.cache
4297
4346
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zKAJgGmmYOVyB3-CMQ1BOjSLzE-26RGXv_vKbX1uC4I.cache
4298
4347
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zKkYnOZLbAaxaxICOiUtDJNQSSgJzhq4BvV-FftN6HA.cache
@@ -4321,6 +4370,11 @@ test_files:
4321
4370
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZyzUaFOKA42wyC4E5wd2wKW6IUTuyyTxjxEUCj6E_jY.cache
4322
4371
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/ZZCllLbHvXq3L8XXARHtZflkSJNkNiTJWAzbSVjSzjU.cache
4323
4372
  - test/dummy/tmp/cache/assets/development/sprockets/v3.0/zZJ00UPek8ehej9OAAm0bRmLWbUXzr08TUe2k2EUwkA.cache
4324
- - test/integration/navigation_test.rb
4325
4373
  - test/rails_db_test.rb
4374
+ - test/sql_import_test.rb
4375
+ - test/sql_query_test.rb
4376
+ - test/table_test.rb
4326
4377
  - test/test_helper.rb
4378
+ - test/test_sql_mysql.sql
4379
+ - test/test_sql_postgres.sql
4380
+ - test/test_sql_sqlite.sql
@@ -1,20 +0,0 @@
1
- module RailsDb
2
- class SqlExecutor
3
- include Connection
4
-
5
- attr_reader :query
6
-
7
- def initialize(query)
8
- @query = query
9
- end
10
-
11
- def execute
12
- t0 = Time.now
13
- Rails.logger.debug "--> Executing: #{query}"
14
- results = connection.exec_query(query)
15
- execution_time = Time.now - t0
16
- [results, execution_time]
17
- end
18
-
19
- end
20
- end
@@ -1,8 +0,0 @@
1
- require 'test_helper'
2
-
3
- class NavigationTest < ActionDispatch::IntegrationTest
4
- # test "the truth" do
5
- # assert true
6
- # end
7
- end
8
-