#!/bin/sh
# -copyright-
#-# Copyright: 2015-2025 Willem Vermin wvermin@gmail.com
#-# 
#-# License: BSD-3-Clause
#-#  Redistribution and use in source and binary forms, with or without
#-#  modification, are permitted provided that the following conditions
#-#  are met:
#-#  1. Redistributions of source code must retain the above copyright
#-#     notice, this list of conditions and the following disclaimer.
#-#  2. Redistributions in binary form must reproduce the above copyright
#-#     notice, this list of conditions and the following disclaimer in the
#-#     documentation and/or other materials provided with the distribution.
#-#  3. Neither the name of the copyright holder nor the names of its
#-#     contributors may be used to endorse or promote products derived
#-#     from this software without specific prior written permission.
#-#   
#-#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
#-#  "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
#-#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
#-#  A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE HOLDERS OR
#-#  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
#-#  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
#-#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
#-#  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
#-#  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
#-#  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
#-#  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

if test -e prelude ; then
   . ./prelude
else
   . ./debian/tests/prelude
fi
rc=0
prog="  program main
10      continue
      end
   "
expect="program main
      10 continue
end"
exe=$FINDENT
for flag in -l0 --label_left=0 ; do
   a=`echo "$prog" | $exe "$flag" -I0 -i6 | tr -d '\r'`
   if [ "$a" = "$expect" ]; then
      echo "$flag works OK"
   else
      echo "$flag works NOT OK:"
      echo "expected:"
      echo "$expect"
      echo "got     :"
      echo "$a"
      echo "program is:"
      echo "$prog"
      rc=`expr $rc + 1`
   fi
done

expect="program main
10    continue
end"
for flag in -l1 --label_left=1 ; do
   a=`echo "$prog" | $exe "$flag" -I0 -i6 | tr -d '\r'`
   if [ "$a" = "$expect" ]; then
      echo "$flag works OK"
   else
      echo "$flag works NOT OK:"
      echo "expected:"
      echo "$expect"
      echo "got     :"
      echo "$a"
      echo "program is:"
      echo "$prog"
      rc=`expr $rc + 1`
   fi
done

prog="      program main
10      continue
      end
   "
expect="      program main
   10       continue
      end"
for flag in -l0 --label_left=0 ; do
   a=`echo "$prog" | $exe "$flag" -I0 -i6 | tr -d '\r'`
   if [ "$a" = "$expect" ]; then
      echo "$flag works OK"
   else
      echo "$flag works NOT OK:"
      echo "expected:"
      echo "$expect"
      echo "got     :"
      echo "$a"
      echo "program is:"
      echo "$prog"
      rc=`expr $rc + 1`
   fi
done

expect="      program main
10          continue
      end"
for flag in -l1 --label_left=1 ; do
   a=`echo "$prog" | $exe "$flag" -I0 -i6 | tr -d '\r'`
   if [ "$a" = "$expect" ]; then
      echo "$flag works OK"
   else
      echo "$flag works NOT OK:"
      echo "expected:"
      echo "$expect"
      echo "got     :"
      echo "$a"
      echo "program is:"
      echo "$prog"
      rc=`expr $rc + 1`
   fi
done

. ../postlude
exit $rc
