hardSigmoid.https.any.js (1366B)
1 // META: title=validation tests for WebNN API hardSigmoid operation 2 // META: global=window 3 // META: variant=?cpu 4 // META: variant=?gpu 5 // META: variant=?npu 6 // META: script=../resources/utils_validation.js 7 8 'use strict'; 9 10 validateInputFromAnotherBuilder('hardSigmoid'); 11 12 const label = 'hard_sigmoid'; 13 14 validateSingleInputOperation('hardSigmoid', label); 15 16 promise_test(async t => { 17 const builder = new MLGraphBuilder(context); 18 const options = {alpha: 0.5, beta: 1.0}; 19 const input = builder.input('input', {dataType: 'float16', shape: [1, 2, 3]}); 20 const output = builder.hardSigmoid(input, options); 21 assert_equals(output.dataType, 'float16'); 22 assert_array_equals(output.shape, [1, 2, 3]); 23 }, '[hardSigmoid] Test building with options'); 24 25 promise_test(async t => { 26 const builder = new MLGraphBuilder(context); 27 const options = {beta: NaN}; 28 const input = builder.input('input', {dataType: 'float32', shape: []}); 29 assert_throws_js(TypeError, () => builder.hardSigmoid(input, options)); 30 }, '[hardSigmoid] Throw if options.beta is NaN'); 31 32 promise_test(async t => { 33 const builder = new MLGraphBuilder(context); 34 const options = {alpha: Infinity}; 35 const input = builder.input('input', {dataType: 'float32', shape: [1]}); 36 assert_throws_js(TypeError, () => builder.hardSigmoid(input, options)); 37 }, '[hardSigmoid] Throw if options.alpha is Infinity');