lunchmoney 1.3.0 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/ci.yml +1 -1
  3. data/.simplecov +1 -2
  4. data/Gemfile +2 -3
  5. data/Gemfile.lock +66 -68
  6. data/lib/lunchmoney/objects/transaction.rb +9 -1
  7. data/lib/lunchmoney/version.rb +1 -1
  8. data/sorbet/rbi/annotations/activesupport.rbi +31 -0
  9. data/sorbet/rbi/annotations/minitest.rbi +119 -0
  10. data/sorbet/rbi/gems/{activesupport@7.1.3.2.rbi → activesupport@7.2.1.rbi} +1345 -1253
  11. data/sorbet/rbi/gems/{addressable@2.8.6.rbi → addressable@2.8.7.rbi} +2 -1
  12. data/sorbet/rbi/gems/{bigdecimal@3.1.7.rbi → bigdecimal@3.1.8.rbi} +1 -0
  13. data/sorbet/rbi/gems/{chef-utils@18.4.2.rbi → chef-utils@18.5.0.rbi} +1 -0
  14. data/sorbet/rbi/gems/{concurrent-ruby@1.2.3.rbi → concurrent-ruby@1.3.4.rbi} +64 -9
  15. data/sorbet/rbi/gems/{docile@1.4.0.rbi → docile@1.4.1.rbi} +1 -0
  16. data/sorbet/rbi/gems/{erubi@1.12.0.rbi → erubi@1.13.0.rbi} +20 -15
  17. data/sorbet/rbi/gems/{faraday-net_http@3.1.0.rbi → faraday-net_http@3.1.1.rbi} +36 -35
  18. data/sorbet/rbi/gems/{faraday@2.9.0.rbi → faraday@2.10.1.rbi} +79 -33
  19. data/sorbet/rbi/gems/{hashdiff@1.1.0.rbi → hashdiff@1.1.1.rbi} +3 -2
  20. data/sorbet/rbi/gems/{i18n@1.14.4.rbi → i18n@1.14.5.rbi} +43 -14
  21. data/sorbet/rbi/gems/logger@1.6.0.rbi +903 -0
  22. data/sorbet/rbi/gems/{minitest@5.22.3.rbi → minitest@5.25.1.rbi} +245 -235
  23. data/sorbet/rbi/gems/{mixlib-shellout@3.2.7.rbi → mixlib-shellout@3.2.8.rbi} +1 -0
  24. data/sorbet/rbi/gems/{mocha@2.2.0.rbi → mocha@2.4.5.rbi} +36 -47
  25. data/sorbet/rbi/gems/{parallel@1.24.0.rbi → parallel@1.26.3.rbi} +32 -21
  26. data/sorbet/rbi/gems/{parser@3.3.1.0.rbi → parser@3.3.4.2.rbi} +233 -186
  27. data/sorbet/rbi/gems/{prism@0.29.0.rbi → prism@0.30.0.rbi} +5670 -4445
  28. data/sorbet/rbi/gems/{public_suffix@5.0.4.rbi → public_suffix@6.0.1.rbi} +1 -0
  29. data/sorbet/rbi/gems/{racc@1.7.3.rbi → racc@1.8.1.rbi} +34 -33
  30. data/sorbet/rbi/gems/{rack@3.0.10.rbi → rack@3.1.7.rbi} +694 -987
  31. data/sorbet/rbi/gems/{rake@13.1.0.rbi → rake@13.2.1.rbi} +56 -55
  32. data/sorbet/rbi/gems/{rbi@0.1.13.rbi → rbi@0.1.14.rbi} +865 -638
  33. data/sorbet/rbi/gems/{regexp_parser@2.9.1.rbi → regexp_parser@2.9.2.rbi} +2 -2
  34. data/sorbet/rbi/gems/{rexml@3.2.6.rbi → rexml@3.3.6.rbi} +383 -245
  35. data/sorbet/rbi/gems/{rubocop-ast@1.31.3.rbi → rubocop-ast@1.32.1.rbi} +383 -337
  36. data/sorbet/rbi/gems/{rubocop-minitest@0.35.0.rbi → rubocop-minitest@0.35.1.rbi} +11 -8
  37. data/sorbet/rbi/gems/{rubocop-rails@2.24.1.rbi → rubocop-rails@2.26.0.rbi} +604 -275
  38. data/sorbet/rbi/gems/{rubocop-sorbet@0.8.3.rbi → rubocop-sorbet@0.8.5.rbi} +125 -67
  39. data/sorbet/rbi/gems/{rubocop@1.63.5.rbi → rubocop@1.65.1.rbi} +1722 -1408
  40. data/sorbet/rbi/gems/securerandom@0.3.1.rbi +73 -0
  41. data/sorbet/rbi/gems/{spoom@1.3.2.rbi → spoom@1.4.2.rbi} +2377 -1866
  42. data/sorbet/rbi/gems/strscan@3.1.0.rbi +9 -0
  43. data/sorbet/rbi/gems/{tapioca@0.14.1.rbi → tapioca@0.16.1.rbi} +274 -253
  44. data/sorbet/rbi/gems/{toys-core@0.15.5.rbi → toys-core@0.15.6.rbi} +1 -0
  45. data/sorbet/rbi/gems/{toys@0.15.5.rbi → toys@0.15.6.rbi} +4 -3
  46. data/sorbet/rbi/gems/{vcr@6.2.0.rbi → vcr@6.3.1.rbi} +72 -68
  47. data/sorbet/rbi/gems/{webmock@3.23.0.rbi → webmock@3.23.1.rbi} +1 -0
  48. data/sorbet/rbi/gems/{yard-sorbet@0.8.1.rbi → yard-sorbet@0.9.0.rbi} +36 -29
  49. metadata +43 -44
  50. data/sorbet/rbi/gems/coderay@1.1.3.rbi +0 -3426
  51. data/sorbet/rbi/gems/method_source@1.0.0.rbi +0 -272
  52. data/sorbet/rbi/gems/mutex_m@0.2.0.rbi +0 -93
  53. data/sorbet/rbi/gems/pry-sorbet@0.2.1.rbi +0 -966
  54. data/sorbet/rbi/gems/pry@0.14.2.rbi +0 -10077
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 6a73b1519cb5c9bf6a380532ad096247e2ee3207f25ea4dde1340622ac430524
4
- data.tar.gz: 9672889ae2f05b4d7318ac6e7b27bed03167ae702bc40564581472ccb7bfb4ef
3
+ metadata.gz: 3bcd23a0d41ac030c6a7d3a99c6438d363cfe100d1c1349f8ff8ab07e9da5a1b
4
+ data.tar.gz: a1021db38ff1305b39733d80d69681b74c05190521e1c38fe6b47afce0fc7f6d
5
5
  SHA512:
