aboutsummaryrefslogtreecommitdiff
path: root/unit-tests/test/script/lexer/variable.test
blob: 15458f50aa2bd5696831e91f11d16586eb80ff86 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# file      : unit-tests/test/script/lexer/variable.test
# copyright : Copyright (c) 2014-2017 Code Synthesis Ltd
# license   : MIT; see accompanying LICENSE file

# Test handling custom variable names ($*, $~, $NN).
#
test.arguments = variable

: command
:
{
  : only
  :
  $* <"*" >>EOO
  '*'
  <newline>
  EOO

  : followed
  :
  $* <"*abc" >>EOO
  '*'
  'abc'
  <newline>
  EOO
}

: working-dir
:
{
  : only
  :
  $* <"~" >>EOO
  '~'
  <newline>
  EOO

  : followed
  :
  $* <"~123" >>EOO
  '~'
  '123'
  <newline>
  EOO
}

: arg
:
{
  : only
  :
  $* <"0" >>EOO
  '0'
  <newline>
  EOO

  : followed
  :
  $* <"1abc" >>EOO
  '1'
  'abc'
  <newline>
  EOO

  : multi-digit
  :
  $* <"10" 2>>EOE != 0
  stdin:1:1: error: multi-digit special variable name
  EOE
}