mirror of
https://github.com/fluencelabs/aqua-playground
synced 2025-03-15 01:51:03 +00:00
Add test
This commit is contained in:
parent
758e3191c6
commit
0648c5ad3f
17
aqua/examples/closurePass.aqua
Normal file
17
aqua/examples/closurePass.aqua
Normal file
@ -0,0 +1,17 @@
|
||||
aqua PassClosure
|
||||
|
||||
export lng92Bug
|
||||
|
||||
func accept_closure(peer: string, closure: u16 -> u16) -> u16:
|
||||
on peer:
|
||||
res <- closure(42)
|
||||
<- res
|
||||
|
||||
func lng92Bug(peerA: string, peerB: string) -> u16:
|
||||
on peerA:
|
||||
closure = (x: u16) -> u16:
|
||||
<- x + 37
|
||||
-- Variable has the same name
|
||||
-- as argument of `accept_closure`
|
||||
-- [bug LNG-92]
|
||||
<- accept_closure(peerB, closure)
|
@ -38,6 +38,7 @@ import {literalCall} from '../examples/returnLiteralCall.js';
|
||||
import {multiReturnCall} from '../examples/multiReturnCall.js';
|
||||
import {declareCall} from '../examples/declareCall.js';
|
||||
import {genOptions, genOptionsEmptyString} from '../examples/optionsCall.js';
|
||||
import { lng92BugCall } from '../examples/closurePass.js'
|
||||
import { lng193BugCall } from '../examples/closureReturnRename.js';
|
||||
import {closuresCall} from '../examples/closures.js';
|
||||
import {bugLNG63_2Call, bugLNG63_3Call, bugLNG63Call, streamCanCall} from '../examples/streamCanCall.js';
|
||||
@ -528,6 +529,11 @@ describe('Testing examples', () => {
|
||||
expect(res3).toEqual(res4);
|
||||
}, 180000);
|
||||
|
||||
it('closurePass.aqua bug LNG-92', async () => {
|
||||
let result = await lng92BugCall();
|
||||
expect(result).toEqual(37 + 42)
|
||||
}, 20000)
|
||||
|
||||
it('closureReturnRename.aqua bug LNG-193', async () => {
|
||||
let result = await lng193BugCall();
|
||||
expect(result).toEqual((1 + 42) + (2 + 42) + (3 + 42) + (4 + 42))
|
||||
|
11
src/examples/closurePass.ts
Normal file
11
src/examples/closurePass.ts
Normal file
@ -0,0 +1,11 @@
|
||||
import { Fluence } from '@fluencelabs/fluence';
|
||||
import {
|
||||
lng92Bug
|
||||
} from '../compiled/examples/closurePass.js';
|
||||
import { config } from '../config.js'
|
||||
|
||||
const relays = config.relays
|
||||
|
||||
export async function lng92BugCall(): Promise<number> {
|
||||
return lng92Bug(relays[4].peerId, relays[5].peerId)
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user