summaryrefslogtreecommitdiffhomepage
path: root/test
AgeCommit message (Collapse)Author
2019-07-07Fix `Numeric#step` to infinity; ref. #4555KOBAYASHI Shuji
2019-06-30Fix `include`, `prepend` and `extend` to frozen objectKOBAYASHI Shuji
2019-06-29Merge pull request #4540 from dearblue/assert-nestingYukihiro "Matz" Matsumoto
Nested `assert` for mrbtest
2019-06-29Add test for `String#[]=`dearblue
2019-06-29Nested `assert` for mrbtestdearblue
When nesting `assert` used in test, it is indented and displayed. Assertion numbers are concatenated by `"-"` at this time. The purpose is to match the apparent numbers when failing with `assert_mruby` which is defined by `mrbgems/mruby-bin-mruby/bintest/mruby.rb` for example. Child assertions "skip" and "info" are reported as parent assertions "info" and `$ok_test += 1`. The child assertions "ko" and "crash" are reported as the parent assertion "ko" and `$ko_test += 1`. When child assertions are mixed, "ko" takes precedence. Incompatibility: - `$mrbtest_assert_idx` takes `nil` or an integer array object. So far it was `nil` or an integer. - `$asserts` points to the top of the internal stack in the `assert`. - `$mrbtest_assert` points to the top of the internal stack in `assert`.
2019-06-28Use `__ENCODING__` in testsKOBAYASHI Shuji
It cannot be used for `String#size` test if judging whether or not `MRB_UTF8_STRING` is defined by result of `String#size`.
2019-06-27Add modification tests for immediate valueKOBAYASHI Shuji
2019-06-22Add test for one UTF-8 charactordearblue
2019-06-21Move `Kernel#__send__` test to core from `mruby-metaprog`KOBAYASHI Shuji
2019-06-16Fix cvar, ivar, const and method can be removed to frozen objectKOBAYASHI Shuji
2019-06-10Merge pull request #4495 from shuujii/remove-Kernel-global_variables-from-coreYukihiro "Matz" Matsumoto
Remove `Kernel#global_variables` from core
2019-06-09Fix missing assertions in `test/t/syntax.rb`KOBAYASHI Shuji
2019-06-08Remove "Check the usage of a NUL character" testKOBAYASHI Shuji
Because there is not assertion in this test and NUL character literal is used in other tests.
2019-06-07Remove `Kernel#global_variables` from coreKOBAYASHI Shuji
This method is defined in `mruby-metaprog` gem.
2019-06-05Fix missing assertions in `test/t/module.rb`KOBAYASHI Shuji
2019-05-27Use `$undefined.equal?(obj2)` instead of `obj2 == $undefined` in `assert.rb`KOBAYASHI Shuji
In case `obj2.==` is broken.
2019-05-15Merge pull request #4400 from ↵Yukihiro "Matz" Matsumoto
shuujii/fix-name-assignment-to-frozen-anonymous-class-module Fix name assignment to frozen anonymous class/module
2019-05-03Simplify conversion process for `i` in `mrb_get_args()`KOBAYASHI Shuji
2019-04-29Refine the default values of `flunk`KOBAYASHI Shuji
The default message for the second argument should be set to the first argument because only one argument is normally specified.
2019-04-26Add `assert_raise_with_message` and `assert_raise_with_message_pattern`KOBAYASHI Shuji
2019-04-25Singleton class of frozen object should be frozenKOBAYASHI Shuji
Before this patch: p (class << Object.new.freeze; self end).frozen? #=> false sc = class << (o=Object.new); self end; o.freeze; p sc.frozen? #=> false After this patch / Ruby: p (class << Object.new.freeze; self end).frozen? #=> true sc = class << (o=Object.new); self end; o.freeze; p sc.frozen? #=> true
2019-04-24Fix modiying class variable to frozen class/moduleKOBAYASHI Shuji
2019-04-23Fix "ambiguous first argument" warning in `test/t/float.rb`KOBAYASHI Shuji
2019-04-23Fix name assignment to frozen anonymous class/moduleKOBAYASHI Shuji
Fix the following issues: A = Class.new.freeze #=> FrozenError Module.new::B = Class.new.freeze #=> FrozenError String::B = Module.new.freeze #=> FrozenError
2019-04-22Merge pull request #4356 from shuujii/add-assert_match-and-assert_not_matchYukihiro "Matz" Matsumoto
Add `assert_match` and `assert_not_match`
2019-04-22Add `assert_predicate` and `assert_operator`KOBAYASHI Shuji
2019-04-21Commented out `String#scan` because it is not implemented yetKOBAYASHI Shuji
2019-04-19Add type check (conversion) in `String#[]=`KOBAYASHI Shuji
Before this patch: 'a'[0] = 1 #=> 1 'a'[:a] = '1' #=> ArgumentError 'a'[:a, 0] = '1' #=> ArgumentError 'a'[0, :a] = '1' #=> ArgumentError 'a'[0, 1] = 1 #=> 1 After this patch / Ruby: 'a'[0] = 1 #=> TypeError 'a'[:a] = '1' #=> TypeError 'a'[:a, 0] = '1' #=> TypeError 'a'[0, :a] = '1' #=> TypeError 'a'[0, 1] = 1 #=> TypeError
2019-04-14Add `assert_match` and `assert_not_match`KOBAYASHI Shuji
2019-04-12Refine `assert_float`KOBAYASHI Shuji
Avoid arithmetic operations when `exp` and/or `act` are infinity or NaN.
2019-04-10Use `mrb_immediate_p()` in `mrb_obj_freeze()` and `mrb_obj_frozen()`KOBAYASHI Shuji
2019-04-07Fix test for `Array#slice`KOBAYASHI Shuji
2019-04-05`Module#alias_method` should return `self` in ISO standardKOBAYASHI Shuji
2019-03-31Fix warning: '*' interpreted as argument prefixKOBAYASHI Shuji
2019-03-30Add `pass` and `flunk` to `test/assert.rb`KOBAYASHI Shuji
2019-03-26Fix dealing with infinity and NaN in `test/assert.rb:assert_float`KOBAYASHI Shuji
`assert_float` is always passed when expected value and/or actual value are infinity or NaN. This behavior seems unintentional. Before this patch: assert_float(Float::INFINITY, 1.0) #=> pass assert_float(-Float::INFINITY, 1) #=> pass assert_float(1, 1/0) #=> pass assert_float(1, -1/0) #=> pass assert_float(1.0, Float::NAN) #=> pass assert_float(Float::NAN, 1) #=> pass After this patch: assert_float(Float::INFINITY, 1.0) #=> fail: Expected 1.0 to be Infinity. assert_float(-Float::INFINITY, 1) #=> fail: Expected 1 to be -Infinity. assert_float(1, 1/0) #=> fail: Expected Infinity to be 1. assert_float(1, -1/0) #=> fail: Expected -Infinity to be 1. assert_float(1.0, Float::NAN) #=> fail: Expected NaN to be 1.0. assert_float(Float::NAN, 1) #=> fail: Expected 1 to be NaN.
2019-03-25Remove implementation of `Symbol#===`KOBAYASHI Shuji
For reducing program size.
2019-03-25Update float test values to avoid precision errors.Yukihiro "Matz" Matsumoto
2019-03-25Avoid infinite binary floating numbers in `float`.Yukihiro "Matz" Matsumoto
2019-03-23Refactor `t_print` for testKOBAYASHI Shuji
2019-03-22Simplify `assert_step` in `test/t/numeric.rb`KOBAYASHI Shuji
2019-03-22Merge pull request #4334 from ↵Yukihiro "Matz" Matsumoto
shuujii/remove-redundant-content-in-assertion-failure-message-and-diff Remove redundant content in assertion failure message and diff
2019-03-21Fix `Float#eql?`KOBAYASHI Shuji
2019-03-21Remove redundant content in assertion failure message and diffKOBAYASHI Shuji
Based on minitest RubyGem. Example of before this patch: - Assertion[1] Failed: Expected 1 to be 2 Expected: 2 Actual: 1 - Assertion[2] Failed: Expected [1, 3] to include 2 Collection: [1, 3] Object: 2 Example of after this patch: - Assertion[1] Expected: 2 Actual: 1 - Assertion[2] Expected [1, 3] to include 2.
2019-03-19Use `FrozenError` instead of `RuntimeError` in frozen object modification testKOBAYASHI Shuji
2019-03-17Fix class/instance variable name validationKOBAYASHI Shuji
- `@@?` etc are invalid class variable name. - `@1` etc are invalid instance variable name.
2019-03-15Merge pull request #4328 from shuujii/fix-constant-name-validationYukihiro "Matz" Matsumoto
Fix constant name validation
2019-03-15Avoid using infinite binary floating point numbers in tests.Yukihiro "Matz" Matsumoto
2019-03-14Fix constant name validationKOBAYASHI Shuji
`X!` etc are invalid constant name.
2019-03-13Do not raise an exception when bintest failKOBAYASHI Shuji
- An exception do not raise when mrbtest fail. - There are no useful informations in exception message and backtrace.