Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit04924f6

Browse files
authored
Change createTest to return task ID (#928)
1 parent7313121 commit04924f6

File tree

8 files changed

+45
-48
lines changed

8 files changed

+45
-48
lines changed

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,7 @@ class StatisticsScreenTest {
6666
repository.apply {
6767
createTask("Title1","Description1")
6868
createTask("Title2","Description2").also {
69-
completeTask(it.id)
69+
completeTask(it)
7070
}
7171
}
7272

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

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ import androidx.lifecycle.SavedStateHandle
2727
importandroidx.test.ext.junit.runners.AndroidJUnit4
2828
importandroidx.test.filters.MediumTest
2929
importcom.example.android.architecture.blueprints.todoapp.HiltTestActivity
30-
importcom.example.android.architecture.blueprints.todoapp.data.Task
3130
importcom.example.android.architecture.blueprints.todoapp.data.TaskRepository
3231
importcom.google.accompanist.appcompattheme.AppCompatTheme
3332
importdagger.hilt.android.testing.HiltAndroidRule
@@ -66,13 +65,13 @@ class TaskDetailScreenTest {
6665
@Test
6766
funactiveTaskDetails_DisplayedInUi()= runTest {
6867
// GIVEN - Add active (incomplete) task to the DB
69-
valactiveTask= repository.createTask(
68+
valactiveTaskId= repository.createTask(
7069
title="Active Task",
7170
description="AndroidX Rocks"
7271
)
7372

7473
// WHEN - Details screen is opened
75-
setContent(activeTask)
74+
setContent(activeTaskId)
7675

7776
// THEN - Task details are displayed on the screen
7877
// make sure that the title/description are both shown and correct
@@ -85,11 +84,11 @@ class TaskDetailScreenTest {
8584
@Test
8685
funcompletedTaskDetails_DisplayedInUi()= runTest {
8786
// GIVEN - Add completed task to the DB
88-
valcompletedTask= repository.createTask("Completed Task","AndroidX Rocks")
89-
repository.completeTask(completedTask.id)
87+
valcompletedTaskId= repository.createTask("Completed Task","AndroidX Rocks")
88+
repository.completeTask(completedTaskId)
9089

9190
// WHEN - Details screen is opened
92-
setContent(completedTask)
91+
setContent(completedTaskId)
9392

9493
// THEN - Task details are displayed on the screen
9594
// make sure that the title/description are both shown and correct
@@ -99,14 +98,14 @@ class TaskDetailScreenTest {
9998
composeTestRule.onNode(isToggleable()).assertIsOn()
10099
}
101100

102-
privatefunsetContent(activeTask:Task) {
101+
privatefunsetContent(activeTaskId:String) {
103102
composeTestRule.setContent {
104103
AppCompatTheme {
105104
Surface {
106105
TaskDetailScreen(
107106
viewModel=TaskDetailViewModel(
108107
repository,
109-
SavedStateHandle(mapOf("taskId" toactiveTask.id))
108+
SavedStateHandle(mapOf("taskId" toactiveTaskId))
110109
),
111110
onEditTask= {/*TODO*/ },
112111
onBack= { },

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

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@ class TasksScreenTest {
9999
@Test
100100
fundisplayCompletedTask()= runTest {
101101
repository.apply {
102-
createTask("TITLE1","DESCRIPTION1").also { completeTask(it.id) }
102+
createTask("TITLE1","DESCRIPTION1").also { completeTask(it) }
103103
}
104104

105105
setContent()
@@ -134,7 +134,7 @@ class TasksScreenTest {
134134
@Test
135135
funmarkTaskAsActive()= runTest {
136136
repository.apply {
137-
createTask("TITLE1","DESCRIPTION1").also { completeTask(it.id) }
137+
createTask("TITLE1","DESCRIPTION1").also { completeTask(it) }
138138
}
139139

140140
setContent()
@@ -156,7 +156,7 @@ class TasksScreenTest {
156156
// Add one active task and one completed task
157157
repository.apply {
158158
createTask("TITLE1","DESCRIPTION1")
159-
createTask("TITLE2","DESCRIPTION2").also { completeTask(it.id) }
159+
createTask("TITLE2","DESCRIPTION2").also { completeTask(it) }
160160
}
161161

162162
setContent()
@@ -173,7 +173,7 @@ class TasksScreenTest {
173173
repository.apply {
174174
createTask("TITLE1","DESCRIPTION1")
175175
createTask("TITLE2","DESCRIPTION2")
176-
createTask("TITLE3","DESCRIPTION3").also { completeTask(it.id) }
176+
createTask("TITLE3","DESCRIPTION3").also { completeTask(it) }
177177
}
178178

179179
setContent()
@@ -190,8 +190,8 @@ class TasksScreenTest {
190190
// Add one active task and 2 completed tasks
191191
repository.apply {
192192
createTask("TITLE1","DESCRIPTION1")
193-
createTask("TITLE2","DESCRIPTION2").also { completeTask(it.id) }
194-
createTask("TITLE3","DESCRIPTION3").also { completeTask(it.id) }
193+
createTask("TITLE2","DESCRIPTION2").also { completeTask(it) }
194+
createTask("TITLE3","DESCRIPTION3").also { completeTask(it) }
195195
}
196196

197197
setContent()
@@ -208,7 +208,7 @@ class TasksScreenTest {
208208
// Add one active task and one completed task
209209
repository.apply {
210210
createTask("TITLE1","DESCRIPTION1")
211-
createTask("TITLE2","DESCRIPTION2").also { completeTask(it.id) }
211+
createTask("TITLE2","DESCRIPTION2").also { completeTask(it) }
212212
}
213213

214214
setContent()

‎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
@@ -195,7 +195,7 @@ class TasksTest {
195195
// Add 1 completed task
196196
val taskTitle="ACTIVE"
197197
repository.apply {
198-
createTask(taskTitle,"DESCRIPTION").also { completeTask(it.id) }
198+
createTask(taskTitle,"DESCRIPTION").also { completeTask(it) }
199199
}
200200

201201
setContent()
@@ -249,7 +249,7 @@ class TasksTest {
249249
// Add 1 completed task
250250
val taskTitle="COMP-ACT"
251251
repository.apply {
252-
createTask(taskTitle,"DESCRIPTION").also { completeTask(it.id) }
252+
createTask(taskTitle,"DESCRIPTION").also { completeTask(it) }
253253
}
254254

255255
setContent()

‎app/src/main/java/com/example/android/architecture/blueprints/todoapp/data/DefaultTaskRepository.kt‎

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ class DefaultTaskRepository(
4040
privatevalcoroutineDispatcher:CoroutineDispatcher =Dispatchers.Default
4141
) : TaskRepository {
4242

43-
overridesuspendfuncreateTask(title:String,description:String):Task {
43+
overridesuspendfuncreateTask(title:String,description:String):String {
4444
// ID creation might be a complex operation so it's executed using the supplied
4545
// coroutine dispatcher
4646
val taskId= withContext(coroutineDispatcher) {
@@ -53,7 +53,7 @@ class DefaultTaskRepository(
5353
)
5454
taskDao.upsert(task.toLocal())
5555
saveTasksToNetwork()
56-
returntask
56+
returntaskId
5757
}
5858

5959
overridesuspendfunupdateTask(taskId:String,title:String,description:String) {

‎app/src/main/java/com/example/android/architecture/blueprints/todoapp/data/TaskRepository.kt‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,7 @@ interface TaskRepository {
3535

3636
suspendfunrefreshTask(taskId:String)
3737

38-
suspendfuncreateTask(title:String,description:String):Task
38+
suspendfuncreateTask(title:String,description:String):String
3939

4040
suspendfunupdateTask(taskId:String,title:String,description:String)
4141

‎app/src/test/java/com/example/android/architecture/blueprints/todoapp/data/DefaultTaskRepositoryTest.kt‎

Lines changed: 21 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,15 @@ class DefaultTaskRepositoryTest {
3636
privateval task1=Task(id="1", title="Title1", description="Description1")
3737
privateval task2=Task(id="2", title="Title2", description="Description2")
3838
privateval task3=Task(id="3", title="Title3", description="Description3")
39-
privateval newTask=Task(id="new", title="Title new", description="Description new")
40-
privateval networkTasks=listOf(task1, task2).toNetwork().sortedBy { it.id }
41-
privateval localTasks=listOf(task3.toLocal()).sortedBy { it.id }
4239

43-
privateval newTasks=listOf(newTask).sortedBy { it.id }
40+
privateval newTaskTitle="Title new"
41+
privateval newTaskDescription="Description new"
42+
privateval newTask=Task(id="new", title= newTaskTitle, description= newTaskDescription)
43+
privateval newTasks=listOf(newTask)
44+
45+
privateval networkTasks=listOf(task1, task2).toNetwork()
46+
privateval localTasks=listOf(task3.toLocal())
47+
4448
privatelateinitvar networkDataSource:FakeNetworkDataSource
4549
privatelateinitvar localDataSource:FakeTaskDao
4650

@@ -103,16 +107,12 @@ class DefaultTaskRepositoryTest {
103107

104108
@Test
105109
funsaveTask_savesToLocalAndRemote()= runTest {
106-
// Make sure newTask is not in the remote or local datasources
107-
assertThat(networkDataSource.tasks).doesNotContain(newTask.toNetwork())
108-
assertThat(localDataSource.tasks).doesNotContain(newTask.toLocal())
109-
110110
// When a task is saved to the tasks repository
111-
valnewTask= tasksRepository.createTask(newTask.title, newTask.description)
111+
valnewTaskId= tasksRepository.createTask(newTask.title, newTask.description)
112112

113-
// Then the remote and local sourcesare called
114-
assertThat(networkDataSource.tasks).contains(newTask.toNetwork())
115-
assertThat(localDataSource.tasks?.contains(newTask.toLocal()))
113+
// Then the remote and local sourcescontain the new task
114+
assertThat(networkDataSource.tasks?.map { it.id }?.contains(newTaskId))
115+
assertThat(localDataSource.tasks?.map { it.id }?.contains(newTaskId))
116116
}
117117

118118
@Test
@@ -179,32 +179,32 @@ class DefaultTaskRepositoryTest {
179179
@Test
180180
funcompleteTask_completesTaskToServiceAPIUpdatesCache()= runTest {
181181
// Save a task
182-
valnewTask= tasksRepository.createTask(newTask.title, newTask.description)
182+
valnewTaskId= tasksRepository.createTask(newTask.title, newTask.description)
183183

184184
// Make sure it's active
185-
assertThat(tasksRepository.getTask(newTask.id)?.isCompleted).isFalse()
185+
assertThat(tasksRepository.getTask(newTaskId)?.isCompleted).isFalse()
186186

187187
// Mark is as complete
188-
tasksRepository.completeTask(newTask.id)
188+
tasksRepository.completeTask(newTaskId)
189189

190190
// Verify it's now completed
191-
assertThat(tasksRepository.getTask(newTask.id)?.isCompleted).isTrue()
191+
assertThat(tasksRepository.getTask(newTaskId)?.isCompleted).isTrue()
192192
}
193193

194194
@Test
195195
funcompleteTask_activeTaskToServiceAPIUpdatesCache()= runTest {
196196
// Save a task
197-
valnewTask= tasksRepository.createTask(newTask.title, newTask.description)
198-
tasksRepository.completeTask(newTask.id)
197+
valnewTaskId= tasksRepository.createTask(newTask.title, newTask.description)
198+
tasksRepository.completeTask(newTaskId)
199199

200200
// Make sure it's completed
201-
assertThat(tasksRepository.getTask(newTask.id)?.isActive).isFalse()
201+
assertThat(tasksRepository.getTask(newTaskId)?.isActive).isFalse()
202202

203203
// Mark is as active
204-
tasksRepository.activateTask(newTask.id)
204+
tasksRepository.activateTask(newTaskId)
205205

206206
// Verify it's now activated
207-
assertThat(tasksRepository.getTask(newTask.id)?.isActive).isTrue()
207+
assertThat(tasksRepository.getTask(newTaskId)?.isActive).isTrue()
208208
}
209209

210210
@Test

‎shared-test/src/main/java/com/example/android/architecture/blueprints/todoapp/data/FakeTaskRepository.kt‎

Lines changed: 4 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -56,14 +56,12 @@ class FakeTaskRepository : TaskRepository {
5656
refreshTasks()
5757
}
5858

59-
overridesuspendfuncreateTask(title:String,description:String):Task {
60-
returnTask(
61-
title= title,
62-
description= description,
63-
id= generateTaskId()
64-
).also {
59+
overridesuspendfuncreateTask(title:String,description:String):String {
60+
val taskId= generateTaskId()
61+
Task(title= title, description= description, id= taskId).also {
6562
saveTask(it)
6663
}
64+
return taskId
6765
}
6866

6967
overridefungetTasksStream():Flow<List<Task>>= observableTasks

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp