Module: Spectus::Result::Base Private

Included in:
Fail, Pass
Defined in:
lib/spectus/result/base.rb

Overview

This module is part of a private API. You should avoid using this module if possible, as it may be removed or be changed in the future.

Result base’s module.

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#actual#object_id (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The value that the subject return through its challenge.

Returns:

  • (#object_id)

    The value that the subject return through its challenge.



55
56
57
# File 'lib/spectus/result/base.rb', line 55

def actual
  @actual
end

#challengeSymbol (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The method to call on the subject.

Returns:

  • (Symbol)

    The method to call on the subject.



49
50
51
# File 'lib/spectus/result/base.rb', line 49

def challenge
  @challenge
end

#error#exception? (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns Any possible raised exception.

Returns:

  • (#exception, nil)

    Any possible raised exception.



71
72
73
# File 'lib/spectus/result/base.rb', line 71

def error
  @error
end

#expected#matches? (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The definition of the expected value.

Returns:

  • (#matches?)

    The definition of the expected value.



60
61
62
# File 'lib/spectus/result/base.rb', line 60

def expected
  @expected
end

#got#object_id (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The result of the boolean comparison between the actual value and the expected value.

Returns:

  • (#object_id)

    The result of the boolean comparison between the actual value and the expected value.



66
67
68
# File 'lib/spectus/result/base.rb', line 66

def got
  @got
end

#level:High, ... (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The level of the expectation.

Returns:

  • (:High, :Medium, :Low)

    The level of the expectation.



76
77
78
# File 'lib/spectus/result/base.rb', line 76

def level
  @level
end

#subject#object_id (readonly)

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns The untrusted object to be tested.

Returns:

  • (#object_id)

    The untrusted object to be tested.



44
45
46
# File 'lib/spectus/result/base.rb', line 44

def subject
  @subject
end

Instance Method Details

#initialize(message, subject, challenge, actual, expected, got, error, level, negate, valid) ⇒ Object

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Initialize the result class.

Parameters:

  • message (#to_s)

    It is describing the actual/error value.

  • subject (#object_id)

    The untrusted object to be tested.

  • challenge (Defi::Challenge)

    The challenge for the subject.

  • actual (#object_id)

    The value that the subject return through its challenge.

  • expected (#matches?)

    The definition of the expected value.

  • got (#object_id)

    The result of the boolean comparison between the actual value and the expected value.

  • error (#exception, nil)

    Any possible raised exception.

  • level (:High, :Medium, :Low)

    The level of the expectation.

  • negate (Boolean)

    Evaluate to a negative assertion.

  • valid (Boolean)

    Report if the test was true or false.



26
27
28
29
30
31
32
33
34
35
36
37
38
39
# File 'lib/spectus/result/base.rb', line 26

def initialize(message, subject, challenge, actual, expected, got, error,
               level, negate, valid)

  @message    = message.to_s
  @subject    = subject
  @challenge  = challenge
  @actual     = actual
  @expected   = expected
  @got        = got
  @error      = error
  @level      = level
  @negate     = negate
  @valid      = valid
end

#negate?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The value of the negate instance variable.

Returns:

  • (Boolean)

    Evaluated to a negative assertion or not.



81
82
83
# File 'lib/spectus/result/base.rb', line 81

def negate?
  @negate
end

#to_hHash

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Properties of the result.

Returns:

  • (Hash)

    The properties of the result.



96
97
98
99
100
101
102
103
104
105
106
107
108
109
# File 'lib/spectus/result/base.rb', line 96

def to_h
  {
    subject:    subject,
    challenge:  challenge.to_h,
    actual:     actual,
    expected:   expected.to_h,
    got:        got,
    error:      error,
    level:      level,
    negate:     negate?,
    valid:      valid?,
    result:     result?
  }
end

#valid?Boolean

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

The value of the boolean comparison between the actual value and the expected value.

Returns:

  • (Boolean)

    The test was true or false.



89
90
91
# File 'lib/spectus/result/base.rb', line 89

def valid?
  @valid
end