6
- metadata.gz: 7f7eb6658f6a7248760ca874cb8758dc503d3c614f649b12cef3d02ec0894a780d642417bccca1d79a4de281341af18d3be3df3d722f193096055836310bfa37
7
- data.tar.gz: 7404fedca96ad83227865f6e23ab3a87451a650dc4562c5511e8fe97e8f580e2ccd04cd0c3a1ad3b9e3e4ce1bf6805dcbc047089dc1df74973da2f6aee6ae8aa
6
+ metadata.gz: 1dd9b667746978ea1033cba76a0f23082f040da1de55122aa45a7114eb572fb0580140f7bac48c53fb3ad52e560babb8e13bbb2f6766f8ca61a8fcc99308b721
7
+ data.tar.gz: 4e84da79f6ae55f67c6f388c470346e541541553abf764a3365509990d2c6bce62ea96f66e9f0e960d4f1c394e1d67a969eecfefcc668942b954798eb278cdaf
@@ -51,7 +51,7 @@ jobs:
51
51
  -
52
52
  name: Run Tests (With Remote Calls & Coverage Report)
53
53
  if: ${{ endsWith(matrix.ruby-version, '3.3') }}
54
- uses: paambaati/codeclimate-action@v6.0.0
54
+ uses: paambaati/codeclimate-action@v8.0.0
55
55
  env:
