From 78219cc5219b364b17df48bd20e636bcfec39cc4 Mon Sep 17 00:00:00 2001 From: Joel Klinghed Date: Sat, 9 Nov 2024 18:42:20 +0100 Subject: documents: Add single merge tests local <-> documents Fixed DocumentFile#equals. DelayedDocumentFile was equal DocumentFile but DocumentFile wasn't equal to DelayedDocumentFile. --- .../org/the_jk/cleversync/io/documents/DocumentFile.kt | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) (limited to 'libs/documents/src/main/java/org/the_jk/cleversync') diff --git a/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt b/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt index 768b679..31aeb7f 100644 --- a/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt +++ b/libs/documents/src/main/java/org/the_jk/cleversync/io/documents/DocumentFile.kt @@ -40,8 +40,22 @@ internal class DocumentFile( } } - override fun equals(other: Any?) = other is DocumentFile && - DocumentsContract.getDocumentId(other.documentUri) == DocumentsContract.getDocumentId(documentUri) + override fun equals(other: Any?): Boolean { + return when (other) { + is DocumentFile -> { + DocumentsContract.getDocumentId(other.documentUri) == + DocumentsContract.getDocumentId(documentUri) + } + + is DelayedCreationDocumentFile -> { + other == this + } + + else -> { + false + } + } + } override fun hashCode() = DocumentsContract.getDocumentId(documentUri).hashCode() override fun toString() = DocumentsContract.getDocumentId(documentUri) ?: "null" } -- cgit v1.2.3-70-g09d2