masamune 0.15.1 → 0.15.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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6b1e378ec9d528e71798e37eaf92a28e39ce275
|
4
|
+
data.tar.gz: a715c4524d5320cb579053f940419bfebd783036
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5593ffbea50e048d74cf341afc34757a0e951df67528a7acdc5603a55fd2c4ed1c563ebebe3f396e41340af67d19ac9f9fcb5f3efb7ad03b902ea43a008bb602
|
7
|
+
data.tar.gz: 9b6cf17acce30109400902d6769ef72c90355542fa985e2b145e4a40aa9dd345f0054e17518f133d95ef950ba4e3e4f8975ce2eb0b0719a579eb1f9f6be95e92
|
@@ -83,7 +83,6 @@ module Masamune::Commands
|
|
83
83
|
args << command_args_for_file if @file
|
84
84
|
args << '--output=%s' % @output if @output
|
85
85
|
args << '--no-align' << '--field-separator=,' << '--pset=footer' if @csv
|
86
|
-
args << '--command=%s' % strip_sql(@exec) if @exec
|
87
86
|
args << '--pset=tuples_only' if @tuple_output
|
88
87
|
args.flatten.compact
|
89
88
|
end
|
@@ -93,6 +92,11 @@ module Masamune::Commands
|
|
93
92
|
if @debug and output = @rendered_file || @file
|
94
93
|
logger.debug("#{output}:\n" + File.read(output))
|
95
94
|
end
|
95
|
+
|
96
|
+
if @exec
|
97
|
+
console("postgres exec '#{strip_sql(@exec)}' #{'into ' + @output if @output}")
|
98
|
+
@file = exec_file
|
99
|
+
end
|
96
100
|
end
|
97
101
|
|
98
102
|
def handle_stdout(line, line_no)
|
@@ -126,5 +130,12 @@ module Masamune::Commands
|
|
126
130
|
@rendered_file = Masamune::Template.render_to_file(@file, @variables)
|
127
131
|
['--file=%s' % @rendered_file]
|
128
132
|
end
|
133
|
+
|
134
|
+
def exec_file
|
135
|
+
Tempfile.new('masamune').tap do |tmp|
|
136
|
+
tmp.write(@exec)
|
137
|
+
tmp.flush
|
138
|
+
end.path
|
139
|
+
end
|
129
140
|
end
|
130
141
|
end
|
data/lib/masamune/version.rb
CHANGED
@@ -66,7 +66,7 @@ describe Masamune::Commands::Hive do
|
|
66
66
|
context 'with exec' do
|
67
67
|
let(:attrs) { {exec: 'SELECT * FROM table;'} }
|
68
68
|
before do
|
69
|
-
|
69
|
+
expect(instance).to receive(:exec_file).and_return(remote_file)
|
70
70
|
end
|
71
71
|
it { is_expected.to eq([*default_command, '-f', remote_file]) }
|
72
72
|
end
|
@@ -29,6 +29,7 @@ describe Masamune::Commands::Postgres do
|
|
29
29
|
let(:instance) { described_class.new(delegate, attrs) }
|
30
30
|
|
31
31
|
before do
|
32
|
+
allow(delegate).to receive(:console).and_return(double)
|
32
33
|
allow(delegate).to receive_message_chain(:configuration, :postgres).and_return(configuration)
|
33
34
|
end
|
34
35
|
|
@@ -50,6 +51,7 @@ describe Masamune::Commands::Postgres do
|
|
50
51
|
let(:default_command) { ['psql', '--host=localhost', '--dbname=postgres', '--username=postgres', '--no-password', '--set=ON_ERROR_STOP=1'] }
|
51
52
|
|
52
53
|
subject do
|
54
|
+
instance.before_execute
|
53
55
|
instance.command_args
|
54
56
|
end
|
55
57
|
|
@@ -60,17 +62,25 @@ describe Masamune::Commands::Postgres do
|
|
60
62
|
it { is_expected.to eq([*default_command, '-A']) }
|
61
63
|
end
|
62
64
|
|
65
|
+
context 'with exec' do
|
66
|
+
let(:attrs) { {exec: 'SELECT * FROM table;'} }
|
67
|
+
before do
|
68
|
+
expect(instance).to receive(:exec_file).and_return('zomg.psql')
|
69
|
+
end
|
70
|
+
it { is_expected.to eq([*default_command, '--file=zomg.psql']) }
|
71
|
+
end
|
72
|
+
|
63
73
|
context 'with file' do
|
64
|
-
let(:attrs) { {file: 'zomg.
|
65
|
-
it { is_expected.to eq([*default_command, '--file=zomg.
|
74
|
+
let(:attrs) { {file: 'zomg.psql'} }
|
75
|
+
it { is_expected.to eq([*default_command, '--file=zomg.psql']) }
|
66
76
|
end
|
67
77
|
|
68
78
|
context 'with template file' do
|
69
|
-
let(:attrs) { {file: 'zomg.
|
79
|
+
let(:attrs) { {file: 'zomg.psql.erb'} }
|
70
80
|
before do
|
71
|
-
expect(Masamune::Template).to receive(:render_to_file).with('zomg.
|
81
|
+
expect(Masamune::Template).to receive(:render_to_file).with('zomg.psql.erb', {}).and_return('zomg.psql')
|
72
82
|
end
|
73
|
-
it { is_expected.to eq([*default_command, '--file=zomg.
|
83
|
+
it { is_expected.to eq([*default_command, '--file=zomg.psql']) }
|
74
84
|
end
|
75
85
|
|
76
86
|
context 'with variables and no file' do
|
@@ -79,8 +89,8 @@ describe Masamune::Commands::Postgres do
|
|
79
89
|
end
|
80
90
|
|
81
91
|
context 'with variables and file' do
|
82
|
-
let(:attrs) { {file: 'zomg.
|
83
|
-
it { is_expected.to eq([*default_command, '--file=zomg.
|
92
|
+
let(:attrs) { {file: 'zomg.psql', variables: {R: 'R2D2', C: 'C3PO'}} }
|
93
|
+
it { is_expected.to eq([*default_command, '--file=zomg.psql', %q(--set=R='R2D2'), %q(--set=C='C3PO')]) }
|
84
94
|
end
|
85
95
|
|
86
96
|
context 'with csv' do
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: masamune
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.15.
|
4
|
+
version: 0.15.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Andrews
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2015-11-
|
11
|
+
date: 2015-11-13 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|