56
56
  CC_TEST_REPORTER_ID: ${{ secrets.CC_TEST_REPORTER_ID }}
57
57
  REMOTE_TESTS_ENABLED: ${{ vars.REMOTE_TESTS_ENABLED }}
data/.simplecov CHANGED
@@ -8,8 +8,7 @@ else
8
8
  SimpleCov::Formatter::HTMLFormatter
9
9
  end
10
10
 
11
- SimpleCov.minimum_coverage(95)
12
- SimpleCov.maximum_coverage_drop(1)
11
+ SimpleCov.minimum_coverage(90)
13
12
  SimpleCov.start do
14
13
  enable_coverage :branch
15
14
  primary_coverage :branch
data/Gemfile CHANGED
@@ -7,11 +7,10 @@ gemspec
7
7
 
8
8
  # Specify development dependencies here
9
9
  gem "toys"
10
- gem "minitest", "~> 5.22", require: false
11
- gem "mocha", "~> 2.2.0", require: false
10
+ gem "minitest", "~> 5.24", require: false
11
+ gem "mocha", "~> 2.4.0", require: false
12
12
  gem "webmock", require: false
13
13
  gem "vcr", require: false
14
- gem "pry-sorbet", "~> 0.2", require: false
15
14
  gem "rubocop-shopify", require: false
16
15
  gem "rubocop-sorbet", require: false
17
16
  gem "rubocop-minitest", require: false
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- lunchmoney (1.3.0)
4
+ lunchmoney (1.4.0)
5
5
  activesupport (>= 6.1)
6
6
  faraday (>= 1.0.0)
7
7
  sorbet-runtime (>= 0.5)
@@ -9,43 +9,44 @@ PATH
9
9
  GEM
10
10
  remote: https://rubygems.org/
11
11
  specs:
12
- activesupport (7.1.3.2)
12
+ activesupport (7.2.1)
13
13
  base64
14
14
  bigdecimal
15
- concurrent-ruby (~> 1.0, >= 1.0.2)
15
+ concurrent-ruby (~> 1.0, >= 1.3.1)
16
16
  connection_pool (>= 2.2.5)
17
17
  drb
18
18
  i18n (>= 1.6, < 2)
19
+ logger (>= 1.4.2)
19
20
  minitest (>= 5.1)
20
- mutex_m
21
- tzinfo (~> 2.0)
22
- addressable (2.8.6)
23
- public_suffix (>= 2.0.2, < 6.0)
21
+ securerandom (>= 0.3)
22
+ tzinfo (~> 2.0, >= 2.0.5)
23
+ addressable (2.8.7)
24
+ public_suffix (>= 2.0.2, < 7.0)
24
25
  appraisal (2.5.0)
25
26
  bundler
26
27
  rake
27
28
  thor (>= 0.14.0)
28
29
  ast (2.4.2)
29
30
  base64 (0.2.0)
30
- bigdecimal (3.1.7)
31
- chef-utils (18.4.2)
31
+ bigdecimal (3.1.8)
32
+ chef-utils (18.5.0)
32
33
  concurrent-ruby
33
- coderay (1.1.3)
34
- concurrent-ruby (1.2.3)
34
+ concurrent-ruby (1.3.4)
35
35
  connection_pool (2.4.1)
36
36
  crack (1.0.0)
37
37
  bigdecimal
38
38
  rexml
39
- docile (1.4.0)
39
+ docile (1.4.1)
40
40
  dotenv (3.1.2)
41
41
  drb (2.2.1)
42
- erubi (1.12.0)
43
- faraday (2.9.0)
42
+ erubi (1.13.0)
43
+ faraday (2.10.1)
44
44
  faraday-net_http (>= 2.0, < 3.2)
45
- faraday-net_http (3.1.0)
45
+ logger
46
+ faraday-net_http (3.1.1)
46
47
  net-http
