SamplerSpec.js 2.04 KB
Newer Older
Manggar Mahardhika's avatar
Manggar Mahardhika committed
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73
import { Sampler } from "../../Source/Cesium.js";
import { TextureMinificationFilter } from "../../Source/Cesium.js";
import { TextureWrap } from "../../Source/Cesium.js";
import createContext from "../createContext.js";

describe(
  "Renderer/Sampler",
  function () {
    var context;

    beforeAll(function () {
      context = createContext();
    });

    afterAll(function () {
      context.destroyForSpecs();
    });

    it("has expected default values", function () {
      var sampler = new Sampler();
      expect(sampler.wrapS).toEqual(TextureWrap.CLAMP_TO_EDGE);
      expect(sampler.wrapT).toEqual(TextureWrap.CLAMP_TO_EDGE);
      expect(sampler.minificationFilter).toEqual(
        TextureMinificationFilter.LINEAR
      );
      expect(sampler.magnificationFilter).toEqual(
        TextureMinificationFilter.LINEAR
      );
      expect(sampler.maximumAnisotropy).toEqual(1.0);
    });

    it("throws when creating a sampler with invalid wrapS", function () {
      expect(function () {
        return new Sampler({
          wrapS: "invalid wrap",
        });
      }).toThrowDeveloperError();
    });

    it("throws when creating a sampler with invalid wrapT", function () {
      expect(function () {
        return new Sampler({
          wrapT: "invalid wrap",
        });
      }).toThrowDeveloperError();
    });

    it("throws when creating a sampler with invalid minificationFilter", function () {
      expect(function () {
        return new Sampler({
          minificationFilter: "invalid filter",
        });
      }).toThrowDeveloperError();
    });

    it("throws when creating a sampler with invalid magnificationFilter", function () {
      expect(function () {
        return new Sampler({
          magnificationFilter: "invalid filter",
        });
      }).toThrowDeveloperError();
    });

    it("throws when creating a sampler with invalid maximumAnisotropy", function () {
      expect(function () {
        return new Sampler({
          maximumAnisotropy: 0.0,
        });
      }).toThrowDeveloperError();
    });
  },
  "WebGL"
);