visma_eaccounting 0.0.6 → 0.1.0
Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: ec724f638b8217a764c65af420df7201f32d6102f21389364422859b1ed15285
|
4
|
+
data.tar.gz: 1a08f700903c91d477dbd854ac7658430c248942645477958b0a98588b5faf52
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 80b2de56b4584b4825312968ca1b32331408b04c2196b3008a0ddd95d1bbfe21620c178045f524f25e952bf863f9b121197c2499d3a232945054b03ad739328c
|
7
|
+
data.tar.gz: acc3fa7b2e7d51ca9ecec360110adf02434bc5a9a92ce023d47629325d2fc51204b0e15944879a083c5440692e15f2bf0a2bc6945be80d9b48006ceaa81b27d6
|
data/README.markdown
CHANGED
@@ -46,11 +46,10 @@ visma_eaccounting.customers.retrieve(headers: {"SomeHeader": "SomeHeaderValue"},
|
|
46
46
|
|
47
47
|
Of course, `body` is only supported on `create` and `update` calls. Those map to HTTP `POST` and `PUT` verbs respectively.
|
48
48
|
|
49
|
-
You can set `token`, `
|
49
|
+
You can set `token`, `api_endpoint`, `timeout`, `open_timeout`, `faraday_adapter`, `proxy`, `symbolize_keys`, `logger`, and `debug` globally:
|
50
50
|
|
51
51
|
```ruby
|
52
52
|
VismaEaccounting::Request.token = "your_token"
|
53
|
-
VismaEaccounting::Request.api_environment = :sandbox
|
54
53
|
VismaEaccounting::Request.timeout = 15
|
55
54
|
VismaEaccounting::Request.open_timeout = 15
|
56
55
|
VismaEaccounting::Request.symbolize_keys = true
|
@@ -75,10 +74,6 @@ visma_eaccounting = VismaEaccounting::Request.new(token: "your_token", symbolize
|
|
75
74
|
|
76
75
|
Visma's [API documentation](https://developer.vismaonline.com/#APIReference) is a list of available endpoints.
|
77
76
|
|
78
|
-
## Environments
|
79
|
-
|
80
|
-
The default environment is ```:production```. To use the sandbox environment you can set ```:sandbox``` in constructor or globally using the ```api_environment``` option. This will set the default ```api_endpoint``` URL.
|
81
|
-
|
82
77
|
## Debug Logging
|
83
78
|
|
84
79
|
Pass `debug: true` to enable debug logging to STDOUT.
|
@@ -78,10 +78,6 @@ module VismaEaccounting
|
|
78
78
|
@request_builder.token
|
79
79
|
end
|
80
80
|
|
81
|
-
def api_environment
|
82
|
-
@request_builder.api_environment
|
83
|
-
end
|
84
|
-
|
85
81
|
def api_endpoint
|
86
82
|
@request_builder.api_endpoint
|
87
83
|
end
|
@@ -155,7 +151,7 @@ module VismaEaccounting
|
|
155
151
|
if @request_builder.debug
|
156
152
|
faraday.response :logger, @request_builder.logger, bodies: true
|
157
153
|
end
|
158
|
-
|
154
|
+
faraday.request :authorization, 'Bearer', self.token
|
159
155
|
end
|
160
156
|
end
|
161
157
|
|
@@ -189,12 +185,7 @@ module VismaEaccounting
|
|
189
185
|
end
|
190
186
|
|
191
187
|
def base_api_url
|
192
|
-
|
193
|
-
when :sandbox
|
194
|
-
"https://eaccountingapi-sandbox.test.vismaonline.com/v2/"
|
195
|
-
when :production
|
196
|
-
"https://eaccountingapi.vismaonline.com/v2/"
|
197
|
-
end
|
188
|
+
"https://eaccountingapi.vismaonline.com/v2/"
|
198
189
|
end
|
199
190
|
end
|
200
191
|
end
|
@@ -1,16 +1,14 @@
|
|
1
1
|
module VismaEaccounting
|
2
2
|
class Request
|
3
|
-
attr_accessor :token, :
|
3
|
+
attr_accessor :token, :api_endpoint, :timeout, :open_timeout, :proxy, :faraday_adapter, :symbolize_keys, :debug, :logger
|
4
4
|
|
5
5
|
DEFAULT_TIMEOUT = 60
|
6
6
|
DEFAULT_OPEN_TIMEOUT = 60
|
7
|
-
DEFAULT_API_ENVIRONMENT = :production
|
8
7
|
|
9
|
-
def initialize(token: nil,
|
8
|
+
def initialize(token: nil, api_endpoint: nil, timeout: nil, open_timeout: nil, proxy: nil, faraday_adapter: nil, symbolize_keys: false, debug: false, logger: nil)
|
10
9
|
@path_parts = []
|
11
10
|
@token = token || self.class.token
|
12
11
|
@token = @token.strip if @token
|
13
|
-
@api_environment = api_environment || self.class.api_environment || DEFAULT_API_ENVIRONMENT
|
14
12
|
@api_endpoint = api_endpoint || self.class.api_endpoint
|
15
13
|
@timeout = timeout || self.class.timeout || DEFAULT_TIMEOUT
|
16
14
|
@open_timeout = open_timeout || self.class.open_timeout || DEFAULT_OPEN_TIMEOUT
|
@@ -76,10 +74,10 @@ module VismaEaccounting
|
|
76
74
|
end
|
77
75
|
|
78
76
|
class << self
|
79
|
-
attr_accessor :token, :timeout, :open_timeout, :
|
77
|
+
attr_accessor :token, :timeout, :open_timeout, :api_endpoint, :proxy, :faraday_adapter, :symbolize_keys, :debug, :logger
|
80
78
|
|
81
79
|
def method_missing(sym, *args, &block)
|
82
|
-
new(token: self.token,
|
80
|
+
new(token: self.token, api_endpoint: self.api_endpoint, timeout: self.timeout, open_timeout: self.open_timeout, faraday_adapter: self.faraday_adapter, symbolize_keys: self.symbolize_keys, debug: self.debug, proxy: self.proxy, logger: self.logger).send(sym, *args, &block)
|
83
81
|
end
|
84
82
|
|
85
83
|
def respond_to_missing?(method_name, include_private = false)
|
@@ -116,35 +116,6 @@ describe VismaEaccounting do
|
|
116
116
|
expect(@visma_eaccounting.logger).to be_a Logger
|
117
117
|
end
|
118
118
|
|
119
|
-
it "api_environment production by default" do
|
120
|
-
@visma_eaccounting = VismaEaccounting::Request.new
|
121
|
-
expect(@visma_eaccounting.api_environment).to be :production
|
122
|
-
end
|
123
|
-
|
124
|
-
it "sets api_environment in the constructor" do
|
125
|
-
@visma_eaccounting = VismaEaccounting::Request.new(api_environment: :sandbox)
|
126
|
-
expect(@visma_eaccounting.api_environment).to be :sandbox
|
127
|
-
end
|
128
|
-
|
129
|
-
end
|
130
|
-
|
131
|
-
describe "supports different environments" do
|
132
|
-
before do
|
133
|
-
VismaEaccounting::APIRequest.send(:public, *VismaEaccounting::APIRequest.protected_instance_methods)
|
134
|
-
end
|
135
|
-
|
136
|
-
it "has correct api url for default production environment" do
|
137
|
-
@visma_eaccounting = VismaEaccounting::Request.new()
|
138
|
-
@request = VismaEaccounting::APIRequest.new(builder: @visma_eaccounting)
|
139
|
-
expect(@request.send(:base_api_url)).to eq("https://eaccountingapi.vismaonline.com/v2/")
|
140
|
-
end
|
141
|
-
|
142
|
-
it "has correct api url when setting sandbox environment" do
|
143
|
-
@visma_eaccounting = VismaEaccounting::Request.new(api_environment: :sandbox)
|
144
|
-
@request = VismaEaccounting::APIRequest.new(builder: @visma_eaccounting)
|
145
|
-
expect(@request.send(:base_api_url)).to eq("https://eaccountingapi-sandbox.test.vismaonline.com/v2/")
|
146
|
-
end
|
147
|
-
|
148
119
|
end
|
149
120
|
|
150
121
|
describe "build api url" do
|
@@ -166,7 +137,6 @@ describe VismaEaccounting do
|
|
166
137
|
before do
|
167
138
|
VismaEaccounting::Request.token = "ifeaean8hfaeo8AUfenao(ea"
|
168
139
|
VismaEaccounting::Request.timeout = 15
|
169
|
-
VismaEaccounting::Request.api_environment = :sandbox
|
170
140
|
VismaEaccounting::Request.api_endpoint = 'https://eaccountingapi.example.org/v1337/'
|
171
141
|
VismaEaccounting::Request.logger = logger
|
172
142
|
VismaEaccounting::Request.proxy = "http://1234.com"
|
@@ -178,7 +148,6 @@ describe VismaEaccounting do
|
|
178
148
|
after do
|
179
149
|
VismaEaccounting::Request.token = nil
|
180
150
|
VismaEaccounting::Request.timeout = nil
|
181
|
-
VismaEaccounting::Request.api_environment = nil
|
182
151
|
VismaEaccounting::Request.api_endpoint = nil
|
183
152
|
VismaEaccounting::Request.logger = nil
|
184
153
|
VismaEaccounting::Request.proxy = nil
|
@@ -195,11 +164,6 @@ describe VismaEaccounting do
|
|
195
164
|
expect(VismaEaccounting::Request.new.timeout).to eq(VismaEaccounting::Request.timeout)
|
196
165
|
end
|
197
166
|
|
198
|
-
it "set api_environment on new instances" do
|
199
|
-
expect(VismaEaccounting::Request.api_environment).not_to be_nil
|
200
|
-
expect(VismaEaccounting::Request.new.api_environment).to eq(VismaEaccounting::Request.api_environment)
|
201
|
-
end
|
202
|
-
|
203
167
|
it "set api_endpoint on new instances" do
|
204
168
|
expect(VismaEaccounting::Request.api_endpoint).not_to be_nil
|
205
169
|
expect(VismaEaccounting::Request.new.api_endpoint).to eq(VismaEaccounting::Request.api_endpoint)
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: visma_eaccounting
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0
|
4
|
+
version: 0.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Espen Antonsen
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2024-
|
12
|
+
date: 2024-08-20 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: faraday
|
@@ -126,7 +126,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
126
126
|
- !ruby/object:Gem::Version
|
127
127
|
version: '0'
|
128
128
|
requirements: []
|
129
|
-
rubygems_version: 3.5.
|
129
|
+
rubygems_version: 3.5.14
|
130
130
|
signing_key:
|
131
131
|
specification_version: 4
|
132
132
|
summary: A wrapper for Visma eAccounting API 2.0
|