|
1063 | 1063 | }, |
1064 | 1064 | { |
1065 | 1065 | "program": "languages/typescript/02-core/algorithms-basics/exercises/01.ts", |
| 1066 | + "input_lines": [ |
| 1067 | + "5", |
| 1068 | + "8", |
| 1069 | + "3", |
| 1070 | + "8", |
| 1071 | + "1", |
| 1072 | + "8", |
| 1073 | + "8" |
| 1074 | + ], |
1066 | 1075 | "required_stdout_contains": [ |
1067 | | - "Count must be a positive integer." |
| 1076 | + "First index: 0" |
1068 | 1077 | ] |
1069 | 1078 | }, |
1070 | 1079 | { |
1071 | 1080 | "program": "languages/typescript/02-core/algorithms-basics/exercises/02.ts", |
| 1081 | + "input_lines": [ |
| 1082 | + "5", |
| 1083 | + "8", |
| 1084 | + "3", |
| 1085 | + "10", |
| 1086 | + "1", |
| 1087 | + "4" |
| 1088 | + ], |
1072 | 1089 | "required_stdout_contains": [ |
1073 | | - "Count must be a positive integer." |
| 1090 | + "Minimum: 1", |
| 1091 | + "Maximum: 10", |
| 1092 | + "Even count: 3" |
1074 | 1093 | ] |
1075 | 1094 | }, |
1076 | 1095 | { |
1077 | 1096 | "program": "languages/typescript/02-core/error-handling-and-defensive-programming/exercises/01.ts", |
| 1097 | + "input_lines": [ |
| 1098 | + "Ana Maria 91" |
| 1099 | + ], |
1078 | 1100 | "required_stdout_contains": [ |
1079 | | - "Expected: Full Name Score" |
| 1101 | + "Accepted: Ana Maria (91)" |
1080 | 1102 | ] |
1081 | 1103 | }, |
1082 | 1104 | { |
1083 | 1105 | "program": "languages/typescript/02-core/error-handling-and-defensive-programming/exercises/02.ts", |
| 1106 | + "input_lines": [ |
| 1107 | + "10", |
| 1108 | + "skip", |
| 1109 | + "20", |
| 1110 | + "bad", |
| 1111 | + "30" |
| 1112 | + ], |
1084 | 1113 | "required_stdout_contains": [ |
1085 | | - "No valid integers found." |
| 1114 | + "Valid count: 3", |
| 1115 | + "Average: 20.00" |
1086 | 1116 | ] |
1087 | 1117 | }, |
1088 | 1118 | { |
1089 | 1119 | "program": "languages/typescript/02-core/file-io-basics/exercises/01.ts", |
| 1120 | + "working_dir": "languages/typescript/02-core/file-io-basics", |
| 1121 | + "setup_files": [ |
| 1122 | + { |
| 1123 | + "path": "contract-input.txt", |
| 1124 | + "lines": [ |
| 1125 | + "alpha", |
| 1126 | + "", |
| 1127 | + "beta", |
| 1128 | + " ", |
| 1129 | + "gamma" |
| 1130 | + ] |
| 1131 | + } |
| 1132 | + ], |
| 1133 | + "input_lines": [ |
| 1134 | + "contract-input.txt" |
| 1135 | + ], |
1090 | 1136 | "required_stdout_contains": [ |
1091 | | - "Expected a file path." |
| 1137 | + "Non-empty lines: 3" |
| 1138 | + ], |
| 1139 | + "cleanup_paths": [ |
| 1140 | + "contract-input.txt" |
1092 | 1141 | ] |
1093 | 1142 | }, |
1094 | 1143 | { |
1095 | 1144 | "program": "languages/typescript/02-core/file-io-basics/exercises/02.ts", |
| 1145 | + "working_dir": "languages/typescript/02-core/file-io-basics", |
| 1146 | + "setup_files": [ |
| 1147 | + { |
| 1148 | + "path": "contract-source.txt", |
| 1149 | + "lines": [ |
| 1150 | + "alpha", |
| 1151 | + "Beta" |
| 1152 | + ] |
| 1153 | + } |
| 1154 | + ], |
| 1155 | + "input_lines": [ |
| 1156 | + "contract-source.txt", |
| 1157 | + "contract-destination.txt" |
| 1158 | + ], |
1096 | 1159 | "required_stdout_contains": [ |
1097 | | - "Expected source and destination paths." |
| 1160 | + "Wrote uppercase copy to contract-destination.txt" |
| 1161 | + ], |
| 1162 | + "required_outputs": [ |
| 1163 | + "contract-destination.txt" |
| 1164 | + ], |
| 1165 | + "required_output_contains": [ |
| 1166 | + { |
| 1167 | + "path": "contract-destination.txt", |
| 1168 | + "contains": [ |
| 1169 | + "ALPHA", |
| 1170 | + "BETA" |
| 1171 | + ] |
| 1172 | + } |
| 1173 | + ], |
| 1174 | + "cleanup_paths": [ |
| 1175 | + "contract-source.txt", |
| 1176 | + "contract-destination.txt" |
1098 | 1177 | ] |
1099 | 1178 | }, |
1100 | 1179 | { |
1101 | 1180 | "program": "languages/typescript/02-core/input-validation/exercises/01.ts", |
| 1181 | + "input_lines": [ |
| 1182 | + "12" |
| 1183 | + ], |
1102 | 1184 | "required_stdout_contains": [ |
1103 | | - "Expected one integer." |
| 1185 | + "Square: 144" |
1104 | 1186 | ] |
1105 | 1187 | }, |
1106 | 1188 | { |
1107 | 1189 | "program": "languages/typescript/02-core/input-validation/exercises/02.ts", |
| 1190 | + "input_lines": [ |
| 1191 | + "3", |
| 1192 | + "90", |
| 1193 | + "80", |
| 1194 | + "70" |
| 1195 | + ], |
1108 | 1196 | "required_stdout_contains": [ |
1109 | | - "Score count must be an integer in range 1..50." |
| 1197 | + "Average: 80.00" |
1110 | 1198 | ] |
1111 | 1199 | }, |
1112 | 1200 | { |
1113 | 1201 | "program": "languages/typescript/02-core/maps-and-frequency-counting/exercises/01.ts", |
| 1202 | + "input_lines": [ |
| 1203 | + "red", |
| 1204 | + "blue", |
| 1205 | + "red", |
| 1206 | + "green", |
| 1207 | + "blue", |
| 1208 | + "red" |
| 1209 | + ], |
1114 | 1210 | "required_stdout_contains": [ |
1115 | | - "Expected at least one word." |
| 1211 | + "red: 3", |
| 1212 | + "blue: 2", |
| 1213 | + "green: 1" |
1116 | 1214 | ] |
1117 | 1215 | }, |
1118 | 1216 | { |
1119 | 1217 | "program": "languages/typescript/02-core/maps-and-frequency-counting/exercises/02.ts", |
| 1218 | + "input_lines": [ |
| 1219 | + "alpha", |
| 1220 | + "beta", |
| 1221 | + "alpha", |
| 1222 | + "gamma", |
| 1223 | + "beta", |
| 1224 | + "alpha" |
| 1225 | + ], |
1120 | 1226 | "required_stdout_contains": [ |
1121 | | - "Expected at least one word." |
| 1227 | + "Most frequent: alpha", |
| 1228 | + "Count: 3" |
1122 | 1229 | ] |
1123 | 1230 | }, |
1124 | 1231 | { |
1125 | 1232 | "program": "languages/typescript/02-core/sorting-and-searching/exercises/01.ts", |
| 1233 | + "input_lines": [ |
| 1234 | + "5", |
| 1235 | + "9", |
| 1236 | + "2", |
| 1237 | + "7", |
| 1238 | + "2", |
| 1239 | + "4" |
| 1240 | + ], |
1126 | 1241 | "required_stdout_contains": [ |
1127 | | - "Count must be a positive integer." |
| 1242 | + "2 2 4 7 9" |
1128 | 1243 | ] |
1129 | 1244 | }, |
1130 | 1245 | { |
1131 | 1246 | "program": "languages/typescript/02-core/sorting-and-searching/exercises/02.ts", |
| 1247 | + "input_lines": [ |
| 1248 | + "5", |
| 1249 | + "2", |
| 1250 | + "4", |
| 1251 | + "7", |
| 1252 | + "9", |
| 1253 | + "11", |
| 1254 | + "7" |
| 1255 | + ], |
1132 | 1256 | "required_stdout_contains": [ |
1133 | | - "Count must be a positive integer." |
| 1257 | + "Index: 2" |
1134 | 1258 | ] |
1135 | 1259 | }, |
1136 | 1260 | { |
|
0 commit comments