Skip to content

updating README and workflows #27

updating README and workflows

updating README and workflows #27

GitHub Actions / Test results (windows-2019, 21.x) succeeded Mar 18, 2024 in 1s

149 passed, 0 failed and 0 skipped

Tests passed successfully

✅ test-results.xml

149 tests were completed in 3s with 149 passed, 0 failed and 0 skipped.

Test suite Passed Failed Skipped Time
.net returns Func to node.js 2✅ 24ms
async call from .net to node.js 16✅ 50ms
async call from node.js to .net 20✅ 524ms
call patterns 24✅ 675ms
delayed call from node.js to .net 2✅ 72ms
edge-cs 48✅ 3s
edge.func 26✅ 50ms
Root Suite 0ms
serialization 1✅ 2s
sync call from node.js to .net 10✅ 3ms

✅ .net returns Func to node.js

[CoreCLR] releases the func
  ✅ .net returns Func to node.js [CoreCLR] releases the func
[.NET] releases the func
  ✅ .net returns Func to node.js [.NET] releases the func

✅ async call from .net to node.js

[CoreCLR] succeeds for hello world
  ✅ async call from .net to node.js [CoreCLR] succeeds for hello world
[CoreCLR] successfuly marshals data from .net to node.js
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals data from .net to node.js
[CoreCLR] successfuly marshals object hierarchy from .net to node.js
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals object hierarchy from .net to node.js
[CoreCLR] successfuly marshals data from node.js to .net
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals data from node.js to .net
[CoreCLR] successfuly handles process.nextTick() in JS callback
  ✅ async call from .net to node.js [CoreCLR] successfuly handles process.nextTick() in JS callback
[CoreCLR] successfuly marshals v8 exception on invoking thread
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals v8 exception on invoking thread
[CoreCLR] successfuly marshals v8 exception in callback
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals v8 exception in callback
[CoreCLR] successfuly marshals empty buffer
  ✅ async call from .net to node.js [CoreCLR] successfuly marshals empty buffer
[.NET] succeeds for hello world
  ✅ async call from .net to node.js [.NET] succeeds for hello world
[.NET] successfuly marshals data from .net to node.js
  ✅ async call from .net to node.js [.NET] successfuly marshals data from .net to node.js
[.NET] successfuly marshals object hierarchy from .net to node.js
  ✅ async call from .net to node.js [.NET] successfuly marshals object hierarchy from .net to node.js
[.NET] successfuly marshals data from node.js to .net
  ✅ async call from .net to node.js [.NET] successfuly marshals data from node.js to .net
[.NET] successfuly handles process.nextTick() in JS callback
  ✅ async call from .net to node.js [.NET] successfuly handles process.nextTick() in JS callback
[.NET] successfuly marshals v8 exception on invoking thread
  ✅ async call from .net to node.js [.NET] successfuly marshals v8 exception on invoking thread
[.NET] successfuly marshals v8 exception in callback
  ✅ async call from .net to node.js [.NET] successfuly marshals v8 exception in callback
[.NET] successfuly marshals empty buffer
  ✅ async call from .net to node.js [.NET] successfuly marshals empty buffer

✅ async call from node.js to .net

[CoreCLR] succeeds for hello world
  ✅ async call from node.js to .net [CoreCLR] succeeds for hello world
[CoreCLR] successfuly marshals data from node.js to .net
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals data from node.js to .net
[CoreCLR] successfuly marshals data from .net to node.js
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals data from .net to node.js
[CoreCLR] successfuly marshals .net exception thrown on v8 thread from .net to node.js
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals .net exception thrown on v8 thread from .net to node.js
[CoreCLR] successfuly marshals .net exception thrown on CLR thread from .net to node.js
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals .net exception thrown on CLR thread from .net to node.js
[CoreCLR] successfuly marshals structured .net exception from .net to node.js
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals structured .net exception from .net to node.js
[CoreCLR] successfuly marshals empty buffer
  ✅ async call from node.js to .net [CoreCLR] successfuly marshals empty buffer
[CoreCLR] successfuly roundtrips unicode characters
  ✅ async call from node.js to .net [CoreCLR] successfuly roundtrips unicode characters
[CoreCLR] successfuly roundtrips empty string
  ✅ async call from node.js to .net [CoreCLR] successfuly roundtrips empty string
