Class: SuccessResultTest

Inherits:
Minitest::Test
  • Object
show all
Defined in:
lib/success_result.rb

Overview

Tests for the SuccessResult class.

This suite verifies that the SuccessResult singleton behaves as expected:

  • It is a singleton (all calls to SuccessResult.instance return the same object)

  • The #success? method returns true and #failure? returns false

  • The default message and string representation are correct.

Instance Method Summary collapse

Instance Method Details

#test_default_success_result_constantObject



109
110
111
# File 'lib/success_result.rb', line 109

def test_default_success_result_constant
  assert_same SuccessResult.instance, DEFAULT_SUCCESS_RESULT, "Expected DEFAULT_SUCCESS_RESULT to be the same singleton instance"
end

#test_failure_methodObject



94
95
96
97
# File 'lib/success_result.rb', line 94

def test_failure_method
  sr = SuccessResult.instance
  refute sr.failure?, "Expected failure? to return false"
end

#test_messageObject



99
100
101
102
# File 'lib/success_result.rb', line 99

def test_message
  sr = SuccessResult.instance
  assert_equal 'Success', sr.message, "Expected message to be 'Success'"
end

#test_singletonObject



83
84
85
86
87
# File 'lib/success_result.rb', line 83

def test_singleton
  instance1 = SuccessResult.instance
  instance2 = SuccessResult.instance
  assert_same instance1, instance2, "Expected the singleton instances to be identical"
end

#test_success_methodObject



89
90
91
92
# File 'lib/success_result.rb', line 89

def test_success_method
  sr = SuccessResult.instance
  assert sr.success?, "Expected success? to return true"
end

#test_to_sObject



104
105
106
107
# File 'lib/success_result.rb', line 104

def test_to_s
  sr = SuccessResult.instance
  assert_equal 'SuccessResult', sr.to_s, "Expected to_s to return 'SuccessResult'"
end