diff --git a/aqua/examples/stream.aqua b/aqua/examples/stream.aqua index b891bdc..e678c06 100644 --- a/aqua/examples/stream.aqua +++ b/aqua/examples/stream.aqua @@ -28,6 +28,13 @@ func returnNil() -> *string: relayNil <- stringNil() <- relayNil +func returnNilLiteral() -> *string: + <- nil + +func returnNilLength() -> u32: + arr = nil + <- arr.length + func stringNone() -> ?string: valueNone: ?string <- valueNone diff --git a/src/__test__/examples.spec.ts b/src/__test__/examples.spec.ts index c9a83b7..cdb661d 100644 --- a/src/__test__/examples.spec.ts +++ b/src/__test__/examples.spec.ts @@ -16,6 +16,8 @@ import { parCall, testTimeoutCall } from '../examples/parCall'; import { complexCall } from '../examples/complex'; import { constantsCall, particleTtlAndTimestampCall } from '../examples/constantsCall'; import { + nilLengthCall, + nilLiteralCall, returnNilCall, returnNoneCall, streamAssignmentCall, streamCall, @@ -259,6 +261,16 @@ describe('Testing examples', () => { expect(streamResult).toEqual("333"); }) + it('stream.aqua nil literal', async () => { + let result = await nilLiteralCall() + expect(result).toEqual([]); + }) + + it('stream.aqua nil length', async () => { + let result = await nilLengthCall() + expect(result).toEqual([]); + }) + it('stream.aqua int functor', async () => { let streamResult = await streamIntFunctorCall() expect(streamResult).toEqual("123"); diff --git a/src/examples/streamCall.ts b/src/examples/streamCall.ts index 6fd757f..61b5f84 100644 --- a/src/examples/streamCall.ts +++ b/src/examples/streamCall.ts @@ -1,7 +1,7 @@ import { FluencePeer } from '@fluencelabs/fluence'; import { checkStreams, - registerStringer, + registerStringer, returnNilLength, returnNilLiteral, returnStreamFromFunc, streamAssignment, streamFunctor, streamIntFunctor, streamJoin, stringNil, @@ -42,6 +42,14 @@ export async function streamAssignmentCall() { return await streamAssignment(["333"]); } +export async function nilLiteralCall() { + return await returnNilLiteral(); +} + +export async function nilLengthCall() { + return await returnNilLength(); +} + export async function streamIntFunctorCall() { return await streamIntFunctor([0]); }