push
circleci
0 of 33 new or added lines in 1 file covered. (0.0%)
9374 existing lines in 213 files now uncovered.47 of 9753 relevant lines covered (0.48%)
0.01 hits per line
| 1 |
# frozen_string_literal: true
|
|
| 2 |
|
|
| 3 |
# This class is responsible for persisting
|
|
| 4 |
# OAuth tokens to the database
|
|
|
UNCOV
5
|
class OAuthToken < ApplicationRecord |
× |
|
UNCOV
6
|
def token |
× |
|
UNCOV
7
|
if expiration_time && not_yet_expired?
|
× |
|
UNCOV
8
|
self[:token] |
× |
|
UNCOV
9
|
else
|
× |
|
UNCOV
10
|
fetch_new_token |
× |
|
UNCOV
11
|
reload[:token]
|
× |
|
UNCOV
12
|
end
|
× |
|
UNCOV
13
|
end
|
× |
| 14 |
|
|
|
UNCOV
15
|
private |
× |
| 16 |
|
|
|
UNCOV
17
|
def fetch_new_token |
× |
|
UNCOV
18
|
service = OAuthService.new(service: self.service, endpoint:) |
× |
|
UNCOV
19
|
self.token = service.new_token
|
× |
|
UNCOV
20
|
self.expiration_time = service.expiration_time
|
× |
|
UNCOV
21
|
save |
× |
|
UNCOV
22
|
end
|
× |
| 23 |
|
|
|
UNCOV
24
|
def not_yet_expired? |
× |
|
UNCOV
25
|
(Time.zone.now < expiration_time)
|
× |
|
UNCOV
26
|
end
|
× |
|
UNCOV
27
|
end
|
× |