From bf8b6d3157f79dfaa1f3d41a7edec79c06e3b990 Mon Sep 17 00:00:00 2001 From: Mark Renouf Date: Tue, 27 Feb 2024 16:23:56 -0500 Subject: Fix Valid to contain non nullable value This corrects a design mistake: the Valid subclass of ValidationResult should have a non-null value, so the value can be taken directly after a smart-cast. Usage becomes more concise: when (val result = validateInput(source) { is Valid -> processValue(result.value) // also result.warnings is Invalid -> handleInvalid(result.errors) } Bug: 309960444 Test: atest com.android.intentresolver.v2.validation Change-Id: Ia4ee53413d729e551b8b7ec21a8765ae7d4f5e95 --- .../v2/validation/ValidationResultSubject.kt | 22 ---------------------- 1 file changed, 22 deletions(-) delete mode 100644 tests/shared/src/com/android/intentresolver/v2/validation/ValidationResultSubject.kt (limited to 'tests/shared/src') diff --git a/tests/shared/src/com/android/intentresolver/v2/validation/ValidationResultSubject.kt b/tests/shared/src/com/android/intentresolver/v2/validation/ValidationResultSubject.kt deleted file mode 100644 index 1ff0ce8e..00000000 --- a/tests/shared/src/com/android/intentresolver/v2/validation/ValidationResultSubject.kt +++ /dev/null @@ -1,22 +0,0 @@ -package com.android.intentresolver.v2.validation - -import com.google.common.truth.FailureMetadata -import com.google.common.truth.IterableSubject -import com.google.common.truth.Subject -import com.google.common.truth.Truth.assertAbout - -class ValidationResultSubject(metadata: FailureMetadata, private val actual: ValidationResult<*>?) : - Subject(metadata, actual) { - - fun isSuccess() = check("isSuccess()").that(actual?.isSuccess()).isTrue() - fun isFailure() = check("isSuccess()").that(actual?.isSuccess()).isFalse() - - fun value(): Subject = check("value").that(actual?.value) - - fun findings(): IterableSubject = check("findings").that(actual?.findings) - - companion object { - fun assertThat(input: ValidationResult<*>): ValidationResultSubject = - assertAbout(::ValidationResultSubject).that(input) - } -} -- cgit v1.2.3-59-g8ed1b