47
- hashdiff (1.1.0)
48
- i18n (1.14.4)
48
+ hashdiff (1.1.1)
49
+ i18n (1.14.5)
49
50
  concurrent-ruby (~> 1.0)
50
51
  json (2.7.2)
51
52
  kramdown (2.4.0)
@@ -53,118 +54,116 @@ GEM
53
54
  kramdown-parser-gfm (1.1.0)
54
55
  kramdown (~> 2.0)
55
56
  language_server-protocol (3.17.0.3)
57
+ logger (1.6.0)
56
58
  mdl (0.13.0)
57
59
  kramdown (~> 2.3)
58
60
  kramdown-parser-gfm (~> 1.1)
59
61
  mixlib-cli (~> 2.1, >= 2.1.1)
60
62
  mixlib-config (>= 2.2.1, < 4)
61
63
  mixlib-shellout
62
- method_source (1.0.0)
63
- minitest (5.22.3)
64
+ minitest (5.25.1)
64
65
  mixlib-cli (2.1.8)
65
66
  mixlib-config (3.0.27)
66
67
  tomlrb
67
- mixlib-shellout (3.2.7)
68
+ mixlib-shellout (3.2.8)
68
69
  chef-utils
69
- mocha (2.2.0)
70
+ mocha (2.4.5)
70
71
  ruby2_keywords (>= 0.0.5)
71
- mutex_m (0.2.0)
72
72
  net-http (0.4.1)
73
73
  uri
74
74
  netrc (0.11.0)
75
- parallel (1.24.0)
76
- parser (3.3.1.0)
75
+ parallel (1.26.3)
76
+ parser (3.3.4.2)
77
77
  ast (~> 2.4.1)
78
78
  racc
79
- prism (0.29.0)
80
- pry (0.14.2)
81
- coderay (~> 1.1)
82
- method_source (~> 1.0)
83
- pry-sorbet (0.2.1)
84
- pry
85
- public_suffix (5.0.4)
86
- racc (1.7.3)
87
- rack (3.0.10)
79
+ prism (0.30.0)
80
+ public_suffix (6.0.1)
81
+ racc (1.8.1)
82
+ rack (3.1.7)
88
83
  rainbow (3.1.1)
89
- rake (13.1.0)
90
- rbi (0.1.13)
84
+ rake (13.2.1)
85
+ rbi (0.1.14)
91
86
  prism (>= 0.18.0, < 1.0.0)
92
87
  sorbet-runtime (>= 0.5.9204)
93
- regexp_parser (2.9.1)
94
- rexml (3.2.6)
95
- rubocop (1.63.5)
88
+ regexp_parser (2.9.2)
89
+ rexml (3.3.6)
90
+ strscan
91
+ rubocop (1.65.1)
96
92
  json (~> 2.3)
97
93
  language_server-protocol (>= 3.17.0)
98
94
  parallel (~> 1.10)
99
95
  parser (>= 3.3.0.2)
100
96
  rainbow (>= 2.2.2, < 4.0)
101
- regexp_parser (>= 1.8, < 3.0)
97
+ regexp_parser (>= 2.4, < 3.0)
102
98
  rexml (>= 3.2.5, < 4.0)
103
99
  rubocop-ast (>= 1.31.1, < 2.0)
104
100
  ruby-progressbar (~> 1.7)
105
101
  unicode-display_width (>= 2.4.0, < 3.0)
106
- rubocop-ast (1.31.3)
102
+ rubocop-ast (1.32.1)
107
103
  parser (>= 3.3.1.0)
108
- rubocop-minitest (0.35.0)
104
+ rubocop-minitest (0.35.1)
109
105
  rubocop (>= 1.61, < 2.0)
110
106
  rubocop-ast (>= 1.31.1, < 2.0)
111
- rubocop-rails (2.24.1)
107
+ rubocop-rails (2.26.0)
112
108
  activesupport (>= 4.2.0)
113
109
  rack (>= 1.1)
