Строковая функция JRuby 1.6.1 в режиме 1.9

Я только что обновился до jruby 1.6.1, и когда я работаю в режиме 1.9, следующая функция завершается ошибкой, когда сталкивается с определенными персонажами. Задача функции состоит в удалении нежелательных символов, а также начальных и конечных символов. Я добавляю следующую функцию в класс строки:

class String
  def strip_noise()
    return if empty? 
    self.force_encoding('utf-8').mb_chars.normalize(:kd).gsub(/[^\x00-\x7F]/n,'').to_s().strip()
  end
end

У меня есть следующий тест, который вызывает ошибку:

  def test_odd_characters()
    assert_equal("", "        \xC2\xA0".strip_noise())
  end

Я получаю исключение Java::JavaLang::NegativeArraySizeException: при запуске теста.

Это ошибка с jruby или кто-нибудь может мне помочь с лучшим решением?

1 ответ

Решение

Я вполне уверен, что это ошибка jruby, так как она работает в обычном ruby ​​1.9.2, я создал следующую версию jira.

Другие вопросы по тегам