diff --git a/tests/test_graphics_fillRect.js b/tests/test_graphics_fillRect.js new file mode 100644 index 000000000..2a4ba56cb --- /dev/null +++ b/tests/test_graphics_fillRect.js @@ -0,0 +1,211 @@ +var g = Graphics.createArrayBuffer(32,32,8); +g.dump = _=>{ + var s = ""; + var b = new Uint8Array(g.buffer); + var n = 0; + for (var y=0;y{ + print("`"+g.dump()+"`"); +} +var ok = true; +function SHOULD_BE(a) { + var b = g.dump(); + if (a!=b) { + console.log("GOT :"+b+"\nSHOULD BE:"+a+"\n================"); + ok = false; + } +} + +g.clear(); +g.setColor(1); +g.fillRect(6,4,27,20); +SHOULD_BE(` +................................ +................................ +................................ +................................ +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................`); + +g.clear(); +g.setColor(1); +g.fillRect({x:6,y:4,x2:27,y2:20}); +SHOULD_BE(` +................................ +................................ +................................ +................................ +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................`); + +g.clear(); +g.setColor(1); +g.fillRect({x:6,y:4,w:21,h:16}); +SHOULD_BE(` +................................ +................................ +................................ +................................ +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................`); + +g.clear(); +g.setColor(1); +g.fillRect({x:6,y:4,x2:27,y2:20,r:3}); +SHOULD_BE(` +................................ +................................ +................................ +................................ +.......####################..... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +.......####################..... +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................`); + + +g.clear(); +g.setColor(1); +g.fillRect({x:6,y:4,x2:27,y2:20,r:8}); +SHOULD_BE(` +................................ +................................ +................................ +................................ +...........############......... +.........################....... +........##################...... +.......####################..... +.......####################..... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +......######################.... +.......####################..... +.......####################..... +........##################...... +.........################....... +...........############......... +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................ +................................`); + +result = ok;