Home | History | Annotate | Download | only in unittest
      1 // This file is automatically generated from
      2 // frameworks/rs/tests/java_api/RSUnitTests/RSUnitTests.py
      3 /*
      4  * Copyright (C) 2017 The Android Open Source Project
      5  *
      6  * Licensed under the Apache License, Version 2.0 (the "License");
      7  * you may not use this file except in compliance with the License.
      8  * You may obtain a copy of the License at
      9  *
     10  *      http://www.apache.org/licenses/LICENSE-2.0
     11  *
     12  * Unless required by applicable law or agreed to in writing, software
     13  * distributed under the License is distributed on an "AS IS" BASIS,
     14  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     15  * See the License for the specific language governing permissions and
     16  * limitations under the License.
     17  */
     18 
     19 package com.android.rs.unittest;
     20 
     21 import android.content.Context;
     22 import android.support.v8.renderscript.RenderScript;
     23 import android.support.v8.renderscript.Sampler;
     24 
     25 public class UT_sampler extends UnitTest {
     26     Sampler minification;
     27     Sampler magnification;
     28     Sampler wrapS;
     29     Sampler wrapT;
     30     Sampler anisotropy;
     31 
     32     public UT_sampler(Context ctx) {
     33         super("Sampler", ctx);
     34     }
     35 
     36     private Sampler.Builder getDefaultBuilder(RenderScript RS) {
     37         Sampler.Builder b = new Sampler.Builder(RS);
     38         b.setMinification(Sampler.Value.NEAREST);
     39         b.setMagnification(Sampler.Value.NEAREST);
     40         b.setWrapS(Sampler.Value.CLAMP);
     41         b.setWrapT(Sampler.Value.CLAMP);
     42         b.setAnisotropy(1.0f);
     43         return b;
     44     }
     45 
     46     private void initializeGlobals(RenderScript RS, ScriptC_sampler s) {
     47         Sampler.Builder b = getDefaultBuilder(RS);
     48         b.setMinification(Sampler.Value.LINEAR_MIP_LINEAR);
     49         minification = b.create();
     50 
     51         b = getDefaultBuilder(RS);
     52         b.setMagnification(Sampler.Value.LINEAR);
     53         magnification = b.create();
     54 
     55         b = getDefaultBuilder(RS);
     56         b.setWrapS(Sampler.Value.WRAP);
     57         wrapS = b.create();
     58 
     59         b = getDefaultBuilder(RS);
     60         b.setWrapT(Sampler.Value.WRAP);
     61         wrapT = b.create();
     62 
     63         b = getDefaultBuilder(RS);
     64         b.setAnisotropy(8.0f);
     65         anisotropy = b.create();
     66 
     67         s.set_minification(minification);
     68         s.set_magnification(magnification);
     69         s.set_wrapS(wrapS);
     70         s.set_wrapT(wrapT);
     71         s.set_anisotropy(anisotropy);
     72     }
     73 
     74     private void testScriptSide(RenderScript pRS) {
     75         ScriptC_sampler s = new ScriptC_sampler(pRS);
     76         initializeGlobals(pRS, s);
     77         s.invoke_sampler_test();
     78         pRS.finish();
     79         s.destroy();
     80     }
     81 
     82     private void testJavaSide(RenderScript pRS) {
     83         _RS_ASSERT("minification.getMagnification() == Sampler.Value.NEAREST",
     84                 minification.getMagnification() == Sampler.Value.NEAREST);
     85         _RS_ASSERT("minification.getMinification() == Sampler.Value.LINEAR_MIP_LINEAR",
     86                 minification.getMinification() == Sampler.Value.LINEAR_MIP_LINEAR);
     87         _RS_ASSERT("minification.getWrapS() == Sampler.Value.CLAMP",
     88                 minification.getWrapS() == Sampler.Value.CLAMP);
     89         _RS_ASSERT("minification.getWrapT() == Sampler.Value.CLAMP",
     90                 minification.getWrapT() == Sampler.Value.CLAMP);
     91         _RS_ASSERT("minification.getAnisotropy() == 1.0f",
     92                 minification.getAnisotropy() == 1.0f);
     93 
     94         _RS_ASSERT("magnification.getMagnification() == Sampler.Value.LINEAR",
     95                 magnification.getMagnification() == Sampler.Value.LINEAR);
     96         _RS_ASSERT("magnification.getMinification() == Sampler.Value.NEAREST",
     97                 magnification.getMinification() == Sampler.Value.NEAREST);
     98         _RS_ASSERT("magnification.getWrapS() == Sampler.Value.CLAMP",
     99                 magnification.getWrapS() == Sampler.Value.CLAMP);
    100         _RS_ASSERT("magnification.getWrapT() == Sampler.Value.CLAMP",
    101                 magnification.getWrapT() == Sampler.Value.CLAMP);
    102         _RS_ASSERT("magnification.getAnisotropy() == 1.0f",
    103                 magnification.getAnisotropy() == 1.0f);
    104 
    105         _RS_ASSERT("wrapS.getMagnification() == Sampler.Value.NEAREST",
    106                 wrapS.getMagnification() == Sampler.Value.NEAREST);
    107         _RS_ASSERT("wrapS.getMinification() == Sampler.Value.NEAREST",
    108                 wrapS.getMinification() == Sampler.Value.NEAREST);
    109         _RS_ASSERT("wrapS.getWrapS() == Sampler.Value.WRAP",
    110                 wrapS.getWrapS() == Sampler.Value.WRAP);
    111         _RS_ASSERT("wrapS.getWrapT() == Sampler.Value.CLAMP",
    112                 wrapS.getWrapT() == Sampler.Value.CLAMP);
    113         _RS_ASSERT("wrapS.getAnisotropy() == 1.0f",
    114                 wrapS.getAnisotropy() == 1.0f);
    115 
    116         _RS_ASSERT("wrapT.getMagnification() == Sampler.Value.NEAREST",
    117                 wrapT.getMagnification() == Sampler.Value.NEAREST);
    118         _RS_ASSERT("wrapT.getMinification() == Sampler.Value.NEAREST",
    119                 wrapT.getMinification() == Sampler.Value.NEAREST);
    120         _RS_ASSERT("wrapT.getWrapS() == Sampler.Value.CLAMP",
    121                 wrapT.getWrapS() == Sampler.Value.CLAMP);
    122         _RS_ASSERT("wrapT.getWrapT() == Sampler.Value.WRAP",
    123                 wrapT.getWrapT() == Sampler.Value.WRAP);
    124         _RS_ASSERT("wrapT.getAnisotropy() == 1.0f",
    125                 wrapT.getAnisotropy() == 1.0f);
    126 
    127         _RS_ASSERT("anisotropy.getMagnification() == Sampler.Value.NEAREST",
    128                 anisotropy.getMagnification() == Sampler.Value.NEAREST);
    129         _RS_ASSERT("anisotropy.getMinification() == Sampler.Value.NEAREST",
    130                 anisotropy.getMinification() == Sampler.Value.NEAREST);
    131         _RS_ASSERT("anisotropy.getWrapS() == Sampler.Value.CLAMP",
    132                 anisotropy.getWrapS() == Sampler.Value.CLAMP);
    133         _RS_ASSERT("anisotropy.getWrapT() == Sampler.Value.CLAMP",
    134                 anisotropy.getWrapT() == Sampler.Value.CLAMP);
    135         _RS_ASSERT("anisotropy.getAnisotropy() == 1.0f",
    136                 anisotropy.getAnisotropy() == 8.0f);
    137     }
    138 
    139     public void run() {
    140         RenderScript pRS = createRenderScript(true);
    141         testScriptSide(pRS);
    142         testJavaSide(pRS);
    143         passTest();
    144         pRS.destroy();
    145     }
    146 }
    147