Skip to content

Commit 651fa00

Browse files
author
github-actions
committed
Merge remote-tracking branch 'origin/main'
2 parents f33dc20 + 077b7ae commit 651fa00

File tree

27 files changed

+284
-262
lines changed

27 files changed

+284
-262
lines changed

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/addedittask/AddEditTaskScreenTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
3232
import androidx.test.filters.MediumTest
3333
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
3434
import com.example.android.architecture.blueprints.todoapp.R
35-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
35+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
3636
import com.google.accompanist.appcompattheme.AppCompatTheme
3737
import dagger.hilt.android.testing.HiltAndroidRule
3838
import dagger.hilt.android.testing.HiltAndroidTest
@@ -62,7 +62,7 @@ class AddEditTaskScreenTest {
6262
private val activity get() = composeTestRule.activity
6363

6464
@Inject
65-
lateinit var repository: TasksRepository
65+
lateinit var repository: TaskRepository
6666

6767
@Before
6868
fun setup() {
Lines changed: 55 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ import org.junit.runner.RunWith
3434
@ExperimentalCoroutinesApi
3535
@RunWith(AndroidJUnit4::class)
3636
@SmallTest
37-
class TasksDaoTest {
37+
class TaskDaoTest {
3838

3939
// using an in-memory database because the information stored here disappears when the
4040
// process is killed
@@ -59,11 +59,16 @@ class TasksDaoTest {
5959
@Test
6060
fun insertTaskAndGetById() = runTest {
6161
// GIVEN - insert a task
62-
val task = LocalTask(title = "title", description = "description", id = "id")
63-
database.taskDao().insertTask(task)
62+
val task = LocalTask(
63+
title = "title",
64+
description = "description",
65+
id = "id",
66+
isCompleted = false,
67+
)
68+
database.taskDao().upsert(task)
6469

6570
// WHEN - Get the task by id from the database
66-
val loaded = database.taskDao().getTaskById(task.id)
71+
val loaded = database.taskDao().getById(task.id)
6772

6873
// THEN - The loaded data contains the expected values
6974
assertNotNull(loaded as LocalTask)
@@ -76,8 +81,13 @@ class TasksDaoTest {
7681
@Test
7782
fun insertTaskReplacesOnConflict() = runTest {
7883
// Given that a task is inserted
79-
val task = LocalTask(title = "title", description = "description", id = "id")
80-
database.taskDao().insertTask(task)
84+
val task = LocalTask(
85+
title = "title",
86+
description = "description",
87+
id = "id",
88+
isCompleted = false,
89+
)
90+
database.taskDao().upsert(task)
8191

8292
// When a task with the same id is inserted
8393
val newTask = LocalTask(
@@ -86,10 +96,10 @@ class TasksDaoTest {
8696
isCompleted = true,
8797
id = task.id
8898
)
89-
database.taskDao().insertTask(newTask)
99+
database.taskDao().upsert(newTask)
90100

91101
// THEN - The loaded data contains the expected values
92-
val loaded = database.taskDao().getTaskById(task.id)
102+
val loaded = database.taskDao().getById(task.id)
93103
assertEquals(task.id, loaded?.id)
94104
assertEquals("title2", loaded?.title)
95105
assertEquals("description2", loaded?.description)
@@ -99,11 +109,16 @@ class TasksDaoTest {
99109
@Test
100110
fun insertTaskAndGetTasks() = runTest {
101111
// GIVEN - insert a task
102-
val task = LocalTask(title = "title", description = "description", id = "id")
103-
database.taskDao().insertTask(task)
112+
val task = LocalTask(
113+
title = "title",
114+
description = "description",
115+
id = "id",
116+
isCompleted = false,
117+
)
118+
database.taskDao().upsert(task)
104119

105120
// WHEN - Get tasks from the database
106-
val tasks = database.taskDao().getTasks()
121+
val tasks = database.taskDao().getAll()
107122

108123
// THEN - There is only 1 task in the database, and contains the expected values
109124
assertEquals(1, tasks.size)
@@ -116,8 +131,14 @@ class TasksDaoTest {
116131
@Test
117132
fun updateTaskAndGetById() = runTest {
118133
// When inserting a task
119-
val originalTask = LocalTask(title = "title", description = "description", id = "id")
120-
database.taskDao().insertTask(originalTask)
134+
val originalTask = LocalTask(
135+
title = "title",
136+
description = "description",
137+
id = "id",
138+
isCompleted = false,
139+
)
140+
141+
database.taskDao().upsert(originalTask)
121142

122143
// When the task is updated
123144
val updatedTask = LocalTask(
@@ -126,10 +147,10 @@ class TasksDaoTest {
126147
isCompleted = true,
127148
id = originalTask.id
128149
)
129-
database.taskDao().updateTask(updatedTask)
150+
database.taskDao().upsert(updatedTask)
130151

131152
// THEN - The loaded data contains the expected values
132-
val loaded = database.taskDao().getTaskById(originalTask.id)
153+
val loaded = database.taskDao().getById(originalTask.id)
133154
assertEquals(originalTask.id, loaded?.id)
134155
assertEquals("new title", loaded?.title)
135156
assertEquals("new description", loaded?.description)
@@ -145,13 +166,13 @@ class TasksDaoTest {
145166
id = "id",
146167
isCompleted = true
147168
)
148-
database.taskDao().insertTask(task)
169+
database.taskDao().upsert(task)
149170

150171
// When the task is updated
151172
database.taskDao().updateCompleted(task.id, false)
152173

153174
// THEN - The loaded data contains the expected values
154-
val loaded = database.taskDao().getTaskById(task.id)
175+
val loaded = database.taskDao().getById(task.id)
155176
assertEquals(task.id, loaded?.id)
156177
assertEquals(task.title, loaded?.title)
157178
assertEquals(task.description, loaded?.description)
@@ -161,48 +182,54 @@ class TasksDaoTest {
161182
@Test
162183
fun deleteTaskByIdAndGettingTasks() = runTest {
163184
// Given a task inserted
164-
val task = LocalTask(title = "title", description = "description", id = "id")
165-
database.taskDao().insertTask(task)
185+
val task = LocalTask(
186+
title = "title",
187+
description = "description",
188+
id = "id",
189+
isCompleted = false,
190+
)
191+
database.taskDao().upsert(task)
166192

167193
// When deleting a task by id
168-
database.taskDao().deleteTaskById(task.id)
194+
database.taskDao().deleteById(task.id)
169195

170196
// THEN - The list is empty
171-
val tasks = database.taskDao().getTasks()
197+
val tasks = database.taskDao().getAll()
172198
assertEquals(true, tasks.isEmpty())
173199
}
174200

175201
@Test
176202
fun deleteTasksAndGettingTasks() = runTest {
177203
// Given a task inserted
178-
database.taskDao().insertTask(
204+
database.taskDao().upsert(
179205
LocalTask(
180206
title = "title",
181207
description = "description",
182-
id = "id"
208+
id = "id",
209+
isCompleted = false,
183210
)
184211
)
185212

186213
// When deleting all tasks
187-
database.taskDao().deleteTasks()
214+
database.taskDao().deleteAll()
188215

189216
// THEN - The list is empty
190-
val tasks = database.taskDao().getTasks()
217+
val tasks = database.taskDao().getAll()
191218
assertEquals(true, tasks.isEmpty())
192219
}
193220

194221
@Test
195222
fun deleteCompletedTasksAndGettingTasks() = runTest {
196223
// Given a completed task inserted
197-
database.taskDao().insertTask(
224+
database.taskDao().upsert(
198225
LocalTask(title = "completed", description = "task", id = "id", isCompleted = true)
199226
)
200227

201228
// When deleting completed tasks
202-
database.taskDao().deleteCompletedTasks()
229+
database.taskDao().deleteCompleted()
203230

204231
// THEN - The list is empty
205-
val tasks = database.taskDao().getTasks()
232+
val tasks = database.taskDao().getAll()
206233
assertEquals(true, tasks.isEmpty())
207234
}
208235
}

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/statistics/StatisticsScreenTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
2424
import androidx.test.filters.MediumTest
2525
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
2626
import com.example.android.architecture.blueprints.todoapp.R
27-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
27+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
2828
import com.google.accompanist.appcompattheme.AppCompatTheme
2929
import dagger.hilt.android.testing.HiltAndroidRule
3030
import dagger.hilt.android.testing.HiltAndroidTest
@@ -53,7 +53,7 @@ class StatisticsScreenTest {
5353
private val activity get() = composeTestRule.activity
5454

5555
@Inject
56-
lateinit var repository: TasksRepository
56+
lateinit var repository: TaskRepository
5757

5858
@Before
5959
fun setup() {

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/taskdetail/TaskDetailScreenTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
2828
import androidx.test.filters.MediumTest
2929
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
3030
import com.example.android.architecture.blueprints.todoapp.data.Task
31-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
31+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
3232
import com.google.accompanist.appcompattheme.AppCompatTheme
3333
import dagger.hilt.android.testing.HiltAndroidRule
3434
import dagger.hilt.android.testing.HiltAndroidTest
@@ -56,7 +56,7 @@ class TaskDetailScreenTest {
5656
val composeTestRule = createAndroidComposeRule<HiltTestActivity>()
5757

5858
@Inject
59-
lateinit var repository: TasksRepository
59+
lateinit var repository: TaskRepository
6060

6161
@Before
6262
fun setup() {

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/tasks/AppNavigationTest.kt

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ import androidx.test.filters.LargeTest
3030
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
3131
import com.example.android.architecture.blueprints.todoapp.R
3232
import com.example.android.architecture.blueprints.todoapp.TodoNavGraph
33-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
33+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
3434
import com.google.accompanist.appcompattheme.AppCompatTheme
3535
import dagger.hilt.android.testing.HiltAndroidRule
3636
import dagger.hilt.android.testing.HiltAndroidTest
@@ -62,7 +62,7 @@ class AppNavigationTest {
6262
private val activity get() = composeTestRule.activity
6363

6464
@Inject
65-
lateinit var tasksRepository: TasksRepository
65+
lateinit var taskRepository: TaskRepository
6666

6767
@Before
6868
fun init() {
@@ -130,7 +130,7 @@ class AppNavigationTest {
130130
@Test
131131
fun taskDetailScreen_doubleUIBackButton() = runTest {
132132
val taskName = "UI <- button"
133-
tasksRepository.createTask(taskName, "Description")
133+
taskRepository.createTask(taskName, "Description")
134134

135135
setContent()
136136

@@ -159,7 +159,7 @@ class AppNavigationTest {
159159
@Test
160160
fun taskDetailScreen_doubleBackButton() = runTest {
161161
val taskName = "Back button"
162-
tasksRepository.createTask(taskName, "Description")
162+
taskRepository.createTask(taskName, "Description")
163163

164164
setContent()
165165

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksScreenTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ import androidx.test.ext.junit.runners.AndroidJUnit4
2929
import androidx.test.filters.MediumTest
3030
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
3131
import com.example.android.architecture.blueprints.todoapp.R
32-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
32+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
3333
import com.google.accompanist.appcompattheme.AppCompatTheme
3434
import dagger.hilt.android.testing.HiltAndroidRule
3535
import dagger.hilt.android.testing.HiltAndroidTest
@@ -61,7 +61,7 @@ class TasksScreenTest {
6161
private val activity get() = composeTestRule.activity
6262

6363
@Inject
64-
lateinit var repository: TasksRepository
64+
lateinit var repository: TaskRepository
6565

6666
@Before
6767
fun init() {

app/src/androidTest/java/com/example/android/architecture/blueprints/todoapp/tasks/TasksTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ import androidx.test.filters.LargeTest
3535
import com.example.android.architecture.blueprints.todoapp.HiltTestActivity
3636
import com.example.android.architecture.blueprints.todoapp.R
3737
import com.example.android.architecture.blueprints.todoapp.TodoNavGraph
38-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
38+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
3939
import com.google.accompanist.appcompattheme.AppCompatTheme
4040
import dagger.hilt.android.testing.HiltAndroidRule
4141
import dagger.hilt.android.testing.HiltAndroidTest
@@ -68,7 +68,7 @@ class TasksTest {
6868
private val activity get() = composeTestRule.activity
6969

7070
@Inject
71-
lateinit var repository: TasksRepository
71+
lateinit var repository: TaskRepository
7272

7373
@Before
7474
fun init() {

app/src/main/java/com/example/android/architecture/blueprints/todoapp/addedittask/AddEditTaskViewModel.kt

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ import androidx.lifecycle.ViewModel
2121
import androidx.lifecycle.viewModelScope
2222
import com.example.android.architecture.blueprints.todoapp.R
2323
import com.example.android.architecture.blueprints.todoapp.TodoDestinationsArgs
24-
import com.example.android.architecture.blueprints.todoapp.data.TasksRepository
24+
import com.example.android.architecture.blueprints.todoapp.data.TaskRepository
2525
import dagger.hilt.android.lifecycle.HiltViewModel
2626
import javax.inject.Inject
2727
import kotlinx.coroutines.flow.MutableStateFlow
@@ -47,7 +47,7 @@ data class AddEditTaskUiState(
4747
*/
4848
@HiltViewModel
4949
class AddEditTaskViewModel @Inject constructor(
50-
private val tasksRepository: TasksRepository,
50+
private val taskRepository: TaskRepository,
5151
savedStateHandle: SavedStateHandle
5252
) : ViewModel() {
5353

@@ -100,7 +100,7 @@ class AddEditTaskViewModel @Inject constructor(
100100
}
101101

102102
private fun createNewTask() = viewModelScope.launch {
103-
tasksRepository.createTask(uiState.value.title, uiState.value.description)
103+
taskRepository.createTask(uiState.value.title, uiState.value.description)
104104
_uiState.update {
105105
it.copy(isTaskSaved = true)
106106
}
@@ -111,7 +111,7 @@ class AddEditTaskViewModel @Inject constructor(
111111
throw RuntimeException("updateTask() was called but task is new.")
112112
}
113113
viewModelScope.launch {
114-
tasksRepository.updateTask(
114+
taskRepository.updateTask(
115115
taskId,
116116
title = uiState.value.title,
117117
description = uiState.value.description,
@@ -127,7 +127,7 @@ class AddEditTaskViewModel @Inject constructor(
127127
it.copy(isLoading = true)
128128
}
129129
viewModelScope.launch {
130-
tasksRepository.getTask(taskId).let { task ->
130+
taskRepository.getTask(taskId).let { task ->
131131
if (task != null) {
132132
_uiState.update {
133133
it.copy(

0 commit comments

Comments
 (0)