All files / __tests__ expects.ts

34.62% Statements 9/26
100% Branches 0/0
14.29% Functions 1/7
36% Lines 9/25

Press n or j to go to the next uncovered block, b, p or k for the previous block.

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        4x                                             4x           4x           4x           4x           4x           4x         4x 27x    
/*!
 * Copyright 2020 Cognite AS
 */
 
import 'jest-extended';
 
interface Matrix4 {
  elements: Float32Array;
}
 
interface Vector3 {
  x: number;
  y: number;
  z: number;
}
 
interface Color {
  r: number;
  g: number;
  b: number;
}
 
interface BoundingBox {
  min: Vector3;
  max: Vector3;
}
 
export function expectVector3Equal(a: Vector3, b: Vector3) {
  expect(a.x).toBeCloseTo(b.x);
  expect(a.y).toBeCloseTo(b.y);
  expect(a.z).toBeCloseTo(b.z);
}
 
export function expectMatrix4Equal(a: Matrix4, b: Matrix4) {
  for (let i = 0; i < 16; i++) {
    expect(a.elements[i]).toBeCloseTo(b.elements[i]);
  }
}
 
export function expectVector3Valid(a: Vector3) {
  expect(a.x).toBeDefined();
  expect(a.y).toBeDefined();
  expect(a.z).toBeDefined();
}
 
export function expectColorEqual(a: Color, b: Color) {
  expect(a.r).toBeCloseTo(b.r);
  expect(a.g).toBeCloseTo(b.g);
  expect(a.b).toBeCloseTo(b.b);
}
 
export function expectColorValid(a: Color) {
  expect(a.r).toBeDefined();
  expect(a.g).toBeDefined();
  expect(a.b).toBeDefined();
}
 
export function expectBoundingBoxEqual(a: BoundingBox, b: BoundingBox) {
  expectVector3Equal(a.min, b.min);
  expectVector3Equal(a.max, b.max);
}
 
export function expectSetEqual<T>(actual: Set<T>, expected: T[]) {
  expect([...actual]).toIncludeSameMembers(expected);
}