spec/netsuite/configuration_spec.rb in netsuite-0.7.8 vs spec/netsuite/configuration_spec.rb in netsuite-0.7.9
- old
+ new
@@ -45,11 +45,11 @@
it 'caches the client' do
expect(config.wsdl_cache).to be_empty
conn = config.connection
expect(
- config.wsdl_cache.fetch([config.api_version, config.wsdl])
+ config.wsdl_cache.fetch(config.wsdl)
).to eq(conn)
end
it 'uses cached wsdls' do
allow(config).to receive(:cached_wsdl)
@@ -97,34 +97,34 @@
context '#cache_wsdl' do
it 'stores the client' do
expect(config.wsdl_cache).to be_empty
config.cache_wsdl("whatevs")
expect(config.wsdl_cache).to eq(
- {[config.api_version, config.wsdl] => "whatevs"}
+ {config.wsdl => "whatevs"}
)
end
it 'doesnt write over old values' do
config.class_exec(config.api_version, config.wsdl) do |api, wsdl|
- wsdl_cache[[api, wsdl]] = "old value"
+ wsdl_cache[wsdl] = "old value"
end
config.cache_wsdl("new value")
expect(config.wsdl_cache.values.first).to eq("old value")
end
it 'handles a nil cache' do
config.class_eval { @wsdl_cache = nil }
config.cache_wsdl("whatevs")
expect(config.wsdl_cache).to eq(
- {[config.api_version, config.wsdl] => "whatevs"}
+ {config.wsdl => "whatevs"}
)
end
it 'can cache multiple values' do
config.class_exec("2020_2", "fake wsdl") do |api, wsdl|
- wsdl_cache[[api, wsdl]] = "old value"
+ wsdl_cache[wsdl] = "old value"
end
expect(config.wsdl_cache.keys.count).to eq 1
config.cache_wsdl("new value")
expect(config.wsdl_cache.keys.count).to eq 2
@@ -132,11 +132,11 @@
end
context '#cached_wsdl' do
it 'returns wsdl (xml)' do
config.class_exec(config.api_version, config.wsdl) do |api, wsdl|
- wsdl_cache[[api, wsdl]] = "xml wsdl string"
+ wsdl_cache[wsdl] = "xml wsdl string"
end
expect( config.cached_wsdl ).to eq "xml wsdl string"
end
it 'stores client xml' do
@@ -144,11 +144,11 @@
allow(client).to receive(:is_a?).with(String).and_return(false)
allow(client).to receive(:is_a?).with(Savon::Client).and_return(true)
wsdl_dbl = double(:wsdl, xml: "xml wsdl")
client.instance_exec(wsdl_dbl) {|wsdl| @wsdl = wsdl }
config.class_exec(config.api_version, config.wsdl, client) do |api, wsdl, c|
- wsdl_cache[[api, wsdl]] = c
+ wsdl_cache[wsdl] = c
end
expect( config.wsdl_cache.values.first ).to eq client
expect( config.cached_wsdl ).to eq "xml wsdl"
expect( config.wsdl_cache.values.first ).to eq "xml wsdl"
@@ -312,12 +312,16 @@
end
describe '#api_version=' do
context 'when api version is defined' do
it 'sets the api_version of the application' do
- config.api_version = '2012_1'
- expect(config.api_version).to eq('2012_1')
+ # retrieve wsdl to ensure setting the api works when the wsdl is cached
+ config.wsdl
+ config.api_version = '1980_1'
+
+ expect(config.api_version).to eq('1980_1')
+ expect(config.wsdl).to include('1980_1')
end
end
end
describe "#credentials" do
@@ -341,16 +345,19 @@
config.silent = true
expect(config.silent).to eq(true)
end
it '#wsdl_domain' do
+ # NOTE wsdl is tested since it uses wsdl_domain
expect(config.wsdl_domain).to eq('webservices.netsuite.com')
- config.wsdl_domain = 'custom.domain.com'
+ config.wsdl_domain('custom.domain.com')
expect(config.wsdl_domain).to eq('custom.domain.com')
+ expect(config.wsdl).to include('custom.domain.com')
config.sandbox = true
expect(config.wsdl_domain).to eq('webservices.sandbox.netsuite.com')
+ expect(config.wsdl).to include('webservices.sandbox.netsuite.com')
end
describe '#logger=' do
let(:logger) { Logger.new(nil) }