| /* |
| * Copyright 2015 Google Inc. |
| * |
| * Use of this source code is governed by a BSD-style license that can be |
| * found in the LICENSE file. |
| */ |
| |
| #ifndef GrBatchTest_DEFINED |
| #define GrBatchTest_DEFINED |
| |
| #include "GrTestUtils.h" |
| |
| #ifdef GR_TEST_UTILS |
| |
| class GrBatch; |
| class GrContext; |
| class SkRandom; |
| |
| /* |
| * This file defines some macros for testing batches, and also declares functions / objects which |
| * are generally useful for GrBatch testing |
| */ |
| |
| // Batches should define test functions using BATCH_TEST_DEFINE. The other macros defined below |
| // are used exclusively by the test harness. |
| typedef GrBatch* (*BatchTestFunc)(SkRandom* random, GrContext* context); |
| #define BATCH_TEST_DEFINE(Batch) \ |
| GrBatch* Batch##__Test(SkRandom* random, GrContext* context) |
| #define BATCH_TEST_EXTERN(Batch) \ |
| extern GrBatch* Batch##__Test(SkRandom*, GrContext* context); |
| #define BATCH_TEST_ENTRY(Batch) \ |
| Batch##__Test |
| #define BATCH_TEST_FRIEND(Batch) \ |
| friend GrBatch* Batch##__Test(SkRandom* random, GrContext* context); |
| |
| GrBatch* GrRandomBatch(SkRandom*, GrContext*); |
| |
| #endif |
| #endif |