114
- rubocop (>= 1.33.0, < 2.0)
110
+ rubocop (>= 1.52.0, < 2.0)
115
111
  rubocop-ast (>= 1.31.1, < 2.0)
116
112
  rubocop-shopify (2.15.1)
117
113
  rubocop (~> 1.51)
118
- rubocop-sorbet (0.8.3)
119
- rubocop (>= 0.90.0)
114
+ rubocop-sorbet (0.8.5)
115
+ rubocop (>= 1)
120
116
  ruby-progressbar (1.13.0)
121
117
  ruby2_keywords (0.0.5)
118
+ securerandom (0.3.1)
122
119
  simplecov (0.22.0)
123
120
  docile (~> 1.1)
124
121
  simplecov-html (~> 0.11)
125
122
  simplecov_json_formatter (~> 0.1)
126
123
  simplecov-html (0.12.3)
127
124
  simplecov_json_formatter (0.1.4)
128
- sorbet (0.5.11372)
129
- sorbet-static (= 0.5.11372)
130
- sorbet-runtime (0.5.11372)
131
- sorbet-static (0.5.11372-universal-darwin)
132
- sorbet-static (0.5.11372-x86_64-linux)
133
- sorbet-static-and-runtime (0.5.11372)
134
- sorbet (= 0.5.11372)
135
- sorbet-runtime (= 0.5.11372)
136
- spoom (1.3.2)
125
+ sorbet (0.5.11545)
126
+ sorbet-static (= 0.5.11545)
127
+ sorbet-runtime (0.5.11545)
128
+ sorbet-static (0.5.11545-universal-darwin)
129
+ sorbet-static (0.5.11545-x86_64-linux)
130
+ sorbet-static-and-runtime (0.5.11545)
131
+ sorbet (= 0.5.11545)
132
+ sorbet-runtime (= 0.5.11545)
133
+ spoom (1.4.2)
137
134
  erubi (>= 1.10.0)
138
- prism (>= 0.19.0)
135
+ prism (>= 0.28.0)
139
136
  sorbet-static-and-runtime (>= 0.5.10187)
140
137
  thor (>= 0.19.2)
141
- tapioca (0.14.1)
138
+ strscan (3.1.0)
139
+ tapioca (0.16.1)
142
140
  bundler (>= 2.2.25)
143
141
  netrc (>= 0.11.0)
144
142
  parallel (>= 1.21.0)
145
- rbi (>= 0.1.4, < 0.2)
143
+ rbi (>= 0.1.14, < 0.2)
146
144
  sorbet-static-and-runtime (>= 0.5.11087)
147
145
  spoom (>= 1.2.0)
148
146
  thor (>= 1.2.0)
149
147
  yard-sorbet
150
148
  thor (1.3.1)
151
149
  tomlrb (2.0.3)
152
- toys (0.15.5)
153
- toys-core (= 0.15.5)
154
- toys-core (0.15.5)
150
+ toys (0.15.6)
151
+ toys-core (= 0.15.6)
152
+ toys-core (0.15.6)
155
153
  tzinfo (2.0.6)
156
154
  concurrent-ruby (~> 1.0)
157
155
  unicode-display_width (2.5.0)
158
156
  uri (0.13.0)
159
- vcr (6.2.0)
160
- webmock (3.23.0)
157
+ vcr (6.3.1)
158
+ base64
159
+ webmock (3.23.1)
161
160
  addressable (>= 2.8.0)
162
161
  crack (>= 0.3.2)
163
162
  hashdiff (>= 0.4.0, < 2.0.0)
164
163
  yard (0.9.36)
165
- yard-sorbet (0.8.1)
166
- sorbet-runtime (>= 0.5)
167
- yard (>= 0.9)
164
+ yard-sorbet (0.9.0)
165
+ sorbet-runtime
166
+ yard
168
167
 
169
168
  PLATFORMS
170
169
  arm64-darwin-22
@@ -177,9 +176,8 @@ DEPENDENCIES
177
176
  dotenv
178
177
  lunchmoney!
179
178
  mdl
