- end.to raise_error(Puppet::Error, 'Title or name must be provided')
- end
- it 'errors when missing source' do
- expect do
- Puppet::Type.type(:rabbitmq_binding).new(
- name: 'test binding',
- destination: 'foobar'
- )
- end.to raise_error(Puppet::Error, %r{`source` must be defined})
- end
- it 'errors when missing destination' do
- expect do
- Puppet::Type.type(:rabbitmq_binding).new(
- name: 'test binding',
- source: 'foobar'
- )
- end.to raise_error(Puppet::Error, %r{`destination` must be defined})
- end
- it 'accepts an binding destination_type' do
- binding[:destination_type] = :exchange
- expect(binding[:destination_type]).to eq(:exchange)
- end
- it 'accepts a user' do
- binding[:user] = :root
- expect(binding[:user]).to eq(:root)
- end
- it 'accepts a password' do
- binding[:password] = :PaSsw0rD
- expect(binding[:password]).to eq(:PaSsw0rD)
+ }.to raise_error(Puppet::Error, 'Title or name must be provided')
+ end
+ it 'should not allow whitespace in the name' do
+ expect {
+ @binding[:name] = 'b r'
+ }.to raise_error(Puppet::Error, /Valid values match/)
+ end
+ it 'should not allow names without one @' do
+ expect {
+ @binding[:name] = 'b_r'
+ }.to raise_error(Puppet::Error, /Valid values match/)
+ end
+
+ it 'should not allow names without two @' do
+ expect {
+ @binding[:name] = 'b@r'
+ }.to raise_error(Puppet::Error, /Valid values match/)
+ end
+
+ it 'should accept an binding destination_type' do
+ @binding[:destination_type] = :exchange
+ @binding[:destination_type].should == :exchange
+ end
+
+ it 'should accept a user' do
+ @binding[:user] = :root
+ @binding[:user].should == :root
+ end
+
+ it 'should accept a password' do
+ @binding[:password] = :PaSsw0rD
+ @binding[:password].should == :PaSsw0rD