summaryrefslogtreecommitdiffstatsci
path: root/src/cairo-tests/bubbles.cpp
diff options
context:
space:
mode:
authorBryce Harrington <b.harrington@samsung.com>2013-11-13 13:17:31 -0800
committerBryce Harrington <b.harrington@samsung.com>2013-11-13 13:19:18 -0800
commit957f8649c2a21cf95ab13d6ea4d5b59ee9ada65f (patch)
treed90cb1fd7aeb57fcd6ae59a84cb859599cf8928b /src/cairo-tests/bubbles.cpp
parent04cdffeed4d3c58c81f79e1c3869e3cb58f81cb7 (diff)
Add bubbles test and the start of a multishape test
Diffstat (limited to 'src/cairo-tests/bubbles.cpp')
-rw-r--r--src/cairo-tests/bubbles.cpp36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/cairo-tests/bubbles.cpp b/src/cairo-tests/bubbles.cpp
new file mode 100644
index 0000000..1b55558
--- /dev/null
+++ b/src/cairo-tests/bubbles.cpp
@@ -0,0 +1,36 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <cairo.h>
+
+#include "caskbench.h"
+
+static int max_dim;
+
+int
+ca_setup_bubbles(caskbench_context_t *ctx)
+{
+ max_dim = MIN(ctx->canvas_width, ctx->canvas_height)/2;
+ return 1;
+}
+
+void
+ca_teardown_bubbles(void)
+{
+}
+
+int
+ca_test_bubbles(caskbench_context_t *ctx)
+{
+ int i, x, y, r;
+
+ for (i=0; i<ctx->size; i++) {
+ r = ((double)max_dim*rand())/RAND_MAX + 1;
+ x = (0.5*(double)ctx->canvas_width*rand())/RAND_MAX;
+ y = (0.5*(double)ctx->canvas_height*rand())/RAND_MAX;
+ randomize_color (ctx->cr);
+ cairo_arc (ctx->cr, x, y, r, 0, 2*M_PI);
+ cairo_fill (ctx->cr);
+ }
+
+ return 1;
+}