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 ,TestClass2 } = require("./out/build/Release/napitest")
16var assert = require("assert");
17
18describe('Map', function () {
19    it('test TestClass2 fun1', function () {
20        let tc2 = new TestClass2();
21        let ret = tc2.fun1({"age":"ageValue","name":"nameValue"},'aaaa');
22        assert.strictEqual(ret, 0);
23    });
24
25    it('test TestClass2 fun2', function () {
26        let tc2 = new TestClass2();
27        let ret = tc2.fun2({"age":1234,"name":5678});
28        assert.strictEqual(ret, 0);
29    });
30
31    it('test TestClass2 fun3', function () {
32        let tc2 = new TestClass2();
33        let ret = tc2.fun3({"age":true,"name":false});
34        assert.strictEqual(ret, 0);
35    });
36
37    it('test TestClass2 fun4', function () {
38        let tc2 = new TestClass2();
39        let ret = tc2.fun4({"age":["1","12","145"],"name":["21","22","23"]});
40        assert.strictEqual(ret, 0);
41    });
42
43    it('test TestClass2 fun5', function () {
44        let tc2 = new TestClass2();
45        let ret = tc2.fun5({"age":[122,222,322],"name":[422,522,622]});
46        assert.strictEqual(ret, 0);
47    });
48});
49
50describe('Map', function () {
51    it('test TestClass2 fun6', function () {
52        let tc2 = new TestClass2();
53        let ret = tc2.fun6({"age":[true,true,true],"name":[false,false,false]});
54        assert.strictEqual(ret, 0);
55    });
56
57    it('test TestClass2 fun7', function () {
58        let tc2 = new TestClass2();
59        let ret = tc2.fun7({"age":"ageValue","name":"nameValue"});
60        assert.strictEqual(ret, 0);
61    });
62
63    it('test TestClass2 fun8', function () {
64        let tc2 = new TestClass2();
65        let ret = tc2.fun8(
66            {"peter":{"age":"ageValue","name":"nameValue"},
67            "jane":{"age":"ageValue","name":"nameValue"}});
68        assert.strictEqual(ret, 0);
69    });
70
71    it('test TestClass2 fun9', function () {
72        let tc2 = new TestClass2();
73        let ret = tc2.fun9(
74            {"peter":{"age":666,"name":"peter","isTrue":true},
75            "jane":{"age":666,"name":"jane","isTrue":false}});
76        assert.strictEqual(ret, 0);
77    });
78
79    it('test TestClass2 fun10', function () {
80        let tc2 = new TestClass2();
81        let ret = tc2.fun10(
82            {"peter":{"age":666,"name":"peter","isTrue":true},
83            "jane":{"age":666,"name":"jane","isTrue":false}});
84        assert.strictEqual(ret, 0);
85    });
86});
87
88describe('Map_Any', function () {
89    it('test TestClass2 fun11', function () {
90        let tc2 = new TestClass2();
91        let ret = tc2.fun11({"age":"ageValue","name":"nameValue"});
92        assert.strictEqual(ret, 0);
93    });
94
95    it('test TestClass2 fun11', function () {
96        let tc2 = new TestClass2();
97        let ret = tc2.fun11({"age":1234,"name":5678});
98        assert.strictEqual(ret, 0);
99    });
100
101    it('test TestClass2 fun11', function () {
102        let tc2 = new TestClass2();
103        let ret = tc2.fun11({"age":true,"name":false});
104        assert.strictEqual(ret, 0);
105    });
106
107    it('test TestClass2 fun11', function () {
108        let tc2 = new TestClass2();
109        let ret = tc2.fun11({"age":[1,23,456],"name":[7,89,101112]});
110        assert.strictEqual(ret, 0);
111    });
112
113    it('test TestClass2 fun11', function () {
114        let tc2 = new TestClass2();
115        let ret = tc2.fun11({"peter":{"age":"ageValue","name":"nameValue"},
116                            "jane":{"age":"ageValue","name":"nameValue"}});
117        assert.strictEqual(ret, 0);
118    });
119});