This file is indexed.

/usr/share/doc/libplplot11/examples/test_octave.sh is in octave-plplot 5.9.9-2ubuntu2.

This file is owned by root:root, with mode 0o755.

The actual contents of the file can be viewed below.

  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
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
#!/bin/bash
# Test suite for octave examples.
#
# Copyright (C) 2004  Alan W. Irwin
# Copyright (C) 2004  Rafael Laboissiere
#
# This file is part of PLplot.
#
# PLplot is free software; you can redistribute it and/or modify
# it under the terms of the GNU Library General Public License as published
# by the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# PLplot is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU Library General Public License for more details.
#
# You should have received a copy of the GNU Library General Public License
# along with PLplot; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA

# This is called from plplot-test.sh with $octave, $octavedir, $device,
# $dsuffix and $options defined.
# Assumes that $option starts and are '-' separated.

# The following is only need for the build tree!  It should has no effect
# when this script is launched from the install tree.
lang="o"
export lang
# Normalize to leading-slash form of drive-letter just in case that is
# essential for Windows platforms.
TOPDIR="$(pwd |sed 's?^/\(.\)/?\1:/?')"/..
echo "$TOPDIR"
export LD_LIBRARY_PATH="$TOPDIR"/src:"$TOPDIR"/lib/csa:"$TOPDIR"/lib/nn

# Launch an Octave script that exercises all the demos
$octave -f -q -p "$octavedir" <<EOF 2> test.error

# Check verbose_test variable
if (strcmp(getenv("verbose_test"),"on") == 1)
    verbose_test = 1;
else
    verbose_test = 0;
endif

plplot_stub;
t = split("$options", "-"); 
if (t); t(1,:)=""; endif;
for i=1:rows(t)
    tt = deblank (t(i,:)); len = length(tt);
    ix = index(tt," ");
    if (ix == 0); ix = len; len = 0; endif
    plsetopt(tt(1:ix), tt(ix+1:len));
endfor

# Subset of p examples selected that seem to work ok with noninteractive
# devices.

# Remove 7, 16 until plshade1 fix is done.

for i=[1:6 8 9 13 15 21] ;
# (ignore for swig-generated case) for i=[1:6 8 9 13 15 21] ;
    if (verbose_test)
	printf("p%d\n",i);
    endif
    figure(i,"$device",sprintf("${OUTPUT_DIR}/p%d%%n.$dsuffix",i));
    feval(sprintf("p%d",i))
    closefig
endfor
#plot equivalent of x??c examples.  These only required octave-2.0.x
#Example 19 is not yet implemented
# Example 32 not implemented because there has been no call for propagation
# and it exercises no new API.
failed = [] ;
for i=[1:18 19 20:31 33] ;
# Drop 4, 18, 26, and 33 because deprecated matwrap does not include plstring,
# plstring3, pllegend, or plcolorbar.
# (ignore for swig-generated case) for i=[1:3 5:17 20:25 27:31 ] ;
    ofile = sprintf("${OUTPUT_DIR}/x%.2d${lang}_${dsuffix}.txt",i);
    strm = fopen(ofile,"w");
    cmd = sprintf("x%.2dc",i);
    if (verbose_test)
	printf("%s\n",cmd);
    endif
    t = split("$options", "-"); 
    if (t) ; t(1,:)=""; endif
    for j=1:rows(t)
        tt = deblank (t(j,:)); len = length(tt);
	ix = index(tt," ");
	if (ix == 0); ix = len; len = 0; endif
	plSetOpt(deblank(tt(1:ix)), tt(ix:len));
    endfor
    device="$device";
    plSetOpt("dev", device);
#o trailer on filename e.g., x01o.ps) to distinguish from other
#common examples.
    file = sprintf("${OUTPUT_DIR}/x%.2d${lang}%%n.$dsuffix",i);
    plSetOpt("o", file);
    if i == 14  
	file2 = sprintf("${OUTPUT_DIR}/x%.2da${lang}.${dsuffix}",i);
    endif
    eval(cmd, "failed = [failed, i] ;");
    fclose(strm);
    clear file2;
endfor
if ! isempty (failed)
    printf ("Failed tests: ");
    for i = 1 : length (failed)
        if i != 1
            printf (", ");
        endif
        printf ("x%.2dc.m", failed (i));
    endfor
    printf ("\n");
    exit (1);
endif
EOF
status_code=$?
cat test.error
if [ "$status_code" -ne 0 ] ; then
    exit $status_code
fi
# Look for any PLPLOT ERROR messages from plwarn that do not result in an
# exit code.
is_error=`grep -l 'PLPLOT ERROR' test.error`
if [ -n "$is_error" ] ; then
    exit 1
fi