require "minitest/autorun"
class TestMySanitizer < Minitest::Test
def setup
@sanitizer = MySanitizer.new
end
def test_that_return_value_is_correct
string_to_be_sanitized = "O H A I \t\t\n !"
assert_equal "OHAI!", sanitizer.sanitize_spaces(string_to_be_sanitized)
end
def test_that_nowhitespace_input_is_unaffected
nowhitespace = "OHAI!"
assert_equal nowhitespace, sanitizer.sanitize_spaces(nowhitespace)
end
end
1条答案
按热度按时间knpiaxh11#
我认为这个方法不应该是公共的(大概您只是想给一段逻辑起个名字,这样它更容易阅读),如果它不是公共的,那么我就不会测试它(您正在测试实现细节)。
但是如果你给予的清理代码是一个更大逻辑的例子,或者它是一个广泛使用的帮助器方法,你可以这样做:
(我假设该方法 Package 在一个名为
MySanitizer
的类中)从理论上讲,您可以更进一步,进行包含每种形式的空格和非空格字符的测试,但是您的测试(自动化或其他)不太可能比Ruby gsub标准库中已经存在的测试更好,所以除了验证是否存在影响空格的东西之外,验证其他任何东西都不是特别有用。