From 33b483492008b05b0625efb62cebb9ad5ae0638f Mon Sep 17 00:00:00 2001 From: Momtchil Momtchev Date: Sun, 23 Apr 2023 22:31:28 +0200 Subject: add an unit test --- .../javascript/struct_typedef_namespace_runme.js | 7 +++++++ Examples/test-suite/struct_typedef_namespace.i | 21 +++++++++++++++++++++ 2 files changed, 28 insertions(+) create mode 100644 Examples/test-suite/javascript/struct_typedef_namespace_runme.js create mode 100644 Examples/test-suite/struct_typedef_namespace.i (limited to 'Examples') diff --git a/Examples/test-suite/javascript/struct_typedef_namespace_runme.js b/Examples/test-suite/javascript/struct_typedef_namespace_runme.js new file mode 100644 index 000000000..4f142121b --- /dev/null +++ b/Examples/test-suite/javascript/struct_typedef_namespace_runme.js @@ -0,0 +1,7 @@ +var struct_typedef_namespace = require("struct_typedef_namespace"); + +var b = new struct_typedef_namespace.AffineMatrix(); +b.x = b.y = b.z = 1; + +if (struct_typedef_namespace.fn1(b) != b.x) + throw new Error('failed'); diff --git a/Examples/test-suite/struct_typedef_namespace.i b/Examples/test-suite/struct_typedef_namespace.i new file mode 100644 index 000000000..921d50236 --- /dev/null +++ b/Examples/test-suite/struct_typedef_namespace.i @@ -0,0 +1,21 @@ +%module typedefs + +%inline +%{ +namespace nspace1 { + typedef struct _AffineMatrix { + int x, y, z; + } AffineMatrix; + + struct _CacheView { + int x; + }; + typedef struct _CacheView CacheView; +} + +using nspace1::AffineMatrix; +using nspace1::CacheView; + +int fn1(AffineMatrix a) { return a.x; }; +int fn2(CacheView a) { return a.x; }; +%} \ No newline at end of file -- cgit v1.2.1