about summary refs log tree commit diff stats
path: root/test_layers
Commit message (Collapse)AuthorAgeFilesLines
* 4248 -- simplify CIKartik Agaram2018-05-251-1/+1
|
* 4219 - add an even simpler build scriptKartik K. Agaram2018-03-131-1/+1
|
* 4218 - test build alternatives in CIKartik K. Agaram2018-03-131-3/+5
|
* 4216 - include simpler alternative to build scriptKartik K. Agaram2018-03-121-3/+3
|
* 4211Kartik K. Agaram2018-02-201-0/+1
| | | | | | | | Just ran into first issue from using the portable /bin/sh rather than a modern shell: https://stackoverflow.com/questions/15744421/read-command-doesnt-wait-for-input Turn on errexit everywhere.
* 3454Kartik K. Agaram2016-10-061-1/+1
| | | | Yet another fix for CI.
* 3453Kartik K. Agaram2016-10-061-0/+4
|
* 3451Kartik K. Agaram2016-10-061-1/+1
| | | | Fix CI.
* 3450Kartik K. Agaram2016-10-061-1/+2
| | | | Purge remaining `makefile`s, without breaking CI.
* 3449Kartik K. Agaram2016-10-061-1/+2
| | | | Fix CI. Didn't mean to push just yet :/
* 3350Kartik K. Agaram2016-09-141-0/+2
| | | | Three separate CI fixes(!)
* 3283Kartik K. Agaram2016-08-291-1/+1
| | | | Fix CI.
* 3275Kartik K. Agaram2016-08-281-1/+1
| | | | Follow convention more closely by using CXXFLAGS for C++ files.
* 3029Kartik K. Agaram2016-06-021-0/+7
|
* 2949 - disable Valgrind on app layer testsKartik K. Agaram2016-05-091-44/+33
| | | | | | | | | | | | | I kept suspecting Valgrind and kept finding that Valgrind wasn't actually slowing down Travis CI, but I'd been running it like this: valgrind ./mu test edit Which wasn't actually running the underlying ./mu_bin binary atop Valgrind. Ok, so Mu is just super slow running any non-trivial apps atop Valgrind. That's ok, we've rarely needed an app to flush out memory leaks in Mu.
* 2948Kartik K. Agaram2016-05-081-0/+1
|
* 2946Kartik K. Agaram2016-05-081-11/+15
| | | | | | | | | | | | | Reorganize build system to minimize duplication while handling 3 scenarios: 1. Locally running tests with `mu test` 2. Locally running tests until some layer with `build_and_test_until` 3. Running on Linux with `test_layers` 4. Running on Travis CI with multiple sharded calls to `test_layers` One thing we drop at this point is support for OSX in test_layers. We don't need it now that we have Travis CI working.
* 2945Kartik K. Agaram2016-05-081-5/+44
| | | | More tweaking; edit/ still taking too long to test on Travis CI.
* 2944Kartik K. Agaram2016-05-081-3/+8
| | | | | | | | | 2943 almost worked; just a couple of tweaks: a) Divide up the work a little more finely since we still timed out on some jobs. b) Use clang and valgrind when running apps as well.
* 2942 - switch scripts to bashKartik K. Agaram2016-05-081-5/+5
| | | | | I'm already using grep and perl, bash is no worse, and it's *much* nicer to work in than plain Bourne sh.
* 2941 - split Travis CI into multiple jobsKartik K. Agaram2016-05-081-0/+32
It easily exceeded the 50-minute timeout.
>} else if(empty) { r.width = r.height = x; XDrawRectangles(dpy, dc.drawable, dc.gc, &r, 1); } } static Bool isoccupied(unsigned int t) { Client *c; for(c = clients; c; c = c->next) if(c->tags[t]) return True; return False; } static unsigned int textnw(const char *text, unsigned int len) { XRectangle r; if(dc.font.set) { XmbTextExtents(dc.font.set, text, len, NULL, &r); return r.width; } return XTextWidth(dc.font.xfont, text, len); } /* extern */ void drawstatus(void) { int i, x; dc.x = dc.y = 0; for(i = 0; i < ntags; i++) { dc.w = textw(tags[i]); if(seltag[i]) { drawtext(tags[i], dc.sel); drawsquare(sel && sel->tags[i], isoccupied(i), dc.sel); } else { drawtext(tags[i], dc.norm); drawsquare(sel && sel->tags[i], isoccupied(i), dc.norm); } dc.x += dc.w; } dc.w = blw; drawtext(lt->symbol, dc.norm); x = dc.x + dc.w; dc.w = textw(stext); dc.x = sw - dc.w; if(dc.x < x) { dc.x = x; dc.w = sw - x; } drawtext(stext, dc.norm); if((dc.w = dc.x - x) > bh) { dc.x = x; if(sel) { drawtext(sel->name, dc.sel); drawsquare(sel->ismax, sel->isfloating, dc.sel); } else drawtext(NULL, dc.norm); } XCopyArea(dpy, dc.drawable, barwin, dc.gc, 0, 0, sw, bh, 0, 0); XSync(dpy, False); } void drawtext(const char *text, unsigned long col[ColLast]) { int x, y, w, h; static char buf[256]; unsigned int len, olen; XRectangle r = { dc.x, dc.y, dc.w, dc.h }; XSetForeground(dpy, dc.gc, col[ColBG]); XFillRectangles(dpy, dc.drawable, dc.gc, &r, 1); if(!text) return; w = 0; olen = len = strlen(text); if(len >= sizeof buf) len = sizeof buf - 1; memcpy(buf, text, len); buf[len] = 0; h = dc.font.ascent + dc.font.descent; y = dc.y + (dc.h / 2) - (h / 2) + dc.font.ascent; x = dc.x + (h / 2); /* shorten text if necessary */ while(len && (w = textnw(buf, len)) > dc.w - h) buf[--len] = 0; if(len < olen) { if(len > 1) buf[len - 1] = '.'; if(len > 2) buf[len - 2] = '.'; if(len > 3) buf[len - 3] = '.'; } if(w > dc.w) return; /* too long */ XSetForeground(dpy, dc.gc, col[ColFG]); if(dc.font.set) XmbDrawString(dpy, dc.drawable, dc.font.set, dc.gc, x, y, buf, len); else XDrawString(dpy, dc.drawable, dc.gc, x, y, buf, len); } unsigned int textw(const char *text) { return textnw(text, strlen(text)) + dc.font.height; }