1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
Commit graph

53 commits

Author SHA1 Message Date
headius
2d1f3ed151 * test/ruby/test_m17n_comb.rb: test_str_crypt split into strict
and non-strict versions to allow masking out non-strict when
  glibc version cannot be determined ().

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50366 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-04-21 18:44:10 +00:00
nobu
4c0106ead6 string.c: smart chomp
* string.c (chompped_length): enable smart chomp for all non-dummy
  encoding strings, not only default_rs.
  [ruby-core:68258] [Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@49706 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2015-02-24 00:47:12 +00:00
nobu
d2d9257cd4 string.c: raise at invalid byte sequence
* string.c (rb_str_count): raise at invalid byte sequence argument
  even if single-byte optimization is effective.
  [ruby-dev:48442] [Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-07-22 04:33:38 +00:00
akr
741b7c46b8 Fix a constant reference.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 08:33:39 +00:00
akr
778fd51482 * test/ruby/test_m17n_comb.rb (test_str_crypt): Use Etc.confstr to
detect the glibc version.
  libc.so is not an executable on Debian GNU/kFreeBSD 7.0 (wheezy).



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-05-18 07:43:45 +00:00
nobu
2dc8f669a8 test_m17n_comb.rb: refine assertions
* test/ruby/test_m17n_comb.rb (test_str_scan): refine assertion
  messages.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2014-03-27 09:08:51 +00:00
nobu
3ac0ec4ecd test/ruby: better assertions
* test/ruby: use better assertions instead of mere assert.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@44173 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-12-13 09:18:05 +00:00
glass
81629f0531 * string.c (rb_str_enumerate_lines): make String#each_line and
#lines not raise invalid byte sequence error when it is called
  with an argument. The patch also causes performance improvement.
  [ruby-dev:47549] [Bug ]

* test/ruby/test_m17n_comb.rb (test_str_each_line): remove
  assertions which check that String#each_line and #lines will
  raise an error if the receiver includes invalid byte sequence.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-09-18 14:34:04 +00:00
naruse
f685b40129 rename a() to b() and define a() for US-ASCII
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-20 09:10:17 +00:00
naruse
42bf899458 * string.c (rb_str_succ): add missing case NEIGHBOR_WRAPPED.
r42078 caused buggy behavior like "\xFF".b -> "\x01\xFF".b

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-20 09:10:12 +00:00
nobu
e6a6dd8e7e string.c: wchar succ
* string.c (enc_succ_char, enc_pred_char): consider wchar case.
  [ruby-core:56071] [Bug ]
* string.c (rb_str_succ): do not replace with invalid char.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@42078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-07-20 03:14:09 +00:00
naruse
edacc7d236 Get libc's path by ldd [Bug ] [ruby-core:52129]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-02-12 03:18:04 +00:00
naruse
9d71f70da9 * test/ruby/test_m17n_comb.rb (test_str_crypt): Use RbConfig to get
libc's directory. Patched by Vit Ondruch [ruby-core:49763] [Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37773 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 15:29:59 +00:00
naruse
bf445c240a fix guards for glibc crypt(3) see
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37766 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-20 13:09:15 +00:00
naruse
64757d284a glibc 2.16 or later denies salt contained other than [0-9A-Za-z./] [Bug ]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37622 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-11-11 08:15:53 +00:00
naruse
2053b5f453 * enc/shift_jis.c (code_to_mbclen): return
ONIGERR_INVALID_CODE_POINT_VALUE if the code is invalid.

* enc/shift_jis.c (tr_next): increment character until the code
  is a valid character. [ruby-dev:45652] [Bug ]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35724 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-05-20 13:32:16 +00:00
naruse
7f199d12e0 Add missing assert_warning.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@34991 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-03-12 15:17:27 +00:00
naruse
a8f5a06a68 * encoding.c (rb_enc_compatible): change the rule for empty strings:
remove the special treatment of the US-ASCII encoded empty string.
  Now Encoding.compatible? usually respect the encoding of the
  receiver.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30877 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-15 07:08:15 +00:00
nobu
c750f945c6 * test/ruby/test_m17n_comb.rb (TestM17NComb#test_str_scan):
assert_raise does not check exception message.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@30842 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2011-02-11 12:54:04 +00:00
akr
acd98555b5 move a non-combinational test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-13 03:36:20 +00:00
naruse
1e22306569 * string.c (rb_str_concat): use unsigned int for GB18030.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@29453 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-10-12 09:25:33 +00:00
mame
4f78e7fff4 * parse.y (rb_intern3): prohibit Symbol with an invalid encoding.
[ruby-core:24621]

* test/ruby/test_m17n_comb.rb: modify a test for above.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-03-16 16:26:04 +00:00
akr
fe98a03c53 * ext/socket/extconf.rb: suppress a warning.
* ext/extmk.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@26426 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2010-01-26 12:34:51 +00:00
naruse
a07b764f9e 300 should be enough for testing cyclic byte succ.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25654 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-11-05 00:57:57 +00:00
nobu
121d15ddda * string.c (chopped_length): get rid of unexpected exception.
see [ruby-core:26336].


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@25512 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-10-27 07:36:54 +00:00
nobu
287a34ae0d * {ext,lib,test}/**/*.rb: removed trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@22784 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2009-03-06 03:56:38 +00:00
yugui
a6c69a7d35 * test/ruby/test_m17n_comb.rb: feature changed in r20626.
follows it.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@20718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-12-13 04:45:56 +00:00
akr
43f77aaf1a revert previous commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19718 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-08 13:13:35 +00:00
akr
d245085630 add an assertion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19716 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-08 10:06:43 +00:00
matz
f2f2cd5bc6 * string.c (rb_str_comparable): string comparison should be
transitive.  [ruby-dev:36484]

* test/ruby/test_m17n_comb.rb (TestM17NComb#test_str_eq): test
  updated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19696 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-06 03:22:56 +00:00
akr
bd421aa2d2 * string.c (rb_str_sub_bang): fix coderange.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-10-02 11:46:40 +00:00
akr
ad50e0edb9 add a test. cf. [ruby-dev:36484].
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19528 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-24 12:29:01 +00:00
matz
c3e2e0e53f * string.c (rb_str_comparable): make ascii8bit string to be
compatible with any other encoding.

* string.c (rb_str_cmp): use rb_str_comparable() instead of
  rb_enc_compatible() since <=> is a comparison anyway.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-18 13:17:41 +00:00
matz
d5ec36c486 * transcode.c: add "Error" suffix for Encoding exception classes.
a patch from Tadashi Saito <shiba at mail2.accsnet.ne.jp> in
  [ruby-dev:36346].

* encoding.c (Init_Encoding): rename EncodingCompatibilityError to
  Encoding::CompatibilityError.  [ruby-dev:36366]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-18 08:57:33 +00:00
matz
377eb14a9f * string.c ():
* string.c ():

* string.c (single_byte_optimizable): make function inline.  based
  on a patch from Michael Selig <michael.selig at fs.com.au> in
  [ruby-core:18532].

* string.c (str_modify_keep_cr): new function act as
  rb_str_modify(), but don't clear coderange

* string.c (rb_str_casecmp): specialized for single byte strings.

* string.c (rb_str_splice): preserve coderange.

* string.c (rb_str_slice_bang, rb_str_reverse_bang,
  rb_str_upcase_bang, rb_str_downcase_bang, tr_trans,
  rb_str_capitalize_bang, rb_str_swapcase_bang,
  rb_str_delete_bang, rb_str_chop_bang, rb_str_chomp_bang,
  rb_str_lstrip_bang, rb_str_rstrip_bang): ditto.

* string.c (rb_str_clear): preset coderange.

* string.c (rb_str_split_m): specialized for splitting with a
  string.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@19377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-09-16 00:47:20 +00:00
kazu
60bc53a161 * test/ruby/test_m17n_comb.rb (TestM17NComb#test_str_crypt): add key and salt to error message.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18754 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-21 11:25:12 +00:00
naruse
85c41f4fbc * error.c (rb_eEncCompatError): add Exception.
* include/ruby/ruby.h: ditto.

* encoding.c (rb_enc_check): use rb_eEncCompatError.

* string.c (rb_enc_cr_str_buf_cat): ditto.

* string.c (rb_str_sub_bang): ditto.

* string.c (rb_str_hex): ditto.

* string.c (rb_str_oct): ditto.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@18546 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-08-12 18:17:05 +00:00
akr
2ca7298386 test_str_slice! refactored.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@17891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-07-05 12:33:55 +00:00
matz
60219a0aa3 * string.c (tr_trans): should squeeze properly. [ruby-dev:34587]
* string.c (tr_trans): had a bug in treating multi-byte character
  replacement. 

* string.c (rb_str_delete_bang): need not to do anything for empty
  strings. 

* test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_delete): add
  test for empty receiver.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@16317 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-05-07 16:15:45 +00:00
matz
6b36f117f2 * prelude.rb (require_relative): move require_relative from
lib/require_relative.rb.  [ruby-core:16356]

* lib/require_relative.rb: removed.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-04-12 14:50:18 +00:00
matz
bbc2f80a32 * re.c (rb_reg_regsub): remove too strict encoding check.
[ruby-dev:33966]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15673 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-03 08:22:18 +00:00
akr
00bf4e8a84 * test/ruby/allpairs.rb: new file for all pairs method.
* test/ruby/test_m17n_comb.rb: use allpairs.rb to reduce test cases.

* test/ruby/test_sprintf_comb.rb: ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15658 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-03-01 04:12:13 +00:00
matz
99de7f24f7 * test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_chomp): test
updated.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15644 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-29 14:57:04 +00:00
matz
deff2a3e24 * string.c (rb_str_rpartition): calculation was done in byte indexing.
* test/ruby/test_m17n_comb.rb (TestM17NComb::test_str_start_with):
  allow start_with? matching on broken strings.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15639 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-29 06:19:21 +00:00
akr
b8fd2fabbe * re.c (rb_reg_prepare_re): add enable_warning parameter.
(rb_reg_adjust_startpos): disable warning by rb_reg_prepare_re.
  (rb_reg_search): follow rb_reg_prepare_re parameter change.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15524 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-02-17 12:54:17 +00:00
akr
b1e6c052cd * string.c (rb_str_succ): don't increment/decrement codepoint.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15268 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 08:21:24 +00:00
akr
3f68c10536 tests refined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15264 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-27 02:38:10 +00:00
akr
0dfda18777 add tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15262 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-26 22:48:12 +00:00
akr
25fc9d25f7 fix previous change.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15192 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-23 15:34:31 +00:00
akr
da8e083ba6 test refined.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@15190 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2008-01-23 14:37:20 +00:00