; pos=dump warn=31 dummycrprotection=
#u o=EUN v=g
#Fix U0 0 1 0
#seg FOO
#date 2024-03-09 walls appears to ignore anything here
#Fix Q0 1 1 1
; Mammoth reportedly uses "0 0 0" legs between fixed points so we mustn't
; use INFER_EQUATES.
Q0 U0  0 0 0 (?) #segment /Q ; We treat (?) as a NOSURVEY leg.
#UNITS CASE=U
u0 u1 5.4 203d +100P/-100P ; Feature test for "p" override supported since 1.4.20.
#Units V=Percent VB=P a=g
u0 u1p 5.4 203d +100/-100 ; Test percent is applied
u0 u1d 5.4 203d +45D ; Regression test for degrees overriding percent
u0 u1vu 1.0 --  +90D ; Regression test for degrees overriding percent
u0 u1vd 1.0 --  -90D ; Regression test for degrees overriding percent
u0 u1dms1 10.0 12:30 0:0:0
u0 u1dms2 10.0 12:30: 0:0:
u0 u1dms3 10.0 12 0:
u0 u1dms4 10.0 12: 0
u0 u1dms5 10.0 12.5d 0d
u0 u1dms6 10.0 12: 0d
#units v=d vb=d a=d case=none ; undocumented but unknown "case=" values -> "mixed"
#[
U1 X1 3 4 5
#[
X2 X3 7 24 25
X3 X4 9 14 15
#]
#date 1970-01-01
X1 X2 5 12 13 <1,2,3,4>
#]
#s bar
U1 *1,2,3,4* #s /foo
#units feet decl=0.0 $foo_bar1="meters decl"
#date 1972/02/29
#SEG /X
:U1 U2 10.1m N79E/S79W -28/24 *15 25 4 3*
#units $(foo_bar1)=-3 LRUD=F:UDLR
#Date 8/04/1973
U2 U3 33i1.6 N82E/-- -26/--- *15 25 4 3*
U3 <1 2 3 4>
U3 U4 30.14f /N90E /02 *1 2 3 2*
U4 U5 i11 -/N90E -/02 *1 2 3 2*
; odd apparently undocumented variants of a LRUD-only data line
U5 ZZ9 <1 2 3 4> #seg /bar
U5 U6 1 2/- 3/- #seg /S
U6 ZZ8 *1 2 3 4*
; Regression test: `#` in a station name
U5 12#4 24.7 123.5 0 <0,0,0,0>
12#4 &##:S1 12.3 345.6 78 <0,0,0,0>
#segment S
U3 - 1.0 --- +90
U3 -- 1.0 ---- -90
#segment /
#units order=da
U3   --      7.8     098.7
#prefix test walls appears to ignore anything here
#prefix
#units typeab=n,4,X
#units typeab=n,4,x
#units typeab=n,10
#units typevb=c,6,X
#units typevb=c,6,x
#units typevb=c,1
#units inch=1 ; regression test
; Test no warning for values of unsupported options which are the default.
#units inch=0
; Walls seems to fail to check for junk after parsing a number in these cases:
#units uv=4gradeb) inch=1
#units uvv=4gradeb inch=1
#units uvh=4gradeb inch=1
#units typeab=n,4Q),X inch=1
#units typevb=c,1.2Q inch=1
; Test omission of clino on splays
#units order=adv
U5  -  123 1.00
#units order=dav
U5  --  1.00 123
; Test explicit clino units (on plumb to check equivalent to 90°).
U5  U9  1.00 -- 90d
U9  U10 1.00 -- 100g
U10 U11 1.00 -- 1600m
#units $emptymacro;followed by a comment
U11 EMPTY: 1.00 -- 90
#units order=ENU rect
U0 U12a 30 40 50
#units rect=90
U0 U12b -40 30 50 #SEG S
#units ct order=dav typevb=n
U11 U12 1.00 000 -- -2.3 -- <3,0,3,1>
U12 U13 1.00 000 00 -- 1 *1,2,3,4*
; Cases where Walls just ignores random extra junk
U13 U14 1.00 000 00 1 0.5 <0,1,0,1>>
U14 U15 0.5 354.4/174.5 -7.4/+7.4 *0.5 3 2.5 2*.
U15 U16 1.5 45/224 +1/0 *15 0 3 1.5*3
U16 U17 0.7 87.9/267.9 48.9/-48.9 *2,1,5,*0.5*
U17 <1,2,3,0> 'random comment here
U17 U18 1.4 043/224 +5/-3.5 *0 9 4.5*6*
U18 U19 1.6 200/19 -34/+33 *0 20 100 5*+ #seg /X
U19 U20 1.2 0/180 -90/90 *20 5 0 3.2*K1
U20 U21 1.10 265/84 -5/5 *2 3 15 4*/
U21 U21a .2 353 0 *1 4 5 0*#S X
; Instrument/target heights in inches
U21 U22 1i3 155 .25 0 -0i7 <2,0.1,5,4>
U22 U23 5 90/270.5 -5 -0i4 <3,0,8,6>
; Missing closing LRUD delimiter gets quietly parsed as to station name by
; Walls.  We issue a warning.
U23 *8 5 15 3.58
U23 *8 2 3 4 ; Should not warn because `*8` is a known station now.
U23 <8 5 15 3.58
#note *1 ; Suppress Survex warning
U23 *1 2 3 4 ; Should not warn because `*1` is a known station.
; Test examples from Walls_Help_HTML/suffixes.htm
U23 suf1a 10.5f 100.5g 45d <-.5m,10.5f,10i6.5,i6>
U23 suf1b 3.2004m 90.45d 45d <-.5m,38.4048m,38.5572m,1.8288m>
U23 suf2a 10i6.5 15:10:30 -5p
U23 suf2b 3.2131m 15.175d -2.8624d
U23 suf2c i126.5 15:10:30 -2:51.744
U23 suf2d 3.2131m 15.175d -2:51:44.64
; Test mils (360d=6400m)
U23 suf2e 3.2131m 269.7778m -50.8871m

; FIXME: These should all work now - make sure they are tested.
; :50 = 50 minutes (0.8333333333333d)
; N50.5W = North 50.5 degrees West (=309.5d)
; S:15.5E = South 15.5 minutes East
; 320d/N41W = foresight/backsight pair (=319.5d)
; /-20 = isolated back-inclination        (default units)
