Interface AssertionResult

All Known Implementing Classes:
AssertionResult.Failure, AssertionResult.Success

public sealed interface AssertionResult permits AssertionResult.Success, AssertionResult.Failure
Assertion Result - Sealed interface for assertion results 断言结果 - 断言结果的密封接口

Represents the result of an assertion, used for soft assertions where failures are collected rather than immediately thrown.

表示断言的结果,用于软断言场景,失败被收集而非立即抛出。

Features | 主要功能:

  • Sealed interface with Success and Failure implementations - 密封接口,包含Success和Failure实现
  • Immutable assertion results - 不可变断言结果
  • Optional expected/actual value tracking in failures - 失败中可选的期望值/实际值跟踪

Usage Example | 使用示例:

AssertionResult result = checkCondition()
    ? AssertionResult.success()
    : AssertionResult.failure("Condition failed", expected, actual);

if (!result.passed()) {
    failures.add(result);
}

Security | 安全性:

  • Thread-safe: Yes (immutable) - 线程安全: 是(不可变)
  • Null-safe: Yes - 空值安全: 是
Since:
JDK 25, opencode-base-test V1.0.0
Author:
Leon Soo www.LeonSoo.com
See Also:
  • Method Details

    • passed

      boolean passed()
      Whether the assertion passed. 断言是否通过。
      Returns:
      true if passed | 如果通过返回 true
    • success

      static AssertionResult success()
      Creates a success result. 创建成功结果。
      Returns:
      success result | 成功结果
    • failure

      static AssertionResult failure(String message)
      Creates a failure result. 创建失败结果。
      Parameters:
      message - the failure message | 失败消息
      Returns:
      failure result | 失败结果
    • failure

      static AssertionResult failure(String message, Object expected, Object actual)
      Creates a failure result with expected and actual values. 创建带期望值和实际值的失败结果。
      Parameters:
      message - the failure message | 失败消息
      expected - the expected value | 期望值
      actual - the actual value | 实际值
      Returns:
      failure result | 失败结果