1/* 2* Copyright (c) 2022 Shenzhen Kaihong Digital Industry Development Co., Ltd. 3* Licensed under the Apache License, Version 2.0 (the "License"); 4* you may not use this file except in compliance with the License. 5* You may obtain a copy of the License at 6* 7* http://www.apache.org/licenses/LICENSE-2.0 8* 9* Unless required by applicable law or agreed to in writing, software 10* distributed under the License is distributed on an "AS IS" BASIS, 11* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 12* See the License for the specific language governing permissions and 13* limitations under the License. 14*/ 15const { TestClass1 } = require("./out/build/Release/napitest") 16const test = require("./out/build/Release/napitest") 17var assert = require("assert"); 18const { consumers } = require("stream"); 19 20describe('Interface', function () { 21 it('test TestClass1 fun1', function () { 22 let tc1 = new TestClass1(); 23 let ret = tc1.fun1(1); 24 assert.strictEqual(ret, 0); 25 }); 26 27 it('test TestClass1 fun2', function () { 28 let tc = new TestClass1(); 29 let ret = tc.fun2([1, 2, 3], { name: 'haha', age: 20 }); 30 let retJson = JSON.stringify(ret); 31 assert.strictEqual(retJson, '{"name":"","age":0}'); 32 }); 33 34 it('test TestClass1 fun3', function () { 35 let tc = new TestClass1(); 36 let ret = tc.fun3(2,'aaa',true); 37 assert.strictEqual(ret, false); 38 }); 39 40 it('test TestClass1 fun4', function () { 41 let tc = new test.TestClass1(); 42 let ret = tc.fun4({ 'name': 'haha', 'age': '20' }); 43 let retJson = JSON.stringify(ret); 44 assert.strictEqual(retJson, '[]'); 45 ret = tc.fun4({ 'name': 'haha', 'age': '20' },'aaa'); 46 retJson = JSON.stringify(ret); 47 assert.strictEqual(retJson, '[]'); 48 }); 49}); 50 51describe('Interface', function () { 52 it('test TestClass1 fun5', function () { 53 let tc = new test.TestClass1(); 54 let ret = tc.fun5( 55 [{ name: 'haha', age: 20 }, { name: 'houhou', age: 23 }]); 56 let retJson = JSON.stringify(ret); 57 assert.strictEqual(retJson, '{"name":"","age":0}'); 58 }); 59 60 it('test TestClass1 fun6', function () { 61 let tc = new test.TestClass1(); 62 let ret = tc.fun6(['11','22','33'],{'isExit':true,'isTrue':false}); 63 let retJson = JSON.stringify(ret); 64 assert.strictEqual(retJson, '[]'); 65 }); 66 67 it('test TestClass1 fun8', function () { 68 let tc = new test.TestClass1(); 69 let ret = tc.fun8(); 70 assert.deepStrictEqual(typeof ret, 'undefined'); 71 }); 72}); 73 74 75 76