X-Git-Url: https://git.adam-barratt.org.uk/?a=blobdiff_plain;f=3rdparty%2Fmodules%2Farchive%2Fspec%2Funit%2Fpuppet%2Fparser%2Ffunctions%2Fassemble_nexus_url_spec.rb;fp=3rdparty%2Fmodules%2Farchive%2Fspec%2Funit%2Fpuppet%2Fparser%2Ffunctions%2Fassemble_nexus_url_spec.rb;h=4be19842659d894c8896f1f6f853ac9873427e37;hb=ce70d6baf887ae03a2a6a7f5e73eb2e2c3dea208;hp=0000000000000000000000000000000000000000;hpb=0ba93256399fbad7ed8fabfa39c24dd47169dde3;p=mirror%2Fdsa-puppet.git diff --git a/3rdparty/modules/archive/spec/unit/puppet/parser/functions/assemble_nexus_url_spec.rb b/3rdparty/modules/archive/spec/unit/puppet/parser/functions/assemble_nexus_url_spec.rb new file mode 100644 index 000000000..4be198426 --- /dev/null +++ b/3rdparty/modules/archive/spec/unit/puppet/parser/functions/assemble_nexus_url_spec.rb @@ -0,0 +1,39 @@ +require 'spec_helper' + +describe :assemble_nexus_url do # rubocop:disable RSpec/DescribeSymbol + before :all do # rubocop:disable RSpec/BeforeAfterAll + Puppet::Parser::Functions.autoloader.loadall + end + + let(:scope) { PuppetlabsSpec::PuppetInternals.scope } + + nexus_url = 'http://nexus.local' + + it 'builds url correctly' do + expected_url = 'http://nexus.local/service/local/artifact/maven/content?g=com.test&a=test&v=1.0.0&r=binary-staging&p=ear' + + parameters = { + 'g' => 'com.test', + 'a' => 'test', + 'v' => '1.0.0', + 'r' => 'binary-staging', + 'p' => 'ear' + } + + expect(scope.function_assemble_nexus_url([nexus_url, parameters])).to eq expected_url + end + + it 'builds url with version containing "+" sign correctly' do + expected_url = 'http://nexus.local/service/local/artifact/maven/content?g=com.test&a=test&v=1.0.0%2B11&r=binary-staging&p=ear' + + parameters = { + 'g' => 'com.test', + 'a' => 'test', + 'v' => '1.0.0+11', + 'r' => 'binary-staging', + 'p' => 'ear' + } + + expect(scope.function_assemble_nexus_url([nexus_url, parameters])).to eq expected_url + end +end