blob: 03e45128b0d6c10ad92ce23b17ef3640ca141702 [file] [log] [blame]
bsalomon6e2aad42016-04-01 11:54:31 -07001/*
2 * Copyright 2016 Google Inc.
3 *
4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file.
6 */
7
8#include "SkTypes.h"
9
10#if SK_SUPPORT_GPU
11
12#include "GrContextFactory.h"
13#include "Test.h"
14
bsalomonf2f1c172016-04-05 12:59:06 -070015using namespace sk_gpu_test;
bsalomon6e2aad42016-04-01 11:54:31 -070016
17DEF_GPUTEST(GrContext_abandonContext, reporter, /*factory*/) {
18 for (int testType = 0; testType < 6; ++testType) {
bsalomon85b4b532016-04-05 11:06:27 -070019 for (int i = 0; i < GrContextFactory::kContextTypeCnt; ++i) {
20 GrContextFactory testFactory;
21 GrContextFactory::ContextType ctxType = (GrContextFactory::ContextType) i;
bsalomonf2f1c172016-04-05 12:59:06 -070022 ContextInfo info = testFactory.getContextInfo(ctxType);
bsalomon8b7451a2016-05-11 06:33:06 -070023 if (GrContext* context = info.grContext()) {
bsalomon6e2aad42016-04-01 11:54:31 -070024 switch (testType) {
25 case 0:
26 context->abandonContext();
27 break;
28 case 1:
29 context->releaseResourcesAndAbandonContext();
30 break;
31 case 2:
32 context->abandonContext();
33 context->abandonContext();
34 break;
35 case 3:
36 context->abandonContext();
37 context->releaseResourcesAndAbandonContext();
38 break;
39 case 4:
40 context->releaseResourcesAndAbandonContext();
41 context->abandonContext();
42 break;
43 case 5:
44 context->releaseResourcesAndAbandonContext();
45 context->releaseResourcesAndAbandonContext();
46 break;
47 }
48 }
49 }
50 }
51}
52
53#endif