pigspec 0.0.6 → 0.0.7
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 +4 -4
- data/lib/pigspec.rb +24 -9
- data/lib/pigspec/version.rb +1 -1
- metadata +1 -1
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA1:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 6f7b3322d7176a21b68b6eecf8108f249fed30f6
|
|
4
|
+
data.tar.gz: f353261cbbfa282cd776f1068c80d3c8e72184e7
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: c39701ceeacc8b0ed4e2e591e25b5f4b0e428ded03cf1fefafc92c6062ae4c9d69002e7b391adb76336191a5f8a4dc3fb0d8932c278a39356d564d859fc0aa02
|
|
7
|
+
data.tar.gz: 248f03a67b1289afb7a68b7f0ba910b37f34a5115c60ea61acd8c41030d89e0ea18001d02e3bdfd384763a8822e53c56a18b36243336fad8f3462bd901049d78
|
data/lib/pigspec.rb
CHANGED
|
@@ -58,8 +58,8 @@ module PigSpec
|
|
|
58
58
|
end
|
|
59
59
|
expose :with_args
|
|
60
60
|
|
|
61
|
-
def override(name, value)
|
|
62
|
-
@override.push name: name, value: value
|
|
61
|
+
def override(name, value, options = {})
|
|
62
|
+
@override.push name: name, value: value, schema: options[:as]
|
|
63
63
|
end
|
|
64
64
|
expose :override
|
|
65
65
|
|
|
@@ -83,16 +83,31 @@ module PigSpec
|
|
|
83
83
|
|
|
84
84
|
def apply_override(test)
|
|
85
85
|
@override.each do |item|
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
schema = Test.bridge.schema item[:name]
|
|
90
|
-
query = "#{item[:name]} = LOAD '#{temp}' USING PigStorage('\\t')"
|
|
91
|
-
query += " AS #{schema}" unless schema.nil?
|
|
92
|
-
query += ';'
|
|
86
|
+
value_file = upload_override_value item
|
|
87
|
+
query = compose_override_query item, value_file
|
|
93
88
|
test.override item[:name], query
|
|
94
89
|
end
|
|
95
90
|
end
|
|
91
|
+
|
|
92
|
+
def upload_override_value(item)
|
|
93
|
+
temp = Test.bridge.create_hdfs_temp
|
|
94
|
+
Test.bridge.upload_text item[:value], temp
|
|
95
|
+
temp
|
|
96
|
+
end
|
|
97
|
+
|
|
98
|
+
def compose_override_query(item, value_file)
|
|
99
|
+
schema = compose_override_schema item
|
|
100
|
+
query = "#{item[:name]} = LOAD '#{value_file}' USING PigStorage('\\t')"
|
|
101
|
+
query += " AS #{schema}" unless schema.nil?
|
|
102
|
+
query += ';'
|
|
103
|
+
query
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
def compose_override_schema(item)
|
|
107
|
+
schema = item[:schema]
|
|
108
|
+
schema ||= Test.bridge.schema item[:name]
|
|
109
|
+
schema
|
|
110
|
+
end
|
|
96
111
|
end # class Test
|
|
97
112
|
|
|
98
113
|
module_function
|
data/lib/pigspec/version.rb
CHANGED