summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
Diffstat (limited to 'spec')
-rwxr-xr-xspec/functions/any2array_spec.rb6
-rwxr-xr-xspec/functions/concat_spec.rb1
-rwxr-xr-xspec/functions/count_spec.rb5
-rwxr-xr-xspec/functions/delete_at_spec.rb2
-rwxr-xr-xspec/functions/delete_spec.rb8
-rwxr-xr-xspec/functions/delete_values_spec.rb6
-rwxr-xr-xspec/functions/ensure_resource_spec.rb24
-rwxr-xr-xspec/functions/load_module_metadata_spec.rb4
-rw-r--r--spec/functions/loadjson_spec.rb4
9 files changed, 54 insertions, 6 deletions
diff --git a/spec/functions/any2array_spec.rb b/spec/functions/any2array_spec.rb
index 70121f1..631657f 100755
--- a/spec/functions/any2array_spec.rb
+++ b/spec/functions/any2array_spec.rb
@@ -12,4 +12,10 @@ describe "any2array" do
it { is_expected.to run.with_params({}).and_return([]) }
it { is_expected.to run.with_params({ 'key' => 'value' }).and_return(['key', 'value']) }
it { is_expected.to run.with_params({ 'key' => 'value' }).and_return(['key', 'value']) }
+
+ it { is_expected.to run.with_params('‰').and_return(['‰']) }
+ it { is_expected.to run.with_params('竹').and_return(['竹']) }
+ it { is_expected.to run.with_params('Ü').and_return(['Ü']) }
+ it { is_expected.to run.with_params('∇').and_return(['∇']) }
+ it { is_expected.to run.with_params('€', '万', 'Ö', '♥', '割').and_return(['€', '万', 'Ö', '♥', '割']) }
end
diff --git a/spec/functions/concat_spec.rb b/spec/functions/concat_spec.rb
index eb76233..0e67a60 100755
--- a/spec/functions/concat_spec.rb
+++ b/spec/functions/concat_spec.rb
@@ -12,6 +12,7 @@ describe 'concat' do
it { is_expected.to run.with_params(['1','2'],['3','4'],['5','6']).and_return(['1','2','3','4','5','6']) }
it { is_expected.to run.with_params(['1','2'],'3','4',['5','6']).and_return(['1','2','3','4','5','6']) }
it { is_expected.to run.with_params([{"a" => "b"}], {"c" => "d", "e" => "f"}).and_return([{"a" => "b"}, {"c" => "d", "e" => "f"}]) }
+ it { is_expected.to run.with_params(['ấ','β','c'],['đ','ể','ƒ']).and_return(['ấ','β','c','đ','ể','ƒ']) }
it "should leave the original array intact" do
argument1 = ['1','2','3']
diff --git a/spec/functions/count_spec.rb b/spec/functions/count_spec.rb
index c8d1960..3854cb8 100755
--- a/spec/functions/count_spec.rb
+++ b/spec/functions/count_spec.rb
@@ -15,4 +15,9 @@ describe 'count' do
it { is_expected.to run.with_params(["one", nil, "two"]).and_return(2) }
it { is_expected.to run.with_params(["one", "", "two"]).and_return(2) }
it { is_expected.to run.with_params(["one", :undef, "two"]).and_return(2) }
+
+ it { is_expected.to run.with_params(["ổņ℮", "ŧщộ", "three"]).and_return(3) }
+ it { is_expected.to run.with_params(["ổņ℮", "ŧщộ", "ŧщộ"], "ŧщộ").and_return(2) }
+ it { is_expected.to run.with_params(["ổņ℮", nil, "ŧщộ"]).and_return(2) }
+ it { is_expected.to run.with_params(["ổņ℮", :undef, "ŧщộ"]).and_return(2) }
end
diff --git a/spec/functions/delete_at_spec.rb b/spec/functions/delete_at_spec.rb
index 0e19472..0471039 100755
--- a/spec/functions/delete_at_spec.rb
+++ b/spec/functions/delete_at_spec.rb
@@ -18,6 +18,8 @@ describe 'delete_at' do
it { is_expected.to run.with_params([0, 1, 2], 1).and_return([0, 2]) }
it { is_expected.to run.with_params([0, 1, 2], -1).and_return([0, 1]) }
it { is_expected.to run.with_params([0, 1, 2], -4).and_return([0, 1, 2]) }
+ it { is_expected.to run.with_params(["ƒờở", "βāř", "ьầż"], 1).and_return(["ƒờở", "ьầż"]) }
+
it "should leave the original array intact" do
argument = [1, 2, 3]
diff --git a/spec/functions/delete_spec.rb b/spec/functions/delete_spec.rb
index b44accf..4e37865 100755
--- a/spec/functions/delete_spec.rb
+++ b/spec/functions/delete_spec.rb
@@ -19,6 +19,7 @@ describe 'delete' do
it { is_expected.to run.with_params(['one', 'two', 'three'], 'two').and_return(['one', 'three']) }
it { is_expected.to run.with_params(['two', 'one', 'two', 'three', 'two'], 'two').and_return(['one', 'three']) }
it { is_expected.to run.with_params(['one', 'two', 'three', 'two'], ['one', 'two']).and_return(['three']) }
+ it { is_expected.to run.with_params(['ồאּẻ', 'ŧẅơ', 'ŧңŗё℮', 'ŧẅơ'], ['ồאּẻ', 'ŧẅơ']).and_return(['ŧңŗё℮']) }
end
describe 'deleting from a string' do
@@ -30,7 +31,8 @@ describe 'delete' do
it { is_expected.to run.with_params('barfoobar', 'bar').and_return('foo') }
it { is_expected.to run.with_params('foobarbabarz', 'bar').and_return('foobaz') }
it { is_expected.to run.with_params('foobarbabarz', ['foo', 'bar']).and_return('baz') }
- # this is so sick
+ it { is_expected.to run.with_params('ƒōōβậяβậβậяź', ['ƒōō', 'βậя']).and_return('βậź') }
+
it { is_expected.to run.with_params('barfoobar', ['barbar', 'foo']).and_return('barbar') }
it { is_expected.to run.with_params('barfoobar', ['foo', 'barbar']).and_return('') }
end
@@ -47,6 +49,10 @@ describe 'delete' do
.with_params({'key1' => 'value1', 'key2' => 'value2', 'key3' => 'value3'}, ['key1', 'key2']) \
.and_return( {'key3' => 'value3'})
}
+ it { is_expected.to run \
+ .with_params({'ĸəұ1' => 'νãŀủĕ1', 'ĸəұ2' => 'νãŀủĕ2', 'ĸəұ3' => 'νãŀủĕ3'}, ['ĸəұ1', 'ĸəұ2']) \
+ .and_return( {'ĸəұ3' => 'νãŀủĕ3'})
+ }
end
it "should leave the original array intact" do
diff --git a/spec/functions/delete_values_spec.rb b/spec/functions/delete_values_spec.rb
index 12907d4..329fa0b 100755
--- a/spec/functions/delete_values_spec.rb
+++ b/spec/functions/delete_values_spec.rb
@@ -19,7 +19,11 @@ describe 'delete_values' do
.and_return({'key1' => 'value1'})
}
it { is_expected.to run \
- .with_params({'key1' => 'value1', 'key2' => 'value to delete'}, 'value to delete') \
+ .with_params({'ҝếỵ1 ' => 'νâĺūẹ1', 'ҝếỵ2' => 'value to delete'}, 'value to delete') \
+ .and_return({'ҝếỵ1 ' => 'νâĺūẹ1'})
+ }
+ it { is_expected.to run \
+ .with_params({'key1' => 'value1', 'key2' => 'νǎŀữ℮ ťớ đêłểťė'}, 'νǎŀữ℮ ťớ đêłểťė') \
.and_return({'key1' => 'value1'})
}
it { is_expected.to run \
diff --git a/spec/functions/ensure_resource_spec.rb b/spec/functions/ensure_resource_spec.rb
index d552f4e..fddc4c4 100755
--- a/spec/functions/ensure_resource_spec.rb
+++ b/spec/functions/ensure_resource_spec.rb
@@ -38,7 +38,31 @@ describe 'ensure_resource' do
it { expect(lambda { catalogue }).to contain_user('username1').with_ensure('present') }
it { expect(lambda { catalogue }).to contain_user('username1').without_gid }
end
+ end
+
+ context 'given a catalog with UTF8 chars' do
+ describe 'after running ensure_resource("user", "Şắოрŀễ Ţëם", {})' do
+ before { subject.call(['User', 'Şắოрŀễ Ţëם', {}]) }
+
+ # this lambda is required due to strangeness within rspec-puppet's expectation handling
+ it { expect(lambda { catalogue }).to contain_user('Şắოрŀễ Ţëם').without_ensure }
+ end
+
+ describe 'after running ensure_resource("user", "Şắოрŀễ Ţëם", { gid => undef })' do
+ before { subject.call(['User', 'Şắოрŀễ Ţëם', { 'gid' => :undef }]) }
+ # this lambda is required due to strangeness within rspec-puppet's expectation handling
+ it { expect(lambda { catalogue }).to contain_user('Şắოрŀễ Ţëם').without_ensure }
+ it { expect(lambda { catalogue }).to contain_user('Şắოрŀễ Ţëם').without_gid }
+ end
+
+ describe 'after running ensure_resource("user", "Şắოрŀễ Ţëם", { ensure => present, gid => undef })' do
+ before { subject.call(['User', 'Şắოрŀễ Ţëם', { 'ensure' => 'present', 'gid' => :undef }]) }
+
+ # this lambda is required due to strangeness within rspec-puppet's expectation handling
+ it { expect(lambda { catalogue }).to contain_user('Şắოрŀễ Ţëם').with_ensure('present') }
+ it { expect(lambda { catalogue }).to contain_user('Şắოрŀễ Ţëם').without_gid }
+ end
end
context 'given a catalog with "user { username1: ensure => present }"' do
diff --git a/spec/functions/load_module_metadata_spec.rb b/spec/functions/load_module_metadata_spec.rb
index 2ba41a5..841cd7d 100755
--- a/spec/functions/load_module_metadata_spec.rb
+++ b/spec/functions/load_module_metadata_spec.rb
@@ -7,8 +7,8 @@ describe 'load_module_metadata' do
describe "when calling with valid arguments" do
before :each do
- allow(File).to receive(:read).with(/\/stdlib\/metadata.json/, {:encoding=>"utf-8"}).and_return('{"name": "puppetlabs-stdlib"}')
- allow(File).to receive(:read).with(/\/stdlib\/metadata.json/).and_return('{"name": "puppetlabs-stdlib"}')
+ allow(File).to receive(:read).with(/\/(stdlib|test)\/metadata.json/, {:encoding=>"utf-8"}).and_return('{"name": "puppetlabs-stdlib"}')
+ allow(File).to receive(:read).with(/\/(stdlib|test)\/metadata.json/).and_return('{"name": "puppetlabs-stdlib"}')
end
it "should json parse the file" do
if Puppet::Util::Platform.windows?
diff --git a/spec/functions/loadjson_spec.rb b/spec/functions/loadjson_spec.rb
index 9d26e93..26125bc 100644
--- a/spec/functions/loadjson_spec.rb
+++ b/spec/functions/loadjson_spec.rb
@@ -6,8 +6,8 @@ describe 'loadjson' do
describe "when calling with valid arguments" do
before :each do
- allow(File).to receive(:read).with(/\/stdlib\/metadata.json/, {:encoding=>"utf-8"}).and_return('{"name": "puppetlabs-stdlib"}')
- allow(File).to receive(:read).with(/\/stdlib\/metadata.json/).and_return('{"name": "puppetlabs-stdlib"}')
+ allow(File).to receive(:read).with(/\/(stdlib|test)\/metadata.json/, {:encoding=>"utf-8"}).and_return('{"name": "puppetlabs-stdlib"}')
+ allow(File).to receive(:read).with(/\/(stdlib|test)\/metadata.json/).and_return('{"name": "puppetlabs-stdlib"}')
end
context 'when a non-existing file is specified' do