| Index: tests/GLProgramsTest.cpp
|
| diff --git a/tests/GLProgramsTest.cpp b/tests/GLProgramsTest.cpp
|
| index 56707a04140e34b4744a815179f309189b8d4217..294d7f2f7720b546073dcbc4629e72286fd84507 100644
|
| --- a/tests/GLProgramsTest.cpp
|
| +++ b/tests/GLProgramsTest.cpp
|
| @@ -121,6 +121,14 @@ static GrRenderTarget* random_render_target(GrContext* context,
|
| return SkRef(texture->asRenderTarget());
|
| }
|
|
|
| +static void set_random_xpf(GrContext* context, const GrDrawTargetCaps& caps, GrDrawState* ds,
|
| + SkRandom* random, GrTexture* dummyTextures[]) {
|
| + SkAutoTUnref<const GrXPFactory> xpf(
|
| + GrProcessorTestFactory<GrXPFactory>::CreateStage(random, context, caps, dummyTextures));
|
| + SkASSERT(xpf);
|
| + ds->setXPFactory(xpf.get());
|
| +}
|
| +
|
| static void set_random_gp(GrContext* context,
|
| const GrDrawTargetCaps& caps,
|
| GrDrawState* ds,
|
| @@ -257,22 +265,6 @@ static void set_random_state(GrDrawState* ds, SkRandom* random) {
|
| ds->enableState(state);
|
| }
|
|
|
| -// this function will randomly pick non-self referencing blend modes
|
| -static void set_random_blend_func(GrDrawState* ds, SkRandom* random) {
|
| - GrBlendCoeff src;
|
| - do {
|
| - src = GrBlendCoeff(random->nextRangeU(kFirstPublicGrBlendCoeff, kLastPublicGrBlendCoeff));
|
| - } while (GrBlendCoeffRefsSrc(src));
|
| -
|
| - GrBlendCoeff dst;
|
| - do {
|
| - dst = GrBlendCoeff(random->nextRangeU(kFirstPublicGrBlendCoeff, kLastPublicGrBlendCoeff));
|
| - } while (GrBlendCoeffRefsDst(dst));
|
| -
|
| - GrXPFactory* xpFactory = GrPorterDuffXPFactory::Create(src, dst);
|
| - ds->setXPFactory(xpFactory)->unref();
|
| -}
|
| -
|
| // right now, the only thing we seem to care about in drawState's stencil is 'doesWrite()'
|
| static void set_random_stencil(GrDrawState* ds, SkRandom* random) {
|
| GR_STATIC_CONST_SAME_STENCIL(kDoesWriteStencil,
|
| @@ -372,11 +364,14 @@ bool GrDrawTarget::programUnitTest(int maxStages) {
|
| usePathRendering,
|
| &random,
|
| dummyTextures);
|
| +
|
| + // creates a random xfer processor factory on the draw state
|
| + set_random_xpf(fContext, gpu->glCaps(), &ds, &random, dummyTextures);
|
| +
|
| set_random_color(&ds, &random);
|
| set_random_coverage(&ds, &random);
|
| set_random_hints(&ds, &random);
|
| set_random_state(&ds, &random);
|
| - set_random_blend_func(&ds, &random);
|
| set_random_stencil(&ds, &random);
|
|
|
| GrDeviceCoordTexture dstCopy;
|
|
|