From 1b86870add845f908446c17bfaf9c5197ae2874d Mon Sep 17 00:00:00 2001 From: lyzlovazlata Date: Sat, 11 Apr 2026 10:34:40 +0300 Subject: [PATCH 1/2] Change time and id asignment logic (only tests, usecase) --- ai/build.gradle.kts | 2 +- app/build.gradle.kts | 2 +- data/build.gradle.kts | 2 +- domain/build.gradle.kts | 2 +- .../domain/usecase/CreateFolderUseCase.kt | 10 +++++-- .../itlab/domain/usecase/CreateNoteUseCase.kt | 10 ++++++- .../com/itlab/domain/FolderUseCasesTest.kt | 28 +++++++++++-------- .../java/com/itlab/domain/NoteUseCasesTest.kt | 26 +++++++++-------- 8 files changed, 51 insertions(+), 31 deletions(-) diff --git a/ai/build.gradle.kts b/ai/build.gradle.kts index 2218887..67d1eee 100644 --- a/ai/build.gradle.kts +++ b/ai/build.gradle.kts @@ -7,7 +7,7 @@ plugins { android { namespace = "com.itlab.ai" compileSdk { - version = release(37) + version = preview("CinnamonBun") } defaultConfig { diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1bbae64..782cb25 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.notes" compileSdk { - version = release(37) + version = preview("CinnamonBun") } defaultConfig { diff --git a/data/build.gradle.kts b/data/build.gradle.kts index d7aab12..979654b 100644 --- a/data/build.gradle.kts +++ b/data/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.data" - compileSdk = 37 + compileSdkPreview = "CinnamonBun" defaultConfig { minSdk = 33 diff --git a/domain/build.gradle.kts b/domain/build.gradle.kts index f9bed20..b74a693 100644 --- a/domain/build.gradle.kts +++ b/domain/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.domain" compileSdk { - version = release(37) + version = preview("CinnamonBun") } defaultConfig { diff --git a/domain/src/main/java/com/itlab/domain/usecase/CreateFolderUseCase.kt b/domain/src/main/java/com/itlab/domain/usecase/CreateFolderUseCase.kt index b0d06dc..e4d68a7 100644 --- a/domain/src/main/java/com/itlab/domain/usecase/CreateFolderUseCase.kt +++ b/domain/src/main/java/com/itlab/domain/usecase/CreateFolderUseCase.kt @@ -3,13 +3,19 @@ package com.itlab.domain.usecase import com.itlab.domain.model.NoteFolder import com.itlab.domain.repository.NoteFolderRepository import kotlinx.datetime.Clock +import java.util.UUID class CreateFolderUseCase( private val repo: NoteFolderRepository, ) { suspend operator fun invoke(folder: NoteFolder): String { - // discuss - val folder = folder.copy(createdAt = Clock.System.now()) + val now = Clock.System.now() + val folder = + folder.copy( + id = UUID.randomUUID().toString(), + createdAt = now, + updatedAt = now, + ) return repo.createFolder(folder) } } diff --git a/domain/src/main/java/com/itlab/domain/usecase/CreateNoteUseCase.kt b/domain/src/main/java/com/itlab/domain/usecase/CreateNoteUseCase.kt index fdc390a..ac3cc73 100644 --- a/domain/src/main/java/com/itlab/domain/usecase/CreateNoteUseCase.kt +++ b/domain/src/main/java/com/itlab/domain/usecase/CreateNoteUseCase.kt @@ -3,12 +3,20 @@ package com.itlab.domain.usecase import com.itlab.domain.model.Note import com.itlab.domain.repository.NotesRepository import kotlinx.datetime.Clock +import java.util.UUID class CreateNoteUseCase( private val repo: NotesRepository, ) { suspend operator fun invoke(note: Note): String { - val note = note.copy(createdAt = Clock.System.now()) + val now = Clock.System.now() + + val note = + note.copy( + id = UUID.randomUUID().toString(), + createdAt = now, + updatedAt = now, + ) return repo.createNote(note) } } diff --git a/domain/src/test/java/com/itlab/domain/FolderUseCasesTest.kt b/domain/src/test/java/com/itlab/domain/FolderUseCasesTest.kt index fbe465b..e66038c 100644 --- a/domain/src/test/java/com/itlab/domain/FolderUseCasesTest.kt +++ b/domain/src/test/java/com/itlab/domain/FolderUseCasesTest.kt @@ -58,11 +58,11 @@ class FolderUseCasesTest { val create = CreateFolderUseCase(repo) val get = GetFolderUseCase(repo) - val folder = NoteFolder(id = "1", name = "Test") + val folder = NoteFolder(name = "Test") - create(folder) + val id = create(folder) - val result = get("1") + val result = get(id) assertEquals("Test", result?.name) } @@ -76,13 +76,16 @@ class FolderUseCasesTest { val update = UpdateFolderUseCase(repo) val get = GetFolderUseCase(repo) - val folder = NoteFolder(id = "1", name = "Old") - create(folder) + val folder = NoteFolder(name = "Old") - val updated = folder.copy(name = "New") + val id = create(folder) + + val created = get(id)!! + + val updated = created.copy(name = "New") update(updated) - val result = get("1") + val result = get(id) assertEquals("New", result?.name) } @@ -96,12 +99,13 @@ class FolderUseCasesTest { val delete = DeleteFolderUseCase(repo) val get = GetFolderUseCase(repo) - val folder = NoteFolder(id = "1", name = "Test") - create(folder) + val folder = NoteFolder(name = "Test") + + val id = create(folder) - delete("1") + delete(id) - val result = get("1") + val result = get(id) assertNull(result) } @@ -113,7 +117,7 @@ class FolderUseCasesTest { val create = CreateFolderUseCase(repo) val observe = ObserveFoldersUseCase(repo) - create(NoteFolder(id = "1", name = "A")) + create(NoteFolder(name = "A")) val list = observe().first() diff --git a/domain/src/test/java/com/itlab/domain/NoteUseCasesTest.kt b/domain/src/test/java/com/itlab/domain/NoteUseCasesTest.kt index be3d572..5cc745a 100644 --- a/domain/src/test/java/com/itlab/domain/NoteUseCasesTest.kt +++ b/domain/src/test/java/com/itlab/domain/NoteUseCasesTest.kt @@ -77,19 +77,21 @@ class NoteUseCasesTest { val delete = DeleteNoteUseCase(repo) val get = GetNoteUseCase(repo) - val note = Note(id = "n1", title = "A") + val note = Note(title = "A") - create(note) + val id = create(note) - val updated = note.copy(title = "B") + val created = get(id)!! + + val updated = created.copy(title = "B") update(updated) - val result = get("n1") + val result = get(id) assertEquals("B", result?.title) - delete("n1") + delete(id) - val result2 = get("n1") + val result2 = get(id) assertNull(result2) } @@ -105,12 +107,13 @@ class NoteUseCasesTest { val folder = NoteFolder(id = "f1", name = "Folder") folderRepo.createFolder(folder) - val note = Note(id = "n1", title = "Note") - createNote(note) + val note = Note(title = "Note") + + val noteId = createNote(note) - move("f1", "n1") + move("f1", noteId) - val updated = notesRepo.getNoteById("n1") + val updated = notesRepo.getNoteById(noteId) assertEquals("f1", updated?.folderId) } @@ -122,8 +125,7 @@ class NoteUseCasesTest { val observe = ObserveNotesUseCase(repo) val create = CreateNoteUseCase(repo) - create(Note(id = "n1", title = "Test")) - + create(Note(title = "Test")) val list = observe().first() assertEquals(1, list.size) From ec29ddace75504ba89b58eb7be8d83588eb4ff6d Mon Sep 17 00:00:00 2001 From: lyzlovazlata Date: Sat, 11 Apr 2026 11:07:48 +0300 Subject: [PATCH 2/2] back to 37 sdk --- ai/build.gradle.kts | 2 +- app/build.gradle.kts | 2 +- data/build.gradle.kts | 3 ++- domain/build.gradle.kts | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/ai/build.gradle.kts b/ai/build.gradle.kts index 67d1eee..2218887 100644 --- a/ai/build.gradle.kts +++ b/ai/build.gradle.kts @@ -7,7 +7,7 @@ plugins { android { namespace = "com.itlab.ai" compileSdk { - version = preview("CinnamonBun") + version = release(37) } defaultConfig { diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 782cb25..1bbae64 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.notes" compileSdk { - version = preview("CinnamonBun") + version = release(37) } defaultConfig { diff --git a/data/build.gradle.kts b/data/build.gradle.kts index 979654b..ca92b3a 100644 --- a/data/build.gradle.kts +++ b/data/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.data" - compileSdkPreview = "CinnamonBun" + compileSdk = 37 defaultConfig { minSdk = 33 @@ -31,6 +31,7 @@ android { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } + compileSdkMinor = 0 } kotlin { diff --git a/domain/build.gradle.kts b/domain/build.gradle.kts index b74a693..f9bed20 100644 --- a/domain/build.gradle.kts +++ b/domain/build.gradle.kts @@ -8,7 +8,7 @@ plugins { android { namespace = "com.itlab.domain" compileSdk { - version = preview("CinnamonBun") + version = release(37) } defaultConfig {