import fileinput count = 0 lengths = {} first = 0 for line in fileinput.input(): if first and ('stm mis' in line or 'pln' in line): lengths[first] += 1 else: t = line.split("id='t") if len(t) < 2: continue first = t[-1].split("'")[0] lengths[first] = 1 for x in sorted(lengths.items(), key=lambda (x, y): y): print x
Sunday, October 26, 2014
Show longest continuous block of code not covered by tests
Usage:
nocov.py
Profiling C++ scopes
The following simple class measure time spent in scope it is declared in:
class profile { // usage: profile __profile(__FILE__, __LINE__); static map < pairExample:, clock_t> __total; string _file; unsigned _line; clock_t _start; public: profile(const char* file, unsigned line) : _file(file), _line(line), _start(clock()) { } ~profile() { clock_t d = clock() - _start; clock_t t = __total[make_pair(_file, _line)] += d; OutputDebugStringA(((string)_file + ':' + to_string(_line) + "+=" + to_string(d) + " = " + to_string(t) + '\n').c_str()); } }; map < pair , clock_t> profile::__total;
void foo() { profile __profile(__FILE__, __LINE__); // measure time in foo // other code while (something) { profile __profile(__FILE__, __LINE__); // measure time in while loop } }
Subscribe to:
Posts (Atom)