aboutsummaryrefslogtreecommitdiffstats
path: root/spec/helpers
diff options
context:
space:
mode:
authorRobert2017-12-14 21:25:24 +0100
committerRobert2017-12-15 08:32:30 +0100
commitb6067ba25bff1dc95975be49e3f9a02a5932202a (patch)
tree464fb6eb60e992e562d234379afa899787597085 /spec/helpers
parent85c4735b33aa73ca925c234482bf5b291ff89382 (diff)
downloadchouette-core-b6067ba25bff1dc95975be49e3f9a02a5932202a.tar.bz2
Refs: #5281@0.33h; Speced Common Helper's string_keys_to_symbol
Diffstat (limited to 'spec/helpers')
-rw-r--r--spec/helpers/common_helper_spec.rb39
1 files changed, 39 insertions, 0 deletions
diff --git a/spec/helpers/common_helper_spec.rb b/spec/helpers/common_helper_spec.rb
new file mode 100644
index 000000000..186c4184e
--- /dev/null
+++ b/spec/helpers/common_helper_spec.rb
@@ -0,0 +1,39 @@
+RSpec.describe CommonHelper do
+
+ subject do
+ Object.new.extend( described_class )
+ end
+
+ describe 'string_keys_to_symbols' do
+ context 'nullpotency on symbol keys' do
+ it { expect(subject.string_keys_to_symbols({})).to eq({}) }
+ it do
+ expect(subject.string_keys_to_symbols(
+ a: 1, b: 2
+ )).to eq(a: 1, b: 2)
+ end
+ end
+
+ context 'changing string keys' do
+ it { expect(subject.string_keys_to_symbols('alpha' => 100)).to eq(alpha: 100) }
+
+ it do
+ expect( subject.string_keys_to_symbols('a' => 10, b: 20) )
+ .to eq(a: 10, b: 20)
+ end
+ it do
+ expect( subject.string_keys_to_symbols('a' => 10, 'b' => 20) )
+ .to eq(a: 10, b: 20)
+ end
+ end
+
+ context 'keys, not values, are changed' do
+ it do
+ expect(subject.string_keys_to_symbols(a: 'a', 'b' => 'b', 'c' => :c))
+ .to eq(a: 'a', b: 'b', c: :c)
+ end
+ end
+
+
+ end
+end