[CoreCLR] successfuly handles process.nextTick in the callback
  ✅ async call from node.js to .net [CoreCLR] successfuly handles process.nextTick in the callback
[.NET] succeeds for hello world
  ✅ async call from node.js to .net [.NET] succeeds for hello world
[.NET] successfuly marshals data from node.js to .net
  ✅ async call from node.js to .net [.NET] successfuly marshals data from node.js to .net
[.NET] successfuly marshals data from .net to node.js
  ✅ async call from node.js to .net [.NET] successfuly marshals data from .net to node.js
[.NET] successfuly marshals .net exception thrown on v8 thread from .net to node.js
  ✅ async call from node.js to .net [.NET] successfuly marshals .net exception thrown on v8 thread from .net to node.js
[.NET] successfuly marshals .net exception thrown on CLR thread from .net to node.js
  ✅ async call from node.js to .net [.NET] successfuly marshals .net exception thrown on CLR thread from .net to node.js
[.NET] successfuly marshals structured .net exception from .net to node.js
  ✅ async call from node.js to .net [.NET] successfuly marshals structured .net exception from .net to node.js
[.NET] successfuly marshals empty buffer
  ✅ async call from node.js to .net [.NET] successfuly marshals empty buffer
[.NET] successfuly roundtrips unicode characters
  ✅ async call from node.js to .net [.NET] successfuly roundtrips unicode characters
[.NET] successfuly roundtrips empty string
  ✅ async call from node.js to .net [.NET] successfuly roundtrips empty string
[.NET] successfuly handles process.nextTick in the callback
  ✅ async call from node.js to .net [.NET] successfuly handles process.nextTick in the callback

✅ call patterns

[CoreCLR] sync call to exported .NET lambda
  ✅ call patterns [CoreCLR] sync call to exported .NET lambda
[CoreCLR] async call to exported .NET lambda
  ✅ call patterns [CoreCLR] async call to exported .NET lambda
[CoreCLR] call exported .NET lambda with closure over CLR state
  ✅ call patterns [CoreCLR] call exported .NET lambda with closure over CLR state
[CoreCLR] successfuly marshals .net exception thrown on V8 thread from exported CLR lambda
  ✅ call patterns [CoreCLR] successfuly marshals .net exception thrown on V8 thread from exported CLR lambda
[CoreCLR] successfuly marshals .net exception thrown on CLR thread from exported CLR lambda
  ✅ call patterns [CoreCLR] successfuly marshals .net exception thrown on CLR thread from exported CLR lambda
[CoreCLR] large number of concurrent callbacks from C# to JavaScript (issue #39)
  ✅ call patterns [CoreCLR] large number of concurrent callbacks from C# to JavaScript (issue #39)
