Skip to content

Commit 0f0f3f5

Browse files
committed
Merge branch 'feature/20' into develop
2 parents a97d027 + 4132b6b commit 0f0f3f5

File tree

1 file changed

+14
-0
lines changed

1 file changed

+14
-0
lines changed

samples/DupeNukem.Sample.Common/TestModel.cs

+14
Original file line numberDiff line numberDiff line change
@@ -144,6 +144,14 @@ private static void HookWithMessengerTestCode(WebViewMessenger messenger)
144144
var result_callback2 = await messenger.InvokePeerMethodAsync<string>("js_callback2", 1, 2, callback2);
145145
Trace.WriteLine($"js_callback2: {result_callback2}");
146146

147+
// Test .NET --> JavaScript class member
148+
var result_jscalc_add = await messenger.InvokePeerMethodAsync<int>(
149+
"jscalc.add", 1, 2);
150+
Trace.WriteLine($"jscalc.add: {result_jscalc_add}");
151+
var result_jscalc_sub = await messenger.InvokePeerMethodAsync<int>(
152+
"jscalc.sub", 1, 2);
153+
Trace.WriteLine($"jscalc.sub: {result_jscalc_sub}");
154+
147155
Trace.WriteLine("ALL TEST IS DONE AT .NET SIDE.");
148156
};
149157
}
@@ -163,6 +171,12 @@ public static void AddTestJavaScriptCode(StringBuilder script)
163171
script.AppendLine("async function js_callback2(a, b, cb) { return await cb(a, b, new CancellationToken()); }");
164172
script.AppendLine("async function js_delay(v, ct) { await delay(v, ct); return v.toString(); }");
165173

174+
script.AppendLine("class JSCalculator {");
175+
script.AppendLine(" async add(a, b) { return a + b; }");
176+
script.AppendLine(" async sub(a, b) { return a - b; }");
177+
script.AppendLine("};");
178+
script.AppendLine("var jscalc = new JSCalculator();");
179+
166180
// Invoke JavaScript --> .NET methods:
167181
script.AppendLine("var tester = async () => {");
168182
script.AppendLine(" const result_add = await invokeHostMethod('add', 1, 2);");

0 commit comments

Comments
 (0)