180
- minitest (~> 5.22)
181
- mocha (~> 2.2.0)
182
- pry-sorbet (~> 0.2)
179
+ minitest (~> 5.24)
180
+ mocha (~> 2.4.0)
183
181
  rubocop-minitest
184
182
  rubocop-rails
185
183
  rubocop-shopify
@@ -53,6 +53,10 @@ module LunchMoney
53
53
  sig { returns(T.nilable(T::Array[LunchMoney::Objects::ChildTransaction])) }
54
54
  attr_accessor :children
55
55
 
56
+ # TODO: Fix types when I have a response on what they should be https://github.com/mmenanno/lunchmoney/issues/329
57
+ sig { returns(T.untyped) }
58
+ attr_accessor :recurring_granularity, :recurring_quantity
59
+
56
60
  sig do
57
61
  params(
58
62
  id: Integer,
@@ -103,6 +107,8 @@ module LunchMoney
103
107
  display_notes: T.nilable(String),
104
108
  external_id: T.nilable(Integer),
105
109
  children: T.nilable(T::Array[LunchMoney::Objects::ChildTransaction]),
110
+ recurring_granularity: T.untyped,
111
+ recurring_quantity: T.untyped,
106
112
  ).void
107
113
  end
108
114
  def initialize(id:, date:, amount:, currency:, to_base:, payee:, is_income:, exclude_from_budget:,
@@ -113,7 +119,7 @@ module LunchMoney
113
119
  recurring_currency: nil, parent_id: nil, group_id: nil, asset_id: nil, asset_institution_name: nil,
114
120
  asset_name: nil, asset_display_name: nil, asset_status: nil, plaid_account_id: nil, plaid_account_name: nil,
115
121
  plaid_account_mask: nil, institution_name: nil, plaid_account_display_name: nil, plaid_metadata: nil,
116
- display_notes: nil, external_id: nil, children: nil)
122
+ display_notes: nil, external_id: nil, children: nil, recurring_granularity: nil, recurring_quantity: nil)
117
123
  super(id:, date:, amount:, currency:, to_base:, payee:, notes:, asset_id:, plaid_account_id:)
118
124
  @is_income = is_income
119
125
  @exclude_from_budget = exclude_from_budget
@@ -154,6 +160,8 @@ module LunchMoney
154
160
  @display_notes = display_notes
155
161
  @children = children
156
162
  @external_id = external_id
163
+ @recurring_granularity = recurring_granularity
164
+ @recurring_quantity = recurring_quantity
157
165
  end
158
166
  end
159
167
  end
@@ -3,5 +3,5 @@
3
3
 
4
4
  module LunchMoney
5
5
  # Current version of the gem
6
- VERSION = "1.3.0"
6
+ VERSION = "1.4.0"
7
7
  end
@@ -80,11 +80,23 @@ class Object
80
80
  end
81
81
 
82
82
  class Hash
83
+ sig { returns(T::Boolean) }
84
+ def blank?; end
85
+
86
+ sig { returns(T::Boolean) }
87
+ def present?; end
88
+
83
89
  sig { returns(T::Boolean) }
84
90
  def extractable_options?; end
85
91
  end
86
92
 
87
93
  class Array
94
+ sig { returns(T::Boolean) }
95
+ def blank?; end
96
+
97
+ sig { returns(T::Boolean) }
98
+ def present?; end
99
+
88
100
  sig { params(position: Integer).returns(T.self_type) }
89
101
  def from(position); end
90
102
 
@@ -247,9 +259,21 @@ class Time
247
259
  # @shim: since `blank?` is always false, `present?` always returns `true`
248
260
  sig { returns(TrueClass) }
249
261
  def present?; end
262
+
263
+ sig { returns(ActiveSupport::TimeZone) }
264
+ def self.zone; end
265
+
266
+ sig { returns(T.any(ActiveSupport::TimeWithZone, ::Time)) }
267
+ def self.current; end
250
268
  end
251
269
 
252
270
  class Symbol
271
+ sig { returns(T::Boolean) }
272
+ def blank?; end
273
+
274
+ sig { returns(T::Boolean) }
275
+ def present?; end
276
+
253
277
  # alias for `#start_with?`
254
278
  sig { params(string_or_regexp: T.any(String, Regexp)).returns(T::Boolean) }
255
279
  def starts_with?(*string_or_regexp); end
@@ -347,6 +371,9 @@ class String
347
371
  sig { params(count: T.nilable(T.any(Integer, Symbol)), locale: T.nilable(Symbol)).returns(String) }
348
372
  def pluralize(count = nil, locale = :en); end
349
373
 
374
+ sig { returns(T::Boolean) }
375
+ def present?; end
376
+
350
377
  sig { params(patterns: T.any(String, Regexp)).returns(String) }
351
378
  def remove(*patterns); end
352
379
 
@@ -418,4 +445,8 @@ class ActiveSupport::ErrorReporter
418
445
 
419
446
  sig { params(error: Exception, handled: T::Boolean, severity: T.nilable(Symbol), context: T::Hash[Symbol, T.untyped], source: T.nilable(String)).void }
420
447
  def report(error, handled: true, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil)); end
448
+
449
+ # @version >= 7.2.0.beta1
450
+ sig { params(error: T.any(Exception, String), severity: T.nilable(Symbol), context: T::Hash[Symbol, T.untyped], source: T.nilable(String)).void }
451
+ def unexpected(error, severity: T.unsafe(nil), context: T.unsafe(nil), source: T.unsafe(nil)); end
421
452
  end