[CoreCLR] two async callouts each with async callin (issue #22)
  ✅ call patterns [CoreCLR] two async callouts each with async callin (issue #22)
[CoreCLR] call JS func exported to .NET as a result of calling a JS func from .NET
  ✅ call patterns [CoreCLR] call JS func exported to .NET as a result of calling a JS func from .NET
[CoreCLR] exception when marshaling CLR data to V8 when calling exported JS function
  ✅ call patterns [CoreCLR] exception when marshaling CLR data to V8 when calling exported JS function
[CoreCLR] exception when marshaling CLR data to V8 when completing a synchronous call from JS to .NET
  ✅ call patterns [CoreCLR] exception when marshaling CLR data to V8 when completing a synchronous call from JS to .NET
[CoreCLR] exception when marshaling CLR data to V8 when completing an asynchronous call from JS to .NET
  ✅ call patterns [CoreCLR] exception when marshaling CLR data to V8 when completing an asynchronous call from JS to .NET
[CoreCLR] merged dependencies choose correct version
  ✅ call patterns [CoreCLR] merged dependencies choose correct version
[CoreCLR] can deserialize using XmlSerializer
  ✅ call patterns [CoreCLR] can deserialize using XmlSerializer
[.NET] sync call to exported .NET lambda
  ✅ call patterns [.NET] sync call to exported .NET lambda
[.NET] async call to exported .NET lambda
  ✅ call patterns [.NET] async call to exported .NET lambda
[.NET] call exported .NET lambda with closure over CLR state
  ✅ call patterns [.NET] call exported .NET lambda with closure over CLR state
[.NET] successfuly marshals .net exception thrown on V8 thread from exported CLR lambda
  ✅ call patterns [.NET] successfuly marshals .net exception thrown on V8 thread from exported CLR lambda
[.NET] successfuly marshals .net exception thrown on CLR thread from exported CLR lambda
  ✅ call patterns [.NET] successfuly marshals .net exception thrown on CLR thread from exported CLR lambda
[.NET] large number of concurrent callbacks from C# to JavaScript (issue #39)
  ✅ call patterns [.NET] large number of concurrent callbacks from C# to JavaScript (issue #39)
[.NET] two async callouts each with async callin (issue #22)
  ✅ call patterns [.NET] two async callouts each with async callin (issue #22)
[.NET] call JS func exported to .NET as a result of calling a JS func from .NET
  ✅ call patterns [.NET] call JS func exported to .NET as a result of calling a JS func from .NET
[.NET] exception when marshaling CLR data to V8 when calling exported JS function
  ✅ call patterns [.NET] exception when marshaling CLR data to V8 when calling exported JS function
[.NET] exception when marshaling CLR data to V8 when completing a synchronous call from JS to .NET
  ✅ call patterns [.NET] exception when marshaling CLR data to V8 when completing a synchronous call from JS to .NET
[.NET] exception when marshaling CLR data to V8 when completing an asynchronous call from JS to .NET
  ✅ call patterns [.NET] exception when marshaling CLR data to V8 when completing an asynchronous call from JS to .NET

✅ delayed call from node.js to .net

[CoreCLR] succeeds for one callback after Task
  ✅ delayed call from node.js to .net [CoreCLR] succeeds for one callback after Task
[.NET] succeeds for one callback after Task
  ✅ delayed call from node.js to .net [.NET] succeeds for one callback after Task

✅ edge-cs

[CoreCLR] succeeds with literal lambda
  ✅ edge-cs [CoreCLR] succeeds with literal lambda
[CoreCLR] succeeds with csx file with lambda
  ✅ edge-cs [CoreCLR] succeeds with csx file with lambda
[CoreCLR] succeeds with lambda in function
  ✅ edge-cs [CoreCLR] succeeds with lambda in function
[CoreCLR] succeeds with literal class
  ✅ edge-cs [CoreCLR] succeeds with literal class
[CoreCLR] succeeds with csx file with class
  ✅ edge-cs [CoreCLR] succeeds with csx file with class
[CoreCLR] succeeds with cs file with class
  ✅ edge-cs [CoreCLR] succeeds with cs file with class
[CoreCLR] succeeds with class in function
  ✅ edge-cs [CoreCLR] succeeds with class in function
[CoreCLR] succeeds with custom class and method name
  ✅ edge-cs [CoreCLR] succeeds with custom class and method name
[CoreCLR] fails with malformed literal lambda
  ✅ edge-cs [CoreCLR] fails with malformed literal lambda
[CoreCLR] fails with malformed class in function
  ✅ edge-cs [CoreCLR] fails with malformed class in function
[CoreCLR] fails when Invoke method is missing
  ✅ edge-cs [CoreCLR] fails when Invoke method is missing
[CoreCLR] fails when Startup class is missing
  ✅ edge-cs [CoreCLR] fails when Startup class is missing
[CoreCLR] succeeds with System.Data.dll reference as comment in class
  ✅ edge-cs [CoreCLR] succeeds with System.Data.dll reference as comment in class
[CoreCLR] succeeds with System.Data.dll reference without comment in class
  ✅ edge-cs [CoreCLR] succeeds with System.Data.dll reference without comment in class
[CoreCLR] succeeds with System.Data.dll reference as comment in async lambda
  ✅ edge-cs [CoreCLR] succeeds with System.Data.dll reference as comment in async lambda
[CoreCLR] succeeds with System.Data.dll reference without comment in async lambda
  ✅ edge-cs [CoreCLR] succeeds with System.Data.dll reference without comment in async lambda
[CoreCLR] succeeds with System.Data.dll reference and a using statement in async lambda
  ✅ edge-cs [CoreCLR] succeeds with System.Data.dll reference and a using statement in async lambda
[CoreCLR] succeeds with dynamic input to async lambda
  ✅ edge-cs [CoreCLR] succeeds with dynamic input to async lambda
[CoreCLR] succeeds with nested dynamic input to async lambda
  ✅ edge-cs [CoreCLR] succeeds with nested dynamic input to async lambda
[CoreCLR] succeeds with dynamic input to Invoke method
  ✅ edge-cs [CoreCLR] succeeds with dynamic input to Invoke method
[CoreCLR] succeeds with nested dynamic input to Invoke method
  ✅ edge-cs [CoreCLR] succeeds with nested dynamic input to Invoke method
[CoreCLR] succeeds with dictionary input to Invoke method
  ✅ edge-cs [CoreCLR] succeeds with dictionary input to Invoke method
[CoreCLR] fails with a reference to a non-existent assembly without comment in class
  ✅ edge-cs [CoreCLR] fails with a reference to a non-existent assembly without comment in class
[CoreCLR] fails when dynamically loading an assembly that doesn't exist
  ✅ edge-cs [CoreCLR] fails when dynamically loading an assembly that doesn't exist
[.NET] succeeds with literal lambda
  ✅ edge-cs [.NET] succeeds with literal lambda
[.NET] succeeds with csx file with lambda
  ✅ edge-cs [.NET] succeeds with csx file with lambda
[.NET] succeeds with lambda in function
  ✅ edge-cs [.NET] succeeds with lambda in function
[.NET] succeeds with literal class
  ✅ edge-cs [.NET] succeeds with literal class
[.NET] succeeds with csx file with class
  ✅ edge-cs [.NET] succeeds with csx file with class
[.NET] succeeds with cs file with class
  ✅ edge-cs [.NET] succeeds with cs file with class
[.NET] succeeds with class in function
  ✅ edge-cs [.NET] succeeds with class in function
[.NET] succeeds with custom class and method name
  ✅ edge-cs [.NET] succeeds with custom class and method name
[.NET] fails with malformed literal lambda
  ✅ edge-cs [.NET] fails with malformed literal lambda
[.NET] fails with malformed class in function
  ✅ edge-cs [.NET] fails with malformed class in function
[.NET] fails when Invoke method is missing
  ✅ edge-cs [.NET] fails when Invoke method is missing
[.NET] fails when Startup class is missing
  ✅ edge-cs [.NET] fails when Startup class is missing
[.NET] succeeds with System.Data.dll reference as comment in class
  ✅ edge-cs [.NET] succeeds with System.Data.dll reference as comment in class
[.NET] succeeds with System.Data.dll reference without comment in class
  ✅ edge-cs [.NET] succeeds with System.Data.dll reference without comment in class
[.NET] succeeds with System.Data.dll reference as comment in async lambda
  ✅ edge-cs [.NET] succeeds with System.Data.dll reference as comment in async lambda
[.NET] succeeds with System.Data.dll reference without comment in async lambda
  ✅ edge-cs [.NET] succeeds with System.Data.dll reference without comment in async lambda
[.NET] succeeds with System.Data.dll reference and a using statement in async lambda
  ✅ edge-cs [.NET] succeeds with System.Data.dll reference and a using statement in async lambda
[.NET] succeeds with dynamic input to async lambda
  ✅ edge-cs [.NET] succeeds with dynamic input to async lambda
[.NET] succeeds with nested dynamic input to async lambda
  ✅ edge-cs [.NET] succeeds with nested dynamic input to async lambda
[.NET] succeeds with dynamic input to Invoke method
  ✅ edge-cs [.NET] succeeds with dynamic input to Invoke method
[.NET] succeeds with nested dynamic input to Invoke method
  ✅ edge-cs [.NET] succeeds with nested dynamic input to Invoke method
[.NET] succeeds with dictionary input to Invoke method
  ✅ edge-cs [.NET] succeeds with dictionary input to Invoke method
[.NET] fails with a reference to a non-existent assembly without comment in class
  ✅ edge-cs [.NET] fails with a reference to a non-existent assembly without comment in class
[.NET] fails when dynamically loading an assembly that doesn't exist
  ✅ edge-cs [.NET] fails when dynamically loading an assembly that doesn't exist

✅ edge.func

[CoreCLR] exists
  ✅ edge.func [CoreCLR] exists
[CoreCLR] fails without parameters
  ✅ edge.func [CoreCLR] fails without parameters
[CoreCLR] fails with a wrong parameter
  ✅ edge.func [CoreCLR] fails with a wrong parameter
[CoreCLR] fails with a wrong language parameter
  ✅ edge.func [CoreCLR] fails with a wrong language parameter
[CoreCLR] fails with a unsupported language parameter
  ✅ edge.func [CoreCLR] fails with a unsupported language parameter
[CoreCLR] fails with missing assemblyFile or source
  ✅ edge.func [CoreCLR] fails with missing assemblyFile or source
[CoreCLR] fails with both assemblyFile or source
  ✅ edge.func [CoreCLR] fails with both assemblyFile or source
[CoreCLR] fails with nonexisting assemblyFile
  ✅ edge.func [CoreCLR] fails with nonexisting assemblyFile
[CoreCLR] succeeds with assemblyFile and type name
  ✅ edge.func [CoreCLR] succeeds with assemblyFile and type name
[CoreCLR] fails with assemblyFile and nonexisting type name
  ✅ edge.func [CoreCLR] fails with assemblyFile and nonexisting type name
[CoreCLR] succeeds with assemblyFile, type name, and method name
  ✅ edge.func [CoreCLR] succeeds with assemblyFile, type name, and method name
[CoreCLR] fails with assemblyFile, type name and nonexisting method name
  ✅ edge.func [CoreCLR] fails with assemblyFile, type name and nonexisting method name
[.NET] exists
  ✅ edge.func [.NET] exists
[.NET] fails without parameters
  ✅ edge.func [.NET] fails without parameters
[.NET] fails with a wrong parameter
  ✅ edge.func [.NET] fails with a wrong parameter
[.NET] fails with a wrong language parameter
  ✅ edge.func [.NET] fails with a wrong language parameter
[.NET] fails with a unsupported language parameter
  ✅ edge.func [.NET] fails with a unsupported language parameter
[.NET] fails with missing assemblyFile or source
  ✅ edge.func [.NET] fails with missing assemblyFile or source
[.NET] fails with both assemblyFile or source
  ✅ edge.func [.NET] fails with both assemblyFile or source
[.NET] fails with nonexisting assemblyFile
  ✅ edge.func [.NET] fails with nonexisting assemblyFile
[.NET] succeeds with assemblyFile as string
  ✅ edge.func [.NET] succeeds with assemblyFile as string
[.NET] succeeds with assemblyFile as options property
  ✅ edge.func [.NET] succeeds with assemblyFile as options property
[.NET] succeeds with assemblyFile and type name
  ✅ edge.func [.NET] succeeds with assemblyFile and type name
[.NET] fails with assemblyFile and nonexisting type name
  ✅ edge.func [.NET] fails with assemblyFile and nonexisting type name
[.NET] succeeds with assemblyFile, type name, and method name
  ✅ edge.func [.NET] succeeds with assemblyFile, type name, and method name
[.NET] fails with assemblyFile, type name and nonexisting method name
  ✅ edge.func [.NET] fails with assemblyFile, type name and nonexisting method name

✅ serialization

[.NET] complex exception serialization
  ✅ serialization [.NET] complex exception serialization

✅ sync call from node.js to .net

[CoreCLR] succeeds for hello world
  ✅ sync call from node.js to .net [CoreCLR] succeeds for hello world
[CoreCLR] succeeds for hello world when called sync and async
  ✅ sync call from node.js to .net [CoreCLR] succeeds for hello world when called sync and async
[CoreCLR] successfuly marshals data from node.js to .net
  ✅ sync call from node.js to .net [CoreCLR] successfuly marshals data from node.js to .net
[CoreCLR] successfuly marshals .net exception thrown on v8 thread from .net to node.js
  ✅ sync call from node.js to .net [CoreCLR] successfuly marshals .net exception thrown on v8 thread from .net to node.js
[CoreCLR] fails if C# method does not complete synchronously
  ✅ sync call from node.js to .net [CoreCLR] fails if C# method does not complete synchronously
[.NET] succeeds for hello world
  ✅ sync call from node.js to .net [.NET] succeeds for hello world
[.NET] succeeds for hello world when called sync and async
  ✅ sync call from node.js to .net [.NET] succeeds for hello world when called sync and async
[.NET] successfuly marshals data from node.js to .net
  ✅ sync call from node.js to .net [.NET] successfuly marshals data from node.js to .net
[.NET] successfuly marshals .net exception thrown on v8 thread from .net to node.js
  ✅ sync call from node.js to .net [.NET] successfuly marshals .net exception thrown on v8 thread from .net to node.js
[.NET] fails if C# method does not complete synchronously
  ✅ sync call from node.js to .net [.NET] fails if C# method does not complete synchronously