iba 0.0.6 → 0.0.7

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: bc9ef58cc2d18bc4e74c789ebed62265cee83bfaf45ee7a7c5e21d2d73c216ca
4
- data.tar.gz: cbae41b9fae66df4aa717008627d1478d54e4cc61a90d48371460a23357d4dee
3
+ metadata.gz: fdfcd93322a8c4127a2de4efcf83856c0c8a8432224ca5e202e17b6a290d9795
4
+ data.tar.gz: 78badd47ea46837d1189fb2806dcffa8d3c9a5ed957556200d32908071648a03
5
5
  SHA512:
6
- metadata.gz: 7ba511885b585a67f8a8dec3b0792c2fd4bc63fd2e575580d22f9b1dab158b7f6e87ea32244ddb5461d2a36d3fcc8eb362c5944b28990728295e52f5ea192797
7
- data.tar.gz: 9ef4e73638d5fe567b0ae77a0ac031b3772c71353287aa5fea8a6d3cfd960fb1a1d5b18ca36dd6d8547abeeeaf0b2037b1357b4556c2d55adf4329702910a295
6
+ metadata.gz: d66a5c8de935f7afabeadf5aa6f07da23ee6ade4ec99b2c827b46d0a70e92d162dbf08850e6163e36c408f9b90e83c97437ef96f01d24804daf00d50bbab867c
7
+ data.tar.gz: 72b770be1f2bd34e296ee3b9d7ca3a2e2c170ec3758d465c44f22092d64c2754f328b3ad431d4dd824b03c712d39c24dc818ab4221d269daa20bbe41e9cb7f13
data/CHANGELOG.md ADDED
@@ -0,0 +1,46 @@
1
+ # Changelog
2
+
3
+ ## 0.0.7 / 2024-01-05
4
+
5
+ * Support Ruby 3.0 through 3.3, and JRuby 9.4 ([#63], [#64] and [#68] by [mvz])
6
+
7
+ [#63]: https://github.com/mvz/iba/pull/63
8
+ [#64]: https://github.com/mvz/iba/pull/64
9
+ [#68]: https://github.com/mvz/iba/pull/68
10
+
11
+ ## 0.0.6 / 2022-01-21
12
+
13
+ * Support Ruby 2.6 and up, as well as JRuby 9.3
14
+ * Display more subexpressions ([#13] by [mvz])
15
+ * Add and use VERSION constant ([#49] by [mvz])
16
+
17
+ [#13]: https://github.com/mvz/iba/pull/13
18
+ [#49]: https://github.com/mvz/iba/pull/49
19
+
20
+ ## 0.0.5 / 2018-03-25
21
+
22
+ * Target Ruby 2.2 and up
23
+ * Remove all use of eval ([#1] by [mvz])
24
+
25
+ [mvz]: https://github.com/mvz
26
+
27
+ [#1]: https://github.com/mvz/iba/pull/1
28
+
29
+ ## 0.0.4 / 2017-12-15
30
+
31
+ * Target Ruby 2.1 and up
32
+
33
+ ## 0.0.3 / 2014-05-09
34
+
35
+ * Make Iba work with Ruby 1.9
36
+
37
+ ## 0.0.2 / 2011-02-25
38
+
39
+ * Properly analyse comparison with arrays and strings
40
+ * Allow instance variables in asserted expression
41
+
42
+ ## 0.0.1 / 2011-01-02
43
+
44
+ * Initial release
45
+
46
+ No match for: Prepare version 0.0.7 for release
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2010--2011 Matijs van Zuijlen
1
+ Copyright (c) 2010--2011, 2014-2024 Matijs van Zuijlen
2
2
 
3
3
  Iba is free software; you can redistribute it and/or modify it under the
4
4
  terms of the GNU Lesser General Public License as published by the Free Software
@@ -12,5 +12,3 @@ more details.
12
12
 
13
13
  You should have received a copy of the GNU Lesser General Public License
14
14
  along with this library. If not, see <http://www.gnu.org/licenses/>.
15
-
16
-
data/README.md ADDED
@@ -0,0 +1,67 @@
1
+ # Iba
2
+
3
+ by Matijs van Zuijlen
4
+
5
+ ## Description
6
+
7
+ Introspective Block Assertions
8
+
9
+ ## Features/Problems
10
+
11
+ * Write assertions as a (one-expression) block
12
+ * Assertion message deconstructs the block's expression.
13
+ * Not done yet.
14
+
15
+ ## Synopsis
16
+
17
+ ```ruby
18
+ # In your test helper:
19
+ require 'iba'
20
+ class Test::Unit::TestCase
21
+ include Iba::BlockAssertion
22
+ end
23
+
24
+ # In your test:
25
+ foo = 24
26
+ assert { foo == 23 } # => "(foo == 23) is false
27
+ # foo is 24."
28
+ ```
29
+
30
+ ## Details
31
+
32
+ Iba provides an assert method that takes a block. If the block returns
33
+ false, it will try to construct an insightful error message based on the
34
+ contents of the block.
35
+
36
+ Iba's functionality is inspired by [Wrong], but doesn't use an external
37
+ Ruby parser. This means it will work in contexts where Wrong does not
38
+ (generated code, on the command line). It also means there are more limits
39
+ to the contents of the block.
40
+
41
+ Current limits:
42
+
43
+ * Only single-expression blocks are supported.
44
+ * The expression must start with a method-like identifier or an instance
45
+ variable (like `foo` or `@foo`, but not `Foo` or `23`). In practice,
46
+ this produces quite natural results.
47
+ * Local and instance variables whose names start with an underscore should
48
+ not be used inside the block.
49
+
50
+ Iba's implementation is inspired by [Arlo], a generic combinator library
51
+ for Python. The implementation of Arlo is now [on github][arlo-code].
52
+
53
+ ## Install
54
+
55
+ ```
56
+ gem install iba
57
+ ```
58
+
59
+ <!-- Links -->
60
+
61
+ [Wrong]: https://github.com/sconover/wrong
62
+ [Arlo]: https://web.archive.org/web/20081228090759/http://withoutane.com:80/rants/2008/12/arlo-generic-combinators-for-python
63
+ [arlo-code]: https://github.com/tangentstorm/workshop/blob/main/code/arlo.py
64
+
65
+ ## Licence
66
+
67
+ See the LICENSE file
data/lib/iba/version.rb CHANGED
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Iba
4
- VERSION = "0.0.6"
4
+ VERSION = "0.0.7"
5
5
  end
data/lib/iba.rb CHANGED
@@ -263,7 +263,7 @@ module Iba
263
263
  end
264
264
  else
265
265
  test, msg = *args
266
- super test, msg
266
+ super(test, msg)
267
267
  end
268
268
  end
269
269
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: iba
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.6
4
+ version: 0.0.7
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matijs van Zuijlen
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-01-21 00:00:00.000000000 Z
11
+ date: 2024-01-05 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -44,42 +44,42 @@ dependencies:
44
44
  requirements:
45
45
  - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: 1.25.0
47
+ version: '1.52'
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: 1.25.0
54
+ version: '1.52'
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rubocop-packaging
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: 0.5.0
61
+ version: 0.5.2
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: 0.5.0
68
+ version: 0.5.2
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: rubocop-performance
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
73
  - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: 1.13.0
75
+ version: '1.18'
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
80
  - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: 1.13.0
82
+ version: '1.18'
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: test-unit
85
85
  requirement: !ruby/object:Gem::Requirement
@@ -102,13 +102,14 @@ email:
102
102
  executables: []
103
103
  extensions: []
104
104
  extra_rdoc_files:
105
- - README.rdoc
105
+ - README.md
106
106
  - LICENSE
107
107
  - COPYING.LESSER
108
108
  files:
109
+ - CHANGELOG.md
109
110
  - COPYING.LESSER
110
111
  - LICENSE
111
- - README.rdoc
112
+ - README.md
112
113
  - lib/iba.rb
113
114
  - lib/iba/version.rb
114
115
  homepage: http://www.github.com/mvz/iba
@@ -117,25 +118,26 @@ licenses:
117
118
  metadata:
118
119
  homepage_uri: http://www.github.com/mvz/iba
119
120
  source_code_uri: https://github.com/mvz/iba
121
+ changelog_uri: https://github.com/mvz/iba/blob/master/CHANGELOG.md
120
122
  rubygems_mfa_required: 'true'
121
123
  post_install_message:
122
124
  rdoc_options:
123
125
  - "--main"
124
- - README.rdoc
126
+ - README.md
125
127
  require_paths:
126
128
  - lib
127
129
  required_ruby_version: !ruby/object:Gem::Requirement
128
130
  requirements:
129
131
  - - ">="
130
132
  - !ruby/object:Gem::Version
131
- version: 2.6.0
133
+ version: 3.0.0
132
134
  required_rubygems_version: !ruby/object:Gem::Requirement
133
135
  requirements:
134
136
  - - ">="
135
137
  - !ruby/object:Gem::Version
136
138
  version: '0'
137
139
  requirements: []
138
- rubygems_version: 3.3.3
140
+ rubygems_version: 3.5.3
139
141
  signing_key:
140
142
  specification_version: 4
141
143
  summary: Introspective Block Assertions
data/README.rdoc DELETED
@@ -1,62 +0,0 @@
1
- = Iba
2
-
3
- by Matijs van Zuijlen
4
-
5
- == Description
6
-
7
- Introspective Block Assertions
8
-
9
- == Features/Problems
10
-
11
- * Write assertions as a (one-expression) block
12
- * Assertion message deconstructs the block's expression.
13
- * Not done yet.
14
-
15
- == Synopsis
16
-
17
- # In your test helper:
18
- require 'iba'
19
- class Test::Unit::TestCase
20
- include Iba::BlockAssertion
21
- end
22
-
23
- # In your test:
24
- foo = 24
25
- assert { foo == 23 } # => "(foo == 23) is false
26
- # foo is 24."
27
-
28
- == Details
29
-
30
- Iba provides an assert method that takes a block. If the block returns
31
- false, it will try to construct an insightful error message based on the
32
- contents of the block.
33
-
34
- Iba's functionality is inspired by Wrong[1], but doesn't use an external
35
- Ruby parser. This means it will work in contexts where Wrong does not
36
- (generated code, on the command line). It also means there are more limits
37
- to the contents of the block.
38
-
39
- Current limits:
40
-
41
- * Only single-expression blocks are supported.
42
- * The expression must start with a method-like identifier or an instance
43
- variable (like 'foo' or '@foo', but not 'Foo' or '23'). In practice,
44
- this produces quite natural results.
45
- * Local and instance variables whose names start with an underscore should
46
- not be used inside the block.
47
-
48
- Iba's implementation is inspired by Arlo[2], a generic combinator library
49
- for Python.
50
-
51
- == Install
52
-
53
- gem install iba
54
-
55
- == Links
56
-
57
- [1] https://github.com/sconover/wrong
58
- [2] http://withoutane.com/rants/2008/12/arlo-generic-combinators-for-python
59
-
60
- == Licence
61
-
62
- See the LICENSE file.