@@ -0,0 +1,119 @@
1
+ # typed: true
2
+
3
+ # DO NOT EDIT MANUALLY
4
+ # This file was pulled from a central RBI files repository.
5
+ # Please run `bin/tapioca annotations` to update it.
6
+
7
+ module Minitest::Assertions
8
+ sig { params(test: T.anything, msg: T.anything).returns(TrueClass) }
9
+ def assert(test, msg = nil); end
10
+
11
+ sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
12
+ def assert_empty(obj, msg = nil); end
13
+
14
+ sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
15
+ def assert_equal(exp, act, msg = nil); end
16
+
17
+ sig { params(exp: T.anything, act: T.anything, delta: Numeric, msg: T.anything).returns(TrueClass) }
18
+ def assert_in_delta(exp, act, delta = T.unsafe(nil), msg = nil); end
19
+
20
+ sig { params(a: T.anything, b: T.anything, epsilon: Numeric, msg: T.anything).returns(TrueClass) }
21
+ def assert_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = nil); end
22
+
23
+ sig { params(collection: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
24
+ def assert_includes(collection, obj, msg = nil); end
25
+
26
+ sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
27
+ def assert_instance_of(cls, obj, msg = nil); end
28
+
29
+ sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
30
+ def assert_kind_of(cls, obj, msg = nil); end
31
+
32
+ sig { params(matcher: T.any(String, Regexp), obj: T.anything, msg: T.anything).returns(MatchData) }
33
+ def assert_match(matcher, obj, msg = nil); end
34
+
35
+ sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
36
+ def assert_nil(obj, msg = nil); end
37
+
38
+ sig { params(o1: T.anything, op: T.any(Symbol, String), o2: T.anything, msg: T.anything).returns(TrueClass) }
39
+ def assert_operator(o1, op, o2 = T.unsafe(nil), msg = nil); end
40
+
41
+ sig { params(stdout: T.nilable(T.any(String, Regexp)), stderr: T.nilable(T.any(String, Regexp)), block: T.proc.void).returns(T::Boolean) }
42
+ def assert_output(stdout = nil, stderr = nil, &block); end
43
+
44
+ sig { params(path: T.any(String, Pathname), msg: T.anything).returns(TrueClass) }
45
+ def assert_path_exists(path, msg = nil); end
46
+
47
+ sig { params(block: T.proc.void).returns(TrueClass) }
48
+ def assert_pattern(&block); end
49
+
50
+ sig { params(o1: T.anything, op: T.any(String, Symbol), msg: T.anything).returns(TrueClass) }
51
+ def assert_predicate(o1, op, msg = nil); end
52
+
53
+ sig { params(exp: NilClass, block: T.proc.void).returns(StandardError) }
54
+ sig { type_parameters(:T).params(exp: T.any(T::Class[T.type_parameter(:T)], Regexp, String), block: T.proc.void).returns(T.type_parameter(:T)) }
55
+ def assert_raises(*exp, &block); end
56
+
57
+ sig { params(obj: T.anything, meth: T.any(String, Symbol), msg: T.anything, include_all: T::Boolean).returns(TrueClass) }
58
+ def assert_respond_to(obj, meth, msg = nil, include_all: false); end
59
+
60
+ sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
61
+ def assert_same(exp, act, msg = nil); end
62
+
63
+ sig { params(send_ary: T::Array[T.anything], m: T.anything).returns(T::Boolean) }
64
+ def assert_send(send_ary, m = nil); end
65
+
66
+ sig { params(block: T.proc.void).returns(T::Boolean) }
67
+ def assert_silent(&block); end
68
+
69
+ sig { params(sym: Symbol, msg: T.anything, block: T.proc.void).returns(T.anything) }
70
+ def assert_throws(sym, msg = nil, &block); end
71
+
72
+ sig { params(test: T.anything, msg: T.anything).returns(TrueClass) }
73
+ def refute(test, msg = nil); end
74
+
75
+ sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
76
+ def refute_empty(obj, msg = nil); end
77
+
78
+ sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
79
+ def refute_equal(exp, act, msg = nil); end
80
+
81
+ sig { params(exp: T.anything, act: T.anything, delta: Numeric, msg: T.anything).returns(TrueClass) }
82
+ def refute_in_delta(exp, act, delta = T.unsafe(nil), msg = nil); end
83
+
84
+ sig { params(a: T.anything, b: T.anything, epsilon: Numeric, msg: T.anything).returns(TrueClass) }
85
+ def refute_in_epsilon(a, b, epsilon = T.unsafe(nil), msg = nil); end
86
+
87
+ sig { params(collection: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
88
+ def refute_includes(collection, obj, msg = nil); end
89
+
90
+ sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
91
+ def refute_instance_of(cls, obj, msg = nil); end
92
+
93
+ sig { params(cls: T.anything, obj: T.anything, msg: T.anything).returns(TrueClass) }
94
+ def refute_kind_of(cls, obj, msg = nil); end
95
+
96
+ sig { params(matcher: T.any(String, Regexp), obj: T.anything, msg: T.anything).returns(TrueClass) }
97
+ def refute_match(matcher, obj, msg = nil); end
98
+
99
+ sig { params(obj: T.anything, msg: T.anything).returns(TrueClass) }
100
+ def refute_nil(obj, msg = nil); end
101
+
102
+ sig { params(block: T.proc.void).returns(TrueClass) }
103
+ def refute_pattern(&block); end
104
+
105
+ sig { params(o1: T.anything, op: T.any(Symbol, String), o2: T.anything, msg: T.anything).returns(TrueClass) }
106
+ def refute_operator(o1, op, o2 = T.unsafe(nil), msg = nil); end
107
+
108
+ sig { params(path: T.any(String, Pathname), msg: T.anything).returns(TrueClass) }
109
+ def refute_path_exists(path, msg = nil); end
110
+
111
+ sig { params(o1: T.anything, op: T.any(String, Symbol), msg: T.anything).returns(TrueClass) }
112
+ def refute_predicate(o1, op, msg = nil); end
113
+
114
+ sig { params(obj: T.anything, meth: T.any(String, Symbol), msg: T.anything, include_all: T::Boolean).returns(TrueClass) }
115
+ def refute_respond_to(obj, meth, msg = nil, include_all: false); end
116
+
117
+ sig { params(exp: T.anything, act: T.anything, msg: T.anything).returns(TrueClass) }
118
+ def refute_same(exp, act, msg = nil); end
119
+ end