Jonny Borges
Committed by GitHub

Merge pull request #1987 from dumbokim/patch-1

update Tests and Tips of README.ko-kr
@@ -328,7 +328,7 @@ Text(controller.textFromApi); @@ -328,7 +328,7 @@ Text(controller.textFromApi);
328 328
329 ### 종속성 관리에 대한 자세한 내용 329 ### 종속성 관리에 대한 자세한 내용
330 330
331 -**종속성 관리에 대한 더 제사한 사항은 [여기](./documentation/kr_KO/dependency_management.md)에 있습니다.** 331 +**종속성 관리에 대한 더 자세한 사항은 [여기](./documentation/kr_KO/dependency_management.md)에 있습니다.**
332 332
333 # 기능들 333 # 기능들
334 334
@@ -1092,6 +1092,73 @@ class SettingsService extends GetxService { @@ -1092,6 +1092,73 @@ class SettingsService extends GetxService {
1092 따라서 앱 실행중 절대로 유지되어야 하는 클래스 인스턴스가 필요하면 1092 따라서 앱 실행중 절대로 유지되어야 하는 클래스 인스턴스가 필요하면
1093 `GetxService`를 사용하세요. 1093 `GetxService`를 사용하세요.
1094 1094
  1095 +### 테스트
  1096 +
  1097 +당신은 당신의 컨트롤러들을 생성주기를 포함하여 다른 어떤 클래스처럼 테스트할 수 있습니다 :
  1098 +
  1099 +```dart
  1100 +class Controller extends GetxController {
  1101 + @override
  1102 + void onInit() {
  1103 + super.onInit();
  1104 + //name2로 값 변경
  1105 + name.value = 'name2';
  1106 + }
  1107 +
  1108 + @override
  1109 + void onClose() {
  1110 + name.value = '';
  1111 + super.onClose();
  1112 + }
  1113 +
  1114 + final name = 'name1'.obs;
  1115 +
  1116 + void changeName() => name.value = 'name3';
  1117 +}
  1118 +
  1119 +void main() {
  1120 + test('''
  1121 +Test the state of the reactive variable "name" across all of its lifecycles''',
  1122 + () {
  1123 + /// 당신은 생성주기를 제외하고 컨트롤러를 테스트할 수 있습니다,
  1124 + /// 그러나 당신이 사용하지 않는다면 추천되지 않습니다
  1125 + /// GetX 종속성 주입
  1126 + final controller = Controller();
  1127 + expect(controller.name.value, 'name1');
  1128 +
  1129 + /// 당신이 그것을 사용한다면, 당신은 모든 것을 테스트할 수 있습니다,
  1130 + /// 각각의 생성주기 이후 어플리케이션의 상태를 포함하여.
  1131 + Get.put(controller); // onInit was called
  1132 + expect(controller.name.value, 'name2');
  1133 +
  1134 + /// 당신의 함수를 테스트하세요
  1135 + controller.changeName();
  1136 + expect(controller.name.value, 'name3');
  1137 +
  1138 + /// onClose 호출됨
  1139 + Get.delete<Controller>();
  1140 +
  1141 + expect(controller.name.value, '');
  1142 + });
  1143 +}
  1144 +```
  1145 +
  1146 +#### 팁들
  1147 +
  1148 +##### Mockito 또는 mocktail
  1149 +당신이 당신의 GetxController/GetxService를 모킹하려고 한다면, 당신은 GetxController를 extend 하고, Mock과 mixin 하라, 그렇게 되면
  1150 +
  1151 +```dart
  1152 +class NotificationServiceMock extends GetxService with Mock implements NotificationService {}
  1153 +```
  1154 +
  1155 +##### Get.reset() 사용하기
  1156 +당신이 위젯 또는 테스트 그룹을 테스트하고 있다면, 당신의 테스트의 마지막 또는 해제 때 당신의 이전 테스트에서 모든 설정을 리셋하기 위해 Get.rest을 사용하십시오
  1157 +
  1158 +##### Get.testMode
  1159 +당신이 당신의 컨트롤러에서 당신의 네비게이션을 사용하고 있다면, 당신의 메인의 시작에 `Get.testMode = true` 를 사용하십시오.
  1160 +
  1161 +
1095 # 2.0의 주요 변경점 1162 # 2.0의 주요 변경점
1096 1163
1097 1- Rx 타입들: 1164 1- Rx 타입들: