| // Copyright (c) 2019, the Dart project authors. Please see the AUTHORS file |
| // for details. All rights reserved. Use of this source code is governed by a |
| // BSD-style license that can be found in the LICENSE file. |
| |
| // @dart = 2.9 |
| |
| import 'dart:typed_data'; |
| import "package:expect/expect.dart"; |
| |
| bool throwsArgumentError(void Function() f) { |
| bool caught = false; |
| try { |
| f(); |
| } on ArgumentError catch (e) { |
| caught = true; |
| } on TypeError catch (e) { |
| // dart2js |
| caught = true; |
| } |
| return caught; |
| } |
| |
| main() { |
| // Float32x4 |
| final float32x4 = Float32x4(0.0, 0.0, 0.0, 0.0); |
| Expect.equals(throwsArgumentError(() => float32x4 + null), true); |
| Expect.equals(throwsArgumentError(() => float32x4 - null), true); |
| Expect.equals(throwsArgumentError(() => float32x4 * null), true); |
| Expect.equals(throwsArgumentError(() => float32x4 / null), true); |
| Expect.equals(throwsArgumentError(() => float32x4.lessThan(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => float32x4.lessThanOrEqual(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.greaterThan(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => float32x4.greaterThanOrEqual(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.equal(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.notEqual(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.scale(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => float32x4.clamp(null, float32x4)), true); |
| Expect.equals( |
| throwsArgumentError(() => float32x4.clamp(float32x4, null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.shuffle(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => float32x4.shuffleMix(float32x4, null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.shuffleMix(null, 0)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.withX(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.withY(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.withZ(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.withW(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.min(null)), true); |
| Expect.equals(throwsArgumentError(() => float32x4.max(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => Float32x4(null, 0.0, 0.0, 0.0)), true); |
| Expect.equals( |
| throwsArgumentError(() => Float32x4(0.0, null, 0.0, 0.0)), true); |
| Expect.equals( |
| throwsArgumentError(() => Float32x4(0.0, 0.0, null, 0.0)), true); |
| Expect.equals( |
| throwsArgumentError(() => Float32x4(0.0, 0.0, 0.0, null)), true); |
| |
| // Float32x4.splat |
| Expect.equals(throwsArgumentError(() => Float32x4.splat(null)), true); |
| |
| // Float64x2 |
| final float64x2 = Float64x2(0.0, 0.0); |
| Expect.equals(throwsArgumentError(() => float64x2 + null), true); |
| Expect.equals(throwsArgumentError(() => float64x2 - null), true); |
| Expect.equals(throwsArgumentError(() => float64x2 * null), true); |
| Expect.equals(throwsArgumentError(() => float64x2 / null), true); |
| Expect.equals(throwsArgumentError(() => float64x2.scale(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => float64x2.clamp(null, float64x2)), true); |
| Expect.equals( |
| throwsArgumentError(() => float64x2.clamp(float64x2, null)), true); |
| Expect.equals(throwsArgumentError(() => float64x2.withX(null)), true); |
| Expect.equals(throwsArgumentError(() => float64x2.withY(null)), true); |
| Expect.equals(throwsArgumentError(() => Float64x2(null, 0.0)), true); |
| Expect.equals(throwsArgumentError(() => Float64x2(0.0, null)), true); |
| Expect.equals(throwsArgumentError(() => float64x2.min(null)), true); |
| Expect.equals(throwsArgumentError(() => float64x2.max(null)), true); |
| |
| // Float64x2.splat |
| Expect.equals(throwsArgumentError(() => Float64x2.splat(null)), true); |
| |
| // Int32x4 |
| final int32x4 = Int32x4(0, 0, 0, 0); |
| Expect.equals(throwsArgumentError(() => int32x4 + null), true); |
| Expect.equals(throwsArgumentError(() => int32x4 - null), true); |
| Expect.equals(throwsArgumentError(() => int32x4 ^ null), true); |
| Expect.equals(throwsArgumentError(() => int32x4 & null), true); |
| Expect.equals(throwsArgumentError(() => int32x4 | null), true); |
| Expect.equals(throwsArgumentError(() => int32x4.shuffle(null)), true); |
| Expect.equals( |
| throwsArgumentError(() => int32x4.shuffleMix(int32x4, null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.shuffleMix(null, 0)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withX(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withY(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withZ(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withW(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withFlagX(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withFlagY(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withFlagZ(null)), true); |
| Expect.equals(throwsArgumentError(() => int32x4.withFlagW(null)), true); |
| |
| Expect.equals(throwsArgumentError(() => Int32x4(null, 0, 0, 0)), true); |
| Expect.equals(throwsArgumentError(() => Int32x4(0, null, 0, 0)), true); |
| Expect.equals(throwsArgumentError(() => Int32x4(0, 0, null, 0)), true); |
| Expect.equals(throwsArgumentError(() => Int32x4(0, 0, 0, null)), true); |
| Expect.equals( |
| throwsArgumentError(() => int32x4.select(null, float32x4)), true); |
| Expect.equals( |
| throwsArgumentError(() => int32x4.select(float32x4, null)), true); |
| |
| // Int32x4.bool |
| Expect.equals( |
| throwsArgumentError(() => Int32x4.bool(null, false, false, false)), true); |
| Expect.equals( |
| throwsArgumentError(() => Int32x4.bool(false, null, false, false)), true); |
| Expect.equals( |
| throwsArgumentError(() => Int32x4.bool(false, false, null, false)), true); |
| Expect.equals( |
| throwsArgumentError(() => Int32x4.bool(false, false, false, null)), true); |
| } |