Initiaize Repo
This commit is contained in:
80
test/zanzibar_spec.rb
Normal file
80
test/zanzibar_spec.rb
Normal file
@@ -0,0 +1,80 @@
|
||||
require '../lib/zanzibar.rb'
|
||||
require 'savon'
|
||||
require 'webmock'
|
||||
require 'rspec'
|
||||
require 'webmock/rspec'
|
||||
|
||||
include WebMock::API
|
||||
|
||||
describe "Zanzibar Test" do
|
||||
|
||||
client = Zanzibar::Zanzibar.new(:domain => "zanzitest.net", :pwd=>'password', :wsdl => "scrt.wsdl")
|
||||
auth_xml = File.read('responses/authenticate_response.xml')
|
||||
secret_xml = File.read('responses/get_secret_response.xml')
|
||||
secret_with_key_xml = File.read('responses/get_secret_with_keys_response.xml')
|
||||
secret_with_attachment_xml = File.read('responses/get_secret_with_attachment_response.xml')
|
||||
private_key_xml = File.read('responses/download_private_key_response.xml')
|
||||
public_key_xml = File.read('responses/download_public_key_response.xml')
|
||||
attachment_xml = File.read('responses/attachment_response.xml')
|
||||
|
||||
|
||||
it 'should return an auth token' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200)
|
||||
|
||||
expect(client.get_token).to eq("imatoken")
|
||||
end
|
||||
|
||||
it 'should get a secret' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200).then.
|
||||
to_return(:body => secret_xml, :status => 200)
|
||||
|
||||
expect(client.get_secret(1234)[:envelope][:body][:get_secret_response][:get_secret_result][:secret][:name]).to eq("Zanzi Test Secret")
|
||||
end
|
||||
|
||||
it 'should get a password' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200).then.
|
||||
to_return(:body => secret_xml, :status => 200)
|
||||
|
||||
expect(client.get_password(1234)).to eq("zanziUserPassword")
|
||||
end
|
||||
|
||||
it 'should download a private key' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200).then.
|
||||
to_return(:body => secret_with_key_xml, :status => 200).then.
|
||||
to_return(:body => private_key_xml, :status => 200)
|
||||
|
||||
client.download_private_key(:scrt_id => 2345)
|
||||
expect(File.exist? 'zanzi_key')
|
||||
expect(File.read('zanzi_key')).to eq("-----BEGIN RSA PRIVATE KEY -----\nzanzibarTestPassword\n-----END RSA PRIVATE KEY-----\n")
|
||||
File.delete('zanzi_key')
|
||||
end
|
||||
|
||||
|
||||
it 'should download a public key' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200).then.
|
||||
to_return(:body => secret_with_key_xml, :status => 200).then.
|
||||
to_return(:body => public_key_xml, :status => 200)
|
||||
|
||||
client.download_public_key(:scrt_id => 2345)
|
||||
expect(File.exist? 'zanzi_key.pub')
|
||||
expect(File.read('zanzi_key.pub')).to eq("1234PublicKey5678==\n")
|
||||
File.delete('zanzi_key.pub')
|
||||
end
|
||||
|
||||
it 'should download an attachment' do
|
||||
stub_request(:any, "https://www.zanzitest.net/webservices/sswebservice.asmx").
|
||||
to_return(:body => auth_xml, :status => 200).then.
|
||||
to_return(:body => secret_with_attachment_xml, :status => 200).then.
|
||||
to_return(:body => attachment_xml, :status => 200)
|
||||
|
||||
client.download_attachment(:scrt_id => 3456)
|
||||
expect(File.exist? 'attachment.txt')
|
||||
expect(File.read('attachment.txt')).to eq("I am a secret attachment\n")
|
||||
File.delete('attachment.txt')
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user