sql_query 0.3.0 → 0.4.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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: bee55d0da7461b026132a7282340f29ad1a17768
4
- data.tar.gz: 0460233cafaf0331980a61e538fcf01058d76511
3
+ metadata.gz: 8996df6ea13c7ce6e1b4ffb04d2137d537852326
4
+ data.tar.gz: 776b12b91ab006e9ec2170268cfe2cb258f56603
5
5
  SHA512:
6
- metadata.gz: 8bb059c5e3f304165e409f8ec22fbce07f1e9a13cc6793242dd2bb63f0bc3bdf527e339e72fb294468a750abd9838817d86f68e00419b418da50f4abb4536fba
7
- data.tar.gz: 8509f4a76b9e9772e0eda5e8db5ea58bf5e5d173210609e49c272ab88d965582f3ea90dd3824a85bc9f73e4eab2cffae08e8b4809388bb028b7cad30f47e2b9b
6
+ metadata.gz: 0d535b70950bfd98f169873ff9471453296e7eb4fb045dc0cf525d9563153022fa8e743aed56a00533ae67d62fc4ceeda4089d4483638b988a7922077c9dfd29
7
+ data.tar.gz: 8615b61a80e9d78e6492404437bf0c6195ab241ec44be1e50f4544b2994c224c9c16982860886157e7659d3e25142a27b15bb3e9a361ea198f51f7b2200d22a3
data/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # SqlQuery change log
2
2
 
3
- ## 0.3.1 / Unreleased
3
+ ## 0.4.1 / Unreleased
4
4
 
5
5
  * [Added]
6
6
 
@@ -10,6 +10,12 @@
10
10
 
11
11
  * [Fixed]
12
12
 
13
+ ## 0.4.0 / 2016-01-20
14
+
15
+ * [Added] execute will accept boolean attribute.
16
+ When set to false it will use raw query instead of prepared for logs.
17
+ By default it will be set to true.
18
+
13
19
  ## 0.3.0 / 2015-12-10
14
20
 
15
21
  * [Added] support for partials
data/README.md CHANGED
@@ -81,7 +81,7 @@ SqlQuery.new('player/get_by_email', email: 'e@mail.dev')
81
81
 
82
82
  ### Methods
83
83
 
84
- - **execute** - executes query and returns result data.
84
+ - **execute** - executes query and returns result data. It accepts boolean argument. When argument is false it will raw sql query instead of prepared_for_logs.
85
85
  - **explain** - runs explain for SQL from template
86
86
  - **sql** - returns SQL string
87
87
  - **pretty_sql** - returns SQL string prettier to read in console
data/lib/sql_query.rb CHANGED
@@ -19,8 +19,9 @@ class SqlQuery
19
19
  pretty(msg)
20
20
  end
21
21
 
22
- def execute
23
- connection.execute(prepared_for_logs).entries
22
+ def execute(prepare = true)
23
+ to_execute = prepare ? prepared_for_logs : sql
24
+ connection.execute(to_execute).entries
24
25
  end
25
26
 
26
27
  def sql
@@ -100,6 +100,20 @@ describe SqlQuery do
100
100
  it 'returns data from database' do
101
101
  expect(query.execute).to eq [{ 'email' => 'e@mail.dev'}]
102
102
  end
103
+
104
+ context 'when prepare argument is true' do
105
+ it 'executes prepared query for logs' do
106
+ expect(query).to receive(:prepared_for_logs) { '' }
107
+ query.execute
108
+ end
109
+ end
110
+
111
+ context 'when prepare argument is false' do
112
+ it 'executes unchanged sql query' do
113
+ expect(query).not_to receive(:prepared_for_logs)
114
+ query.execute(false)
115
+ end
116
+ end
103
117
  end
104
118
 
105
119
  describe '#partial' do
@@ -108,4 +122,11 @@ describe SqlQuery do
108
122
  expect(query.sql).to eq("SELECT *\nFROM players\nWHERE players.email = 'e@mail.dev'\n\n")
109
123
  end
110
124
  end
125
+
126
+ describe '#prepared_for_logs' do
127
+ it 'returns string without new lines' do
128
+ expect(query.prepared_for_logs)
129
+ .to eq("SELECT * FROM players WHERE email = 'e@mail.dev' ")
130
+ end
131
+ end
111
132
  end
data/sql_query.gemspec CHANGED
@@ -4,7 +4,7 @@ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
4
 
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "sql_query"
7
- spec.version = "0.3.0"
7
+ spec.version = "0.4.0"
8
8
  spec.authors = ["sufleR"]
9
9
  spec.email = ["szymon.fracczak@gmail.com"]
10
10
  spec.summary = %q{Ruby gem to load and execute SQL queries from `.sql.erb` templates}
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sql_query
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - sufleR
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-12-10 00:00:00.000000000 Z
11
+ date: 2016-01-20 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord
@@ -188,7 +188,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
188
188
  version: '0'
189
189
  requirements: []
190
190
  rubyforge_project:
191
- rubygems_version: 2.5.0
191
+ rubygems_version: 2.5.1
192
192
  signing_key:
193
193
  specification_version: 4
194
194
  summary: Ruby gem to load and execute SQL queries from `.sql.erb` templates