polserver/testsuite/escript/interstring/interstring01.src
Kevin Eady 3ccf701ce9
Format testsuite scripts, pol-core support modules (#713)
* Format escript testsuite

* Manual formatting for escript testsuite
- Add format-off to places where formatter does what it should, but we don't like the results
- Manually change places where formatter outputs weird things _without_ format-off, so next format-all would show changes if not fixed

* Update .err files; add update_err.py helper script

Use the format `:line:col: message` for all .err file checks. This
allows us to change the file names without needing to edit the .err
contents.

Note that `in/inc0{1,2}.err` need have error messages between POSIX and
Windows, so their messages are a bit more "generic" than the other errs.

* Format pol testsuite

* Manual formatting for pol testsuite

* Format pol-core modules

* Manual formatting for pol-core modules

* Additional format pol-core modules

Use FormatterLineWidth=10000 since module functions must be on one line
because of the parse_modules target

* Address Discord comments

- Support multi-line module function declarations in parse_modules

* Format on df07831
2024-10-04 10:29:55 +02:00

92 lines
1.4 KiB
Text

var t, id1, id2;
var n := 0;
function testPrint( num )
n += 1;
print( CStr( n ) + "." );
print( TypeOf( t ) );
print( t );
endfunction
t := $""; // zero parts
testPrint( t );
t := $"foo"; // one part, string
testPrint( t );
t := $"{1}"; // one part, expression -> integer literal
testPrint( t );
id1 := 0xbad.beefp4;
t := $"{id1}"; // one part, expression -> identifier -> hex float literal
testPrint( t );
// #5
t := $"foo{""}"; // two parts
testPrint( t );
t := $"{1}bar"; // one part, expression -> integer literal
testPrint( t );
id1 := "foo";
id2 := "bar";
t := $"{id1}{id2}"; // two parts
testPrint( t );
t := $"{uninit}";
testPrint( t );
t := $"!{uninit}";
testPrint( t );
// #10
t := $"{uninit}!";
testPrint( t );
t := $"!{uninit}!";
testPrint( t );
t := $"{CAsc( "a" )}"; // expression -> function call, that returns a Long
testPrint( t );
t := $"{48879:#x}";
testPrint( t );
t := $"Hello {"string":#x}";
testPrint( t );
// #15
t := $"Hello, {@testPrint}";
testPrint( t );
t := $"Hello{$"\x61\x62\x63"}World";
testPrint( t );
t := $"Hello, {{{"_".join( array{ 1, 2, 3 } )}}}";
testPrint( t );
t := $"{{";
testPrint( t );
t := $"{{{{";
testPrint( t );
// #20
t := $"}}";
testPrint( t );
t := $"}}}}";
testPrint( t );
t := $"{{}}";
testPrint( t );
t := $"{{{{}}}}";
testPrint( t );
t := $"{{{{{"_"}}}}}!{{{{" - "}}}}"; // interstring MINUS string
testPrint( t );
// #25
t := $"{{{{{"-"}}}}}!{{{"-"}}}";
testPrint( t );