Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(543)

Side by Side Diff: lib/compact_vm_config.dart

Issue 846143003: Reformatted code (Closed) Base URL: https://github.com/dart-lang/unittest.git@master
Patch Set: Created 5 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « codereview.settings ('k') | lib/html_config.dart » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file 1 // Copyright (c) 2013, the Dart project authors. Please see the AUTHORS file
2 // for details. All rights reserved. Use of this source code is governed by a 2 // for details. All rights reserved. Use of this source code is governed by a
3 // BSD-style license that can be found in the LICENSE file. 3 // BSD-style license that can be found in the LICENSE file.
4 4
5 /// A test configuration that generates a compact 1-line progress bar. The bar 5 /// A test configuration that generates a compact 1-line progress bar. The bar
6 /// is updated in-place before and after each test is executed. If all tests 6 /// is updated in-place before and after each test is executed. If all tests
7 /// pass, only a couple of lines are printed in the terminal. If a test fails, 7 /// pass, only a couple of lines are printed in the terminal. If a test fails,
8 /// the failure is shown and the progress bar continues to be updated below it. 8 /// the failure is shown and the progress bar continues to be updated below it.
9 library unittest.compact_vm_config; 9 library unittest.compact_vm_config;
10 10
(...skipping 116 matching lines...) Expand 10 before | Expand all | Expand 10 after
127 buffer.write(' -'); 127 buffer.write(' -');
128 buffer.write(_fail); 128 buffer.write(_fail);
129 buffer.write(_NONE); 129 buffer.write(_NONE);
130 } 130 }
131 buffer.write(': '); 131 buffer.write(': ');
132 buffer.write(color); 132 buffer.write(color);
133 133
134 // Ensure the line fits under MAX_LINE. [buffer] includes the color escape 134 // Ensure the line fits under MAX_LINE. [buffer] includes the color escape
135 // sequences too. Because these sequences are not visible characters, we 135 // sequences too. Because these sequences are not visible characters, we
136 // make sure they are not counted towards the limit. 136 // make sure they are not counted towards the limit.
137 int nonVisible = _nonVisiblePrefix + color.length + 137 int nonVisible = _nonVisiblePrefix +
138 color.length +
138 (_fail != 0 ? (_RED.length + _NONE.length) : 0); 139 (_fail != 0 ? (_RED.length + _NONE.length) : 0);
139 int len = buffer.length - nonVisible; 140 int len = buffer.length - nonVisible;
140 var mx = MAX_LINE - len; 141 var mx = MAX_LINE - len;
141 buffer.write(_snippet(message, MAX_LINE - len)); 142 buffer.write(_snippet(message, MAX_LINE - len));
142 buffer.write(_NONE); 143 buffer.write(_NONE);
143 144
144 // Pad the rest of the line so that it looks erased. 145 // Pad the rest of the line so that it looks erased.
145 len = buffer.length - nonVisible - _NONE.length; 146 len = buffer.length - nonVisible - _NONE.length;
146 if (len > _lastLength) { 147 if (len > _lastLength) {
147 _lastLength = len; 148 _lastLength = len;
148 } else { 149 } else {
149 while (len < _lastLength) { 150 while (len < _lastLength) {
150 buffer.write(' '); 151 buffer.write(' ');
151 _lastLength--; 152 _lastLength--;
152 } 153 }
153 } 154 }
154 stdout.write(buffer.toString()); 155 stdout.write(buffer.toString());
155 } 156 }
156 157
157 String _padTime(int time) => 158 String _padTime(int time) =>
158 (time == 0) ? '00' : ((time < 10) ? '0$time' : '$time'); 159 (time == 0) ? '00' : ((time < 10) ? '0$time' : '$time');
159 160
160 String _timeString(Duration duration) { 161 String _timeString(Duration duration) {
161 var min = duration.inMinutes; 162 var min = duration.inMinutes;
162 var sec = duration.inSeconds % 60; 163 var sec = duration.inSeconds % 60;
163 return '${_padTime(min)}:${_padTime(sec)}'; 164 return '${_padTime(min)}:${_padTime(sec)}';
164 } 165 }
165 166
166 String _snippet(String text, int maxLength) { 167 String _snippet(String text, int maxLength) {
167 // Return the full message if it fits 168 // Return the full message if it fits
168 if (text.length <= maxLength) return text; 169 if (text.length <= maxLength) return text;
169 170
170 // If we can fit the first and last three words, do so. 171 // If we can fit the first and last three words, do so.
171 var words = text.split(' '); 172 var words = text.split(' ');
172 if (words.length > 1) { 173 if (words.length > 1) {
173 int i = words.length; 174 int i = words.length;
174 var len = words.first.length + 4; 175 var len = words.first.length + 4;
175 do { 176 do {
176 len += 1 + words[--i].length; 177 len += 1 + words[--i].length;
177 } while (len <= maxLength && i > 0); 178 } while (len <= maxLength && i > 0);
178 if (len > maxLength || i == 0) i++; 179 if (len > maxLength || i == 0) i++;
179 if (i < words.length - 4) { 180 if (i < words.length - 4) {
180 // Require at least 3 words at the end. 181 // Require at least 3 words at the end.
181 var buffer = new StringBuffer(); 182 var buffer = new StringBuffer();
182 buffer.write(words.first); 183 buffer.write(words.first);
183 buffer.write(' ...'); 184 buffer.write(' ...');
184 for (; i < words.length; i++) { 185 for ( ; i < words.length; i++) {
185 buffer.write(' '); 186 buffer.write(' ');
186 buffer.write(words[i]); 187 buffer.write(words[i]);
187 } 188 }
188 return buffer.toString(); 189 return buffer.toString();
189 } 190 }
190 } 191 }
191 192
192 // Otherwise truncate to return the trailing text, but attempt to start at 193 // Otherwise truncate to return the trailing text, but attempt to start at
193 // the beginning of a word. 194 // the beginning of a word.
194 var res = text.substring(text.length - maxLength + 4); 195 var res = text.substring(text.length - maxLength + 4);
(...skipping 12 matching lines...) Expand all
207 // If the test is running on the Dart buildbots, we don't want to use this 208 // If the test is running on the Dart buildbots, we don't want to use this
208 // config since it's output may not be what the bots expect. 209 // config since it's output may not be what the bots expect.
209 if (Platform.environment['LOGNAME'] == 'chrome-bot') { 210 if (Platform.environment['LOGNAME'] == 'chrome-bot') {
210 return; 211 return;
211 } 212 }
212 213
213 unittestConfiguration = _singleton; 214 unittestConfiguration = _singleton;
214 } 215 }
215 216
216 final _singleton = new CompactVMConfiguration(); 217 final _singleton = new CompactVMConfiguration();
OLDNEW
« no previous file with comments | « codereview.settings ('k') | lib/html_config.dart » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698